spkm, rfc2025
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@14155 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		
							
								
								
									
										240
									
								
								lib/gssapi/krb5/spkm.asn1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										240
									
								
								lib/gssapi/krb5/spkm.asn1
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,240 @@ | |||||||
|  | -- from rfc2025 | ||||||
|  | -- $Id$ | ||||||
|  |  | ||||||
|  | SpkmGssTokens DEFINITIONS ::= | ||||||
|  | BEGIN | ||||||
|  |  | ||||||
|  | IMPORTS AlgorithmIdentifier, Validity, | ||||||
|  | 	Attribute, Certificate, CertificateList, CertificatePair, Name | ||||||
|  | 	FROM rfc2459 | ||||||
|  | 	AuthorizationData FROM krb5; | ||||||
|  |  | ||||||
|  | SPKM-REQ ::= SEQUENCE { | ||||||
|  | 	requestToken      REQ-TOKEN, | ||||||
|  | 	certif-data [0]   CertificationData OPTIONAL, | ||||||
|  | 	auth-data [1]     AuthorizationData OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | CertificationData ::= SEQUENCE { | ||||||
|  | 	certificationPath [0]	  CertificationPath OPTIONAL, | ||||||
|  | 	certificateRevocationList [1]  CertificateList OPTIONAL | ||||||
|  | } -- at least one of the above shall be present | ||||||
|  |  | ||||||
|  |  | ||||||
|  | CertificationPath ::= SEQUENCE { | ||||||
|  | 	userKeyId [0]	 OCTET STRING OPTIONAL, | ||||||
|  | 	userCertif [1]	Certificate OPTIONAL, | ||||||
|  | 	verifKeyId [2]	OCTET STRING OPTIONAL, | ||||||
|  | 	userVerifCertif [3]   Certificate OPTIONAL, | ||||||
|  | 	theCACertificates [4] SEQUENCE OF CertificatePair OPTIONAL | ||||||
|  | } -- Presence of [2] or [3] implies that [0] or [1] must also be | ||||||
|  |   -- present.  Presence of [4] implies that at least one of [0], [1], | ||||||
|  |   -- [2], and [3] must also be present. | ||||||
|  |  | ||||||
|  | REQ-TOKEN ::= SEQUENCE { | ||||||
|  | 	req-contents     Req-contents, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	req-integrity    Integrity  -- "token" is Req-contents | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Integrity ::= BIT STRING | ||||||
|  |   -- If corresponding algId specifies a signing algorithm, | ||||||
|  |   -- "Integrity" holds the result of applying the signing procedure | ||||||
|  |   -- specified in algId to the BER-encoded octet string which results | ||||||
|  |   -- from applying the hashing procedure (also specified in algId) to | ||||||
|  |   -- the DER-encoded octets of "token". | ||||||
|  |   -- Alternatively, if corresponding algId specifies a MACing | ||||||
|  |   -- algorithm, "Integrity" holds the result of applying the MACing | ||||||
|  |   -- procedure specified in algId to the DER-encoded octets of | ||||||
|  |   -- "token" | ||||||
|  |  | ||||||
|  | Req-contents ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(256)--,  -- shall contain 0100 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	pvno	     BIT STRING, | ||||||
|  | 	timestamp	UTCTime OPTIONAL, -- mandatory for SPKM-2 | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	src-name [0]     Name OPTIONAL, | ||||||
|  | 	req-data	 Context-Data, | ||||||
|  | 	validity [1]     Validity OPTIONAL, | ||||||
|  | 	key-estb-set     Key-Estb-Algs, | ||||||
|  | 	key-estb-req     BIT STRING OPTIONAL, | ||||||
|  | 	key-src-bind     OCTET STRING OPTIONAL | ||||||
|  | 	   -- This field must be present for the case of SPKM-2 | ||||||
|  | 	   -- unilateral authen. if the K-ALG in use does not provide | ||||||
|  | 	   -- such a binding (but is optional for all other cases). | ||||||
|  | 	   -- The octet string holds the result of applying the | ||||||
|  | 	   -- mandatory hashing procedure (in MANDATORY I-ALG; | ||||||
|  | 	   -- see Section 2.1) as follows:  MD5(src || context_key), | ||||||
|  | 	   -- where "src" is the DER-encoded octets of src-name, | ||||||
|  | 	   -- "context-key" is the symmetric key (i.e., the | ||||||
|  | 	   -- unprotected version of what is transmitted in | ||||||
|  | 	   -- key-estb-req), and "||" is the concatenation operation. | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Random-Integer ::= BIT STRING | ||||||
|  |  | ||||||
|  | Context-Data ::= SEQUENCE { | ||||||
|  | 	channelId       ChannelId OPTIONAL, | ||||||
|  | 	seq-number      INTEGER OPTIONAL, | ||||||
|  | 	options	 Options, | ||||||
|  | 	conf-alg	Conf-Algs, | ||||||
|  | 	intg-alg	Intg-Algs, | ||||||
|  | 	owf-alg	 OWF-Algs | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ChannelId ::= OCTET STRING | ||||||
|  |  | ||||||
|  | Options ::= BIT STRING { | ||||||
|  | 	delegation-state (0), | ||||||
|  | 	mutual-state (1), | ||||||
|  | 	replay-det-state (2), | ||||||
|  | 	sequence-state (3), | ||||||
|  | 	conf-avail (4), | ||||||
|  | 	integ-avail (5), | ||||||
|  | 	target-certif-data-required (6) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Conf-Algs ::= CHOICE { | ||||||
|  | 	algs [0]	 SEQUENCE OF AlgorithmIdentifier, | ||||||
|  | 	null [1]	 NULL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Intg-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  | OWF-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  | Key-Estb-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  |  | ||||||
|  | SPKM-REP-TI ::= SEQUENCE { | ||||||
|  | 	responseToken    REP-TI-TOKEN, | ||||||
|  | 	certif-data      CertificationData OPTIONAL | ||||||
|  | 	  -- present if target-certif-data-required option was | ||||||
|  | }	 -- set to TRUE in SPKM-REQ | ||||||
|  |  | ||||||
|  | REP-TI-TOKEN ::= SEQUENCE { | ||||||
|  | 	rep-ti-contents  Rep-ti-contents, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	rep-ti-integ     Integrity  -- "token" is Rep-ti-contents | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Rep-ti-contents ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(512)--,   -- shall contain 0200 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	pvno [0]	 BIT STRING OPTIONAL, | ||||||
|  | 	timestamp	UTCTime OPTIONAL, -- mandatory for SPKM-2 | ||||||
|  | 	randTarg	 Random-Integer, | ||||||
|  | 	src-name [1]     Name OPTIONAL, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	rep-data	 Context-Data, | ||||||
|  | 	validity [2]     Validity  OPTIONAL, | ||||||
|  | 	key-estb-id      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	key-estb-str     BIT STRING OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-REP-IT ::= SEQUENCE { | ||||||
|  | 	responseToken    REP-IT-TOKEN, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	rep-it-integ     Integrity  -- "token" is REP-IT-TOKEN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | REP-IT-TOKEN ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(768)--,  -- shall contain 0300 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	randTarg	 Random-Integer, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	src-name	 Name OPTIONAL, | ||||||
|  | 	key-estb-rep     BIT STRING OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-ERROR ::= SEQUENCE { | ||||||
|  | 	errorToken       ERROR-TOKEN, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	integrity	Integrity  -- "token" is ERROR-TOKEN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ERROR-TOKEN ::=   SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(1024)--, -- shall contain 0400 (hex) | ||||||
|  | 	context-id       Random-Integer | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-MIC ::= SEQUENCE { | ||||||
|  | 	mic-header       Mic-Header, | ||||||
|  | 	int-cksum	BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Mic-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(257)--, -- shall contain 0101 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	snd-seq [1]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SeqNum ::= SEQUENCE { | ||||||
|  | 	num	      INTEGER, | ||||||
|  | 	dir-ind	  BOOLEAN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-WRAP ::= SEQUENCE { | ||||||
|  | 	wrap-header       Wrap-Header, | ||||||
|  | 	wrap-body	 Wrap-Body | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Wrap-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(513)--, -- shall contain 0201 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	conf-alg [1]     Conf-Alg OPTIONAL, | ||||||
|  | 	snd-seq [2]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Wrap-Body ::= SEQUENCE { | ||||||
|  | 	int-cksum	BIT STRING, | ||||||
|  | 	data	     BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Conf-Alg ::= CHOICE { | ||||||
|  | 	algId [0]	AlgorithmIdentifier, | ||||||
|  | 	null [1]	 NULL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | SPKM-DEL ::= SEQUENCE { | ||||||
|  | 	del-header       Del-Header, | ||||||
|  | 	int-cksum	BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Del-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(769)--, -- shall contain 0301 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	snd-seq [1]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | -- other types -- | ||||||
|  |  | ||||||
|  | MechType ::= OBJECT IDENTIFIER | ||||||
|  |  | ||||||
|  | SPKMInnerContextToken ::= CHOICE { | ||||||
|  | 	req    [0] SPKM-REQ, | ||||||
|  | 	rep-ti [1] SPKM-REP-TI, | ||||||
|  | 	rep-it [2] SPKM-REP-IT, | ||||||
|  | 	error  [3] SPKM-ERROR, | ||||||
|  | 	mic    [4] SPKM-MIC, | ||||||
|  | 	wrap   [5] SPKM-WRAP, | ||||||
|  | 	del    [6] SPKM-DEL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | InitialContextToken ::= [APPLICATION 0] IMPLICIT SEQUENCE { | ||||||
|  | 	thisMech	      MechType, | ||||||
|  | 	innerContextToken     SPKMInnerContextToken | ||||||
|  | }     -- when thisMech is SPKM-1 or SPKM-2 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | END | ||||||
							
								
								
									
										240
									
								
								lib/gssapi/spkm.asn1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										240
									
								
								lib/gssapi/spkm.asn1
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,240 @@ | |||||||
|  | -- from rfc2025 | ||||||
|  | -- $Id$ | ||||||
|  |  | ||||||
|  | SpkmGssTokens DEFINITIONS ::= | ||||||
|  | BEGIN | ||||||
|  |  | ||||||
|  | IMPORTS AlgorithmIdentifier, Validity, | ||||||
|  | 	Attribute, Certificate, CertificateList, CertificatePair, Name | ||||||
|  | 	FROM rfc2459 | ||||||
|  | 	AuthorizationData FROM krb5; | ||||||
|  |  | ||||||
|  | SPKM-REQ ::= SEQUENCE { | ||||||
|  | 	requestToken      REQ-TOKEN, | ||||||
|  | 	certif-data [0]   CertificationData OPTIONAL, | ||||||
|  | 	auth-data [1]     AuthorizationData OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | CertificationData ::= SEQUENCE { | ||||||
|  | 	certificationPath [0]	  CertificationPath OPTIONAL, | ||||||
|  | 	certificateRevocationList [1]  CertificateList OPTIONAL | ||||||
|  | } -- at least one of the above shall be present | ||||||
|  |  | ||||||
|  |  | ||||||
|  | CertificationPath ::= SEQUENCE { | ||||||
|  | 	userKeyId [0]	 OCTET STRING OPTIONAL, | ||||||
|  | 	userCertif [1]	Certificate OPTIONAL, | ||||||
|  | 	verifKeyId [2]	OCTET STRING OPTIONAL, | ||||||
|  | 	userVerifCertif [3]   Certificate OPTIONAL, | ||||||
|  | 	theCACertificates [4] SEQUENCE OF CertificatePair OPTIONAL | ||||||
|  | } -- Presence of [2] or [3] implies that [0] or [1] must also be | ||||||
|  |   -- present.  Presence of [4] implies that at least one of [0], [1], | ||||||
|  |   -- [2], and [3] must also be present. | ||||||
|  |  | ||||||
|  | REQ-TOKEN ::= SEQUENCE { | ||||||
|  | 	req-contents     Req-contents, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	req-integrity    Integrity  -- "token" is Req-contents | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Integrity ::= BIT STRING | ||||||
|  |   -- If corresponding algId specifies a signing algorithm, | ||||||
|  |   -- "Integrity" holds the result of applying the signing procedure | ||||||
|  |   -- specified in algId to the BER-encoded octet string which results | ||||||
|  |   -- from applying the hashing procedure (also specified in algId) to | ||||||
|  |   -- the DER-encoded octets of "token". | ||||||
|  |   -- Alternatively, if corresponding algId specifies a MACing | ||||||
|  |   -- algorithm, "Integrity" holds the result of applying the MACing | ||||||
|  |   -- procedure specified in algId to the DER-encoded octets of | ||||||
|  |   -- "token" | ||||||
|  |  | ||||||
|  | Req-contents ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(256)--,  -- shall contain 0100 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	pvno	     BIT STRING, | ||||||
|  | 	timestamp	UTCTime OPTIONAL, -- mandatory for SPKM-2 | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	src-name [0]     Name OPTIONAL, | ||||||
|  | 	req-data	 Context-Data, | ||||||
|  | 	validity [1]     Validity OPTIONAL, | ||||||
|  | 	key-estb-set     Key-Estb-Algs, | ||||||
|  | 	key-estb-req     BIT STRING OPTIONAL, | ||||||
|  | 	key-src-bind     OCTET STRING OPTIONAL | ||||||
|  | 	   -- This field must be present for the case of SPKM-2 | ||||||
|  | 	   -- unilateral authen. if the K-ALG in use does not provide | ||||||
|  | 	   -- such a binding (but is optional for all other cases). | ||||||
|  | 	   -- The octet string holds the result of applying the | ||||||
|  | 	   -- mandatory hashing procedure (in MANDATORY I-ALG; | ||||||
|  | 	   -- see Section 2.1) as follows:  MD5(src || context_key), | ||||||
|  | 	   -- where "src" is the DER-encoded octets of src-name, | ||||||
|  | 	   -- "context-key" is the symmetric key (i.e., the | ||||||
|  | 	   -- unprotected version of what is transmitted in | ||||||
|  | 	   -- key-estb-req), and "||" is the concatenation operation. | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Random-Integer ::= BIT STRING | ||||||
|  |  | ||||||
|  | Context-Data ::= SEQUENCE { | ||||||
|  | 	channelId       ChannelId OPTIONAL, | ||||||
|  | 	seq-number      INTEGER OPTIONAL, | ||||||
|  | 	options	 Options, | ||||||
|  | 	conf-alg	Conf-Algs, | ||||||
|  | 	intg-alg	Intg-Algs, | ||||||
|  | 	owf-alg	 OWF-Algs | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ChannelId ::= OCTET STRING | ||||||
|  |  | ||||||
|  | Options ::= BIT STRING { | ||||||
|  | 	delegation-state (0), | ||||||
|  | 	mutual-state (1), | ||||||
|  | 	replay-det-state (2), | ||||||
|  | 	sequence-state (3), | ||||||
|  | 	conf-avail (4), | ||||||
|  | 	integ-avail (5), | ||||||
|  | 	target-certif-data-required (6) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Conf-Algs ::= CHOICE { | ||||||
|  | 	algs [0]	 SEQUENCE OF AlgorithmIdentifier, | ||||||
|  | 	null [1]	 NULL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Intg-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  | OWF-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  | Key-Estb-Algs ::= SEQUENCE OF AlgorithmIdentifier | ||||||
|  |  | ||||||
|  |  | ||||||
|  | SPKM-REP-TI ::= SEQUENCE { | ||||||
|  | 	responseToken    REP-TI-TOKEN, | ||||||
|  | 	certif-data      CertificationData OPTIONAL | ||||||
|  | 	  -- present if target-certif-data-required option was | ||||||
|  | }	 -- set to TRUE in SPKM-REQ | ||||||
|  |  | ||||||
|  | REP-TI-TOKEN ::= SEQUENCE { | ||||||
|  | 	rep-ti-contents  Rep-ti-contents, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	rep-ti-integ     Integrity  -- "token" is Rep-ti-contents | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Rep-ti-contents ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(512)--,   -- shall contain 0200 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	pvno [0]	 BIT STRING OPTIONAL, | ||||||
|  | 	timestamp	UTCTime OPTIONAL, -- mandatory for SPKM-2 | ||||||
|  | 	randTarg	 Random-Integer, | ||||||
|  | 	src-name [1]     Name OPTIONAL, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	rep-data	 Context-Data, | ||||||
|  | 	validity [2]     Validity  OPTIONAL, | ||||||
|  | 	key-estb-id      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	key-estb-str     BIT STRING OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-REP-IT ::= SEQUENCE { | ||||||
|  | 	responseToken    REP-IT-TOKEN, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	rep-it-integ     Integrity  -- "token" is REP-IT-TOKEN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | REP-IT-TOKEN ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(768)--,  -- shall contain 0300 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	randSrc	  Random-Integer, | ||||||
|  | 	randTarg	 Random-Integer, | ||||||
|  | 	targ-name	Name, | ||||||
|  | 	src-name	 Name OPTIONAL, | ||||||
|  | 	key-estb-rep     BIT STRING OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-ERROR ::= SEQUENCE { | ||||||
|  | 	errorToken       ERROR-TOKEN, | ||||||
|  | 	algId	    AlgorithmIdentifier, | ||||||
|  | 	integrity	Integrity  -- "token" is ERROR-TOKEN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ERROR-TOKEN ::=   SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(1024)--, -- shall contain 0400 (hex) | ||||||
|  | 	context-id       Random-Integer | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-MIC ::= SEQUENCE { | ||||||
|  | 	mic-header       Mic-Header, | ||||||
|  | 	int-cksum	BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Mic-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(257)--, -- shall contain 0101 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	snd-seq [1]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SeqNum ::= SEQUENCE { | ||||||
|  | 	num	      INTEGER, | ||||||
|  | 	dir-ind	  BOOLEAN | ||||||
|  | } | ||||||
|  |  | ||||||
|  | SPKM-WRAP ::= SEQUENCE { | ||||||
|  | 	wrap-header       Wrap-Header, | ||||||
|  | 	wrap-body	 Wrap-Body | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Wrap-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(513)--, -- shall contain 0201 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	conf-alg [1]     Conf-Alg OPTIONAL, | ||||||
|  | 	snd-seq [2]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Wrap-Body ::= SEQUENCE { | ||||||
|  | 	int-cksum	BIT STRING, | ||||||
|  | 	data	     BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Conf-Alg ::= CHOICE { | ||||||
|  | 	algId [0]	AlgorithmIdentifier, | ||||||
|  | 	null [1]	 NULL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | SPKM-DEL ::= SEQUENCE { | ||||||
|  | 	del-header       Del-Header, | ||||||
|  | 	int-cksum	BIT STRING | ||||||
|  | } | ||||||
|  |  | ||||||
|  | Del-Header ::= SEQUENCE { | ||||||
|  | 	tok-id	   INTEGER --(769)--, -- shall contain 0301 (hex) | ||||||
|  | 	context-id       Random-Integer, | ||||||
|  | 	int-alg [0]      AlgorithmIdentifier OPTIONAL, | ||||||
|  | 	snd-seq [1]      SeqNum OPTIONAL | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | -- other types -- | ||||||
|  |  | ||||||
|  | MechType ::= OBJECT IDENTIFIER | ||||||
|  |  | ||||||
|  | SPKMInnerContextToken ::= CHOICE { | ||||||
|  | 	req    [0] SPKM-REQ, | ||||||
|  | 	rep-ti [1] SPKM-REP-TI, | ||||||
|  | 	rep-it [2] SPKM-REP-IT, | ||||||
|  | 	error  [3] SPKM-ERROR, | ||||||
|  | 	mic    [4] SPKM-MIC, | ||||||
|  | 	wrap   [5] SPKM-WRAP, | ||||||
|  | 	del    [6] SPKM-DEL | ||||||
|  | } | ||||||
|  |  | ||||||
|  | InitialContextToken ::= [APPLICATION 0] IMPLICIT SEQUENCE { | ||||||
|  | 	thisMech	      MechType, | ||||||
|  | 	innerContextToken     SPKMInnerContextToken | ||||||
|  | }     -- when thisMech is SPKM-1 or SPKM-2 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | END | ||||||
		Reference in New Issue
	
	Block a user
	 Love Hörnquist Åstrand
					Love Hörnquist Åstrand