Imported Upstream version 1.0.0
[platform/upstream/iotivity.git] / extlibs / asn1cert / certificate.asn
1 CERTIFICATE DEFINITIONS ::= BEGIN\r
2 \r
3 Certificate ::= SEQUENCE {\r
4         tbsCertificate      TBSCertificate,\r
5         signatureAlgorithm  AlgorithmIdentifier,\r
6         signatureValue      BIT STRING\r
7 }\r
8 \r
9 AlgorithmIdentifier ::= SEQUENCE {\r
10         algorithm       OBJECT IDENTIFIER,\r
11         id-ecPublicKey  OBJECT IDENTIFIER OPTIONAL,\r
12         nul                             NULL OPTIONAL\r
13 }\r
14 \r
15 TBSCertificate ::= SEQUENCE {\r
16         version         [0]    EXPLICIT Version DEFAULT v1,\r
17         serialNumber           CertificateSerialNumber,\r
18         signature              AlgorithmIdentifier,\r
19         issuer                 Name,\r
20         validity               Validity,\r
21         subject                Name,\r
22         subjectPublicKeyInfo   SubjectPublicKeyInfo\r
23 }\r
24 \r
25 Version  ::=  INTEGER  {  v1(0), v2(1), v3(2)  }\r
26 \r
27 CertificateSerialNumber ::= INTEGER\r
28 \r
29 Name ::= RDNSequence\r
30 \r
31 RDNSequence ::= SEQUENCE OF RelativeDistinguishedName\r
32 \r
33 RelativeDistinguishedName ::= SET OF AttributeTypeAndValue\r
34 \r
35 AttributeTypeAndValue ::= SEQUENCE {\r
36      type     AttributeType,\r
37      value    AttributeValue}\r
38 \r
39 AttributeType ::= OBJECT IDENTIFIER\r
40 \r
41 AttributeValue ::= UTF8String\r
42 \r
43 Validity ::= SEQUENCE {\r
44         notBefore   Time,\r
45         notAfter    Time\r
46 }\r
47 \r
48 Time ::= UTCTime\r
49 \r
50 SubjectPublicKeyInfo ::= SEQUENCE {\r
51         algorithm           AlgorithmIdentifier,\r
52         subjectPublicKey    BIT STRING\r
53 }\r
54 \r
55 ECDSA-Sig-Value ::= SEQUENCE {\r
56           r  INTEGER,\r
57           s  INTEGER\r
58 }\r
59 \r
60 END\r
61