Added generic HKDF implementation.
[BearSSL] / test / x509 / alltests.txt
1 ; Most/all of these test chains use the same structure:
2 ; root -> ica1 -> ica2 -> ee
3 ; "ica1" is "Intermediate CA 1"
4 ; "ee" is "end-entity", i.e. the client or server certificate itself
5 ;
6 ; In SSL/TLS order, the EE comes first. The root may or may not be included
7 ; as a self-signed certificate.
8
9 [key]
10 name = root-rsa2048
11 type = RSA
12 n = B6D934D450FDB3AF7A73F1CE38BF5D6F45E1FD4EB198C6608326D217D1C5B79AA3C1DE6339979CF05E5CC81C17B988196DF0B62E3050A1546E93C0DBCF30CB9F1E2779F1C3995235AA3DB6DFB0AD7CCB49CDC0EDE766102AE9CE281F2150FA774C2DDAEF3C58EB4EBFCEE9FB1ADAA383A3CDA3CA9380DCDAF317CC7AAB33809CB2D47F463FC53CDC6194B727296E2ABC5B0936D4C63B0DEBBECEDB1D1CBC106A7171B3F2CA289A77F28AEC42EFB14A8EE2F21A322ACDC0A6462C9AC28537917F46A19381A17466DFBAB339209193FA1DA1A885E7E4F907F610F6A82701B67F12C340C3C9E2B0AB49183A64B659B795B59636DF2269AA726A544E2729A30E9715
13 e = 010001
14
15 [key]
16 name = root-p256
17 type = EC
18 curve = P-256
19 q = 047174BAABB9302E81D5E557F9F320680C9CF964DBB4200D6DEA40D04A6E42FDB69A682544F6DF7BC4FCDEDD7BBBC5DB7C763F4166406EDBA787C2E5D8C5F37F8D
20
21 [key]
22 name = root-p384
23 type = EC
24 curve = P-384
25 q = 040ED28B3F7F0A38A6DB72CB4DAC8198C3D595BFABEE2E4A3CC6797F1A272C57AD715F96B5FDA29C4DD87B75B1438B6A92C4FD0282A3080A857F28AB31FF8B49F805470A01EE551F7F27C914E7E780AE474558D6F5539BAE806626514FE560478B
26
27 [key]
28 name = root-p521
29 type = EC
30 curve = P-521
31 q = 040168E669615D1B20F2E753D2C86312F51094D3E5C6CF49E8D73418278CD769FE40A84AD4F34865D59D94D5685B389E0CFD0450754CAE81ED1D4A91D0773F7A002ED701DEF2DBDEFC7554E74CD600693DBDE1A7E09CD9044774C744C7CE575BF8B645FF79FCCE06116F61D44FDAE62D3046F4EB41DECB8219B279A5B8CE2A47F3DF0D463B
32
33 [key]
34 name = root-new
35 type = EC
36 curve = P-256
37 q = 0465D02336D3ACEB9A000B33A6EECA9745EFD72A0F7C0B138FAAA564E705A3269A479BB5A041DC1D244EA1D2BB9639C79187D3D63CEF79EDD1DC65E80027E75997
38
39 [key]
40 name = ica1-rsa2048
41 type = RSA
42 n = B3E86BAF9C1652E3810C50AB25CECC0DC7F21F7F50DF2C5C35D6622E632741A7E453A84B27FA1391A3FA094A2F3B5ECF77B38AC1CD49959C750D6474EFE4D74BB9A19B68D2307148EAF74B14DF3F47A9D8BBEC8F28CCFADFB41F947C96FC080528F9E8F42F2FEE629C8A3AE0855860B60F2D30B4C04154914C1F5FADF119F0C022A67DD83F793459427B5BB541C4647F52CF3C3722A12F7925942441C23FFAC775FB48B50D18A7F454F32E6ED84358C4AB50E805AD91B61E0175B3549CDEA09915FBACF15C974951CCEF58126F736BB33414010F5A9DFAAAD693D3E2EAC3ABBC4EEDCC51A1B8F894B6B42CA8862B1FF6514329525E1389B36A78604E4EC01BA5
43 e = 010001
44
45 [key]
46 name = ica2-rsa2048
47 type = RSA
48 n = AE15F7CBEEE3961BCA63D22681B2D8163423735684FCFDB2E98E9DD0D9D0D706A191EF8D4F604E16BDE6529EE557867B7A7FFCBC34AD86EC9150ADD5C7D18D83E95ABA2FDB0DB92131FAA2FD91EC37836261809C6A82253309DF8F7893EACFDB93B0A2687CEA873E369C4B379A71E52084C3789A2BA42C7E76D561A9131272F14B411BC6A555BA9D8965C06699C0F17C9B61B24E6601B0A9C4FDC8C1D0C789BE2746DE6271BA27F52A850F436026BC2A9D07AAD608DC26D86956A1D308DED858936B0EC2AF783E2574D49F001820BFD7158DB9D13D8900A01264E186C0D580F124B2D2FB4C677CAE3DC9BF47026DE47C0D4490518CCD026237F86FB96701C695
49 e = 010001
50
51 [key]
52 name = ee-rsa2048
53 type = RSA
54 n = D47A1D27BA2B3A67B2916AFBE78344CAED1C75ADDD4D8362D6AA6895B224217B15AE2A996815ED66F0B858E7D3F52EC6D92A5EE70E2EE7FC6759C0C8617D4BA46FDD9FD9C8858764C7BA1A0F29D496A8789A6B6220A932D0EEA98C286147A2502A63F621DEDAD8D5F07FC5008270E6A3BF5C89274F51927703C3B0CC2E3BEC23F22F5341AF8993FFD280B14397DED619A092127A3D6679E1C1BCE17770A28B3D4684533FE44E424137921E1FFD38B3F7EF873980D356CFF4E013DE64B072A40384C441ED6FFA3EE2CA0420D2D7DC2C822B7AE26DA11C48DBCF894F34973D28A853DAE7C1E17315A330767F8F2342143D5134D25AAD3C9BCBC8FE7F6E8E40F3BD
55 e = 010001
56
57 [key]
58 name = ee-p256
59 type = EC
60 curve = P-256
61 q = 045F389DA7FF4D8AAFF63439461AFC3ADFF423AAA9EAFBC508DE008EBE79A537584C6DDD01CAAB47DF89B6C7171F38FC1D2014DD45C0E08F934E380BFCE999A149
62
63 [key]
64 name = ee-p384
65 type = EC
66 curve = P-384
67 q = 0415A488877F3D14830E29A1C2F2C0745CE8CF5E684304D1668972389BA615B34E9648D5A7861E49DFFFBFFFEAD7FC6AF11BC4516C3557332DD86DDFDE2A236CCEA844EBD594CCD3ED5B7AE0061BD6595737B59FE754BCDAB6FE38D34D93DBBF30
68
69 [key]
70 name = ee-p521
71 type = EC
72 curve = P-521
73 q = 040060547ACA9D520FB3272833236CBF8E71AC286A3001FBB1E2C3FD8BAB0817DDE4E4FA53550F120D678F4D55AE4FF36C7C8EAE9E32A08A44FC66F45331E08946077A0139B87FE54B986012A94838C8006034941CD0512E596436D2E8E61CA93585D5C06EAD5094585B5B2A3E013803B3E6AAA1D4156EF09E8352029BB70AC6BF338F918B
74
75 ; Trust anchor: the root.
76 [anchor]
77 name = root
78 DN_file = dn-root.der
79 key = root-rsa2048
80 type = CA
81
82 ; Trust anchor: root with an ECDSA key (in P-256 curve)
83 [anchor]
84 name = root-p256
85 DN_file = dn-root.der
86 key = root-p256
87 type = CA
88
89 ; Trust anchor: root with an ECDSA key (in P-384 curve)
90 [anchor]
91 name = root-p384
92 DN_file = dn-root.der
93 key = root-p384
94 type = CA
95
96 ; Trust anchor: root with an ECDSA key (in P-521 curve)
97 [anchor]
98 name = root-p521
99 DN_file = dn-root.der
100 key = root-p521
101 type = CA
102
103 ; Trust anchor: another root with an ECDSA key (in P-256 curve)
104 [anchor]
105 name = root-new
106 DN_file = dn-root-new.der
107 key = root-new
108 type = CA
109
110 ; Intermediate CA 1 as trust anchor.
111 [anchor]
112 name = ica1
113 DN_file = dn-ica1.der
114 key = ica1-rsa2048
115 type = CA
116
117 ; Intermediate CA 2 as trust anchor.
118 [anchor]
119 name = ica2
120 DN_file = dn-ica2.der
121 key = ica2-rsa2048
122 type = CA
123
124 ; EE certificate as trust anchor (direct trust only).
125 [anchor]
126 name = ee
127 DN_file = dn-ee.der
128 key = ee-rsa2048
129 type = EE
130
131 ; Base valid chain.
132 [chain]
133 name = base
134 anchors = root
135 chain = ee.crt ica2.crt ica1.crt
136 servername = www.example.com
137 keytype = RSA
138 keyusage = KEYX
139 eekey = ee-rsa2048
140 status = 0
141
142 ; Valid chain except that no trust anchor is provided; this should fail
143 ; with BR_ERR_X509_NOT_TRUSTED.
144 [chain]
145 name = noTA
146 anchors =
147 chain = ee.crt ica2.crt ica1.crt
148 servername = www.example.com
149 keytype = RSA
150 keyusage = KEYX
151 status = 62
152
153 ; Use of intermediate CA 1 as anchor (extra certificates are ignored).
154 [chain]
155 name = anchorICA1
156 anchors = ica1
157 chain = ee.crt ica2.crt junk.crt junk.crt
158 servername = www.example.com
159 keytype = RSA
160 keyusage = KEYX
161 eekey = ee-rsa2048
162 status = 0
163
164 ; Use of intermediate CA 2 as anchor (extra certificates are ignored).
165 [chain]
166 name = anchorICA2
167 anchors = ica2
168 chain = ee.crt junk.crt junk.crt
169 servername = www.example.com
170 keytype = RSA
171 keyusage = KEYX
172 eekey = ee-rsa2048
173 status = 0
174
175 ; Direct trust of EE.
176 [chain]
177 name = directTrust
178 anchors = ee
179 chain = ee.crt junk.crt junk.crt
180 servername = www.example.com
181 keytype = RSA
182 keyusage = KEYX
183 eekey = ee-rsa2048
184 status = 0
185
186 ; Server name check: name does not match the SAN nor the CN.
187 [chain]
188 name = wrongName1
189 anchors = root
190 chain = ee.crt ica2.crt ica1.crt
191 servername = foo.example.com
192 keytype = RSA
193 keyusage = KEYX
194 status = 56
195
196 ; Server name check: name matches the CN but not the SAN, and there is
197 ; a SAN so the CN is ignored.
198 [chain]
199 name = wrongName2
200 anchors = root
201 chain = ee-names.crt ica2.crt ica1.crt
202 servername = www.example.com
203 keytype = RSA
204 keyusage = KEYX
205 status = 56
206
207 ; Server name check: name does not match CN, but matches the first SAN
208 ; name.
209 [chain]
210 name = goodName1
211 anchors = root
212 chain = ee-names.crt ica2.crt ica1.crt
213 servername = foo.example.com
214 keytype = RSA
215 keyusage = KEYX
216 eekey = ee-rsa2048
217 status = 0
218
219 ; Server name check: name does not match CN, but matches the second SAN
220 ; name.
221 [chain]
222 name = goodName2
223 anchors = root
224 chain = ee-names.crt ica2.crt ica1.crt
225 servername = barqux.example.com
226 keytype = RSA
227 keyusage = KEYX
228 eekey = ee-rsa2048
229 status = 0
230
231 ; Server name check: no SAN, but the CN matches the server name.
232 [chain]
233 name = goodName3
234 anchors = root
235 chain = ee-names2.crt ica2.crt ica1.crt
236 servername = www.example.com
237 keytype = RSA
238 keyusage = KEYX
239 eekey = ee-rsa2048
240 status = 0
241
242 ; Server name check: no SAN, and the CN does not match the server name.
243 [chain]
244 name = wrongName3
245 anchors = root
246 chain = ee-names2.crt ica2.crt ica1.crt
247 servername = foo.example.com
248 keytype = RSA
249 keyusage = KEYX
250 status = 56
251
252 ; Server name check: no SAN, and the CN does not match the server name,
253 ; although its byte contents seem to match (but with BMPString encoding).
254 [chain]
255 name = wrongName4
256 anchors = root
257 chain = ee-names3.crt ica2.crt ica1.crt
258 servername = www1.example.com
259 keytype = RSA
260 keyusage = KEYX
261 status = 56
262
263 ; Server name check: no SAN, and the CN uses BMPString encoding, but we
264 ; do not actually request a server name check, so this should pass.
265 [chain]
266 name = ignoreName1
267 anchors = root
268 chain = ee-names3.crt ica2.crt ica1.crt
269 keytype = RSA
270 keyusage = KEYX
271 eekey = ee-rsa2048
272 status = 0
273
274 ; Wildcard processing: the name 'localhost' should not match because
275 ; the engine recognises the wildcard only in a '*.' starting sequence,
276 ; so the lone '*' in a SAN will not be accepted.
277 [chain]
278 name = wildcard1
279 anchors = root
280 chain = ee-names4.crt ica2.crt ica1.crt
281 servername = localhost
282 keytype = RSA
283 keyusage = KEYX
284 status = 56
285
286 ; Wildcard processing: the name 'example.com' will be matched by '*.com'.
287 [chain]
288 name = wildcard2
289 anchors = root
290 chain = ee-names4.crt ica2.crt ica1.crt
291 servername = example.com
292 keytype = RSA
293 keyusage = KEYX
294 eekey = ee-rsa2048
295 status = 0
296
297 ; Wildcard processing: the name 'www.example.com' will be matched by
298 ; '*.example.com'.
299 [chain]
300 name = wildcard3
301 anchors = root
302 chain = ee-names4.crt ica2.crt ica1.crt
303 servername = www.example.com
304 keytype = RSA
305 keyusage = KEYX
306 eekey = ee-rsa2048
307 status = 0
308
309 ; Wildcard processing: the name 'foo.foo.example.com' will not be matched by
310 ; 'foo.*.example.com' because we accept the wildcard only in the first name
311 ; component.
312 [chain]
313 name = wildcard4
314 anchors = root
315 chain = ee-names4.crt ica2.crt ica1.crt
316 servername = foo.foo.example.com
317 keytype = RSA
318 keyusage = KEYX
319 status = 56
320
321 ; Wildcard processing: the name 'foo.bar.example.com' will not be matched by
322 ; 'foo.*.example.com', but '*.bar.example.com' will fit.
323 [chain]
324 name = wildcard5
325 anchors = root
326 chain = ee-names4.crt ica2.crt ica1.crt
327 servername = foo.bar.example.com
328 keytype = RSA
329 keyusage = KEYX
330 eekey = ee-rsa2048
331 status = 0
332
333 ; Wildcard processing: the name 'foo.bar.example.foobar' will not be matched by
334 ; '*.*.example.foobar' because we support only a single level of wildcard.
335 [chain]
336 name = wildcard6
337 anchors = root
338 chain = ee-names4.crt ica2.crt ica1.crt
339 servername = foo.bar.example.foobar
340 keytype = RSA
341 keyusage = KEYX
342 status = 56
343
344 ; Wildcard processing: the name 'foo.*.example.foobar' will be matched
345 ; by '*.*.example.foobar' because the '*' in the provided server name matches
346 ; the second '*' in '*.*.example.foobar'. This is a corner case with no
347 ; practical impact because expected server names are usually extracted from
348 ; URL and cannot have embedded '*' in them.
349 [chain]
350 name = wildcard7
351 anchors = root
352 chain = ee-names4.crt ica2.crt ica1.crt
353 servername = foo.*.example.com
354 keytype = RSA
355 keyusage = KEYX
356 eekey = ee-rsa2048
357 status = 0
358
359 ; Hash function support: the chain uses only SHA-256.
360 [chain]
361 name = hashSHA256Only
362 anchors = root
363 chain = ee.crt ica2.crt ica1.crt
364 servername = www.example.com
365 keytype = RSA
366 keyusage = KEYX
367 hashes = sha256
368 eekey = ee-rsa2048
369 status = 0
370
371 ; Hash function support: the chain uses only SHA-256.
372 [chain]
373 name = hashSHA256Unsupported
374 anchors = root
375 chain = ee.crt ica2.crt ica1.crt
376 servername = www.example.com
377 keytype = RSA
378 keyusage = KEYX
379 hashes = md5 sha1 sha224 sha384 sha512
380 status = 49
381
382 ; Hash function support: signature on EE uses SHA-1.
383 [chain]
384 name = hashSHA1
385 anchors = root
386 chain = ee-sha1.crt ica2.crt ica1.crt
387 servername = www.example.com
388 keytype = RSA
389 keyusage = KEYX
390 eekey = ee-rsa2048
391 status = 0
392
393 ; Hash function support: signature on EE uses SHA-224.
394 [chain]
395 name = hashSHA224
396 anchors = root
397 chain = ee-sha224.crt ica2.crt ica1.crt
398 servername = www.example.com
399 keytype = RSA
400 keyusage = KEYX
401 eekey = ee-rsa2048
402 status = 0
403
404 ; Hash function support: signature on EE uses SHA-384.
405 [chain]
406 name = hashSHA384
407 anchors = root
408 chain = ee-sha384.crt ica2.crt ica1.crt
409 servername = www.example.com
410 keytype = RSA
411 keyusage = KEYX
412 eekey = ee-rsa2048
413 status = 0
414
415 ; Hash function support: signature on EE uses SHA-512.
416 [chain]
417 name = hashSHA512
418 anchors = root
419 chain = ee-sha512.crt ica2.crt ica1.crt
420 servername = www.example.com
421 keytype = RSA
422 keyusage = KEYX
423 eekey = ee-rsa2048
424 status = 0
425
426 ; Hash function support: signature on EE uses MD5. This is rejected by
427 ; the engine (even though MD5 is supported as a hash function).
428 [chain]
429 name = hashMD5
430 anchors = root
431 chain = ee-md5.crt ica2.crt ica1.crt
432 servername = www.example.com
433 keytype = RSA
434 keyusage = KEYX
435 status = 49
436
437 ; EE certificate has trailing garbage (an extra byte), which should be
438 ; rejected.
439 [chain]
440 name = trailingGarbage
441 anchors = root
442 chain = ee-trailing.crt ica2.crt ica1.crt
443 servername = www.example.com
444 keytype = RSA
445 keyusage = KEYX
446 status = 40
447
448 ; Signature on EE certificate is incorrect (one byte modified in signature).
449 [chain]
450 name = badSignature1
451 anchors = root
452 chain = ee-badsig1.crt ica2.crt ica1.crt
453 servername = www.example.com
454 keytype = RSA
455 keyusage = KEYX
456 status = 52
457
458 ; Signature on EE certificate is incorrect (one byte modified in serial
459 ; number).
460 [chain]
461 name = badSignature2
462 anchors = root
463 chain = ee-badsig2.crt ica2.crt ica1.crt
464 servername = www.example.com
465 keytype = RSA
466 keyusage = KEYX
467 status = 52
468
469 ; Signature on EE certificate is incorrect but this is ignored because we
470 ; use a direct trust model here.
471 [chain]
472 name = ignoredSignature1
473 anchors = ee
474 chain = ee-badsig1.crt ica2.crt ica1.crt
475 servername = www.example.com
476 keytype = RSA
477 keyusage = KEYX
478 eekey = ee-rsa2048
479 status = 0
480
481 ; Signature on EE certificate is incorrect but this is ignored because we
482 ; use a direct trust model here.
483 [chain]
484 name = ignoredSignature2
485 anchors = ee
486 chain = ee-badsig2.crt ica2.crt ica1.crt
487 servername = www.example.com
488 keytype = RSA
489 keyusage = KEYX
490 eekey = ee-rsa2048
491 status = 0
492
493 ; Intermediate CA 1 has a 1016-bit RSA key, which should be rejected
494 ; with BR_ERR_X509_WEAK_PUBLIC_KEY.
495 [chain]
496 name = rsa1016
497 anchors = root
498 chain = ee.crt ica2-1016.crt ica1-1016.crt
499 servername = www.example.com
500 keytype = RSA
501 keyusage = KEYX
502 status = 60
503
504 ; Intermediate CA 1 has a 1017-bit RSA key, which should be accepted
505 ; (because that's 128 bytes, which is the lower limit).
506 [chain]
507 name = rsa1017
508 anchors = root
509 chain = ee.crt ica2-1017.crt ica1-1017.crt
510 servername = www.example.com
511 keytype = RSA
512 keyusage = KEYX
513 eekey = ee-rsa2048
514 status = 0
515
516 ; Intermediate CA 1 has a 4096-bit RSA key, which should be supported.
517 [chain]
518 name = rsa4096
519 anchors = root
520 chain = ee.crt ica2-4096.crt ica1-4096.crt
521 servername = www.example.com
522 keytype = RSA
523 keyusage = KEYX
524 eekey = ee-rsa2048
525 status = 0
526
527 ; EE is valid from 2010/02/17 11:40:35 to 2098/07/20 15:11:08. The
528 ; start date is in UTCTime, the end date is in GeneralizedTime.
529 [chain]
530 name = date1
531 anchors = ica2
532 chain = ee-dates.crt ica2.crt ica1.crt
533 time = 2010-02-17 11:40:34Z
534 servername = www.example.com
535 keytype = RSA
536 keyusage = KEYX
537 status = 54
538
539 ; EE is valid from 2010/02/17 11:40:35 to 2098/07/20 15:11:08. The
540 ; start date is in UTCTime, the end date is in GeneralizedTime.
541 [chain]
542 name = date2
543 anchors = ica2
544 chain = ee-dates.crt ica2.crt ica1.crt
545 time = 2010-02-17 11:40:36Z
546 servername = www.example.com
547 keytype = RSA
548 keyusage = KEYX
549 eekey = ee-rsa2048
550 status = 0
551
552 ; EE is valid from 2010/02/17 11:40:35 to 2098/07/20 15:11:08. The
553 ; start date is in UTCTime, the end date is in GeneralizedTime.
554 [chain]
555 name = date3
556 anchors = ica2
557 chain = ee-dates.crt ica2.crt ica1.crt
558 time = 2098-07-20 15:11:07Z
559 servername = www.example.com
560 keytype = RSA
561 keyusage = KEYX
562 eekey = ee-rsa2048
563 status = 0
564
565 ; EE is valid from 2010/02/17 11:40:35 to 2098/07/20 15:11:08. The
566 ; start date is in UTCTime, the end date is in GeneralizedTime.
567 [chain]
568 name = date4
569 anchors = ica2
570 chain = ee-dates.crt ica2.crt ica1.crt
571 time = 2098-07-20 15:11:09Z
572 servername = www.example.com
573 keytype = RSA
574 keyusage = KEYX
575 status = 54
576
577 ; Intermediate CA 2 certificate is not a CA.
578 [chain]
579 name = notCA
580 anchors = root
581 chain = ee-dates.crt ica2-notCA.crt ica1.crt
582 servername = www.example.com
583 keytype = RSA
584 keyusage = KEYX
585 status = 58
586
587 ; A chain using ECDSA with P-256.
588 [chain]
589 name = secp256r1
590 anchors = root-p256
591 chain = ee-p256.crt ica2-p256.crt ica1-p256.crt
592 servername = www.example.com
593 keytype = EC
594 keyusage = SIGN
595 eekey = ee-p256
596 status = 0
597
598 ; A chain using ECDSA with P-384.
599 [chain]
600 name = secp384r1
601 anchors = root-p384
602 chain = ee-p384.crt ica2-p384.crt ica1-p384.crt
603 servername = www.example.com
604 keytype = EC
605 keyusage = SIGN
606 eekey = ee-p384
607 status = 0
608
609 ; A chain using ECDSA with P-521.
610 [chain]
611 name = secp521r1
612 anchors = root-p521
613 chain = ee-p521.crt ica2-p521.crt ica1-p521.crt
614 servername = www.example.com
615 keytype = EC
616 keyusage = SIGN
617 eekey = ee-p521
618 status = 0
619
620 ; A chain using ECDSA with P-256, signature on EE uses SHA-1.
621 [chain]
622 name = secp256r1-sha1
623 anchors = root-p256
624 chain = ee-p256-sha1.crt ica2-p256.crt ica1-p256.crt
625 servername = www.example.com
626 keytype = EC
627 keyusage = SIGN
628 eekey = ee-p256
629 status = 0
630
631 ; A chain using ECDSA with P-256, signature on EE uses SHA-224.
632 [chain]
633 name = secp256r1-sha224
634 anchors = root-p256
635 chain = ee-p256-sha224.crt ica2-p256.crt ica1-p256.crt
636 servername = www.example.com
637 keytype = EC
638 keyusage = SIGN
639 eekey = ee-p256
640 status = 0
641
642 ; A chain using ECDSA with P-256, signature on EE uses SHA-256.
643 [chain]
644 name = secp256r1-sha256
645 anchors = root-p256
646 chain = ee-p256-sha256.crt ica2-p256.crt ica1-p256.crt
647 servername = www.example.com
648 keytype = EC
649 keyusage = SIGN
650 eekey = ee-p256
651 status = 0
652
653 ; A chain using ECDSA with P-256, signature on EE uses SHA-384.
654 [chain]
655 name = secp256r1-sha384
656 anchors = root-p256
657 chain = ee-p256-sha384.crt ica2-p256.crt ica1-p256.crt
658 servername = www.example.com
659 keytype = EC
660 keyusage = SIGN
661 eekey = ee-p256
662 status = 0
663
664 ; A chain using ECDSA with P-256, signature on EE uses SHA-512.
665 [chain]
666 name = secp256r1-sha512
667 anchors = root-p256
668 chain = ee-p256-sha512.crt ica2-p256.crt ica1-p256.crt
669 servername = www.example.com
670 keytype = EC
671 keyusage = SIGN
672 eekey = ee-p256
673 status = 0
674
675 ; EE certificate has a Certificate Policies extension, but it is not
676 ; critical.
677 [chain]
678 name = certpol-noncrit
679 anchors = root-new
680 chain = ee-cp1.crt
681 servername = www.example.com
682 keytype = RSA
683 keyusage = KEYX
684 eekey = ee-rsa2048
685 status = 0
686
687 ; EE certificate has a critical Certificate Policies extension, but it
688 ; contains no policy qualifier.
689 [chain]
690 name = certpol-noqual
691 anchors = root-new
692 chain = ee-cp2.crt
693 servername = www.example.com
694 keytype = RSA
695 keyusage = KEYX
696 eekey = ee-rsa2048
697 status = 0
698
699 ; EE certificate has a critical Certificate Policies extension, and it
700 ; contains some qualifiers, but they are all id-qt-cps.
701 [chain]
702 name = certpol-qualcps
703 anchors = root-new
704 chain = ee-cp3.crt
705 servername = www.example.com
706 keytype = RSA
707 keyusage = KEYX
708 eekey = ee-rsa2048
709 status = 0
710
711 ; EE certificate has a critical Certificate Policies extension, and it
712 ; contains a qualifier distinct from id-qt-cps. This implies rejection
713 ; of the path.
714 [chain]
715 name = certpol-qualother
716 anchors = root-new
717 chain = ee-cp4.crt
718 servername = www.example.com
719 keytype = RSA
720 keyusage = KEYX
721 eekey = ee-rsa2048
722 status = 57