| OLD | NEW |
| (Empty) |
| 1 #!/usr/bin/python | |
| 2 # Copyright (c) 2017 The Chromium Authors. All rights reserved. | |
| 3 # Use of this source code is governed by a BSD-style license that can be | |
| 4 # found in the LICENSE file. | |
| 5 | |
| 6 """Certificate chain with 1 intermediate and a trusted root. The intermediate | |
| 7 restricts the EKU to clientAuth + any, and the target has serverAuth + | |
| 8 clientAuth. Verification is expected to succeed because intermediate will match | |
| 9 the "any".""" | |
| 10 | |
| 11 import sys | |
| 12 sys.path += ['..'] | |
| 13 | |
| 14 import common | |
| 15 | |
| 16 # Self-signed root certificate (used as trust anchor). | |
| 17 root = common.create_self_signed_root_certificate('Root') | |
| 18 | |
| 19 # Intermediate certificate. | |
| 20 intermediate = common.create_intermediate_certificate('Intermediate', root) | |
| 21 intermediate.get_extensions().set_property('extendedKeyUsage', | |
| 22 'clientAuth,anyExtendedKeyUsage') | |
| 23 | |
| 24 # Target certificate. | |
| 25 target = common.create_end_entity_certificate('Target', intermediate) | |
| 26 target.get_extensions().set_property('extendedKeyUsage', | |
| 27 'serverAuth,clientAuth') | |
| 28 | |
| 29 chain = [target, intermediate, root] | |
| 30 common.write_chain(__doc__, chain, 'chain.pem') | |
| OLD | NEW |