1-- PKCS10 ASN module 2 3PKCS5 4DEFINITIONS IMPLICIT TAGS ::= 5BEGIN 6-- EXPORTS All -- 7 8IMPORTS 9 -- Directory Information Framework (X.501) 10 Name, Attribute, Attributes 11 FROM InformationFramework 12 13 -- Directory Authentication Framework (X.509) 14 AlgorithmIdentifier, SubjectPublicKeyInfo 15 FROM AuthenticationFramework 16 17 -- CryptographicMessageSyntax (draft-ietf-smime-cms-13) 18 Signature, SignatureAlgorithmIdentifier 19 FROM CryptographicMessageSyntax 20; 21 22CertificationRequestInfo ::= SEQUENCE { 23 version VersionP10, 24 subject Name, 25 subjectPublicKeyInfo SubjectPublicKeyInfo, 26 attributes [0] IMPLICIT Attributes 27} 28 29VersionP10 ::= INTEGER 30-- redefined, same as InformationFramework (sm_x501if.asn) 31-- Attributes ::= SET OF Attribute 32 33-- Per PKCS10 spec 34CertificationRequest ::= SEQUENCE { 35 certificationRequestInfo CertificationRequestInfo, 36 signatureAlgorithm SignatureAlgorithmIdentifier, 37 signature Signature 38} 39 40-- This is what we actually use to avoid unnecessary 41-- setup and teardown of CertificationRequestInfo when 42-- signing and verifying 43CertificationRequestSigned ::= SEQUENCE { 44 certificationRequestInfo ANY, 45 signatureAlgorithm SignatureAlgorithmIdentifier, 46 signature Signature 47} 48 49-- duplicated from CryptographicMessageSyntax 50-- SignatureAlgorithmIdentifier ::= AlgorithmIdentifier 51-- Signature ::= BIT STRING 52 53END -- PKCS10 54