OLD | NEW |
---|---|
1 This is a very basic TBSCertificate. It is valid from the perspective of | 1 This is a very basic TBSCertificate. It is valid from the perspective of |
2 ParseTbsCertificate(), however its sub-fields are mainly bogus. This | 2 ParseTbsCertificate(), however its sub-fields are mainly bogus. This |
3 TBSCertificate contains no optional fields (no issuerUniqueID, subjectUniqueID, | 3 TBSCertificate contains no optional fields (no issuerUniqueID, subjectUniqueID, |
4 extensions) | 4 extensions) |
mattm
2015/08/21 21:51:05
does contain extensions?
eroman
2015/08/21 23:20:14
Indeed, the comment is wrong. Should say the oppos
| |
5 | 5 |
6 | 6 |
7 | 7 |
8 -----BEGIN TBS CERTIFICATE----- | 8 -----BEGIN TBS CERTIFICATE----- |
9 MCigAwIBAgIBATADBAEBMAMEAQUwAwQBCDADBAEKMAMEAfOjBTADBAHd | 9 MEOgAwIBAgIBATADBAEBMAMEAQUwHhcNMTIxMDE4MDMxMjAwWhcNMTMxMDE4MTQ1OTU5WjADBAG |
10 DMAMEAfOjBTADBAHd | |
10 -----END TBS CERTIFICATE----- | 11 -----END TBS CERTIFICATE----- |
11 | 12 |
12 $ openssl asn1parse -i < [TBS CERTIFICATE] | 13 $ openssl asn1parse -i < [TBS CERTIFICATE] |
13 0:d=0 hl=2 l= 40 cons: SEQUENCE | 14 0:d=0 hl=2 l= 67 cons: SEQUENCE |
14 2:d=1 hl=2 l= 3 cons: cont [ 0 ] | 15 2:d=1 hl=2 l= 3 cons: cont [ 0 ] |
15 4:d=2 hl=2 l= 1 prim: INTEGER :02 | 16 4:d=2 hl=2 l= 1 prim: INTEGER :02 |
16 7:d=1 hl=2 l= 1 prim: INTEGER :01 | 17 7:d=1 hl=2 l= 1 prim: INTEGER :01 |
17 10:d=1 hl=2 l= 3 cons: SEQUENCE | 18 10:d=1 hl=2 l= 3 cons: SEQUENCE |
18 12:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:01 | 19 12:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:01 |
19 15:d=1 hl=2 l= 3 cons: SEQUENCE | 20 15:d=1 hl=2 l= 3 cons: SEQUENCE |
20 17:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:05 | 21 17:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:05 |
21 20:d=1 hl=2 l= 3 cons: SEQUENCE | 22 20:d=1 hl=2 l= 30 cons: SEQUENCE |
22 22:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:08 | 23 22:d=2 hl=2 l= 13 prim: UTCTIME :121018031200Z |
23 25:d=1 hl=2 l= 3 cons: SEQUENCE | 24 37:d=2 hl=2 l= 13 prim: UTCTIME :131018145959Z |
24 27:d=2 hl=2 l= 1 prim: OCTET STRING : | 25 52:d=1 hl=2 l= 3 cons: SEQUENCE |
25 | 26 54:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:83 |
26 30:d=1 hl=2 l= 3 cons: SEQUENCE | 27 57:d=1 hl=2 l= 3 cons: SEQUENCE |
27 32:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:F3 | 28 59:d=2 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:F3 |
28 35:d=1 hl=2 l= 5 cons: cont [ 3 ] | 29 62:d=1 hl=2 l= 5 cons: cont [ 3 ] |
29 37:d=2 hl=2 l= 3 cons: SEQUENCE | 30 64:d=2 hl=2 l= 3 cons: SEQUENCE |
30 39:d=3 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:DD | 31 66:d=3 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:DD |
31 | 32 |
32 | 33 |
33 | 34 |
34 -----BEGIN SERIAL NUMBER----- | 35 -----BEGIN SERIAL NUMBER----- |
35 AQ== | 36 AQ== |
36 -----END SERIAL NUMBER----- | 37 -----END SERIAL NUMBER----- |
37 | 38 |
38 | 39 |
39 | 40 |
40 -----BEGIN SIGNATURE ALGORITHM----- | 41 -----BEGIN SIGNATURE ALGORITHM----- |
41 MAMEAQE= | 42 MAMEAQE= |
42 -----END SIGNATURE ALGORITHM----- | 43 -----END SIGNATURE ALGORITHM----- |
43 | 44 |
44 $ openssl asn1parse -i < [SIGNATURE ALGORITHM] | 45 $ openssl asn1parse -i < [SIGNATURE ALGORITHM] |
45 0:d=0 hl=2 l= 3 cons: SEQUENCE | 46 0:d=0 hl=2 l= 3 cons: SEQUENCE |
46 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:01 | 47 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:01 |
47 | 48 |
48 | 49 |
49 | 50 |
50 -----BEGIN ISSUER----- | 51 -----BEGIN ISSUER----- |
51 MAMEAQU= | 52 MAMEAQU= |
52 -----END ISSUER----- | 53 -----END ISSUER----- |
53 | 54 |
54 $ openssl asn1parse -i < [ISSUER] | 55 $ openssl asn1parse -i < [ISSUER] |
55 0:d=0 hl=2 l= 3 cons: SEQUENCE | 56 0:d=0 hl=2 l= 3 cons: SEQUENCE |
56 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:05 | 57 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:05 |
57 | 58 |
58 | 59 |
59 | 60 |
60 -----BEGIN VALIDITY----- | 61 -----BEGIN VALIDITY NOTBEFORE----- |
61 MAMEAQg= | 62 eWVhcj0yMDEyLCBtb250aD0xMCwgZGF5PTE4LCBob3Vycz0zLCBtaW51dGVzPTEyLCBzZWNvbmR |
62 -----END VALIDITY----- | 63 zPTA= |
64 -----END VALIDITY NOTBEFORE----- | |
63 | 65 |
64 $ openssl asn1parse -i < [VALIDITY] | 66 VALIDITY NOTBEFORE: year=2012, month=10, day=18, hours=3, minutes=12, seconds=0 |
65 0:d=0 hl=2 l= 3 cons: SEQUENCE | 67 |
66 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:08 | 68 |
69 | |
70 -----BEGIN VALIDITY NOTAFTER----- | |
71 eWVhcj0yMDEzLCBtb250aD0xMCwgZGF5PTE4LCBob3Vycz0xNCwgbWludXRlcz01OSwgc2Vjb25 | |
72 kcz01OQ== | |
73 -----END VALIDITY NOTAFTER----- | |
74 | |
75 VALIDITY NOTAFTER: year=2013, month=10, day=18, hours=14, minutes=59, seconds=59 | |
67 | 76 |
68 | 77 |
69 | 78 |
70 -----BEGIN SUBJECT----- | 79 -----BEGIN SUBJECT----- |
71 MAMEAQo= | 80 MAMEAYM= |
72 -----END SUBJECT----- | 81 -----END SUBJECT----- |
73 | 82 |
74 $ openssl asn1parse -i < [SUBJECT] | 83 $ openssl asn1parse -i < [SUBJECT] |
75 0:d=0 hl=2 l= 3 cons: SEQUENCE | 84 0:d=0 hl=2 l= 3 cons: SEQUENCE |
76 2:d=1 hl=2 l= 1 prim: OCTET STRING : | 85 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:83 |
77 | 86 |
78 | 87 |
79 | 88 |
80 -----BEGIN SPKI----- | 89 -----BEGIN SPKI----- |
81 MAMEAfM= | 90 MAMEAfM= |
82 -----END SPKI----- | 91 -----END SPKI----- |
83 | 92 |
84 $ openssl asn1parse -i < [SPKI] | 93 $ openssl asn1parse -i < [SPKI] |
85 0:d=0 hl=2 l= 3 cons: SEQUENCE | 94 0:d=0 hl=2 l= 3 cons: SEQUENCE |
86 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:F3 | 95 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:F3 |
87 | 96 |
88 | 97 |
89 | 98 |
90 -----BEGIN EXTENSIONS----- | 99 -----BEGIN EXTENSIONS----- |
91 MAMEAd0= | 100 MAMEAd0= |
92 -----END EXTENSIONS----- | 101 -----END EXTENSIONS----- |
93 | 102 |
94 $ openssl asn1parse -i < [EXTENSIONS] | 103 $ openssl asn1parse -i < [EXTENSIONS] |
95 0:d=0 hl=2 l= 3 cons: SEQUENCE | 104 0:d=0 hl=2 l= 3 cons: SEQUENCE |
96 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:DD | 105 2:d=1 hl=2 l= 1 prim: OCTET STRING [HEX DUMP]:DD |
OLD | NEW |