class Ticket(core.Sequence):
"""Ticket for AP-REQ and SEQUENCE OF Ticket
Ticket ::= [APPLICATION 1] SEQUENCE {
tkt-vno [0] INTEGER,
realm [1] Realm,
sname [2] PrincipalName,
enc-part [3] EncryptedData
}
"""
explicit_class = APPLICATION
explicit_tag = 1
tag_type = TAG
_fields = [
('tkt-vno', core.Integer, {'tag_type': TAG, 'tag': 0}),
('realm', Realm, {'tag_type': TAG, 'tag': 1}),
('sname', PrincipalName, {'tag_type': TAG, 'tag': 2}),
('enc-part', EncryptedData, {'tag_type': TAG, 'tag': 3}),
]
class AP_REQ(core.Sequence):
"""AP-REQ -- Application request
Client/server authentication exchange (CS)
AP-REQ ::= [APPLICATION 14] SEQUENCE {
pvno [0] INTEGER (5),
msg-type [1] INTEGER (14),
ap-options [2] APOptions,
ticket [3] Ticket,
authenticator [4] EncryptedData
}
"""
explicit_class = APPLICATION
explicit_tag = 14
tag_type = TAG
_fields = [
('pvno', core.Integer, {'tag_type': TAG, 'tag': 0, 'default': 5}),
('msg-type', core.Integer, {'tag_type': TAG, 'tag': 1, 'default': 14}),
('ap-options', APOptions, {'tag_type': TAG, 'tag': 2}),
('ticket', Ticket, {'tag_type': TAG, 'tag': 3}),
('authenticator', EncryptedData, {'tag_type': TAG, 'tag': 4}),
]
Traceback (most recent call last):
File "pykkdcpasn1.py", line 523, in <module>
test()
File "pykkdcpasn1.py", line 519, in test
pprint(apreq.native)
File "/tmp/venv/lib64/python3.6/site-packages/asn1crypto/core.py", line 3702, in native
self._parse_children(recurse=True)
File "/tmp/venv/lib64/python3.6/site-packages/asn1crypto/core.py", line 3646, in _parse_children
raise e
File "/tmp/venv/lib64/python3.6/site-packages/asn1crypto/core.py", line 3619, in _parse_children
child = _build(*child)
File "/tmp/venv/lib64/python3.6/site-packages/asn1crypto/core.py", line 4965, in _build
value = _build(*info, spec=spec, spec_params={'no_explicit': True})
File "/tmp/venv/lib64/python3.6/site-packages/asn1crypto/core.py", line 4994, in _build
CLASS_NUM_TO_NAME_MAP.get(class_, class_)
ValueError: Error parsing __main__.Ticket - class should have been universal, but application was found
while parsing __main__.AP_REQ
0:d=0 hl=4 l= 510 cons: appl [ 14 ]
4:d=1 hl=4 l= 506 cons: SEQUENCE
8:d=2 hl=2 l= 3 cons: cont [ 0 ]
10:d=3 hl=2 l= 1 prim: INTEGER :05
13:d=2 hl=2 l= 3 cons: cont [ 1 ]
15:d=3 hl=2 l= 1 prim: INTEGER :0E
18:d=2 hl=2 l= 7 cons: cont [ 2 ]
20:d=3 hl=2 l= 5 prim: BIT STRING
27:d=2 hl=4 l= 321 cons: cont [ 3 ]
31:d=3 hl=4 l= 317 cons: appl [ 1 ]
35:d=4 hl=4 l= 313 cons: SEQUENCE
39:d=5 hl=2 l= 3 cons: cont [ 0 ]
41:d=6 hl=2 l= 1 prim: INTEGER :05
44:d=5 hl=2 l= 15 cons: cont [ 1 ]
46:d=6 hl=2 l= 13 prim: GENERALSTRING
61:d=5 hl=2 l= 29 cons: cont [ 2 ]
63:d=6 hl=2 l= 27 cons: SEQUENCE
65:d=7 hl=2 l= 3 cons: cont [ 0 ]
67:d=8 hl=2 l= 1 prim: INTEGER :01
70:d=7 hl=2 l= 20 cons: cont [ 1 ]
72:d=8 hl=2 l= 18 cons: SEQUENCE
74:d=9 hl=2 l= 6 prim: GENERALSTRING
82:d=9 hl=2 l= 8 prim: GENERALSTRING
92:d=5 hl=4 l= 256 cons: cont [ 3 ]
96:d=6 hl=3 l= 253 cons: SEQUENCE
99:d=7 hl=2 l= 3 cons: cont [ 0 ]
101:d=8 hl=2 l= 1 prim: INTEGER :12
104:d=7 hl=2 l= 3 cons: cont [ 1 ]
106:d=8 hl=2 l= 1 prim: INTEGER :01
109:d=7 hl=3 l= 240 cons: cont [ 2 ]
112:d=8 hl=3 l= 237 prim: OCTET STRING [HEX DUMP]:ECC2A53967B412D791DFF3EA3D50F765DC7ED7C7E66912C836163F5BD0A07FC679E46D36C9B38A2273C877D233AD55FAB9F3D95637F8F1DC22117723E77537C92D909064DE10B26E86C9EFDCCF37CC16D20E75849D0CBD04A56E7F69D46C6D7DB9DDDC6ACBBE37D6CF49C6CC78C57228C0E903FDC08772B030DD22DC84B5D55C66E07279E9840A3EA68F1C27BA26305D1CD05D1E3A994A4246DB8E834948EFD3788409760994AF1A72F5CF1485C49C7646A3B72C460FD62F5C373C224ECE0859F4DDEF5B77BF75A9AB220524E00A35A357722F703A218C5FD1A717ED0392F19864BF0B52921B501906A8AF48C3
352:d=2 hl=3 l= 159 cons: cont [ 4 ]
355:d=3 hl=3 l= 156 cons: SEQUENCE
358:d=4 hl=2 l= 3 cons: cont [ 0 ]
360:d=5 hl=2 l= 1 prim: INTEGER :12
363:d=4 hl=3 l= 148 cons: cont [ 2 ]
366:d=5 hl=3 l= 145 prim: OCTET STRING [HEX DUMP]:EAD1DF7495E86BFEC932DBA81C9A764826080BB8C359AC3627C4B2CE530217042449E9CAA3DB66031FBE4B1CF942EC9EC773A2FB2485DD4D6E1271F9FF41D26C54CE9370D6E4573156CDC051944A563056BFA1D47CECEFF3CB4AC455FE33CD03E91BA9B4DC2243CE59EF0E1865AEBDBA76E30EB2AD8DEB71409B11F86CFA6C6E488270303C0451BD86A91C139018421A07