📄 cms.asn1
字号:
-- From RFC 3369 ---- $Id: CMS.asn1 18054 2006-09-07 12:20:42Z lha $ --CMS DEFINITIONS ::= BEGINIMPORTS CertificateSerialNumber, AlgorithmIdentifier, Name, Attribute, Certificate, Name, SubjectKeyIdentifier FROM rfc2459 heim_any, heim_any_set FROM heim;id-pkcs7 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs7(7) }id-pkcs7-data OBJECT IDENTIFIER ::= { id-pkcs7 1 }id-pkcs7-signedData OBJECT IDENTIFIER ::= { id-pkcs7 2 }id-pkcs7-envelopedData OBJECT IDENTIFIER ::= { id-pkcs7 3 }id-pkcs7-signedAndEnvelopedData OBJECT IDENTIFIER ::= { id-pkcs7 4 }id-pkcs7-digestedData OBJECT IDENTIFIER ::= { id-pkcs7 5 }id-pkcs7-encryptedData OBJECT IDENTIFIER ::= { id-pkcs7 6 }CMSVersion ::= INTEGER { CMSVersion_v0(0), CMSVersion_v1(1), CMSVersion_v2(2), CMSVersion_v3(3), CMSVersion_v4(4)}DigestAlgorithmIdentifier ::= AlgorithmIdentifierDigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifierSignatureAlgorithmIdentifier ::= AlgorithmIdentifierContentType ::= OBJECT IDENTIFIERMessageDigest ::= OCTET STRINGContentInfo ::= SEQUENCE { contentType ContentType, content [0] EXPLICIT heim_any OPTIONAL -- DEFINED BY contentType }EncapsulatedContentInfo ::= SEQUENCE { eContentType ContentType, eContent [0] EXPLICIT OCTET STRING OPTIONAL}CertificateSet ::= SET OF heim_anyCertificateList ::= CertificateCertificateRevocationLists ::= SET OF CertificateListIssuerAndSerialNumber ::= SEQUENCE { issuer Name, serialNumber CertificateSerialNumber}-- RecipientIdentifier is same as SignerIdentifier, -- lets glue them togheter and save some bytes and share code for themCMSIdentifier ::= CHOICE { issuerAndSerialNumber IssuerAndSerialNumber, subjectKeyIdentifier [0] SubjectKeyIdentifier}SignerIdentifier ::= CMSIdentifierRecipientIdentifier ::= CMSIdentifier--- CMSAttributes are the combined UnsignedAttributes and SignedAttributes--- to store space and share codeCMSAttributes ::= SET OF Attribute -- SIZE (1..MAX) SignatureValue ::= OCTET STRINGSignerInfo ::= SEQUENCE { version CMSVersion, sid SignerIdentifier, digestAlgorithm DigestAlgorithmIdentifier, signedAttrs [0] IMPLICIT -- CMSAttributes -- SET OF Attribute OPTIONAL, signatureAlgorithm SignatureAlgorithmIdentifier, signature SignatureValue, unsignedAttrs [1] IMPLICIT -- CMSAttributes -- SET OF Attribute OPTIONAL}SignerInfos ::= SET OF SignerInfoSignedData ::= SEQUENCE { version CMSVersion, digestAlgorithms DigestAlgorithmIdentifiers, encapContentInfo EncapsulatedContentInfo, certificates [0] IMPLICIT -- CertificateSet -- SET OF heim_any OPTIONAL, crls [1] IMPLICIT -- CertificateRevocationLists -- heim_any OPTIONAL, signerInfos SignerInfos}OriginatorInfo ::= SEQUENCE { certs [0] IMPLICIT -- CertificateSet -- SET OF heim_any OPTIONAL, crls [1] IMPLICIT --CertificateRevocationLists -- heim_any OPTIONAL}KeyEncryptionAlgorithmIdentifier ::= AlgorithmIdentifierContentEncryptionAlgorithmIdentifier ::= AlgorithmIdentifierEncryptedKey ::= OCTET STRINGKeyTransRecipientInfo ::= SEQUENCE { version CMSVersion, -- always set to 0 or 2 rid RecipientIdentifier, keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier, encryptedKey EncryptedKey}RecipientInfo ::= KeyTransRecipientInfoRecipientInfos ::= SET OF RecipientInfoEncryptedContent ::= OCTET STRINGEncryptedContentInfo ::= SEQUENCE { contentType ContentType, contentEncryptionAlgorithm ContentEncryptionAlgorithmIdentifier, encryptedContent [0] IMPLICIT OCTET STRING OPTIONAL}UnprotectedAttributes ::= SET OF Attribute -- SIZE (1..MAX)CMSEncryptedData ::= SEQUENCE { version CMSVersion, encryptedContentInfo EncryptedContentInfo, unprotectedAttrs [1] IMPLICIT -- UnprotectedAttributes -- heim_any OPTIONAL}EnvelopedData ::= SEQUENCE { version CMSVersion, originatorInfo [0] IMPLICIT -- OriginatorInfo -- heim_any OPTIONAL, recipientInfos RecipientInfos, encryptedContentInfo EncryptedContentInfo, unprotectedAttrs [1] IMPLICIT -- UnprotectedAttributes -- heim_any OPTIONAL}-- Data ::= OCTET STRINGCMSRC2CBCParameter ::= SEQUENCE { rc2ParameterVersion INTEGER (0..4294967295), iv OCTET STRING -- exactly 8 octets}CMSCBCParameter ::= OCTET STRINGEND
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -