]> git.saurik.com Git - apple/security.git/blob - OSX/shared_regressions/si-82-sectrust-ct.c
Security-57337.50.23.tar.gz
[apple/security.git] / OSX / shared_regressions / si-82-sectrust-ct.c
1 /*
2 * si-82-sectrust-ct.c
3 * Security
4 *
5 * Copyright (c) 2014 Apple Inc. All Rights Reserved.
6 *
7 */
8
9 #include <CoreFoundation/CoreFoundation.h>
10 #include <Security/SecCertificatePriv.h>
11 #include <Security/SecTrustPriv.h>
12 #include <Security/SecPolicy.h>
13 #include <stdlib.h>
14 #include <unistd.h>
15 #include <utilities/SecCFRelease.h>
16 #include <utilities/SecCFWrappers.h>
17
18 #include "shared_regressions.h"
19
20 #include "si-82-sectrust-ct-certs.h"
21
22
23 static void test_ct_trust(CFArrayRef certs, CFArrayRef scts, CFTypeRef ocspresponses, CFArrayRef anchors, CFArrayRef trustedLogs, CFStringRef hostname, bool expected, const char *test_name)
24 {
25 CFDateRef date=NULL;
26 CFArrayRef policies=NULL;
27 SecPolicyRef policy=NULL;
28 SecTrustRef trust=NULL;
29 SecTrustResultType trustResult;
30 CFCalendarRef cal = NULL;
31 CFAbsoluteTime at;
32 CFDictionaryRef results;
33 CFArrayRef properties;
34
35
36
37 isnt(policy = SecPolicyCreateSSL(false, hostname), NULL, "create policy");
38 isnt(policies = CFArrayCreate(kCFAllocatorDefault, (const void **)&policy, 1, &kCFTypeArrayCallBacks), NULL, "create policies");
39 ok_status(SecTrustCreateWithCertificates(certs, policies, &trust), "create trust");
40
41 isnt(cal = CFCalendarCreateWithIdentifier(kCFAllocatorDefault, kCFGregorianCalendar), NULL, "create calendar");
42 ok(CFCalendarComposeAbsoluteTime(cal, &at, "yMd", 2015, 3, 7), "create verify absolute time");
43 isnt(date = CFDateCreate(kCFAllocatorDefault, at), NULL, "create verify date");
44
45 ok_status(SecTrustSetAnchorCertificates(trust, anchors), "set anchors");
46
47 ok_status(SecTrustSetSignedCertificateTimestamps(trust, scts), "set standalone SCTs");;
48
49 if(trustedLogs) {
50 ok_status(SecTrustSetTrustedLogs(trust, trustedLogs), "set trusted logs");
51 }
52
53 if(ocspresponses) {
54 ok_status(SecTrustSetOCSPResponse(trust, ocspresponses), "set ocsp responses");
55 }
56
57 ok_status(SecTrustSetVerifyDate(trust, date), "set date");
58 ok_status(SecTrustEvaluate(trust, &trustResult), "evaluate trust");
59 ok(trustResult == kSecTrustResultUnspecified, "trustResult 4 expected (got %d)",
60 (int)trustResult);
61
62 results = SecTrustCopyResult(trust);
63
64 CFTypeRef ct = CFDictionaryGetValue(results, kSecTrustCertificateTransparency);
65 bool rv = false;
66 if (ct && CFGetTypeID(ct) == CFBooleanGetTypeID()) {
67 rv = CFBooleanGetValue((CFBooleanRef)ct);
68 }
69 ok((rv == expected), "unexpected CT result (%s)", test_name);
70
71 #if 0
72 // For test debugging purposes:
73 if(ct) {
74 printf("CT result:\n");
75 CFShow(ct);
76 } else {
77 printf("no CT result\n");
78 }
79 #endif
80
81 #if 0
82 // for later: we will want to check that EV result abide by CT rules
83
84 CFTypeRef ev = CFDictionaryGetValue(results, kSecTrustExtendedValidation);
85
86 if(ev) {
87 printf("EV result:\n");
88 CFShow(ev);
89 } else {
90 printf("no EV result\n");
91 }
92 #endif
93
94 properties = SecTrustCopyProperties(trust);
95
96 CFReleaseSafe(policy);
97 CFReleaseSafe(policies);
98 CFReleaseSafe(trust);
99 CFReleaseSafe(date);
100 CFReleaseSafe(cal);
101 CFReleaseSafe(results);
102 CFReleaseSafe(properties);
103 }
104
105 static
106 unsigned char CA_alpha_cert_der[] = {
107 0x30, 0x82, 0x02, 0xc7, 0x30, 0x82, 0x02, 0x30, 0xa0, 0x03, 0x02, 0x01,
108 0x02, 0x02, 0x01, 0x01, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
109 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x52, 0x31, 0x0b, 0x30,
110 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
111 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
112 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
113 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
114 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
115 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
116 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
117 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
118 0x17, 0x0d, 0x32, 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30,
119 0x30, 0x30, 0x5a, 0x30, 0x52, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
120 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03,
121 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d,
122 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20, 0x43, 0x41, 0x31, 0x13,
123 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c,
124 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06,
125 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74,
126 0x69, 0x6e, 0x6f, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86,
127 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d,
128 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xee, 0x58, 0x5c, 0xf8,
129 0x95, 0x77, 0x15, 0x42, 0xcb, 0x3a, 0x42, 0x07, 0x31, 0x69, 0xea, 0xa6,
130 0x7e, 0x73, 0x1c, 0x7c, 0x68, 0x2a, 0x07, 0xdc, 0xc2, 0x15, 0xed, 0xef,
131 0x06, 0x3f, 0x94, 0x56, 0xa7, 0xce, 0x34, 0x59, 0xeb, 0x9f, 0xa8, 0xf1,
132 0x12, 0x18, 0x57, 0xc2, 0xe5, 0xce, 0x69, 0x30, 0xbe, 0x6c, 0x45, 0x89,
133 0x9b, 0x1a, 0x74, 0xbf, 0xe4, 0x33, 0xca, 0xf7, 0x1e, 0xb7, 0x7d, 0x94,
134 0x90, 0x73, 0x51, 0xd4, 0x01, 0x22, 0x4f, 0x4e, 0x9d, 0x78, 0x1d, 0x7c,
135 0x18, 0x3a, 0x99, 0x64, 0x9c, 0xf0, 0x10, 0x7b, 0xd2, 0xe9, 0x86, 0x1f,
136 0x45, 0xc9, 0x86, 0x6c, 0x48, 0x5e, 0xab, 0x3d, 0xfb, 0xa6, 0xef, 0x45,
137 0x5e, 0x23, 0x66, 0x8a, 0xd1, 0x61, 0x5d, 0x6c, 0x5e, 0x1d, 0xcf, 0xcc,
138 0x54, 0xac, 0xf9, 0xca, 0xa8, 0xa7, 0x2d, 0xd1, 0xbf, 0xd8, 0xc7, 0xde,
139 0x12, 0x68, 0x86, 0x5d, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xac,
140 0x30, 0x81, 0xa9, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16,
141 0x04, 0x14, 0xdc, 0x16, 0x44, 0x15, 0x3e, 0x53, 0x27, 0xd8, 0x68, 0x66,
142 0x41, 0x40, 0x88, 0x90, 0xe4, 0x4e, 0x0a, 0xda, 0x08, 0xa9, 0x30, 0x7a,
143 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x73, 0x30, 0x71, 0x80, 0x14, 0xdc,
144 0x16, 0x44, 0x15, 0x3e, 0x53, 0x27, 0xd8, 0x68, 0x66, 0x41, 0x40, 0x88,
145 0x90, 0xe4, 0x4e, 0x0a, 0xda, 0x08, 0xa9, 0xa1, 0x56, 0xa4, 0x54, 0x30,
146 0x52, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
147 0x55, 0x53, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c,
148 0x11, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74,
149 0x65, 0x73, 0x74, 0x20, 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
150 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72,
151 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07,
152 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x82,
153 0x01, 0x01, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05, 0x30,
154 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
155 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x96,
156 0xeb, 0xd2, 0xcb, 0x18, 0x96, 0x4d, 0x63, 0xa5, 0xf4, 0x41, 0x18, 0xd6,
157 0x52, 0x2a, 0xcf, 0xb2, 0x13, 0x5b, 0x44, 0x95, 0x17, 0xc3, 0x93, 0x4c,
158 0x9b, 0x37, 0xdf, 0xa5, 0x8d, 0x9f, 0x34, 0x63, 0x93, 0xb2, 0x13, 0x28,
159 0x0c, 0x17, 0xc6, 0xe9, 0x1d, 0xa9, 0xba, 0x4f, 0x7a, 0x58, 0x8d, 0x61,
160 0xf5, 0xb4, 0x36, 0x25, 0xf9, 0x14, 0x38, 0x00, 0x53, 0x97, 0x98, 0x2e,
161 0xd3, 0x56, 0xfd, 0x5d, 0x47, 0x97, 0x5c, 0xeb, 0xd8, 0x39, 0x2e, 0x77,
162 0xd9, 0x44, 0x43, 0x8c, 0x11, 0x10, 0x93, 0x84, 0x41, 0x02, 0x5f, 0x85,
163 0x28, 0xe7, 0xd3, 0x78, 0x76, 0x21, 0x82, 0x4c, 0xf5, 0xee, 0x87, 0x5d,
164 0x9b, 0x78, 0x3a, 0x88, 0xeb, 0x65, 0xd6, 0x65, 0x76, 0x23, 0x32, 0xbf,
165 0xaa, 0xfc, 0xe8, 0x9b, 0xad, 0x8d, 0xec, 0x22, 0x3b, 0x44, 0x4d, 0x8d,
166 0xf8, 0x9b, 0x68, 0x2b, 0xa3, 0x53, 0xae
167 };
168
169
170 static
171 unsigned char CA_beta_cert_der[] = {
172 0x30, 0x82, 0x02, 0xc7, 0x30, 0x82, 0x02, 0x30, 0xa0, 0x03, 0x02, 0x01,
173 0x02, 0x02, 0x01, 0x01, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
174 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x52, 0x31, 0x0b, 0x30,
175 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
176 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
177 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
178 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
179 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
180 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
181 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
182 0x35, 0x30, 0x33, 0x30, 0x35, 0x30, 0x30, 0x33, 0x34, 0x33, 0x33, 0x5a,
183 0x17, 0x0d, 0x31, 0x36, 0x30, 0x33, 0x30, 0x34, 0x30, 0x30, 0x33, 0x34,
184 0x33, 0x33, 0x5a, 0x30, 0x52, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
185 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03,
186 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d,
187 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20, 0x43, 0x41, 0x31, 0x13,
188 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c,
189 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06,
190 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74,
191 0x69, 0x6e, 0x6f, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86,
192 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d,
193 0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xca, 0xab, 0x48, 0xae,
194 0xd3, 0x7a, 0x27, 0x8b, 0x7c, 0x11, 0xb5, 0x73, 0xdb, 0x23, 0xba, 0xfc,
195 0xb3, 0x7a, 0x49, 0x92, 0xd3, 0x2d, 0xbe, 0x31, 0x6b, 0x53, 0xd3, 0x78,
196 0x8b, 0xf3, 0xc9, 0x77, 0x66, 0x53, 0xb1, 0xa2, 0xd8, 0xba, 0x85, 0xd3,
197 0x6a, 0x2e, 0x9d, 0x68, 0xc1, 0x3b, 0x69, 0x6a, 0x2d, 0xf2, 0xc1, 0xc3,
198 0xce, 0xcf, 0x38, 0x56, 0x92, 0x1a, 0x47, 0x9d, 0xdd, 0x59, 0x87, 0xb4,
199 0x23, 0x8c, 0xbd, 0x0b, 0x21, 0x63, 0x19, 0x5e, 0x7d, 0x2d, 0x7a, 0x20,
200 0xc4, 0x16, 0xc7, 0x29, 0x73, 0x0e, 0x43, 0x7b, 0xc1, 0xb7, 0xbb, 0xd9,
201 0x8f, 0x24, 0x0a, 0xec, 0x52, 0x53, 0xef, 0xa2, 0xb2, 0x77, 0x8f, 0x38,
202 0x52, 0x5e, 0x2f, 0xa0, 0xc7, 0x4d, 0x98, 0x66, 0xc1, 0xb0, 0x55, 0x03,
203 0xb8, 0x6c, 0x32, 0x65, 0x67, 0xc4, 0xbd, 0xd9, 0x86, 0x83, 0x0f, 0x40,
204 0x52, 0xde, 0xcd, 0x8b, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xac,
205 0x30, 0x81, 0xa9, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16,
206 0x04, 0x14, 0x64, 0x1f, 0x09, 0x99, 0x2d, 0x6a, 0x5b, 0x4d, 0xef, 0xed,
207 0xbb, 0xba, 0x96, 0xf9, 0x73, 0x65, 0xad, 0x6e, 0x84, 0xbd, 0x30, 0x7a,
208 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x73, 0x30, 0x71, 0x80, 0x14, 0x64,
209 0x1f, 0x09, 0x99, 0x2d, 0x6a, 0x5b, 0x4d, 0xef, 0xed, 0xbb, 0xba, 0x96,
210 0xf9, 0x73, 0x65, 0xad, 0x6e, 0x84, 0xbd, 0xa1, 0x56, 0xa4, 0x54, 0x30,
211 0x52, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
212 0x55, 0x53, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c,
213 0x11, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74,
214 0x65, 0x73, 0x74, 0x20, 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
215 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72,
216 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07,
217 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x82,
218 0x01, 0x01, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05, 0x30,
219 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
220 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x0b,
221 0xea, 0xec, 0x19, 0xeb, 0x6f, 0x3d, 0x01, 0x28, 0x95, 0x40, 0x1a, 0x51,
222 0xff, 0x62, 0x1e, 0xfd, 0xc7, 0x91, 0x61, 0x6f, 0x46, 0xca, 0xe1, 0x80,
223 0xd7, 0x0e, 0x31, 0xf6, 0x16, 0xd1, 0x6b, 0x5e, 0x78, 0xdf, 0x02, 0xa2,
224 0x8f, 0x35, 0x6f, 0x1e, 0x71, 0xd1, 0xd7, 0x4b, 0x5d, 0x4d, 0x7d, 0x0b,
225 0x85, 0xd1, 0x7c, 0x4b, 0x84, 0x70, 0x22, 0xb3, 0xbd, 0x9e, 0x94, 0xaa,
226 0x31, 0x31, 0x94, 0x81, 0x3b, 0x11, 0x03, 0x4d, 0x2a, 0xff, 0x81, 0xac,
227 0xef, 0x95, 0x94, 0xf9, 0x0a, 0x73, 0xe9, 0xd0, 0x78, 0xbb, 0x65, 0xb1,
228 0x5c, 0xcb, 0x1c, 0xff, 0xd4, 0x5b, 0x43, 0xf1, 0x12, 0x1b, 0xb0, 0xc1,
229 0xa6, 0xb4, 0x7b, 0x82, 0x4c, 0x64, 0xa1, 0xad, 0x88, 0xe2, 0xe9, 0x89,
230 0x62, 0xc0, 0x93, 0x8c, 0x0c, 0x42, 0x6c, 0xed, 0x12, 0x47, 0x16, 0x5c,
231 0xba, 0xcf, 0x2f, 0x17, 0xdb, 0x07, 0x95
232 };
233
234 static
235 unsigned char serverD_cert_proof[] = {
236 0x00, 0xab, 0xa8, 0xb5, 0xb4, 0x7d, 0x00, 0x00, 0x1b, 0x46, 0x58, 0x28,
237 0xc4, 0x0a, 0xc7, 0x0b, 0x03, 0xf6, 0x91, 0x70, 0xa3, 0x5f, 0xed, 0xc8,
238 0x74, 0x40, 0x3c, 0xd0, 0x58, 0x1d, 0x3c, 0x8c, 0x16, 0x00, 0x00, 0x01,
239 0x47, 0xdc, 0x04, 0x70, 0x0e, 0x00, 0x00, 0x04, 0x03, 0x00, 0x46, 0x30,
240 0x44, 0x02, 0x20, 0x71, 0x55, 0x2f, 0x75, 0xa8, 0x3a, 0xfd, 0x01, 0x34,
241 0x44, 0xc7, 0x84, 0x71, 0x8f, 0x1e, 0xc2, 0x36, 0xe2, 0x08, 0x07, 0x92,
242 0x2b, 0x9f, 0x44, 0x0e, 0x84, 0x16, 0x08, 0xe0, 0xaf, 0xc5, 0xb9, 0x02,
243 0x20, 0x29, 0x3e, 0x0f, 0x63, 0x5c, 0xe7, 0x0a, 0xea, 0x1f, 0x96, 0x4a,
244 0x11, 0x86, 0x72, 0x06, 0xa5, 0x25, 0xc4, 0x5e, 0xf6, 0x92, 0xd8, 0x08,
245 0x98, 0x17, 0xba, 0xf2, 0xfe, 0x50, 0x62, 0x36, 0x29
246 };
247
248 static
249 unsigned char serverD_cert_der[] = {
250 0x30, 0x82, 0x02, 0xe4, 0x30, 0x82, 0x02, 0x4d, 0xa0, 0x03, 0x02, 0x01,
251 0x02, 0x02, 0x01, 0x13, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
252 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x52, 0x31, 0x0b, 0x30,
253 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
254 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
255 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
256 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
257 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
258 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
259 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
260 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
261 0x17, 0x0d, 0x32, 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30,
262 0x30, 0x30, 0x5a, 0x30, 0x72, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
263 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03,
264 0x55, 0x04, 0x0a, 0x0c, 0x0e, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d,
265 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x31, 0x13, 0x30, 0x11, 0x06,
266 0x03, 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f,
267 0x72, 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
268 0x07, 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f,
269 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x18, 0x63,
270 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73,
271 0x74, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x30,
272 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
273 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30, 0x81, 0x89,
274 0x02, 0x81, 0x81, 0x00, 0xba, 0x00, 0xc4, 0xfb, 0x3f, 0x9a, 0x86, 0x43,
275 0x1a, 0x26, 0x99, 0x9d, 0x19, 0x67, 0x27, 0xaa, 0x44, 0xd4, 0xba, 0x2b,
276 0xfe, 0x7b, 0x32, 0xe8, 0x2a, 0xc7, 0x89, 0x36, 0x41, 0xd7, 0xaf, 0xf4,
277 0x97, 0x4d, 0x41, 0x7b, 0xc7, 0x80, 0xba, 0x79, 0xab, 0x9c, 0xeb, 0xcc,
278 0x38, 0xb7, 0x83, 0xdf, 0x62, 0x7e, 0xaf, 0x6c, 0x32, 0x57, 0xc2, 0x41,
279 0xea, 0x73, 0xa9, 0x45, 0xf8, 0xbe, 0xc2, 0x26, 0x0f, 0x01, 0xec, 0x3b,
280 0x02, 0x24, 0x7d, 0x39, 0x5c, 0xa6, 0x9c, 0xdf, 0x4b, 0x1f, 0xd5, 0x4d,
281 0xd2, 0x5e, 0x9f, 0x09, 0x4c, 0x68, 0x11, 0xa3, 0x02, 0xb1, 0x65, 0x42,
282 0xef, 0x67, 0x25, 0x30, 0x93, 0x86, 0x6f, 0x37, 0x1c, 0x83, 0x62, 0xd1,
283 0x24, 0xfa, 0x89, 0x4d, 0x00, 0x8e, 0x77, 0x6a, 0xfd, 0x79, 0x85, 0x3e,
284 0x59, 0xed, 0x92, 0xdf, 0x8a, 0xa1, 0xca, 0xfd, 0xfe, 0x1b, 0xf7, 0x1f,
285 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xa9, 0x30, 0x81, 0xa6, 0x30,
286 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14, 0xf4, 0x42,
287 0x90, 0xfd, 0x4c, 0xcd, 0x26, 0x10, 0x0b, 0xd7, 0x34, 0x22, 0xad, 0x23,
288 0x26, 0xa0, 0x6c, 0xaf, 0xaa, 0x6c, 0x30, 0x7a, 0x06, 0x03, 0x55, 0x1d,
289 0x23, 0x04, 0x73, 0x30, 0x71, 0x80, 0x14, 0xdc, 0x16, 0x44, 0x15, 0x3e,
290 0x53, 0x27, 0xd8, 0x68, 0x66, 0x41, 0x40, 0x88, 0x90, 0xe4, 0x4e, 0x0a,
291 0xda, 0x08, 0xa9, 0xa1, 0x56, 0xa4, 0x54, 0x30, 0x52, 0x31, 0x0b, 0x30,
292 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
293 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
294 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
295 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
296 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
297 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
298 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x82, 0x01, 0x01, 0x30, 0x09,
299 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x02, 0x30, 0x00, 0x30, 0x0d, 0x06,
300 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00,
301 0x03, 0x81, 0x81, 0x00, 0x7a, 0x06, 0xe3, 0x17, 0xca, 0xee, 0xe0, 0x67,
302 0x16, 0xfd, 0xf1, 0xad, 0x9f, 0xf8, 0xeb, 0xce, 0x03, 0x57, 0x7d, 0x90,
303 0x6c, 0x85, 0xe0, 0x43, 0x3f, 0xb4, 0x3a, 0x08, 0x63, 0xef, 0x79, 0xf6,
304 0xe1, 0xa3, 0x88, 0x32, 0xcf, 0x8f, 0x2f, 0xde, 0xd0, 0xc0, 0x92, 0x0b,
305 0x16, 0xe1, 0xd4, 0x49, 0xd5, 0xb2, 0x84, 0x2e, 0x87, 0xfa, 0x1b, 0x5b,
306 0x95, 0x51, 0x51, 0x0d, 0x29, 0x88, 0xd0, 0x8c, 0x10, 0x75, 0xe3, 0x78,
307 0xb3, 0x4e, 0x39, 0xc1, 0xe4, 0xd0, 0x22, 0xb7, 0x64, 0xbe, 0xc3, 0x9d,
308 0xff, 0x02, 0xc9, 0x66, 0xc3, 0x38, 0x4e, 0x88, 0xde, 0xa6, 0x75, 0x80,
309 0xb3, 0x17, 0xb9, 0xfe, 0xfb, 0x64, 0xec, 0x3b, 0x16, 0xcd, 0xf0, 0x0d,
310 0x15, 0xbf, 0x70, 0x42, 0xba, 0xe5, 0xec, 0x1d, 0x2f, 0xee, 0x0a, 0x2f,
311 0xd7, 0x37, 0x9d, 0xc6, 0x0b, 0x26, 0xf3, 0xfb, 0x13, 0x69, 0x9f, 0x09
312 };
313
314 static
315 unsigned char serverF_cert_der[] = {
316 0x30, 0x82, 0x03, 0x73, 0x30, 0x82, 0x02, 0xdc, 0xa0, 0x03, 0x02, 0x01,
317 0x02, 0x02, 0x01, 0x15, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
318 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x52, 0x31, 0x0b, 0x30,
319 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
320 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
321 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
322 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
323 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
324 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
325 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
326 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
327 0x17, 0x0d, 0x32, 0x32, 0x30, 0x36, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30,
328 0x30, 0x30, 0x5a, 0x30, 0x72, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
329 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03,
330 0x55, 0x04, 0x0a, 0x0c, 0x0e, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d,
331 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x31, 0x13, 0x30, 0x11, 0x06,
332 0x03, 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f,
333 0x72, 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
334 0x07, 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f,
335 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x18, 0x63,
336 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73,
337 0x74, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x30,
338 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
339 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30, 0x81, 0x89,
340 0x02, 0x81, 0x81, 0x00, 0xd2, 0x49, 0x0c, 0xd0, 0xc5, 0xa8, 0xc3, 0x0f,
341 0x36, 0x99, 0x54, 0x00, 0xd7, 0xf0, 0x2a, 0xcb, 0x21, 0x20, 0x4c, 0xac,
342 0xaa, 0xcb, 0x36, 0x20, 0x72, 0x78, 0x05, 0xd1, 0xc2, 0xf9, 0xce, 0xc9,
343 0x5b, 0xbc, 0x38, 0xda, 0xdd, 0x27, 0xf7, 0x6b, 0x0a, 0xf0, 0x16, 0xe2,
344 0xc9, 0x74, 0x8c, 0x47, 0x5b, 0x07, 0x91, 0xa5, 0x6c, 0xcf, 0xf9, 0x0a,
345 0x05, 0xb3, 0x05, 0x6a, 0xbe, 0x59, 0xdb, 0xa2, 0x1b, 0x21, 0x29, 0xe1,
346 0xef, 0x0d, 0x4f, 0xa1, 0xc5, 0xbd, 0x16, 0xeb, 0x8c, 0x45, 0x6f, 0x64,
347 0x42, 0x93, 0x82, 0xb3, 0x6d, 0xff, 0x83, 0x61, 0xdc, 0xcf, 0x8d, 0xd0,
348 0x09, 0x2c, 0x37, 0x87, 0x1b, 0x75, 0xf6, 0xb3, 0xf8, 0x45, 0xef, 0xe2,
349 0xcb, 0xff, 0x6d, 0xbb, 0xe4, 0xa5, 0x29, 0xee, 0xc0, 0x78, 0x17, 0x94,
350 0xdc, 0x6b, 0xc7, 0x46, 0x01, 0x74, 0xf9, 0x65, 0x3b, 0x59, 0x21, 0xf5,
351 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x82, 0x01, 0x37, 0x30, 0x82, 0x01,
352 0x33, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14,
353 0x69, 0x9d, 0x9f, 0x7e, 0xd9, 0x34, 0x7c, 0xfa, 0xd5, 0xc2, 0x7e, 0x02,
354 0x0f, 0x1e, 0x4d, 0x1d, 0xa9, 0x8e, 0xa8, 0xcb, 0x30, 0x7a, 0x06, 0x03,
355 0x55, 0x1d, 0x23, 0x04, 0x73, 0x30, 0x71, 0x80, 0x14, 0xdc, 0x16, 0x44,
356 0x15, 0x3e, 0x53, 0x27, 0xd8, 0x68, 0x66, 0x41, 0x40, 0x88, 0x90, 0xe4,
357 0x4e, 0x0a, 0xda, 0x08, 0xa9, 0xa1, 0x56, 0xa4, 0x54, 0x30, 0x52, 0x31,
358 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53,
359 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63,
360 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73,
361 0x74, 0x20, 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04,
362 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69,
363 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09,
364 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x82, 0x01, 0x01,
365 0x30, 0x09, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x02, 0x30, 0x00, 0x30,
366 0x81, 0x8a, 0x06, 0x0a, 0x2b, 0x06, 0x01, 0x04, 0x01, 0xd6, 0x79, 0x02,
367 0x04, 0x02, 0x04, 0x7c, 0x04, 0x7a, 0x00, 0x78, 0x00, 0x76, 0x00, 0xab,
368 0xa8, 0xb5, 0xb4, 0x7d, 0x00, 0x00, 0x1b, 0x46, 0x58, 0x28, 0xc4, 0x0a,
369 0xc7, 0x0b, 0x03, 0xf6, 0x91, 0x70, 0xa3, 0x5f, 0xed, 0xc8, 0x74, 0x40,
370 0x3c, 0xd0, 0x58, 0x1d, 0x3c, 0x8c, 0x16, 0x00, 0x00, 0x01, 0x47, 0xdc,
371 0x04, 0xbc, 0x5a, 0x00, 0x00, 0x04, 0x03, 0x00, 0x47, 0x30, 0x45, 0x02,
372 0x20, 0x5b, 0x3b, 0xe2, 0x6b, 0xa2, 0xda, 0x49, 0xb2, 0xa5, 0x55, 0x1d,
373 0x2f, 0x4d, 0x21, 0x2e, 0x2d, 0xf7, 0x59, 0xb3, 0x22, 0x1d, 0x90, 0x38,
374 0x88, 0x77, 0xad, 0x49, 0xca, 0x28, 0x1d, 0x4a, 0xa8, 0x02, 0x21, 0x00,
375 0xb7, 0x08, 0x08, 0xfb, 0x6a, 0x06, 0x13, 0xaa, 0xe6, 0x4d, 0x69, 0x44,
376 0xce, 0xc0, 0x17, 0x8f, 0x3e, 0x80, 0x30, 0xe2, 0xd0, 0xe1, 0x8b, 0xc0,
377 0x34, 0x28, 0x8b, 0xd8, 0x85, 0xb5, 0x14, 0x97, 0x30, 0x0d, 0x06, 0x09,
378 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03,
379 0x81, 0x81, 0x00, 0xae, 0x8c, 0x7f, 0x63, 0x9d, 0xdd, 0xee, 0x4f, 0xc4,
380 0xc5, 0x7b, 0x20, 0xb5, 0xe8, 0x89, 0x3e, 0x2c, 0xfe, 0x36, 0x0e, 0x31,
381 0x1a, 0x38, 0xd6, 0xb3, 0xfd, 0x37, 0xeb, 0x26, 0xd0, 0x27, 0xfa, 0x04,
382 0x12, 0x9c, 0xe2, 0x20, 0xe1, 0x61, 0xbf, 0xee, 0x60, 0x45, 0x84, 0xa0,
383 0xea, 0xce, 0x1f, 0xf7, 0x73, 0x31, 0xd4, 0xd7, 0x87, 0xe7, 0xd5, 0x9f,
384 0xff, 0x8d, 0x14, 0x32, 0x22, 0x89, 0xf6, 0x31, 0x38, 0xef, 0x1c, 0x36,
385 0x55, 0x0d, 0x5f, 0x0d, 0x99, 0x36, 0x58, 0x6a, 0xa3, 0xff, 0xf0, 0xc7,
386 0xe0, 0x5e, 0x02, 0x20, 0x9f, 0x04, 0x0a, 0xa4, 0xba, 0x1a, 0x1c, 0xb2,
387 0x43, 0x85, 0xc2, 0xcc, 0xd2, 0x95, 0x8f, 0x20, 0x11, 0x1d, 0xea, 0x9e,
388 0x10, 0xf1, 0x45, 0xd2, 0x4d, 0x95, 0x80, 0xed, 0xe1, 0x86, 0x71, 0xee,
389 0x50, 0x0f, 0xb0, 0x73, 0x12, 0x32, 0xdd, 0x95, 0xc5, 0xb9, 0x54
390 };
391
392
393 static uint8_t server_A_proof_Alfa_3[] = {
394 0x00, 0xcb, 0xbd, 0xa5, 0xa5, 0x4f, 0x94, 0xc5, 0xa5, 0x19, 0x3e, 0xcc,
395 0x98, 0xa4, 0x8f, 0x93, 0x39, 0xf3, 0x01, 0x4d, 0x89, 0xbb, 0x41, 0x38,
396 0x88, 0x49, 0x64, 0x91, 0x23, 0xac, 0x06, 0xcf, 0x8f, 0x00, 0x00, 0x01,
397 0x4b, 0xf1, 0xa3, 0x17, 0xe0, 0x00, 0x00, 0x04, 0x03, 0x00, 0x47, 0x30,
398 0x45, 0x02, 0x21, 0x00, 0x8a, 0x3f, 0xa6, 0x88, 0x76, 0x1b, 0x7b, 0x9b,
399 0x30, 0x9b, 0x2d, 0x54, 0xe7, 0xe3, 0x1a, 0xda, 0xf6, 0xad, 0x76, 0xba,
400 0x5a, 0x87, 0x24, 0x18, 0xc6, 0xdf, 0x93, 0xe7, 0x09, 0x67, 0xcb, 0x76,
401 0x02, 0x20, 0x55, 0x59, 0xe2, 0x67, 0xe2, 0x9b, 0x9c, 0x77, 0x8e, 0x59,
402 0x4c, 0xe8, 0x71, 0x69, 0x6d, 0x9a, 0x52, 0xbd, 0xea, 0xfb, 0xd7, 0x36,
403 0x9e, 0xd0, 0x19, 0x95, 0x26, 0xb4, 0x57, 0xf8, 0x76, 0x6c
404 };
405
406 static uint8_t server_A_proof_Bravo_3[] = {
407 0x00, 0x3b, 0x1a, 0xe4, 0xe3, 0xf9, 0x15, 0xa5, 0xa2, 0x77, 0xfe, 0x00,
408 0xcf, 0x5d, 0xf1, 0x03, 0x50, 0xf9, 0x0d, 0x0b, 0x0e, 0x6d, 0x4a, 0x6f,
409 0xa0, 0xcf, 0xe9, 0xa3, 0x76, 0xc0, 0xd2, 0x47, 0x4a, 0x00, 0x00, 0x01,
410 0x4b, 0xf1, 0xa3, 0x1f, 0xd3, 0x00, 0x00, 0x04, 0x03, 0x00, 0x47, 0x30,
411 0x45, 0x02, 0x21, 0x00, 0xc0, 0x8f, 0xd0, 0xf9, 0x9b, 0x8a, 0xb4, 0xa2,
412 0x89, 0x7f, 0xc0, 0x86, 0xe4, 0xc2, 0x95, 0xa1, 0xcf, 0xaa, 0xd5, 0xff,
413 0xe9, 0xdc, 0x46, 0xd1, 0xda, 0xf7, 0xe7, 0x9f, 0x8a, 0x9e, 0x6f, 0x5b,
414 0x02, 0x20, 0x5c, 0x80, 0xd3, 0x25, 0x48, 0xb4, 0xa7, 0x97, 0x47, 0xcb,
415 0x90, 0x9e, 0x56, 0xf3, 0xea, 0x66, 0x62, 0x0c, 0x7c, 0xb5, 0x49, 0xb1,
416 0x12, 0xe9, 0xf9, 0x76, 0x8c, 0x70, 0xd7, 0x55, 0xbc, 0x89
417 };
418
419
420 static uint8_t server_A_cert_der[] = {
421 0x30, 0x82, 0x02, 0xe4, 0x30, 0x82, 0x02, 0x4d, 0xa0, 0x03, 0x02, 0x01,
422 0x02, 0x02, 0x01, 0x4b, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
423 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x52, 0x31, 0x0b, 0x30,
424 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
425 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
426 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
427 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
428 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
429 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
430 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31,
431 0x35, 0x30, 0x31, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
432 0x17, 0x0d, 0x31, 0x36, 0x30, 0x31, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30,
433 0x30, 0x30, 0x5a, 0x30, 0x72, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
434 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03,
435 0x55, 0x04, 0x0a, 0x0c, 0x0e, 0x63, 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d,
436 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x31, 0x13, 0x30, 0x11, 0x06,
437 0x03, 0x55, 0x04, 0x08, 0x0c, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f,
438 0x72, 0x6e, 0x69, 0x61, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
439 0x07, 0x0c, 0x09, 0x43, 0x75, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f,
440 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x18, 0x63,
441 0x6f, 0x72, 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73,
442 0x74, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x30,
443 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
444 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30, 0x81, 0x89,
445 0x02, 0x81, 0x81, 0x00, 0xc2, 0x65, 0x91, 0x0d, 0xf6, 0x8a, 0x40, 0x46,
446 0xbd, 0x9e, 0x90, 0xdb, 0xf8, 0x12, 0x1c, 0xfa, 0x76, 0xe4, 0x7b, 0x14,
447 0xf5, 0x3f, 0xef, 0xf7, 0x5f, 0x34, 0x55, 0xf7, 0x9e, 0x59, 0xeb, 0x48,
448 0xac, 0xb6, 0x40, 0x77, 0xb9, 0x0a, 0x64, 0xc3, 0xe8, 0xdd, 0xbd, 0x52,
449 0x24, 0x4f, 0xb7, 0x22, 0xed, 0xe4, 0xc8, 0xac, 0x9e, 0x9e, 0x2d, 0xe1,
450 0x66, 0xa9, 0x40, 0x56, 0xdb, 0x0a, 0xb9, 0x3a, 0x69, 0xd2, 0xcf, 0x3c,
451 0xfa, 0x17, 0x44, 0xc7, 0x4f, 0xc0, 0xf8, 0xba, 0x20, 0x68, 0xc6, 0x75,
452 0x38, 0xa0, 0xc5, 0xd4, 0x1a, 0x5c, 0x86, 0xbb, 0x95, 0xa8, 0x71, 0x3e,
453 0xfc, 0xf3, 0xb6, 0x74, 0x92, 0x98, 0x21, 0xec, 0x03, 0x90, 0x97, 0x71,
454 0xa2, 0xd5, 0x79, 0xcf, 0x2a, 0x59, 0xcf, 0x16, 0xdc, 0x0b, 0x03, 0x9d,
455 0xfd, 0x60, 0xad, 0x5f, 0x7f, 0xa5, 0x0a, 0x24, 0x9b, 0x83, 0xc5, 0x63,
456 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xa9, 0x30, 0x81, 0xa6, 0x30,
457 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14, 0x8d, 0x37,
458 0x29, 0x3a, 0x88, 0xa5, 0x5c, 0x19, 0x3b, 0xd1, 0x21, 0x37, 0xf3, 0xed,
459 0xd5, 0x2a, 0xf5, 0xb3, 0x49, 0x87, 0x30, 0x7a, 0x06, 0x03, 0x55, 0x1d,
460 0x23, 0x04, 0x73, 0x30, 0x71, 0x80, 0x14, 0x64, 0x1f, 0x09, 0x99, 0x2d,
461 0x6a, 0x5b, 0x4d, 0xef, 0xed, 0xbb, 0xba, 0x96, 0xf9, 0x73, 0x65, 0xad,
462 0x6e, 0x84, 0xbd, 0xa1, 0x56, 0xa4, 0x54, 0x30, 0x52, 0x31, 0x0b, 0x30,
463 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x1a,
464 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x0c, 0x11, 0x63, 0x6f, 0x72,
465 0x65, 0x6f, 0x73, 0x2d, 0x63, 0x74, 0x2d, 0x74, 0x65, 0x73, 0x74, 0x20,
466 0x43, 0x41, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x0c,
467 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x31,
468 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x07, 0x0c, 0x09, 0x43, 0x75,
469 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6f, 0x82, 0x01, 0x01, 0x30, 0x09,
470 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x02, 0x30, 0x00, 0x30, 0x0d, 0x06,
471 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00,
472 0x03, 0x81, 0x81, 0x00, 0x27, 0xe3, 0x99, 0x5e, 0xea, 0x13, 0xa4, 0x92,
473 0xc3, 0xe4, 0xa4, 0xf9, 0x8c, 0xf0, 0x41, 0x49, 0x49, 0x40, 0x51, 0xba,
474 0x14, 0xe6, 0xa4, 0x5b, 0x84, 0xb7, 0xc3, 0x57, 0x39, 0xa2, 0x0b, 0xd0,
475 0x20, 0x66, 0xd2, 0x91, 0xa9, 0xd1, 0x14, 0x2f, 0x7f, 0xe1, 0x59, 0x5f,
476 0xff, 0x37, 0x9e, 0xfb, 0xed, 0xea, 0xc5, 0x79, 0x1f, 0x34, 0xcc, 0x15,
477 0xf0, 0xc4, 0x01, 0x06, 0x12, 0x5a, 0x07, 0x81, 0xaf, 0x6c, 0x99, 0x72,
478 0x5a, 0x6c, 0x0f, 0x89, 0xde, 0x01, 0x48, 0xf6, 0xa5, 0x12, 0x0e, 0x6b,
479 0xd6, 0x13, 0x40, 0x9b, 0xd1, 0x9f, 0xb5, 0x39, 0x49, 0x07, 0x2d, 0x04,
480 0x34, 0xe1, 0x04, 0x83, 0xa4, 0x74, 0x0c, 0x52, 0x54, 0x93, 0x6a, 0x63,
481 0x05, 0x06, 0xbf, 0x1d, 0x01, 0x30, 0xab, 0xf0, 0xed, 0x46, 0x26, 0x75,
482 0x5e, 0x9a, 0xa4, 0x01, 0xe6, 0x95, 0x65, 0xc5, 0xb9, 0x09, 0x84, 0x98
483 };
484
485 static
486 unsigned char www_digicert_com_cert_der[] = {
487 0x30, 0x82, 0x08, 0x5c, 0x30, 0x82, 0x07, 0x44, 0xa0, 0x03, 0x02, 0x01,
488 0x02, 0x02, 0x10, 0x04, 0xc3, 0x34, 0xf6, 0xf8, 0x98, 0x9b, 0xb5, 0x4c,
489 0xb1, 0x91, 0x94, 0x30, 0x53, 0x88, 0xb7, 0x30, 0x0d, 0x06, 0x09, 0x2a,
490 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, 0x75,
491 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55,
492 0x53, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0c,
493 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x49, 0x6e, 0x63,
494 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x10, 0x77,
495 0x77, 0x77, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e,
496 0x63, 0x6f, 0x6d, 0x31, 0x34, 0x30, 0x32, 0x06, 0x03, 0x55, 0x04, 0x03,
497 0x13, 0x2b, 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x53,
498 0x48, 0x41, 0x32, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64,
499 0x20, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20,
500 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x43, 0x41, 0x30, 0x1e, 0x17,
501 0x0d, 0x31, 0x34, 0x31, 0x30, 0x31, 0x34, 0x30, 0x30, 0x30, 0x30, 0x30,
502 0x30, 0x5a, 0x17, 0x0d, 0x31, 0x36, 0x31, 0x30, 0x31, 0x38, 0x31, 0x32,
503 0x30, 0x30, 0x30, 0x30, 0x5a, 0x30, 0x82, 0x01, 0x0b, 0x31, 0x1d, 0x30,
504 0x1b, 0x06, 0x03, 0x55, 0x04, 0x0f, 0x0c, 0x14, 0x50, 0x72, 0x69, 0x76,
505 0x61, 0x74, 0x65, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61,
506 0x74, 0x69, 0x6f, 0x6e, 0x31, 0x13, 0x30, 0x11, 0x06, 0x0b, 0x2b, 0x06,
507 0x01, 0x04, 0x01, 0x82, 0x37, 0x3c, 0x02, 0x01, 0x03, 0x13, 0x02, 0x55,
508 0x53, 0x31, 0x15, 0x30, 0x13, 0x06, 0x0b, 0x2b, 0x06, 0x01, 0x04, 0x01,
509 0x82, 0x37, 0x3c, 0x02, 0x01, 0x02, 0x13, 0x04, 0x55, 0x74, 0x61, 0x68,
510 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x05, 0x13, 0x0c, 0x35,
511 0x32, 0x39, 0x39, 0x35, 0x33, 0x37, 0x2d, 0x30, 0x31, 0x34, 0x32, 0x31,
512 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x09, 0x13, 0x09, 0x53, 0x75,
513 0x69, 0x74, 0x65, 0x20, 0x35, 0x30, 0x30, 0x31, 0x24, 0x30, 0x22, 0x06,
514 0x03, 0x55, 0x04, 0x09, 0x13, 0x1b, 0x32, 0x36, 0x30, 0x30, 0x20, 0x57,
515 0x65, 0x73, 0x74, 0x20, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76,
516 0x65, 0x20, 0x50, 0x61, 0x72, 0x6b, 0x77, 0x61, 0x79, 0x31, 0x0e, 0x30,
517 0x0c, 0x06, 0x03, 0x55, 0x04, 0x11, 0x13, 0x05, 0x38, 0x34, 0x30, 0x34,
518 0x33, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
519 0x55, 0x53, 0x31, 0x0d, 0x30, 0x0b, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13,
520 0x04, 0x55, 0x74, 0x61, 0x68, 0x31, 0x0d, 0x30, 0x0b, 0x06, 0x03, 0x55,
521 0x04, 0x07, 0x13, 0x04, 0x4c, 0x65, 0x68, 0x69, 0x31, 0x17, 0x30, 0x15,
522 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0e, 0x44, 0x69, 0x67, 0x69, 0x43,
523 0x65, 0x72, 0x74, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x31, 0x19, 0x30,
524 0x17, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x10, 0x77, 0x77, 0x77, 0x2e,
525 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d,
526 0x30, 0x82, 0x02, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
527 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x02, 0x0f, 0x00,
528 0x30, 0x82, 0x02, 0x0a, 0x02, 0x82, 0x02, 0x01, 0x00, 0xa8, 0x89, 0xb3,
529 0x3b, 0x91, 0x94, 0x57, 0x87, 0x72, 0x09, 0x5b, 0x5f, 0xcb, 0x2c, 0x42,
530 0x2a, 0x9e, 0xed, 0xc2, 0xfd, 0x20, 0x7b, 0x2c, 0x63, 0x7f, 0xdd, 0x07,
531 0xbf, 0xfb, 0x49, 0x5c, 0xed, 0x1c, 0xa2, 0x70, 0x79, 0x75, 0xc2, 0x34,
532 0xcc, 0xeb, 0x12, 0xf0, 0x40, 0x88, 0x3a, 0xb9, 0xea, 0x29, 0xa2, 0x11,
533 0x8f, 0x53, 0xe1, 0x02, 0xe1, 0x87, 0x04, 0xf6, 0x58, 0xb9, 0x86, 0xb6,
534 0x7f, 0x85, 0x5e, 0x0a, 0x58, 0x47, 0xc3, 0xbd, 0xe7, 0x6b, 0x21, 0x07,
535 0x9d, 0xdb, 0xef, 0x57, 0x8b, 0x16, 0xce, 0x38, 0xf1, 0xe3, 0xe2, 0xe4,
536 0x5a, 0x10, 0xb8, 0x39, 0xbb, 0x0a, 0xad, 0xca, 0xc5, 0x10, 0x85, 0x3a,
537 0xa1, 0x6f, 0x67, 0xc9, 0x18, 0xc3, 0x5b, 0xb2, 0x4c, 0xa6, 0x01, 0xb6,
538 0xc3, 0x50, 0xbe, 0x7e, 0xc8, 0x79, 0xca, 0x3c, 0x53, 0x5e, 0x02, 0x78,
539 0xae, 0x96, 0x5f, 0x56, 0x21, 0xb3, 0xa4, 0x3c, 0x3f, 0xfe, 0x49, 0xc5,
540 0x17, 0x73, 0xa5, 0x6e, 0xa9, 0x60, 0xaa, 0xbd, 0x16, 0x04, 0x56, 0xfa,
541 0x54, 0xd2, 0xcb, 0x25, 0xc0, 0xe9, 0x9f, 0x89, 0xc9, 0xee, 0x10, 0x87,
542 0x01, 0xf2, 0xc7, 0x93, 0x2d, 0xc3, 0x2f, 0x9e, 0xd0, 0x9c, 0x42, 0x24,
543 0x9d, 0x09, 0x24, 0xf6, 0x80, 0xc4, 0xe8, 0x34, 0x99, 0x5a, 0x2e, 0x26,
544 0xc3, 0x73, 0x28, 0x52, 0x26, 0xac, 0x09, 0x34, 0x8e, 0xc5, 0x70, 0xe1,
545 0xf5, 0xfb, 0x93, 0xb8, 0x34, 0x2d, 0x44, 0xf4, 0x50, 0x1f, 0x86, 0x0a,
546 0x9b, 0x64, 0x45, 0x26, 0x05, 0xd4, 0x45, 0xca, 0x72, 0x03, 0xdd, 0x1e,
547 0x80, 0x1a, 0x9c, 0x53, 0x06, 0x7b, 0xc8, 0x36, 0x31, 0x03, 0xda, 0x5f,
548 0x55, 0xc4, 0x0d, 0x29, 0xc0, 0x52, 0x9c, 0x23, 0x95, 0x8d, 0xa9, 0x55,
549 0x95, 0xc4, 0x11, 0x02, 0x5b, 0xa3, 0x1b, 0xee, 0x79, 0xb2, 0x6e, 0x4a,
550 0x6a, 0x4d, 0x4a, 0x44, 0x3e, 0x39, 0x9e, 0x8b, 0x0d, 0xec, 0x38, 0x93,
551 0x5e, 0x5c, 0xb3, 0x4f, 0x53, 0x8f, 0x4e, 0x2a, 0x78, 0xb1, 0x52, 0x54,
552 0x4b, 0xfb, 0x6a, 0x94, 0x35, 0x61, 0x03, 0x06, 0x79, 0xe8, 0x06, 0x9c,
553 0x8e, 0x81, 0x5b, 0x6b, 0x36, 0xdf, 0xc0, 0xfe, 0x43, 0xce, 0xd5, 0x16,
554 0x19, 0xf6, 0x82, 0x94, 0xe8, 0x80, 0x00, 0xe1, 0x84, 0x14, 0x1d, 0x28,
555 0x73, 0x8b, 0xe9, 0xba, 0xb6, 0x55, 0xe7, 0xa6, 0x17, 0x8c, 0xae, 0x70,
556 0x15, 0xbe, 0x04, 0xef, 0xc8, 0x08, 0x27, 0xd9, 0xdf, 0x3a, 0x7e, 0x67,
557 0x8c, 0x06, 0x0d, 0x51, 0x94, 0x05, 0x95, 0x2f, 0x27, 0xe4, 0xc1, 0xd4,
558 0xa4, 0x5e, 0xca, 0x96, 0x13, 0x89, 0xd2, 0x05, 0x8b, 0x43, 0x68, 0xfc,
559 0x31, 0x87, 0xa9, 0xb6, 0xf2, 0xc3, 0x47, 0xe3, 0xdf, 0xd9, 0x19, 0x13,
560 0x4f, 0xb9, 0x05, 0xa9, 0x8a, 0x98, 0x03, 0xca, 0xc5, 0x92, 0x29, 0xe3,
561 0x73, 0xe7, 0x4b, 0xe8, 0x0a, 0xda, 0x1b, 0x9c, 0xdb, 0x68, 0x50, 0x66,
562 0x95, 0x2b, 0xdc, 0xe8, 0x39, 0x1b, 0x14, 0xfa, 0x41, 0xd3, 0xfc, 0xda,
563 0xe6, 0x8d, 0x04, 0x2c, 0x81, 0xd1, 0x12, 0x47, 0xc6, 0x27, 0x9d, 0xd7,
564 0x54, 0xbd, 0x4f, 0xee, 0x42, 0x20, 0x96, 0x52, 0xa6, 0x83, 0x9f, 0x59,
565 0x05, 0x6b, 0x2b, 0x18, 0x41, 0x7a, 0x5a, 0xbb, 0x89, 0x1b, 0x45, 0x82,
566 0x8a, 0x6e, 0x7b, 0x94, 0x78, 0xe0, 0x4e, 0x09, 0xeb, 0x1c, 0xa8, 0xda,
567 0xd9, 0xb4, 0x56, 0xd4, 0xa0, 0x7d, 0x08, 0xd5, 0xf2, 0x94, 0x81, 0x2e,
568 0xa1, 0xb4, 0x0a, 0x14, 0x56, 0x21, 0x26, 0xc3, 0xc4, 0x27, 0x48, 0x3c,
569 0x50, 0xd5, 0x71, 0x45, 0x35, 0x4b, 0x37, 0x22, 0x7b, 0x69, 0x26, 0x6c,
570 0xdb, 0xb8, 0x4e, 0xf2, 0xf1, 0xa2, 0xf8, 0x6b, 0xfb, 0x1a, 0xae, 0xe6,
571 0xeb, 0x5b, 0x1e, 0x15, 0xd5, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x82,
572 0x03, 0x4e, 0x30, 0x82, 0x03, 0x4a, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d,
573 0x23, 0x04, 0x18, 0x30, 0x16, 0x80, 0x14, 0x3d, 0xd3, 0x50, 0xa5, 0xd6,
574 0xa0, 0xad, 0xee, 0xf3, 0x4a, 0x60, 0x0a, 0x65, 0xd3, 0x21, 0xd4, 0xf8,
575 0xf8, 0xd6, 0x0f, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x16,
576 0x04, 0x14, 0xf8, 0xa3, 0xa7, 0x61, 0xab, 0xd9, 0x77, 0x4b, 0x19, 0x66,
577 0x90, 0xc7, 0x9f, 0xe3, 0x9f, 0xe6, 0xb0, 0x44, 0x21, 0x06, 0x30, 0x7e,
578 0x06, 0x03, 0x55, 0x1d, 0x11, 0x04, 0x77, 0x30, 0x75, 0x82, 0x10, 0x77,
579 0x77, 0x77, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e,
580 0x63, 0x6f, 0x6d, 0x82, 0x0c, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72,
581 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x82, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x65,
582 0x6e, 0x74, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e,
583 0x63, 0x6f, 0x6d, 0x82, 0x17, 0x77, 0x77, 0x77, 0x2e, 0x6f, 0x72, 0x69,
584 0x67, 0x69, 0x6e, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74,
585 0x2e, 0x63, 0x6f, 0x6d, 0x82, 0x12, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x2e,
586 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d,
587 0x82, 0x10, 0x61, 0x70, 0x69, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65,
588 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d,
589 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x05, 0xa0, 0x30, 0x1d,
590 0x06, 0x03, 0x55, 0x1d, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2b,
591 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2b, 0x06, 0x01,
592 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x1f,
593 0x04, 0x6e, 0x30, 0x6c, 0x30, 0x34, 0xa0, 0x32, 0xa0, 0x30, 0x86, 0x2e,
594 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x63, 0x72, 0x6c, 0x33, 0x2e,
595 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d,
596 0x2f, 0x73, 0x68, 0x61, 0x32, 0x2d, 0x65, 0x76, 0x2d, 0x73, 0x65, 0x72,
597 0x76, 0x65, 0x72, 0x2d, 0x67, 0x31, 0x2e, 0x63, 0x72, 0x6c, 0x30, 0x34,
598 0xa0, 0x32, 0xa0, 0x30, 0x86, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
599 0x2f, 0x63, 0x72, 0x6c, 0x34, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65,
600 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x68, 0x61, 0x32, 0x2d,
601 0x65, 0x76, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2d, 0x67, 0x31,
602 0x2e, 0x63, 0x72, 0x6c, 0x30, 0x42, 0x06, 0x03, 0x55, 0x1d, 0x20, 0x04,
603 0x3b, 0x30, 0x39, 0x30, 0x37, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x86,
604 0xfd, 0x6c, 0x02, 0x01, 0x30, 0x2a, 0x30, 0x28, 0x06, 0x08, 0x2b, 0x06,
605 0x01, 0x05, 0x05, 0x07, 0x02, 0x01, 0x16, 0x1c, 0x68, 0x74, 0x74, 0x70,
606 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x64, 0x69, 0x67, 0x69,
607 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x50, 0x53,
608 0x30, 0x81, 0x88, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x01,
609 0x01, 0x04, 0x7c, 0x30, 0x7a, 0x30, 0x24, 0x06, 0x08, 0x2b, 0x06, 0x01,
610 0x05, 0x05, 0x07, 0x30, 0x01, 0x86, 0x18, 0x68, 0x74, 0x74, 0x70, 0x3a,
611 0x2f, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63,
612 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x52, 0x06, 0x08, 0x2b,
613 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x02, 0x86, 0x46, 0x68, 0x74, 0x74,
614 0x70, 0x3a, 0x2f, 0x2f, 0x63, 0x61, 0x63, 0x65, 0x72, 0x74, 0x73, 0x2e,
615 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d,
616 0x2f, 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x53, 0x48, 0x41,
617 0x32, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x56, 0x61, 0x6c,
618 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65,
619 0x72, 0x43, 0x41, 0x2e, 0x63, 0x72, 0x74, 0x30, 0x0c, 0x06, 0x03, 0x55,
620 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, 0x02, 0x30, 0x00, 0x30, 0x82, 0x01,
621 0x03, 0x06, 0x0a, 0x2b, 0x06, 0x01, 0x04, 0x01, 0xd6, 0x79, 0x02, 0x04,
622 0x02, 0x04, 0x81, 0xf4, 0x04, 0x81, 0xf1, 0x00, 0xef, 0x00, 0x76, 0x00,
623 0xa4, 0xb9, 0x09, 0x90, 0xb4, 0x18, 0x58, 0x14, 0x87, 0xbb, 0x13, 0xa2,
624 0xcc, 0x67, 0x70, 0x0a, 0x3c, 0x35, 0x98, 0x04, 0xf9, 0x1b, 0xdf, 0xb8,
625 0xe3, 0x77, 0xcd, 0x0e, 0xc8, 0x0d, 0xdc, 0x10, 0x00, 0x00, 0x01, 0x49,
626 0x10, 0xfa, 0xbd, 0x89, 0x00, 0x00, 0x04, 0x03, 0x00, 0x47, 0x30, 0x45,
627 0x02, 0x20, 0x66, 0xd7, 0x67, 0x79, 0xf4, 0xaa, 0xd3, 0xb8, 0xc6, 0x9f,
628 0x03, 0x01, 0xbf, 0xcd, 0xec, 0x83, 0x36, 0xd4, 0xc8, 0x4f, 0xc1, 0x45,
629 0xd5, 0xd9, 0xfd, 0x16, 0x54, 0xad, 0x6f, 0x75, 0x22, 0xa1, 0x02, 0x21,
630 0x00, 0xb8, 0x95, 0xf1, 0x43, 0x03, 0xdf, 0xa4, 0x11, 0x04, 0x3c, 0x24,
631 0x13, 0xd8, 0x81, 0x69, 0x24, 0x9d, 0xd2, 0x04, 0x96, 0x4d, 0xad, 0x53,
632 0x3d, 0x9d, 0x6a, 0x24, 0x14, 0x32, 0x4d, 0xcc, 0x91, 0x00, 0x75, 0x00,
633 0x68, 0xf6, 0x98, 0xf8, 0x1f, 0x64, 0x82, 0xbe, 0x3a, 0x8c, 0xee, 0xb9,
634 0x28, 0x1d, 0x4c, 0xfc, 0x71, 0x51, 0x5d, 0x67, 0x93, 0xd4, 0x44, 0xd1,
635 0x0a, 0x67, 0xac, 0xbb, 0x4f, 0x4f, 0xfb, 0xc4, 0x00, 0x00, 0x01, 0x49,
636 0x10, 0xfa, 0xbd, 0x79, 0x00, 0x00, 0x04, 0x03, 0x00, 0x46, 0x30, 0x44,
637 0x02, 0x20, 0x11, 0x34, 0x9a, 0x59, 0x2c, 0x9d, 0x3b, 0xd3, 0x8b, 0x9a,
638 0x58, 0x18, 0x37, 0x24, 0x55, 0xf3, 0x9d, 0x0e, 0xca, 0x98, 0x96, 0x6b,
639 0x8f, 0xc7, 0xa2, 0xe4, 0xd8, 0xbf, 0x00, 0xce, 0x40, 0xfd, 0x02, 0x20,
640 0x11, 0x24, 0x11, 0xab, 0x62, 0x7f, 0xb2, 0x88, 0xf0, 0x6d, 0x70, 0xc0,
641 0xfd, 0xa0, 0x65, 0xb5, 0xb6, 0x03, 0x46, 0x1f, 0x10, 0x30, 0xed, 0xf5,
642 0x6d, 0x7e, 0x89, 0x7b, 0xba, 0x20, 0x32, 0x64, 0x30, 0x0d, 0x06, 0x09,
643 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03,
644 0x82, 0x01, 0x01, 0x00, 0x7a, 0x12, 0xd4, 0x28, 0xc3, 0x27, 0x39, 0x5e,
645 0xab, 0x30, 0x4a, 0x4a, 0x3d, 0xe6, 0xad, 0x78, 0xd7, 0xe7, 0x9d, 0x5a,
646 0xcb, 0x93, 0xcf, 0xc2, 0x30, 0x91, 0xfe, 0xcd, 0x88, 0x65, 0x35, 0x96,
647 0x9c, 0x5e, 0x6d, 0xe1, 0xe2, 0x6d, 0x00, 0x7e, 0xe2, 0x73, 0xab, 0xd8,
648 0x27, 0x97, 0x6b, 0xdd, 0x46, 0xa9, 0x08, 0x41, 0x1e, 0x0b, 0x18, 0x5b,
649 0x6a, 0x5b, 0xf8, 0xfc, 0xa4, 0x75, 0xf5, 0x5e, 0xf5, 0x52, 0xec, 0xa5,
650 0xab, 0x6b, 0x16, 0x23, 0x44, 0xdf, 0xe8, 0x14, 0x28, 0xe7, 0xd1, 0xbf,
651 0xcc, 0x2d, 0x72, 0xa2, 0x30, 0xc4, 0x9e, 0x9a, 0xe5, 0x8c, 0x21, 0xb6,
652 0x5c, 0x6f, 0x9e, 0x16, 0xfc, 0xf2, 0x83, 0xe6, 0xf7, 0x29, 0x54, 0xa7,
653 0x58, 0x8e, 0x86, 0xb0, 0x8e, 0x5b, 0xf3, 0xd4, 0x1a, 0xaf, 0x00, 0x64,
654 0x37, 0xca, 0x2f, 0x0d, 0x38, 0x34, 0x16, 0x96, 0x57, 0x7d, 0x55, 0x6d,
655 0x09, 0x2f, 0x57, 0x47, 0x27, 0x0c, 0xd3, 0x02, 0x0e, 0x60, 0x66, 0x91,
656 0x92, 0x47, 0x11, 0xac, 0x04, 0xda, 0x63, 0x86, 0x91, 0x32, 0xd1, 0xfa,
657 0x65, 0x2c, 0xb7, 0x76, 0x64, 0x2a, 0x0f, 0x25, 0x83, 0x17, 0x3f, 0x0e,
658 0x88, 0xf7, 0xeb, 0xf5, 0xf5, 0x68, 0x30, 0x68, 0xcc, 0x79, 0x32, 0x23,
659 0x03, 0x08, 0xec, 0x30, 0x1b, 0x05, 0x37, 0x14, 0x79, 0x93, 0xf0, 0xed,
660 0x62, 0x88, 0xd8, 0xab, 0x18, 0xc4, 0x98, 0x67, 0xcb, 0x32, 0xbe, 0x44,
661 0xa8, 0x8f, 0xbc, 0xff, 0xe7, 0x99, 0x07, 0xc3, 0xd0, 0x4b, 0x0d, 0x45,
662 0xf2, 0xa6, 0xd8, 0x84, 0x43, 0xeb, 0xf4, 0x96, 0x3c, 0x3c, 0x68, 0x8c,
663 0x81, 0x4f, 0x82, 0x1e, 0x9d, 0xdb, 0x78, 0xa0, 0x42, 0x54, 0x94, 0xf2,
664 0x93, 0x5f, 0x49, 0x21, 0x57, 0x1b, 0xe5, 0x86, 0x2b, 0x54, 0xaa, 0xb3,
665 0x38, 0x48, 0x61, 0x3e, 0x85, 0x0f, 0x7d, 0x50
666 };
667
668
669 static
670 unsigned char digicert_sha2_ev_server_ca_der [] = {
671 0x30, 0x82, 0x04, 0xb6, 0x30, 0x82, 0x03, 0x9e, 0xa0, 0x03, 0x02, 0x01,
672 0x02, 0x02, 0x10, 0x0c, 0x79, 0xa9, 0x44, 0xb0, 0x8c, 0x11, 0x95, 0x20,
673 0x92, 0x61, 0x5f, 0xe2, 0x6b, 0x1d, 0x83, 0x30, 0x0d, 0x06, 0x09, 0x2a,
674 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, 0x6c,
675 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55,
676 0x53, 0x31, 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0c,
677 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x49, 0x6e, 0x63,
678 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x10, 0x77,
679 0x77, 0x77, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e,
680 0x63, 0x6f, 0x6d, 0x31, 0x2b, 0x30, 0x29, 0x06, 0x03, 0x55, 0x04, 0x03,
681 0x13, 0x22, 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x48,
682 0x69, 0x67, 0x68, 0x20, 0x41, 0x73, 0x73, 0x75, 0x72, 0x61, 0x6e, 0x63,
683 0x65, 0x20, 0x45, 0x56, 0x20, 0x52, 0x6f, 0x6f, 0x74, 0x20, 0x43, 0x41,
684 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x33, 0x31, 0x30, 0x32, 0x32, 0x31, 0x32,
685 0x30, 0x30, 0x30, 0x30, 0x5a, 0x17, 0x0d, 0x32, 0x38, 0x31, 0x30, 0x32,
686 0x32, 0x31, 0x32, 0x30, 0x30, 0x30, 0x30, 0x5a, 0x30, 0x75, 0x31, 0x0b,
687 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31,
688 0x15, 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0c, 0x44, 0x69,
689 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x49, 0x6e, 0x63, 0x31, 0x19,
690 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x10, 0x77, 0x77, 0x77,
691 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f,
692 0x6d, 0x31, 0x34, 0x30, 0x32, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x2b,
693 0x44, 0x69, 0x67, 0x69, 0x43, 0x65, 0x72, 0x74, 0x20, 0x53, 0x48, 0x41,
694 0x32, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x56,
695 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x65,
696 0x72, 0x76, 0x65, 0x72, 0x20, 0x43, 0x41, 0x30, 0x82, 0x01, 0x22, 0x30,
697 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01,
698 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02,
699 0x82, 0x01, 0x01, 0x00, 0xd7, 0x53, 0xa4, 0x04, 0x51, 0xf8, 0x99, 0xa6,
700 0x16, 0x48, 0x4b, 0x67, 0x27, 0xaa, 0x93, 0x49, 0xd0, 0x39, 0xed, 0x0c,
701 0xb0, 0xb0, 0x00, 0x87, 0xf1, 0x67, 0x28, 0x86, 0x85, 0x8c, 0x8e, 0x63,
702 0xda, 0xbc, 0xb1, 0x40, 0x38, 0xe2, 0xd3, 0xf5, 0xec, 0xa5, 0x05, 0x18,
703 0xb8, 0x3d, 0x3e, 0xc5, 0x99, 0x17, 0x32, 0xec, 0x18, 0x8c, 0xfa, 0xf1,
704 0x0c, 0xa6, 0x64, 0x21, 0x85, 0xcb, 0x07, 0x10, 0x34, 0xb0, 0x52, 0x88,
705 0x2b, 0x1f, 0x68, 0x9b, 0xd2, 0xb1, 0x8f, 0x12, 0xb0, 0xb3, 0xd2, 0xe7,
706 0x88, 0x1f, 0x1f, 0xef, 0x38, 0x77, 0x54, 0x53, 0x5f, 0x80, 0x79, 0x3f,
707 0x2e, 0x1a, 0xaa, 0xa8, 0x1e, 0x4b, 0x2b, 0x0d, 0xab, 0xb7, 0x63, 0xb9,
708 0x35, 0xb7, 0x7d, 0x14, 0xbc, 0x59, 0x4b, 0xdf, 0x51, 0x4a, 0xd2, 0xa1,
709 0xe2, 0x0c, 0xe2, 0x90, 0x82, 0x87, 0x6a, 0xae, 0xea, 0xd7, 0x64, 0xd6,
710 0x98, 0x55, 0xe8, 0xfd, 0xaf, 0x1a, 0x50, 0x6c, 0x54, 0xbc, 0x11, 0xf2,
711 0xfd, 0x4a, 0xf2, 0x9d, 0xbb, 0x7f, 0x0e, 0xf4, 0xd5, 0xbe, 0x8e, 0x16,
712 0x89, 0x12, 0x55, 0xd8, 0xc0, 0x71, 0x34, 0xee, 0xf6, 0xdc, 0x2d, 0xec,
713 0xc4, 0x87, 0x25, 0x86, 0x8d, 0xd8, 0x21, 0xe4, 0xb0, 0x4d, 0x0c, 0x89,
714 0xdc, 0x39, 0x26, 0x17, 0xdd, 0xf6, 0xd7, 0x94, 0x85, 0xd8, 0x04, 0x21,
715 0x70, 0x9d, 0x6f, 0x6f, 0xff, 0x5c, 0xba, 0x19, 0xe1, 0x45, 0xcb, 0x56,
716 0x57, 0x28, 0x7e, 0x1c, 0x0d, 0x41, 0x57, 0xaa, 0xb7, 0xb8, 0x27, 0xbb,
717 0xb1, 0xe4, 0xfa, 0x2a, 0xef, 0x21, 0x23, 0x75, 0x1a, 0xad, 0x2d, 0x9b,
718 0x86, 0x35, 0x8c, 0x9c, 0x77, 0xb5, 0x73, 0xad, 0xd8, 0x94, 0x2d, 0xe4,
719 0xf3, 0x0c, 0x9d, 0xee, 0xc1, 0x4e, 0x62, 0x7e, 0x17, 0xc0, 0x71, 0x9e,
720 0x2c, 0xde, 0xf1, 0xf9, 0x10, 0x28, 0x19, 0x33, 0x02, 0x03, 0x01, 0x00,
721 0x01, 0xa3, 0x82, 0x01, 0x49, 0x30, 0x82, 0x01, 0x45, 0x30, 0x12, 0x06,
722 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, 0x08, 0x30, 0x06, 0x01,
723 0x01, 0xff, 0x02, 0x01, 0x00, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f,
724 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x01, 0x86, 0x30, 0x1d, 0x06,
725 0x03, 0x55, 0x1d, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2b, 0x06,
726 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05,
727 0x05, 0x07, 0x03, 0x02, 0x30, 0x34, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05,
728 0x05, 0x07, 0x01, 0x01, 0x04, 0x28, 0x30, 0x26, 0x30, 0x24, 0x06, 0x08,
729 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x01, 0x86, 0x18, 0x68, 0x74,
730 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2e, 0x64, 0x69,
731 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x4b,
732 0x06, 0x03, 0x55, 0x1d, 0x1f, 0x04, 0x44, 0x30, 0x42, 0x30, 0x40, 0xa0,
733 0x3e, 0xa0, 0x3c, 0x86, 0x3a, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
734 0x63, 0x72, 0x6c, 0x34, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72,
735 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x69, 0x67, 0x69, 0x43, 0x65,
736 0x72, 0x74, 0x48, 0x69, 0x67, 0x68, 0x41, 0x73, 0x73, 0x75, 0x72, 0x61,
737 0x6e, 0x63, 0x65, 0x45, 0x56, 0x52, 0x6f, 0x6f, 0x74, 0x43, 0x41, 0x2e,
738 0x63, 0x72, 0x6c, 0x30, 0x3d, 0x06, 0x03, 0x55, 0x1d, 0x20, 0x04, 0x36,
739 0x30, 0x34, 0x30, 0x32, 0x06, 0x04, 0x55, 0x1d, 0x20, 0x00, 0x30, 0x2a,
740 0x30, 0x28, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x02, 0x01,
741 0x16, 0x1c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
742 0x77, 0x2e, 0x64, 0x69, 0x67, 0x69, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x63,
743 0x6f, 0x6d, 0x2f, 0x43, 0x50, 0x53, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d,
744 0x0e, 0x04, 0x16, 0x04, 0x14, 0x3d, 0xd3, 0x50, 0xa5, 0xd6, 0xa0, 0xad,
745 0xee, 0xf3, 0x4a, 0x60, 0x0a, 0x65, 0xd3, 0x21, 0xd4, 0xf8, 0xf8, 0xd6,
746 0x0f, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x18, 0x30, 0x16,
747 0x80, 0x14, 0xb1, 0x3e, 0xc3, 0x69, 0x03, 0xf8, 0xbf, 0x47, 0x01, 0xd4,
748 0x98, 0x26, 0x1a, 0x08, 0x02, 0xef, 0x63, 0x64, 0x2b, 0xc3, 0x30, 0x0d,
749 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05,
750 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x9d, 0xb6, 0xd0, 0x90, 0x86, 0xe1,
751 0x86, 0x02, 0xed, 0xc5, 0xa0, 0xf0, 0x34, 0x1c, 0x74, 0xc1, 0x8d, 0x76,
752 0xcc, 0x86, 0x0a, 0xa8, 0xf0, 0x4a, 0x8a, 0x42, 0xd6, 0x3f, 0xc8, 0xa9,
753 0x4d, 0xad, 0x7c, 0x08, 0xad, 0xe6, 0xb6, 0x50, 0xb8, 0xa2, 0x1a, 0x4d,
754 0x88, 0x07, 0xb1, 0x29, 0x21, 0xdc, 0xe7, 0xda, 0xc6, 0x3c, 0x21, 0xe0,
755 0xe3, 0x11, 0x49, 0x70, 0xac, 0x7a, 0x1d, 0x01, 0xa4, 0xca, 0x11, 0x3a,
756 0x57, 0xab, 0x7d, 0x57, 0x2a, 0x40, 0x74, 0xfd, 0xd3, 0x1d, 0x85, 0x18,
757 0x50, 0xdf, 0x57, 0x47, 0x75, 0xa1, 0x7d, 0x55, 0x20, 0x2e, 0x47, 0x37,
758 0x50, 0x72, 0x8c, 0x7f, 0x82, 0x1b, 0xd2, 0x62, 0x8f, 0x2d, 0x03, 0x5a,
759 0xda, 0xc3, 0xc8, 0xa1, 0xce, 0x2c, 0x52, 0xa2, 0x00, 0x63, 0xeb, 0x73,
760 0xba, 0x71, 0xc8, 0x49, 0x27, 0x23, 0x97, 0x64, 0x85, 0x9e, 0x38, 0x0e,
761 0xad, 0x63, 0x68, 0x3c, 0xba, 0x52, 0x81, 0x58, 0x79, 0xa3, 0x2c, 0x0c,
762 0xdf, 0xde, 0x6d, 0xeb, 0x31, 0xf2, 0xba, 0xa0, 0x7c, 0x6c, 0xf1, 0x2c,
763 0xd4, 0xe1, 0xbd, 0x77, 0x84, 0x37, 0x03, 0xce, 0x32, 0xb5, 0xc8, 0x9a,
764 0x81, 0x1a, 0x4a, 0x92, 0x4e, 0x3b, 0x46, 0x9a, 0x85, 0xfe, 0x83, 0xa2,
765 0xf9, 0x9e, 0x8c, 0xa3, 0xcc, 0x0d, 0x5e, 0xb3, 0x3d, 0xcf, 0x04, 0x78,
766 0x8f, 0x14, 0x14, 0x7b, 0x32, 0x9c, 0xc7, 0x00, 0xa6, 0x5c, 0xc4, 0xb5,
767 0xa1, 0x55, 0x8d, 0x5a, 0x56, 0x68, 0xa4, 0x22, 0x70, 0xaa, 0x3c, 0x81,
768 0x71, 0xd9, 0x9d, 0xa8, 0x45, 0x3b, 0xf4, 0xe5, 0xf6, 0xa2, 0x51, 0xdd,
769 0xc7, 0x7b, 0x62, 0xe8, 0x6f, 0x0c, 0x74, 0xeb, 0xb8, 0xda, 0xf8, 0xbf,
770 0x87, 0x0d, 0x79, 0x50, 0x91, 0x90, 0x9b, 0x18, 0x3b, 0x91, 0x59, 0x27,
771 0xf1, 0x35, 0x28, 0x13, 0xab, 0x26, 0x7e, 0xd5, 0xf7, 0x7a
772 };
773
774
775 static
776 unsigned char www_paypal_com_cert_der[] = {
777 0x30, 0x82, 0x06, 0x08, 0x30, 0x82, 0x04, 0xf0, 0xa0, 0x03, 0x02, 0x01,
778 0x02, 0x02, 0x10, 0x08, 0x34, 0xe4, 0x53, 0xd4, 0x3a, 0x68, 0x57, 0x23,
779 0xaf, 0xfb, 0xb1, 0x33, 0xce, 0x45, 0x7c, 0x30, 0x0d, 0x06, 0x09, 0x2a,
780 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x81,
781 0xba, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
782 0x55, 0x53, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
783 0x0e, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x49,
784 0x6e, 0x63, 0x2e, 0x31, 0x1f, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x04, 0x0b,
785 0x13, 0x16, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x54,
786 0x72, 0x75, 0x73, 0x74, 0x20, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
787 0x31, 0x3b, 0x30, 0x39, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x32, 0x54,
788 0x65, 0x72, 0x6d, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x73, 0x65, 0x20,
789 0x61, 0x74, 0x20, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77,
790 0x77, 0x77, 0x2e, 0x76, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x2e,
791 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x70, 0x61, 0x20, 0x28, 0x63, 0x29, 0x30,
792 0x36, 0x31, 0x34, 0x30, 0x32, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x2b,
793 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x43, 0x6c, 0x61,
794 0x73, 0x73, 0x20, 0x33, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65,
795 0x64, 0x20, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e,
796 0x20, 0x53, 0x53, 0x4c, 0x20, 0x43, 0x41, 0x30, 0x1e, 0x17, 0x0d, 0x31,
797 0x34, 0x30, 0x34, 0x31, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a,
798 0x17, 0x0d, 0x31, 0x35, 0x30, 0x34, 0x30, 0x32, 0x32, 0x33, 0x35, 0x39,
799 0x35, 0x39, 0x5a, 0x30, 0x82, 0x01, 0x09, 0x31, 0x13, 0x30, 0x11, 0x06,
800 0x0b, 0x2b, 0x06, 0x01, 0x04, 0x01, 0x82, 0x37, 0x3c, 0x02, 0x01, 0x03,
801 0x13, 0x02, 0x55, 0x53, 0x31, 0x19, 0x30, 0x17, 0x06, 0x0b, 0x2b, 0x06,
802 0x01, 0x04, 0x01, 0x82, 0x37, 0x3c, 0x02, 0x01, 0x02, 0x13, 0x08, 0x44,
803 0x65, 0x6c, 0x61, 0x77, 0x61, 0x72, 0x65, 0x31, 0x1d, 0x30, 0x1b, 0x06,
804 0x03, 0x55, 0x04, 0x0f, 0x13, 0x14, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74,
805 0x65, 0x20, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69,
806 0x6f, 0x6e, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x05, 0x13,
807 0x07, 0x33, 0x30, 0x31, 0x34, 0x32, 0x36, 0x37, 0x31, 0x0b, 0x30, 0x09,
808 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31, 0x13, 0x30,
809 0x11, 0x06, 0x03, 0x55, 0x04, 0x11, 0x14, 0x0a, 0x39, 0x35, 0x31, 0x33,
810 0x31, 0x2d, 0x32, 0x30, 0x32, 0x31, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
811 0x55, 0x04, 0x08, 0x13, 0x0a, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f, 0x72,
812 0x6e, 0x69, 0x61, 0x31, 0x11, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x04, 0x07,
813 0x14, 0x08, 0x53, 0x61, 0x6e, 0x20, 0x4a, 0x6f, 0x73, 0x65, 0x31, 0x16,
814 0x30, 0x14, 0x06, 0x03, 0x55, 0x04, 0x09, 0x14, 0x0d, 0x32, 0x32, 0x31,
815 0x31, 0x20, 0x4e, 0x20, 0x31, 0x73, 0x74, 0x20, 0x53, 0x74, 0x31, 0x15,
816 0x30, 0x13, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x14, 0x0c, 0x50, 0x61, 0x79,
817 0x50, 0x61, 0x6c, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x31, 0x14, 0x30,
818 0x12, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x14, 0x0b, 0x43, 0x44, 0x4e, 0x20,
819 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x31, 0x17, 0x30, 0x15, 0x06,
820 0x03, 0x55, 0x04, 0x03, 0x14, 0x0e, 0x77, 0x77, 0x77, 0x2e, 0x70, 0x61,
821 0x79, 0x70, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x82, 0x01, 0x22,
822 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
823 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a,
824 0x02, 0x82, 0x01, 0x01, 0x00, 0xbe, 0xae, 0x46, 0x4d, 0x99, 0x6e, 0x6d,
825 0x6c, 0x35, 0x4b, 0x88, 0x32, 0x38, 0xbb, 0xdc, 0xd0, 0x09, 0x95, 0xd0,
826 0x9a, 0xe4, 0x36, 0xe7, 0x9f, 0x0a, 0xb0, 0xf2, 0xd7, 0xd2, 0x30, 0x62,
827 0x03, 0x1f, 0xad, 0xc6, 0xf4, 0x6d, 0x10, 0x84, 0xf7, 0x79, 0x1b, 0xbc,
828 0x74, 0xc0, 0xa8, 0xe3, 0x82, 0xfe, 0xd4, 0x0a, 0x93, 0x2e, 0x3d, 0x4b,
829 0x12, 0x24, 0xad, 0xad, 0x5f, 0x5d, 0xed, 0x1c, 0xc9, 0x1c, 0x6f, 0x13,
830 0x7b, 0xe2, 0xc1, 0x25, 0x4e, 0x46, 0x5f, 0x4f, 0x3b, 0x2e, 0x5a, 0xcb,
831 0xc1, 0x5a, 0xb4, 0x82, 0xcf, 0xad, 0xa3, 0x65, 0xe8, 0x86, 0x33, 0xb5,
832 0xed, 0x1d, 0x78, 0x99, 0xa7, 0xc7, 0xd5, 0xfa, 0x10, 0x2e, 0xfb, 0x11,
833 0x4e, 0x23, 0x58, 0x06, 0x96, 0x87, 0x71, 0x75, 0x51, 0x73, 0x8c, 0x0f,
834 0xf4, 0xca, 0x7c, 0x8f, 0x91, 0x25, 0x79, 0x13, 0xdc, 0xb0, 0xf0, 0xde,
835 0x08, 0x07, 0x01, 0x0b, 0x64, 0xcc, 0x57, 0x6a, 0x12, 0x86, 0x62, 0x17,
836 0x3e, 0x5d, 0xb9, 0x62, 0x3d, 0x58, 0x7b, 0x2a, 0x6e, 0xf6, 0xa6, 0x30,
837 0x41, 0x02, 0xfc, 0xec, 0x64, 0x72, 0x33, 0xd5, 0xd5, 0x3f, 0x6b, 0x6d,
838 0x97, 0xf3, 0xc1, 0x61, 0xbf, 0x38, 0x3b, 0xab, 0x41, 0x47, 0xd4, 0xc2,
839 0x03, 0xd7, 0x3b, 0x59, 0x57, 0x9d, 0xe1, 0xa1, 0x2a, 0xd6, 0x78, 0xe8,
840 0x83, 0x5d, 0x3d, 0xdd, 0xaa, 0x5d, 0x17, 0xfd, 0x94, 0xd6, 0xe5, 0x7a,
841 0xef, 0x02, 0x63, 0xc6, 0xa3, 0xc6, 0x2d, 0x5b, 0x33, 0x08, 0x8b, 0xf5,
842 0xa5, 0x03, 0xb4, 0xfe, 0xf2, 0x1d, 0xab, 0xbf, 0x5e, 0x9e, 0xb8, 0x78,
843 0x39, 0x20, 0x2b, 0x68, 0x61, 0x4f, 0xe4, 0x99, 0xf2, 0xaa, 0xc2, 0x4d,
844 0x4b, 0x48, 0xcb, 0x68, 0xc2, 0x10, 0x3f, 0xfa, 0x9a, 0xba, 0xc5, 0x6a,
845 0x53, 0x8f, 0x22, 0xf3, 0xd7, 0xc9, 0xed, 0xa4, 0xd5, 0x02, 0x03, 0x01,
846 0x00, 0x01, 0xa3, 0x82, 0x01, 0xb6, 0x30, 0x82, 0x01, 0xb2, 0x30, 0x67,
847 0x06, 0x03, 0x55, 0x1d, 0x11, 0x04, 0x60, 0x30, 0x5e, 0x82, 0x0e, 0x77,
848 0x77, 0x77, 0x2e, 0x70, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x2e, 0x63, 0x6f,
849 0x6d, 0x82, 0x12, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x70,
850 0x61, 0x79, 0x70, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x82, 0x0c, 0x74,
851 0x2e, 0x70, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x82,
852 0x0c, 0x63, 0x2e, 0x70, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x2e, 0x63, 0x6f,
853 0x6d, 0x82, 0x0e, 0x74, 0x6d, 0x73, 0x2e, 0x70, 0x61, 0x79, 0x70, 0x61,
854 0x6c, 0x2e, 0x63, 0x6f, 0x6d, 0x82, 0x0c, 0x74, 0x6d, 0x73, 0x2e, 0x65,
855 0x62, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x09, 0x06, 0x03, 0x55,
856 0x1d, 0x13, 0x04, 0x02, 0x30, 0x00, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d,
857 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x05, 0xa0, 0x30, 0x1d,
858 0x06, 0x03, 0x55, 0x1d, 0x25, 0x04, 0x16, 0x30, 0x14, 0x06, 0x08, 0x2b,
859 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x06, 0x08, 0x2b, 0x06, 0x01,
860 0x05, 0x05, 0x07, 0x03, 0x02, 0x30, 0x66, 0x06, 0x03, 0x55, 0x1d, 0x20,
861 0x04, 0x5f, 0x30, 0x5d, 0x30, 0x5b, 0x06, 0x0b, 0x60, 0x86, 0x48, 0x01,
862 0x86, 0xf8, 0x45, 0x01, 0x07, 0x17, 0x06, 0x30, 0x4c, 0x30, 0x23, 0x06,
863 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x02, 0x01, 0x16, 0x17, 0x68,
864 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x2e, 0x73, 0x79, 0x6d,
865 0x63, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x70, 0x73, 0x30, 0x25,
866 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x02, 0x02, 0x30, 0x19,
867 0x1a, 0x17, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x64, 0x2e,
868 0x73, 0x79, 0x6d, 0x63, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x70,
869 0x61, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x18, 0x30, 0x16,
870 0x80, 0x14, 0xfc, 0x8a, 0x50, 0xba, 0x9e, 0xb9, 0x25, 0x5a, 0x7b, 0x55,
871 0x85, 0x4f, 0x95, 0x00, 0x63, 0x8f, 0xe9, 0x58, 0x6b, 0x43, 0x30, 0x2b,
872 0x06, 0x03, 0x55, 0x1d, 0x1f, 0x04, 0x24, 0x30, 0x22, 0x30, 0x20, 0xa0,
873 0x1e, 0xa0, 0x1c, 0x86, 0x1a, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
874 0x73, 0x61, 0x2e, 0x73, 0x79, 0x6d, 0x63, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
875 0x2f, 0x73, 0x61, 0x2e, 0x63, 0x72, 0x6c, 0x30, 0x57, 0x06, 0x08, 0x2b,
876 0x06, 0x01, 0x05, 0x05, 0x07, 0x01, 0x01, 0x04, 0x4b, 0x30, 0x49, 0x30,
877 0x1f, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x01, 0x86,
878 0x13, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x73, 0x61, 0x2e, 0x73,
879 0x79, 0x6d, 0x63, 0x64, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x26, 0x06, 0x08,
880 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x02, 0x86, 0x1a, 0x68, 0x74,
881 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x73, 0x61, 0x2e, 0x73, 0x79, 0x6d, 0x63,
882 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73, 0x61, 0x2e, 0x63, 0x72, 0x74,
883 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
884 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x76, 0x08, 0xab, 0x64,
885 0xf6, 0xf4, 0x0b, 0xe4, 0x81, 0xbd, 0x59, 0xb2, 0x3e, 0xa4, 0xfc, 0xf5,
886 0x03, 0x75, 0x04, 0x59, 0x6a, 0xb5, 0xfe, 0x12, 0x34, 0x2a, 0x04, 0x9c,
887 0x89, 0xcd, 0xcb, 0xe1, 0x3c, 0x6c, 0x20, 0x39, 0xd4, 0xea, 0x6f, 0x27,
888 0x34, 0x7f, 0x62, 0x1c, 0x45, 0x72, 0x11, 0x39, 0xc0, 0x45, 0xaa, 0x2a,
889 0x35, 0x5c, 0xb6, 0x06, 0xe3, 0x08, 0xa7, 0x8f, 0x08, 0xaf, 0x80, 0xb2,
890 0x10, 0xce, 0xa5, 0x28, 0x5b, 0x1c, 0x49, 0x55, 0x11, 0xeb, 0x6b, 0x2a,
891 0x80, 0xc1, 0x09, 0xed, 0x82, 0x72, 0x48, 0xca, 0x19, 0x8b, 0xe5, 0x34,
892 0x94, 0x3c, 0x50, 0x26, 0x77, 0x6b, 0x1a, 0x63, 0xba, 0x6f, 0x63, 0xd1,
893 0x58, 0xed, 0x2b, 0x1d, 0xb7, 0xa7, 0x6e, 0x04, 0x25, 0x99, 0xc3, 0x94,
894 0x03, 0x90, 0xec, 0x0f, 0x4c, 0x93, 0x83, 0x35, 0x86, 0xe3, 0x70, 0x84,
895 0x0d, 0x3c, 0xce, 0xaf, 0x4e, 0x80, 0x4a, 0xd3, 0x91, 0x3f, 0x55, 0x33,
896 0x2f, 0x1f, 0x67, 0x87, 0x2f, 0x09, 0xa2, 0x41, 0xc0, 0x10, 0x4a, 0x2c,
897 0xc4, 0x88, 0xa0, 0x6f, 0x93, 0x2c, 0xef, 0x38, 0xd2, 0x61, 0xc7, 0xec,
898 0xf3, 0x37, 0x7d, 0xc9, 0x32, 0xa5, 0x5c, 0x1e, 0x48, 0x0e, 0x85, 0x6c,
899 0x47, 0x2a, 0x7f, 0xc6, 0x30, 0x5e, 0xc2, 0xf6, 0x2e, 0xdd, 0xe3, 0x4d,
900 0xac, 0xff, 0xef, 0x48, 0x26, 0xc7, 0x51, 0x74, 0x47, 0x32, 0x46, 0x0b,
901 0xcd, 0x7a, 0x0a, 0x5d, 0x5b, 0xc5, 0x8d, 0xed, 0x17, 0xbc, 0xde, 0x09,
902 0xbc, 0xe9, 0x93, 0xa9, 0x7c, 0x85, 0x9c, 0x88, 0xa6, 0x83, 0xbc, 0xd6,
903 0xe5, 0x1f, 0x05, 0x10, 0xdf, 0xb2, 0x4f, 0xa2, 0xc5, 0x97, 0x00, 0x8b,
904 0x57, 0xc7, 0x0d, 0xe7, 0xc7, 0x57, 0x57, 0x87, 0x7d, 0x13, 0x9f, 0x5c,
905 0x5c, 0xf7, 0xf3, 0xcd, 0x00, 0x89, 0x0d, 0x85, 0x9a, 0xa2, 0x70, 0xda
906 };
907
908
909 static
910 unsigned char www_paypal_com_issuer_cert_der[] = {
911 0x30, 0x82, 0x05, 0xe4, 0x30, 0x82, 0x04, 0xcc, 0xa0, 0x03, 0x02, 0x01,
912 0x02, 0x02, 0x10, 0x5b, 0x77, 0x59, 0xc6, 0x17, 0x84, 0xe1, 0x5e, 0xc7,
913 0x27, 0xc0, 0x32, 0x95, 0x29, 0x28, 0x6b, 0x30, 0x0d, 0x06, 0x09, 0x2a,
914 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x81,
915 0xca, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
916 0x55, 0x53, 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
917 0x0e, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x49,
918 0x6e, 0x63, 0x2e, 0x31, 0x1f, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x04, 0x0b,
919 0x13, 0x16, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x54,
920 0x72, 0x75, 0x73, 0x74, 0x20, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
921 0x31, 0x3a, 0x30, 0x38, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x31, 0x28,
922 0x63, 0x29, 0x20, 0x32, 0x30, 0x30, 0x36, 0x20, 0x56, 0x65, 0x72, 0x69,
923 0x53, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x20, 0x2d,
924 0x20, 0x46, 0x6f, 0x72, 0x20, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
925 0x7a, 0x65, 0x64, 0x20, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x6e, 0x6c, 0x79,
926 0x31, 0x45, 0x30, 0x43, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x3c, 0x56,
927 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x43, 0x6c, 0x61, 0x73,
928 0x73, 0x20, 0x33, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x50,
929 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69,
930 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x75, 0x74,
931 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x20, 0x2d, 0x20, 0x47, 0x35, 0x30,
932 0x1e, 0x17, 0x0d, 0x30, 0x36, 0x31, 0x31, 0x30, 0x38, 0x30, 0x30, 0x30,
933 0x30, 0x30, 0x30, 0x5a, 0x17, 0x0d, 0x31, 0x36, 0x31, 0x31, 0x30, 0x37,
934 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30, 0x81, 0xba, 0x31, 0x0b,
935 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31,
936 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x0e, 0x56, 0x65,
937 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e,
938 0x31, 0x1f, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x16, 0x56,
939 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x54, 0x72, 0x75, 0x73,
940 0x74, 0x20, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x31, 0x3b, 0x30,
941 0x39, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x32, 0x54, 0x65, 0x72, 0x6d,
942 0x73, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x73, 0x65, 0x20, 0x61, 0x74, 0x20,
943 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
944 0x76, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x2e, 0x63, 0x6f, 0x6d,
945 0x2f, 0x72, 0x70, 0x61, 0x20, 0x28, 0x63, 0x29, 0x30, 0x36, 0x31, 0x34,
946 0x30, 0x32, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x2b, 0x56, 0x65, 0x72,
947 0x69, 0x53, 0x69, 0x67, 0x6e, 0x20, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x20,
948 0x33, 0x20, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x56,
949 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x53,
950 0x4c, 0x20, 0x43, 0x41, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09,
951 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03,
952 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01,
953 0x00, 0x98, 0xdb, 0xa0, 0x55, 0xeb, 0x9c, 0xfd, 0x17, 0x79, 0xe3, 0x9a,
954 0x6e, 0x14, 0x1d, 0xb1, 0x5b, 0x98, 0x23, 0x87, 0x16, 0x6e, 0x87, 0x76,
955 0x9c, 0xb5, 0x38, 0x3b, 0xb5, 0xa0, 0x7a, 0xb4, 0x07, 0x63, 0x09, 0x19,
956 0xe6, 0x2a, 0x88, 0x48, 0xa9, 0xe7, 0x9d, 0xb6, 0x30, 0x5a, 0x08, 0x97,
957 0x0c, 0xec, 0xaa, 0xe4, 0x16, 0x69, 0x72, 0x62, 0x23, 0x9a, 0xfb, 0x7a,
958 0x54, 0x28, 0x98, 0xc5, 0x0c, 0x2d, 0xb7, 0xd7, 0x22, 0xb6, 0xc8, 0xf9,
959 0x38, 0x17, 0xc7, 0xdd, 0xda, 0x31, 0x46, 0x9a, 0x94, 0x14, 0x8e, 0x9e,
960 0xee, 0x78, 0xa0, 0xb7, 0x22, 0xd4, 0x49, 0x54, 0x97, 0x4d, 0xe5, 0x74,
961 0x5b, 0x92, 0xbc, 0xec, 0x6c, 0x2c, 0xdf, 0xe7, 0xc1, 0xb6, 0x1b, 0x1a,
962 0x55, 0x6b, 0x66, 0x08, 0x03, 0x7f, 0x45, 0xaf, 0x9a, 0x33, 0xf1, 0x10,
963 0xc0, 0x6c, 0x99, 0x4a, 0x92, 0x24, 0x31, 0x08, 0x6d, 0xdd, 0x02, 0x3e,
964 0x61, 0x76, 0x78, 0x78, 0xb6, 0xed, 0x7e, 0x37, 0xae, 0x6c, 0xf3, 0x89,
965 0xe1, 0xb7, 0xe1, 0xdc, 0x15, 0xcc, 0xb7, 0x56, 0x9f, 0x80, 0xa0, 0xb1,
966 0x05, 0x7f, 0x4e, 0x37, 0x15, 0xff, 0xb7, 0x2f, 0x1e, 0x8f, 0x06, 0x38,
967 0x3f, 0x50, 0xb7, 0x69, 0x28, 0xa3, 0xb5, 0x66, 0x5f, 0x36, 0x1a, 0x52,
968 0x48, 0x43, 0x66, 0x52, 0xdf, 0xa2, 0x92, 0x4f, 0xd3, 0x18, 0x60, 0xbe,
969 0xe3, 0xea, 0x5e, 0x19, 0x71, 0x05, 0xbf, 0x9e, 0x1c, 0x6c, 0x68, 0x72,
970 0x25, 0x6f, 0xb3, 0x7b, 0x73, 0xc9, 0x6d, 0xbd, 0x12, 0xff, 0x9b, 0x41,
971 0x32, 0x5e, 0xf4, 0xe8, 0x7e, 0xc5, 0x0b, 0xa3, 0x4c, 0x64, 0xd1, 0x4e,
972 0xbc, 0x26, 0x08, 0x65, 0xfb, 0x19, 0x97, 0x58, 0x78, 0xe1, 0x33, 0xbf,
973 0xed, 0x68, 0x3e, 0xb1, 0x27, 0x45, 0x6f, 0xc0, 0xe2, 0xec, 0x97, 0x69,
974 0xf7, 0x5c, 0xd3, 0xf7, 0x51, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x82,
975 0x01, 0xd2, 0x30, 0x82, 0x01, 0xce, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d,
976 0x0e, 0x04, 0x16, 0x04, 0x14, 0xfc, 0x8a, 0x50, 0xba, 0x9e, 0xb9, 0x25,
977 0x5a, 0x7b, 0x55, 0x85, 0x4f, 0x95, 0x00, 0x63, 0x8f, 0xe9, 0x58, 0x6b,
978 0x43, 0x30, 0x12, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04,
979 0x08, 0x30, 0x06, 0x01, 0x01, 0xff, 0x02, 0x01, 0x00, 0x30, 0x3d, 0x06,
980 0x03, 0x55, 0x1d, 0x20, 0x04, 0x36, 0x30, 0x34, 0x30, 0x32, 0x06, 0x04,
981 0x55, 0x1d, 0x20, 0x00, 0x30, 0x2a, 0x30, 0x28, 0x06, 0x08, 0x2b, 0x06,
982 0x01, 0x05, 0x05, 0x07, 0x02, 0x01, 0x16, 0x1c, 0x68, 0x74, 0x74, 0x70,
983 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x76, 0x65, 0x72, 0x69,
984 0x73, 0x69, 0x67, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x70, 0x73,
985 0x30, 0x3d, 0x06, 0x03, 0x55, 0x1d, 0x1f, 0x04, 0x36, 0x30, 0x34, 0x30,
986 0x32, 0xa0, 0x30, 0xa0, 0x2e, 0x86, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x3a,
987 0x2f, 0x2f, 0x45, 0x56, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x2d, 0x63,
988 0x72, 0x6c, 0x2e, 0x76, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x2e,
989 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x63, 0x61, 0x33, 0x2d, 0x67, 0x35, 0x2e,
990 0x63, 0x72, 0x6c, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01,
991 0xff, 0x04, 0x04, 0x03, 0x02, 0x01, 0x06, 0x30, 0x11, 0x06, 0x09, 0x60,
992 0x86, 0x48, 0x01, 0x86, 0xf8, 0x42, 0x01, 0x01, 0x04, 0x04, 0x03, 0x02,
993 0x01, 0x06, 0x30, 0x6d, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07,
994 0x01, 0x0c, 0x04, 0x61, 0x30, 0x5f, 0xa1, 0x5d, 0xa0, 0x5b, 0x30, 0x59,
995 0x30, 0x57, 0x30, 0x55, 0x16, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f,
996 0x67, 0x69, 0x66, 0x30, 0x21, 0x30, 0x1f, 0x30, 0x07, 0x06, 0x05, 0x2b,
997 0x0e, 0x03, 0x02, 0x1a, 0x04, 0x14, 0x8f, 0xe5, 0xd3, 0x1a, 0x86, 0xac,
998 0x8d, 0x8e, 0x6b, 0xc3, 0xcf, 0x80, 0x6a, 0xd4, 0x48, 0x18, 0x2c, 0x7b,
999 0x19, 0x2e, 0x30, 0x25, 0x16, 0x23, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
1000 0x2f, 0x6c, 0x6f, 0x67, 0x6f, 0x2e, 0x76, 0x65, 0x72, 0x69, 0x73, 0x69,
1001 0x67, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x76, 0x73, 0x6c, 0x6f, 0x67,
1002 0x6f, 0x2e, 0x67, 0x69, 0x66, 0x30, 0x29, 0x06, 0x03, 0x55, 0x1d, 0x11,
1003 0x04, 0x22, 0x30, 0x20, 0xa4, 0x1e, 0x30, 0x1c, 0x31, 0x1a, 0x30, 0x18,
1004 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x11, 0x43, 0x6c, 0x61, 0x73, 0x73,
1005 0x33, 0x43, 0x41, 0x32, 0x30, 0x34, 0x38, 0x2d, 0x31, 0x2d, 0x34, 0x37,
1006 0x30, 0x3d, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x01, 0x01,
1007 0x04, 0x31, 0x30, 0x2f, 0x30, 0x2d, 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05,
1008 0x05, 0x07, 0x30, 0x01, 0x86, 0x21, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
1009 0x2f, 0x45, 0x56, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x2d, 0x6f, 0x63,
1010 0x73, 0x70, 0x2e, 0x76, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x2e,
1011 0x63, 0x6f, 0x6d, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x18,
1012 0x30, 0x16, 0x80, 0x14, 0x7f, 0xd3, 0x65, 0xa7, 0xc2, 0xdd, 0xec, 0xbb,
1013 0xf0, 0x30, 0x09, 0xf3, 0x43, 0x39, 0xfa, 0x02, 0xaf, 0x33, 0x31, 0x33,
1014 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
1015 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x96, 0xa2, 0xfa, 0x7f,
1016 0xe6, 0x3d, 0xed, 0xd4, 0x2b, 0xce, 0xb7, 0x15, 0x3f, 0xc0, 0x72, 0x03,
1017 0x5f, 0x8b, 0xba, 0x16, 0x90, 0x25, 0xf7, 0xc2, 0x83, 0xd8, 0xc7, 0x75,
1018 0x34, 0x63, 0x68, 0x12, 0x53, 0x0c, 0x53, 0x89, 0x7b, 0xc9, 0x56, 0x09,
1019 0xa7, 0xc3, 0x36, 0x44, 0x4e, 0x0e, 0xd0, 0x62, 0x62, 0xb3, 0x86, 0xfa,
1020 0xe8, 0xa1, 0x9b, 0x34, 0x67, 0x8d, 0x53, 0x22, 0x17, 0x3e, 0xfd, 0xac,
1021 0xee, 0x67, 0x2e, 0x43, 0xe2, 0x5d, 0x7f, 0x33, 0x84, 0xf2, 0xa2, 0x70,
1022 0xc0, 0x6e, 0x82, 0x97, 0xc0, 0x34, 0xfd, 0x25, 0xc6, 0x23, 0x7f, 0xed,
1023 0xe6, 0xb0, 0xc5, 0x57, 0x43, 0x84, 0xb2, 0xde, 0x2d, 0xf1, 0xd0, 0xf6,
1024 0x48, 0x1f, 0x14, 0x71, 0x57, 0xb2, 0xac, 0x31, 0xe1, 0x97, 0x24, 0x23,
1025 0xc9, 0x13, 0x5d, 0x74, 0xe5, 0x46, 0xef, 0x09, 0x7c, 0x9e, 0xe1, 0x99,
1026 0x31, 0x0a, 0x08, 0x79, 0x1b, 0x8f, 0x71, 0x9f, 0x17, 0x66, 0xc8, 0x38,
1027 0xcf, 0xee, 0x8c, 0x97, 0xb6, 0x06, 0xb9, 0x73, 0x46, 0xe4, 0xd3, 0x94,
1028 0xc1, 0xe5, 0x60, 0xb5, 0x25, 0x75, 0x2d, 0xd9, 0x69, 0x31, 0xec, 0xcd,
1029 0x96, 0xc3, 0xa3, 0x76, 0xfd, 0xe8, 0x74, 0x44, 0xac, 0x12, 0xb9, 0x4d,
1030 0xbf, 0x51, 0xe8, 0xb9, 0xd4, 0x44, 0x4e, 0x27, 0xcb, 0xae, 0x20, 0xd1,
1031 0x7e, 0x2a, 0x7c, 0xb6, 0x63, 0x47, 0x9e, 0x76, 0xba, 0x97, 0xd0, 0x16,
1032 0xe7, 0x0b, 0x6c, 0x6d, 0xf7, 0x43, 0x6f, 0x33, 0x0b, 0x29, 0x30, 0x77,
1033 0xfa, 0x9d, 0xf9, 0xf5, 0x4e, 0xb8, 0x76, 0xb3, 0xcd, 0x18, 0xb4, 0xf9,
1034 0x20, 0xef, 0x3d, 0xdb, 0xe6, 0xca, 0xad, 0x9b, 0xd0, 0x4e, 0xd2, 0x87,
1035 0xa9, 0x0d, 0xa6, 0x44, 0x73, 0x50, 0xdd, 0x70, 0x5b, 0xed, 0xad, 0x7e,
1036 0x4a, 0xbc, 0x22, 0xd5, 0xa8, 0x26, 0xe4, 0xc2, 0x85, 0x20, 0x0d, 0xd9
1037 };
1038
1039
1040
1041 /* A valid ocsp response */
1042 static
1043 uint8_t valid_ocsp_response_der[] = {
1044 0x30, 0x82, 0x01, 0x72, 0x0a, 0x01, 0x00, 0xa0, 0x82, 0x01, 0x6b, 0x30,
1045 0x82, 0x01, 0x67, 0x06, 0x09, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30,
1046 0x01, 0x01, 0x04, 0x82, 0x01, 0x58, 0x30, 0x82, 0x01, 0x54, 0x30, 0x81,
1047 0xbe, 0xa1, 0x22, 0x30, 0x20, 0x31, 0x1e, 0x30, 0x1c, 0x06, 0x03, 0x55,
1048 0x04, 0x03, 0x13, 0x15, 0x63, 0x6f, 0x72, 0x65, 0x54, 0x4c, 0x53, 0x20,
1049 0x43, 0x41, 0x20, 0x43, 0x65, 0x72, 0x74, 0x20, 0x28, 0x52, 0x53, 0x41,
1050 0x29, 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30, 0x38, 0x32, 0x30, 0x32,
1051 0x31, 0x31, 0x33, 0x30, 0x37, 0x5a, 0x30, 0x62, 0x30, 0x60, 0x30, 0x3a,
1052 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0e, 0x03, 0x02, 0x1a, 0x05, 0x00, 0x04,
1053 0x14, 0x20, 0xd4, 0x96, 0xb3, 0xfb, 0xd1, 0xb8, 0x84, 0x3a, 0x38, 0x14,
1054 0xdb, 0x33, 0xd1, 0x0d, 0xa8, 0xca, 0x96, 0xba, 0x13, 0x04, 0x14, 0xb2,
1055 0x23, 0x1b, 0x0f, 0x2c, 0x5a, 0xa2, 0x1d, 0xeb, 0x96, 0x34, 0xa7, 0x6f,
1056 0x9d, 0x97, 0x11, 0x81, 0x14, 0x61, 0xbb, 0x02, 0x01, 0x01, 0xa1, 0x11,
1057 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30, 0x38, 0x32, 0x30, 0x30, 0x30,
1058 0x30, 0x30, 0x30, 0x30, 0x5a, 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30,
1059 0x38, 0x32, 0x30, 0x32, 0x31, 0x31, 0x33, 0x30, 0x37, 0x5a, 0xa1, 0x23,
1060 0x30, 0x21, 0x30, 0x1f, 0x06, 0x09, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07,
1061 0x30, 0x01, 0x02, 0x04, 0x12, 0x04, 0x10, 0x4c, 0xc5, 0x63, 0xf2, 0x0a,
1062 0x84, 0x8c, 0x03, 0xa4, 0x0d, 0x97, 0xd1, 0xa2, 0xbb, 0x1e, 0xb2, 0x30,
1063 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05,
1064 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x1b, 0x21, 0xd7, 0x01, 0xde, 0xb8,
1065 0x58, 0x4b, 0x79, 0x6a, 0xa3, 0x8b, 0xa7, 0xe0, 0xbd, 0xa8, 0xda, 0x58,
1066 0x48, 0xbb, 0xa7, 0xcd, 0xf7, 0x91, 0x15, 0xb3, 0x38, 0x70, 0xd9, 0x43,
1067 0x25, 0x72, 0x0e, 0xc3, 0x3d, 0xf9, 0xc7, 0x30, 0x2d, 0xb4, 0x9f, 0x1c,
1068 0x4b, 0x62, 0x31, 0x48, 0xb4, 0x9f, 0x00, 0xbd, 0x57, 0xb6, 0xec, 0xda,
1069 0xf0, 0xa2, 0x42, 0x61, 0xfc, 0xef, 0x73, 0xc5, 0x55, 0xc1, 0xf6, 0x72,
1070 0x79, 0xcf, 0x55, 0x01, 0x09, 0xe4, 0xd2, 0xee, 0xbd, 0xa6, 0x08, 0xc6,
1071 0x39, 0x3a, 0x17, 0x76, 0x98, 0xaa, 0x61, 0x82, 0xb9, 0x41, 0xe1, 0xbb,
1072 0x4f, 0x67, 0x5e, 0x0b, 0x5e, 0xfa, 0x3c, 0x12, 0x15, 0xbe, 0x90, 0x8e,
1073 0x29, 0xe6, 0x5c, 0x9b, 0xfc, 0xaf, 0x40, 0xa4, 0x31, 0xd7, 0xa4, 0xc6,
1074 0x71, 0x22, 0x01, 0xfa, 0xb2, 0xcd, 0x6e, 0x1f, 0x26, 0xdb, 0xb1, 0xa3,
1075 0xec, 0x43
1076 };
1077
1078
1079 /* An ocsp response with a bad hash algorithm */
1080 static
1081 uint8_t bad_hash_ocsp_response_der[] = {
1082 0x30, 0x82, 0x01, 0x72, 0x0a, 0x01, 0x00, 0xa0, 0x82, 0x01, 0x6b, 0x30,
1083 0x82, 0x01, 0x67, 0x06, 0x09, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30,
1084 0x01, 0x01, 0x04, 0x82, 0x01, 0x58, 0x30, 0x82, 0x01, 0x54, 0x30, 0x81,
1085 0xbe, 0xa1, 0x22, 0x30, 0x20, 0x31, 0x1e, 0x30, 0x1c, 0x06, 0x03, 0x55,
1086 0x04, 0x03, 0x13, 0x15, 0x63, 0x6f, 0x72, 0x65, 0x54, 0x4c, 0x53, 0x20,
1087 0x43, 0x41, 0x20, 0x43, 0x65, 0x72, 0x74, 0x20, 0x28, 0x52, 0x53, 0x41,
1088 0x29, 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30, 0x38, 0x32, 0x30, 0x32,
1089 0x31, 0x31, 0x33, 0x30, 0x37, 0x5a, 0x30, 0x62, 0x30, 0x60, 0x30, 0x3a,
1090 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0e, 0x03, 0x02,/**/ 0x1B, /**/ 0x05, 0x00, 0x04, // This line changed the OID for SHA1 to something else. (0x1B vs 0x1a)
1091 0x14, 0x20, 0xd4, 0x96, 0xb3, 0xfb, 0xd1, 0xb8, 0x84, 0x3a, 0x38, 0x14,
1092 0xdb, 0x33, 0xd1, 0x0d, 0xa8, 0xca, 0x96, 0xba, 0x13, 0x04, 0x14, 0xb2,
1093 0x23, 0x1b, 0x0f, 0x2c, 0x5a, 0xa2, 0x1d, 0xeb, 0x96, 0x34, 0xa7, 0x6f,
1094 0x9d, 0x97, 0x11, 0x81, 0x14, 0x61, 0xbb, 0x02, 0x01, /**/ 0x4B, /**/ 0xa1, 0x11, // This line change the serial number to match the cert (0x01 vs 0x4B)
1095 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30, 0x38, 0x32, 0x30, 0x30, 0x30,
1096 0x30, 0x30, 0x30, 0x30, 0x5a, 0x18, 0x0f, 0x32, 0x30, 0x31, 0x34, 0x30,
1097 0x38, 0x32, 0x30, 0x32, 0x31, 0x31, 0x33, 0x30, 0x37, 0x5a, 0xa1, 0x23,
1098 0x30, 0x21, 0x30, 0x1f, 0x06, 0x09, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07,
1099 0x30, 0x01, 0x02, 0x04, 0x12, 0x04, 0x10, 0x4c, 0xc5, 0x63, 0xf2, 0x0a,
1100 0x84, 0x8c, 0x03, 0xa4, 0x0d, 0x97, 0xd1, 0xa2, 0xbb, 0x1e, 0xb2, 0x30,
1101 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05,
1102 0x05, 0x00, 0x03, 0x81, 0x81, 0x00, 0x1b, 0x21, 0xd7, 0x01, 0xde, 0xb8,
1103 0x58, 0x4b, 0x79, 0x6a, 0xa3, 0x8b, 0xa7, 0xe0, 0xbd, 0xa8, 0xda, 0x58,
1104 0x48, 0xbb, 0xa7, 0xcd, 0xf7, 0x91, 0x15, 0xb3, 0x38, 0x70, 0xd9, 0x43,
1105 0x25, 0x72, 0x0e, 0xc3, 0x3d, 0xf9, 0xc7, 0x30, 0x2d, 0xb4, 0x9f, 0x1c,
1106 0x4b, 0x62, 0x31, 0x48, 0xb4, 0x9f, 0x00, 0xbd, 0x57, 0xb6, 0xec, 0xda,
1107 0xf0, 0xa2, 0x42, 0x61, 0xfc, 0xef, 0x73, 0xc5, 0x55, 0xc1, 0xf6, 0x72,
1108 0x79, 0xcf, 0x55, 0x01, 0x09, 0xe4, 0xd2, 0xee, 0xbd, 0xa6, 0x08, 0xc6,
1109 0x39, 0x3a, 0x17, 0x76, 0x98, 0xaa, 0x61, 0x82, 0xb9, 0x41, 0xe1, 0xbb,
1110 0x4f, 0x67, 0x5e, 0x0b, 0x5e, 0xfa, 0x3c, 0x12, 0x15, 0xbe, 0x90, 0x8e,
1111 0x29, 0xe6, 0x5c, 0x9b, 0xfc, 0xaf, 0x40, 0xa4, 0x31, 0xd7, 0xa4, 0xc6,
1112 0x71, 0x22, 0x01, 0xfa, 0xb2, 0xcd, 0x6e, 0x1f, 0x26, 0xdb, 0xb1, 0xa3,
1113 0xec, 0x43
1114 };
1115
1116
1117
1118 /* A invalid ocsp response */
1119 static uint8_t invalid_ocsp_response_der[] = {
1120 0x30, 0x81, 0x03,
1121 0x0a, 0x01, 0x01,
1122 };
1123
1124 static void tests()
1125 {
1126 SecCertificateRef certA=NULL, certD=NULL, certF=NULL, certCA_alpha=NULL, certCA_beta=NULL;
1127 CFDataRef proofD=NULL, proofA_1=NULL, proofA_2=NULL;
1128 SecCertificateRef www_digicert_com_cert=NULL, digicert_sha2_ev_server_ca=NULL;
1129 SecCertificateRef www_paypal_com_cert=NULL, www_paypal_com_issuer_cert=NULL;
1130 SecCertificateRef cfCert = NULL;
1131 CFMutableArrayRef certs=NULL;
1132 CFMutableArrayRef scts=NULL;
1133 CFMutableArrayRef anchors=NULL;
1134 CFDataRef valid_ocsp=NULL;
1135 CFDataRef invalid_ocsp=NULL;
1136 CFDataRef bad_hash_ocsp=NULL;
1137
1138 CFArrayRef trustedLogs=NULL;
1139 CFURLRef trustedLogsURL=NULL;
1140
1141 trustedLogsURL = CFBundleCopyResourceURL(CFBundleGetMainBundle(),
1142 CFSTR("si-82-sectrust-ct-logs"),
1143 CFSTR("plist"),
1144 NULL);
1145 isnt(trustedLogsURL, NULL, "trustedLogsURL");
1146 ok(CFURLResourceIsReachable(trustedLogsURL, NULL), "trustedLog plist is accessible");
1147 trustedLogs = (CFArrayRef) CFPropertyListReadFromFile(trustedLogsURL);
1148
1149
1150 isnt(certCA_alpha = SecCertificateCreateWithBytes(NULL, CA_alpha_cert_der, sizeof(CA_alpha_cert_der)), NULL, "create ca-alpha cert");
1151 isnt(certCA_beta = SecCertificateCreateWithBytes(NULL, CA_beta_cert_der, sizeof(CA_beta_cert_der)), NULL, "create ca-beta cert");
1152 isnt(anchors = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create anchors array");
1153 CFArrayAppendValue(anchors, certCA_alpha);
1154 CFArrayAppendValue(anchors, certCA_beta);
1155 isnt(certA = SecCertificateCreateWithBytes(NULL, server_A_cert_der, sizeof(server_A_cert_der)), NULL, "create certD");
1156 isnt(certD = SecCertificateCreateWithBytes(NULL, serverD_cert_der, sizeof(serverD_cert_der)), NULL, "create certD");
1157 isnt(certF = SecCertificateCreateWithBytes(NULL, serverF_cert_der, sizeof(serverF_cert_der)), NULL, "create certF");
1158 isnt(proofD = CFDataCreate(kCFAllocatorDefault, serverD_cert_proof, sizeof(serverD_cert_proof)), NULL, "creat proofD");
1159 isnt(proofA_1 = CFDataCreate(kCFAllocatorDefault, server_A_proof_Alfa_3, sizeof(server_A_proof_Alfa_3)), NULL, "creat proofA_1");
1160 isnt(proofA_2 = CFDataCreate(kCFAllocatorDefault, server_A_proof_Bravo_3, sizeof(server_A_proof_Bravo_3)), NULL, "creat proofA_2");
1161 isnt(www_digicert_com_cert = SecCertificateCreateWithBytes(NULL, www_digicert_com_cert_der, sizeof(www_digicert_com_cert_der)), NULL, "create www.digicert.com cert");
1162 isnt(digicert_sha2_ev_server_ca = SecCertificateCreateWithBytes(NULL, digicert_sha2_ev_server_ca_der, sizeof(digicert_sha2_ev_server_ca_der)), NULL, "create digicert.com subCA cert");
1163 isnt(www_paypal_com_cert = SecCertificateCreateWithBytes(NULL, www_paypal_com_cert_der, sizeof(www_paypal_com_cert_der)), NULL, "create www.paypal.com cert");
1164 isnt(www_paypal_com_issuer_cert = SecCertificateCreateWithBytes(NULL, www_paypal_com_issuer_cert_der, sizeof(www_paypal_com_issuer_cert_der)), NULL, "create www.paypal.com issuer cert");
1165 isnt(valid_ocsp = CFDataCreate(kCFAllocatorDefault, valid_ocsp_response_der, sizeof(valid_ocsp_response_der)), NULL, "create valid_ocsp");
1166 isnt(invalid_ocsp = CFDataCreate(kCFAllocatorDefault, invalid_ocsp_response_der, sizeof(invalid_ocsp_response_der)), NULL, "create invalid_ocsp");
1167 isnt(bad_hash_ocsp = CFDataCreate(kCFAllocatorDefault, bad_hash_ocsp_response_der, sizeof(bad_hash_ocsp_response_der)), NULL, "create bad_hash_ocsp");
1168
1169 /* Case 1: coreos-ct-test embedded SCT - only 1 SCT - so not CT qualified */
1170 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1171 CFArrayAppendValue(certs, certF);
1172 test_ct_trust(certs, NULL, NULL, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), false, "coreos-ct-test 1");
1173 CFReleaseNull(certs);
1174
1175 /* Case 2: coreos-ct-test standalone SCT - only 1 SCT - so not CT qualified */
1176 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1177 CFArrayAppendValue(certs, certD);
1178 isnt(scts = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create SCT array");
1179 CFArrayAppendValue(scts, proofD);
1180 test_ct_trust(certs, scts, NULL, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), false, "coreos-ct-test 2");
1181 CFReleaseNull(certs);
1182 CFReleaseNull(scts);
1183
1184 /* case 3: digicert : 2 embedded SCTs, but both from Google, so not CT qualified */
1185 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1186 CFArrayAppendValue(certs, www_digicert_com_cert);
1187 CFArrayAppendValue(certs, digicert_sha2_ev_server_ca);
1188 test_ct_trust(certs, NULL, NULL, NULL, NULL, CFSTR("www.digicert.com"), false, "digicert");
1189 CFReleaseNull(certs);
1190
1191 /* case 4: paypal.com cert - not CT, but EV */
1192 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1193 CFArrayAppendValue(certs, www_paypal_com_cert);
1194 CFArrayAppendValue(certs, www_paypal_com_issuer_cert);
1195 test_ct_trust(certs, NULL, NULL, NULL, trustedLogs, CFSTR("www.paypal.com"), false, "paypal");
1196 CFReleaseNull(certs);
1197
1198 /* Case 5: coreos-ct-test standalone SCT - 2 SCTs - CT qualified */
1199 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1200 CFArrayAppendValue(certs, certA);
1201 isnt(scts = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create SCT array");
1202 CFArrayAppendValue(scts, proofA_1);
1203 CFArrayAppendValue(scts, proofA_2);
1204 test_ct_trust(certs, scts, NULL, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), true, "coreos-ct-test 3");
1205 CFReleaseNull(certs);
1206 CFReleaseNull(scts);
1207
1208
1209 /* Case 6: Test with an invalid OCSP response */
1210 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1211 CFArrayAppendValue(certs, certA);
1212 isnt(scts = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create SCT array");
1213 CFArrayAppendValue(scts, proofA_1);
1214 test_ct_trust(certs, scts, invalid_ocsp, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), false, "coreos-ct-test 3");
1215 CFReleaseNull(certs);
1216 CFReleaseNull(scts);
1217
1218 /* Case 7: Test with a valid OCSP response */
1219 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1220 CFArrayAppendValue(certs, certA);
1221 isnt(scts = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create SCT array");
1222 CFArrayAppendValue(scts, proofA_1);
1223 test_ct_trust(certs, scts, valid_ocsp, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), false, "coreos-ct-test 3");
1224 CFReleaseNull(certs);
1225 CFReleaseNull(scts);
1226
1227 /* Case 8: Test with a bad hash OCSP response */
1228 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array");
1229 CFArrayAppendValue(certs, certA);
1230 isnt(scts = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create SCT array");
1231 CFArrayAppendValue(scts, proofA_1);
1232 test_ct_trust(certs, scts, bad_hash_ocsp, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), false, "coreos-ct-test 3");
1233 CFReleaseNull(certs);
1234 CFReleaseNull(scts);
1235
1236
1237 #define TEST_CASE(x) \
1238 do { \
1239 isnt(certs = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks), NULL, "create cert array for " #x); \
1240 isnt(cfCert = SecCertificateCreateWithBytes(NULL, x, sizeof(x)), NULL, "create cfCert from " #x); \
1241 CFArrayAppendValue(certs, cfCert); \
1242 test_ct_trust(certs, NULL, NULL, anchors, trustedLogs, CFSTR("coreos-ct-test.apple.com"), true, #x); \
1243 CFReleaseNull(certs); \
1244 CFReleaseNull(cfCert); \
1245 } while (0)
1246
1247 /*
1248 server_1601_cert_der
1249 server_1603_cert_der
1250 server_1604_cert_der
1251 server_1701_cert_der
1252 server_1704_cert_der
1253 server_1705_cert_der
1254 server_1801_cert_der
1255 server_1804_cert_der
1256 server_1805_cert_der
1257 server_2001_cert_der
1258 */
1259
1260 TEST_CASE(server_1601_cert_der);
1261 TEST_CASE(server_1603_cert_der);
1262 TEST_CASE(server_1604_cert_der);
1263 TEST_CASE(server_1701_cert_der);
1264 TEST_CASE(server_1704_cert_der);
1265 TEST_CASE(server_1705_cert_der);
1266 TEST_CASE(server_1801_cert_der);
1267 TEST_CASE(server_1804_cert_der);
1268 TEST_CASE(server_1805_cert_der);
1269 TEST_CASE(server_2001_cert_der);
1270
1271 CFReleaseSafe(certCA_alpha);
1272 CFReleaseSafe(certCA_beta);
1273 CFReleaseSafe(anchors);
1274 CFReleaseSafe(certA);
1275 CFReleaseSafe(certD);
1276 CFReleaseSafe(certF);
1277 CFReleaseSafe(proofD);
1278 CFReleaseSafe(proofA_1);
1279 CFReleaseSafe(proofA_2);
1280 CFReleaseSafe(www_digicert_com_cert);
1281 CFReleaseSafe(digicert_sha2_ev_server_ca);
1282 CFReleaseSafe(www_paypal_com_cert);
1283 CFReleaseSafe(www_paypal_com_issuer_cert);
1284 CFReleaseSafe(trustedLogsURL);
1285 CFReleaseSafe(trustedLogs);
1286 CFReleaseSafe(valid_ocsp);
1287 CFReleaseSafe(invalid_ocsp);
1288 CFReleaseSafe(bad_hash_ocsp);
1289
1290 }
1291
1292
1293 int si_82_sectrust_ct(int argc, char *const *argv)
1294 {
1295 plan_tests(287);
1296
1297 tests();
1298
1299 return 0;
1300 }