Internet Engineering Task Force T. Moses, Ed. Internet-Draft Entrust Ltd. Intended status: BCP September 15, 2012 Expires: March 19, 2013 Trust models of the Web PKI draft-moses-webpki-trustmodel-01 Abstract This is one of a set of drafts that document the operation of the Web PKI. It describes common variants of the Web PKI trust model Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on March 19, 2013. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Moses Expires March 19, 2013 [Page 1] Internet-Draft Trust models of the Web PKI September 2012 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . . 3 1.2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Basic trust model . . . . . . . . . . . . . . . . . . . . . . . 4 3. Trust model variants . . . . . . . . . . . . . . . . . . . . . 4 3.1. Certificate using product adopts root store . . . . . . . . 4 3.2. Certificate using product uses OS root store . . . . . . . 4 3.3. Certificate holder certificates issued by root CA . . . . . 4 3.4. One root CA cross-certifies another root CA . . . . . . . . 5 3.5. Issuing CA is an affiliate . . . . . . . . . . . . . . . . 5 3.6. Registration authority is an affiliate . . . . . . . . . . 5 3.7. Root CA is operated by a government . . . . . . . . . . . . 5 3.8. Certificate user directly trusts issuing CA key . . . . . . 6 3.9. Certificate user directly trusts certificate holder key . . 6 3.10. Certificate holder operates issuing CA . . . . . . . . . . 6 3.11. Certificate holder manages issuing CA . . . . . . . . . . . 6 3.12. Certificate holder manages RA . . . . . . . . . . . . . . . 6 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 6. Normative References . . . . . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 Moses Expires March 19, 2013 [Page 2] Internet-Draft Trust models of the Web PKI September 2012 1. Introduction 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 1.2. Definitions Certificate holder - A natural or legal person who is identified as the subject in a certificate. Certificate subject - The certificate holder as represented in the certificate. Certificate user - A natural person who operates a certificate using product. Certificate using product - A product that evaluates a certificate or certificate chain and adjusts its behavior according to the result. Intermediate CA - A CA that issues certificates to issuing CAs and/or other intermediate CAs. Issuing CA - A CA that issues certificates to certificate holders. Policy management authority - A natural or legal person who administers the certificate policy by which one or more certification authorities operate. Root CA - A CA whose public key is included in a root store. Root store - A set of certification authority public keys that is embedded in a certificate using product and used in the certificate evaluation procedure. Trust model - The roles, and the relationships between those roles, that are relevant to the management and evaluation of certificates. Moses Expires March 19, 2013 [Page 3] Internet-Draft Trust models of the Web PKI September 2012 2. Basic trust model In the basic Web PKI trust model, a certificate-using product includes a root store that contains one or more root certification authority public keys, each of which is under the control of a commercial CA and managed in conformance with the certificate policy prescribed and administered by the certificate using product supplier. Each such root certification authority issues a certificate to one or more issuing CAs that are under the control of the same commercial CA. Each issuing CA accepts and responds to certificate requests from one or more certificate applicants via one or more registration authorities that are under the control of the same commercial CA. If the request is granted, then the certificate applicant becomes a certificate holder. The role of the registration authority is to confirm the accuracy of the information provided in the certificate request. The certificate user implicitly accepts the policy of the policy management authority by choosing to use a particular certificate- using product. All functions of the commercial CA are subject to the audit process prescribed by the certificate policy. 3. Trust model variants There are several variants of the basic trust model in common use. 3.1. Certificate using product adopts root store In this variant, the supplier of the certificate using product adopts the policies of other suppliers by copying their root stores, without seeking independent evidence of conformance. 3.2. Certificate using product uses OS root store In this variant, the certificate using product does not use its own root store. Instead, it uses the platform operating system root store and certificate processing functions to evaluate the certificate holder's certificate. It may then apply additional checks, such as checking that the certificate subject's domain name matches that requested by the certificate user. 3.3. Certificate holder certificates issued by root CA Some legacy situations demand that the certificate holder certificate be issued directly by the root CA, without the involvement of Moses Expires March 19, 2013 [Page 4] Internet-Draft Trust models of the Web PKI September 2012 intermediate or issuing CAs. This model is now deprecated, but the practice will remain in effect indefinitely. 3.4. One root CA cross-certifies another root CA A small but significant portion of the certificate using products in active use does not possess the capability to be updated in the field. Consequently, these products do not accept certificates issued by CAs that came into existence after they were first deployed. Although their certificates are accepted by newer products and ones that can be updated in the field, newer CAs operate at a disadvantage to older CAs, and they commonly address this disadvantage by having their public key cross-certified by an older CA. Because the cross-certified root CA is also recognized directly by a policy management authority, it operates in accordance with the requirements of that certificate policy, regardless of any requirements placed upon it by the contract between it and the cross- certifying root CA. 3.5. Issuing CA is an affiliate The issuing CA may operate at arm's length to the root CA. The issuing CA's behavior is governed by its contract with the root CA, which commonly stipulates adherence to the policies of the policy management authority. 3.6. Registration authority is an affiliate The registration authority may operate at arm's length to the issuing CA. The registration authority's behavior is governed by its contract with the issuing CA. The issuing CA commonly performs a subset of the checks normally performed by a registration authority, such as identifying unacceptable names. 3.7. Root CA is operated by a government In the case where the root CA is operated by a government department, the policy authority may relax the requirement for a fully- independent third-party audit, relying instead upon an audit conducted in accordance with the government's own internal audit process. Moses Expires March 19, 2013 [Page 5] Internet-Draft Trust models of the Web PKI September 2012 3.8. Certificate user directly trusts issuing CA key The certificate using product may allow the certificate user to designate a CA key as trusted, a priori, for the purpose of evaluating certificate holder certificates. 3.9. Certificate user directly trusts certificate holder key The certificate using product may allow the certificate user to designate a certificate holder key as trusted, a priori. 3.10. Certificate holder operates issuing CA A certificate holder may operate its own issuing CA. Typically, the certificate holder is approved to issue certificates only within a specific region of the name-space, and this limitation is enforced by contract. The root CA may use the RFC 5280 [RFC5280] name constraints certificate extension to limit the region of the name-space in which the issuing CA can issue valid certificates. 3.11. Certificate holder manages issuing CA A root CA may host an issuing CA on behalf of a certificate holder. Typically, the certificate holder is approved to issue certificates only within a specific region of the name-space, and this limitation is enforced by the host root CA. Examination of the certificate chain would indicate that the issuing CA was owned and operated by the certificate holder. 3.12. Certificate holder manages RA An issuing CA may host a registration authority on behalf of a certificate holder. Typically, the certificate holder is approved to issue certificates only within a specific region of the name-space, and this limitation is enforced by the host issuing CA. Examination of the certificate chain would indicate that the registration authority was owned and operated by the issuing CA. 4. IANA Considerations This memo includes no request to IANA. Moses Expires March 19, 2013 [Page 6] Internet-Draft Trust models of the Web PKI September 2012 5. Security Considerations The trust models described here exhibit several vulnerabilities that could adversely affect the reliability of the authentication they provide. The first concerns the naming of certificate holders. The second concerns controllability and observability of issued certificates. Certificate holder names with any of the following characteristics can be used in an impersonation attack. o homographic name o mixed-alphabet name o name that contains a string termination character o non-unique name (e.g. an internal server name) With the exception of non-unique names, CAs in the Web PKI are required to screen out requests for certificates with any of these characteristics. CAs are required to phase out the practice of issuing non-unique names by 2016. Technically, unless constrained by an upstream CA to issue certificates only in a specific region of the name-space, any CA in the Web PKI can issue an apparently legitimate certificate for any name, whether or not the legitimate holder of that name is aware of or approves the issuance. Furthermore, the legitimate holder of that name may not discover that such a certificate has been issued. In the event of a compromise of a root CA, its key is blacklisted by certificate using products by means of a software update. This has the effect of invalidating every otherwise-valid certificate that chains to that root, whether or not it was issued while the compromise existed. This step would have a severe impact upon the CA and its certificate holders; a step not likely to be taken without very careful deliberation and (perhaps) hesitation. 6. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., Housley, R., and W. Polk, "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List Moses Expires March 19, 2013 [Page 7] Internet-Draft Trust models of the Web PKI September 2012 (CRL) Profile", RFC 5280, May 2008. Author's Address Tim Moses (editor) Entrust Ltd. Phone: +1 613 270 3183 Email: tim.moses@entrust.com Moses Expires March 19, 2013 [Page 8]