1-- Extracted from RFC5652
2AttributeCertificateVersion1
3    { iso(1) member-body(2) us(840) rsadsi(113549)
4      pkcs(1) pkcs-9(9) smime(16) modules(0) v1AttrCert(15) }
5
6DEFINITIONS IMPLICIT TAGS ::=
7BEGIN
8
9-- EXPORTS All
10
11IMPORTS
12  -- Directory Authentication Framework (X.509)
13        AttCertValidityPeriod, Extensions, IssuerSerial
14           FROM AuthenticationFramework { joint-iso-itu-t ds(5)
15                module(1) authenticationFramework(7) 3 }
16
17        GeneralNames
18           FROM CertificateExtensions { joint-iso-ccitt ds(5)
19                module(1) certificateExtensions(26) 0 }
20
21        UniqueIdentifier
22           FROM SelectedAttributeTypes { joint-iso-itu-t ds(5) module(1)
23                selectedAttributeTypes(5) 3 };
24
25
26-- Definition extracted from X.509-1997 [X.509-97], but
27-- different type names are used to avoid collisions.
28
29AttributeCertificateV1 ::= SEQUENCE {
30  acInfo AttributeCertificateInfoV1,
31  signatureAlgorithm AlgorithmIdentifier,
32  signature BIT STRING }
33
34AttributeCertificateInfoV1 ::= SEQUENCE {
35  version AttCertVersionV1 DEFAULT v1,
36  subject CHOICE {
37    baseCertificateID [0] IssuerSerial,
38      -- associated with a Public Key Certificate
39    subjectName [1] GeneralNames },
40      -- associated with a name
41  issuer GeneralNames,
42  signature AlgorithmIdentifier,
43  serialNumber CertificateSerialNumber,
44  attCertValidityPeriod AttCertValidityPeriod,
45  attributes SEQUENCE OF Attribute,
46  issuerUniqueID UniqueIdentifier OPTIONAL,
47  extensions Extensions OPTIONAL }
48
49AttCertVersionV1 ::= INTEGER { v1(0) }
50
51END -- of AttributeCertificateVersion1
52