< draft-iab-web-pki-problems-02.txt   draft-iab-web-pki-problems-03.txt >
Internet Architecture Board R. Housley Internet Architecture Board R. Housley
Internet-Draft Vigil Security Internet-Draft Vigil Security
Intended status: Informational K. O'Donoghue Intended status: Informational K. O'Donoghue
Expires: November 13, 2016 Internet Society Expires: March 26, 2017 Internet Society
May 12, 2016 September 22, 2016
Problems with the Public Key Infrastructure (PKI) for the World Wide Web Problems with the Public Key Infrastructure (PKI) for the World Wide Web
draft-iab-web-pki-problems-02.txt draft-iab-web-pki-problems-03.txt
Abstract Abstract
This document describes some of the challenges facing the current The Public Key Infrastructure (PKI) used for the World Wide Web (Web
Public Key Infrastructure (PKI) used for the World Wide Web (Web PKI) PKI) is a vital component of trust in the Internet. In recent years,
and considers promising improvements to address these challenges. there have been a number of improvements made to this infrastructure,
Technical, process, and policy improvements to the WebPKI are including improved certificate status checking, automation, and
considered. In addition, some technical considerations beyond WebPKI transparency of governance. However, additional improvements
itself are considered. Hopefully the content of this document will necessary. This document identifies continuing areas of concerns and
help drive the Internet community toward wide spread adoption of some provides recommendations to the Internet community for additional
of the highlighted recommendations. improvements, moving toward a more robust and secure Web PKI.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on November 13, 2016. This Internet-Draft will expire on March 26, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Very Brief Description of the Web PKI . . . . . . . . . . . . 3 2. Very Brief Description of the Web PKI . . . . . . . . . . . . 2
3. Technical Improvements to the Web PKI . . . . . . . . . . . . 4 3. Improvements to the Web PKI . . . . . . . . . . . . . . . . . 3
3.1. Weak Cryptographic Algorithms or Short Public Keys . . . 4 3.1. Weak Cryptographic Algorithms or Short Public Keys . . . 3
3.2. Certificate Status Checking . . . . . . . . . . . . . . . 5 3.2. Support for Enterprise PKIs . . . . . . . . . . . . . . . 4
3.2.1. Short-lived Certificates . . . . . . . . . . . . . . 6 3.3. Web PKI in the Home . . . . . . . . . . . . . . . . . . . 6
3.2.2. CRL Distribution Points . . . . . . . . . . . . . . . 6 3.4. Browser Error Messages . . . . . . . . . . . . . . . . . 8
3.2.3. Proprietary Revocation Checks . . . . . . . . . . . . 6 3.5. Governance Improvements to the Web PKI . . . . . . . . . 8
3.2.4. OCSP Stapling . . . . . . . . . . . . . . . . . . . . 7 4. Security Considerations . . . . . . . . . . . . . . . . . . . 10
3.3. Surprising Certificates . . . . . . . . . . . . . . . . . 8 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10
3.3.1. Certificate Authority Authorization (CAA) . . . . . . 9 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.2. HTTP Public Key Pinning (HPKP) . . . . . . . . . . . 9 6.1. Normative References . . . . . . . . . . . . . . . . . . 11
3.3.3. HTTP Strict Transport Security (HSTS) . . . . . . . . 10 6.2. Informative References . . . . . . . . . . . . . . . . . 11
3.3.4. DNS-Based Authentication of Named Entities (DANE) . . 10 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 13
3.3.5. Certificate Transparency . . . . . . . . . . . . . . 11 Appendix B. IAB Members at the Time of Approval . . . . . . . . 13
3.4. Automation for Server Administrators . . . . . . . . . . 12 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13
4. Policy and Process Improvements to the Web PKI . . . . . . . 13
4.1. Determination of the Trusted Certificate Authorities . . 13
4.2. Price for Certificates . . . . . . . . . . . . . . . . . 14
4.3. Governance Structures for the Web PKI . . . . . . . . . . 15
5. Additional Technical Considerations . . . . . . . . . . . . . 15
5.1. Browser Error Messages . . . . . . . . . . . . . . . . . 15
5.2. Time Synchronization . . . . . . . . . . . . . . . . . . 16
6. Recommendations for Improving the Web PKI . . . . . . . . . . 16
7. Security Considerations . . . . . . . . . . . . . . . . . . . 17
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 18
9.1. Normative References . . . . . . . . . . . . . . . . . . 18
9.2. Informative References . . . . . . . . . . . . . . . . . 18
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 22
Appendix B. IAB Members at the Time of Approval . . . . . . . . 22
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22
1. Introduction 1. Introduction
There are many interrelated problems with the current Public Key There are many interrelated problems with the current Public Key
Infrastructure (PKI) used for the World Wide Web (Web PKI). The Web Infrastructure (PKI) used for the World Wide Web (Web PKI). The Web
PKI makes use of certificates as described in RFC 5280 [RFC5280]. PKI makes use of certificates as described in RFC 5280 [RFC5280].
These certificates are primarily used with Transport Layer Security These certificates are primarily used with Transport Layer Security
(TLS) RFC 5246 [RFC5246]. (TLS) as described in RFC 5246 [RFC5246].
The economics of the Web PKI value chain are discussed in [VFBH], The economics of the Web PKI value chain are discussed in [VFBH],
[AV], and [AVAV]. This document does not discuss the economic issues [AV], and [AVAV]. This document does not discuss the economic issues
further, but these economic issues provide motivation for correcting further, but these economic issues provide motivation for correcting
the other problems that are discussed in this document. the other problems that are discussed in this document.
This document describes technical, usability, process, and policy Over the years, many technical improvements have been made to the Web
problems, considers some emerging technical improvements, discusses PKI, but several challenges remain. This document offers a general
some evoling process and policy improvements, and provides some basic set of recommendations to the Internet community that might be
recommendations for the Internet community. helpful in addressing these remaining challenges.
2. Very Brief Description of the Web PKI 2. Very Brief Description of the Web PKI
Certificates are specified in RFC 5280 [RFC5280]. Certificates Certificates are specified in RFC 5280 [RFC5280]. Certificates
contain, among other things, a subject name, a public key, a limited contain, among other things, a subject name, a public key, a limited
valid lifetime, and the digital signature of the Certification valid lifetime, and the digital signature of the Certification
Authority (CA). Certificate users require confidence that the Authority (CA). Certificate users require confidence that the
private key associated with the certified public key is owned by the private key associated with the certified public key is owned by the
named subject. named subject.
skipping to change at page 3, line 42 skipping to change at page 3, line 25
clients. clients.
RA: Registration Authority -- an optional system to which a CA RA: Registration Authority -- an optional system to which a CA
delegates some management functions such as identity validation delegates some management functions such as identity validation
or physical credential distribution. or physical credential distribution.
A valid certificate may be revoked for any number of reasons. CAs A valid certificate may be revoked for any number of reasons. CAs
are responsible for indicating the revocation status of the are responsible for indicating the revocation status of the
certificates that they issue throughout the lifetime of the certificates that they issue throughout the lifetime of the
certificate. Revocation status information may be provided using the certificate. Revocation status information may be provided using the
Online Certificate Status Protocol (OCSP) RFC 6960 [RFC6960], Online Certificate Status Protocol (OCSP) [RFC6960], certificate
certificate revocation lists (CRLs) RFC 5280 [RFC5280], or some other revocation lists (CRLs) [RFC5280], or some other mechanism. In
mechanism. In general, when revocation status information is general, when revocation status information is provided using CRLs,
provided using CRLs, the CA is also the CRL issuer. However, a CA the CA is also the CRL issuer. However, a CA may delegate the
may delegate the responsibility for issuing CRLs to a different responsibility for issuing CRLs to a different entity.
entity.
The enrollment process used by a CA makes sure that the subject name The enrollment process used by a CA makes sure that the subject name
in the certificate is appropriate and that the subject actually holds in the certificate is appropriate and that the subject actually holds
the private key. Proof of possession of the private key is often the private key. Proof of possession of the private key is often
accomplished through a challenge-response protocol. accomplished through a challenge-response protocol.
3. Technical Improvements to the Web PKI 3. Improvements to the Web PKI
Over the years, many technical improvements have been made to the Web Over the years, many technical improvements have been made to the Web
PKI. This section discusses several problems and the technical PKI. Despite this progress, several challenges remain. This section
improvements that have been made to address them. This history sets discusses several unresolved problems, and it suggests general
the stage for suggestions for additional improvements in other directions for tackling them.
sections of this document.
3.1. Weak Cryptographic Algorithms or Short Public Keys 3.1. Weak Cryptographic Algorithms or Short Public Keys
Over the years, the digital signature algorithms, one-way hash Several digital signature algorithms, one-way hash functions, and
functions, and public key sizes that are considered strong have public key sizes that were once considered strong are no longer
changed. This is not a surprise. Cryptographic algorithms age; they considered adequate. This is not a surprise. Cryptographic
become weaker with time. As new cryptanalysis techniques are algorithms age; they become weaker over time. As new cryptanalysis
developed and computing capabilities improve, the work factor to techniques are developed and computing capabilities increase, the
break a particular cryptographic algorithm will reduce. For this amount of time needed to break a particular cryptographic algorithm
reason, the algorithms and key sizes used in the Web PKI need to will decrease. For this reason, the algorithms and key sizes used in
migrate over time. A reasonable choice of algorithm or key size the Web PKI need to migrate over time.
needs to be reevaluated periodically, and a transition may be needed
before the expected lifetime expires.
The browser vendors have been trying to manage algorithm and key size
transitions, but a long-lived trust anchor or intermediate CA
certificate can have a huge number of certificates under it. So,
removing one certificate because it uses a weak cryptographic
algorithm or a short public key can have a significant impact on a
large subtree. In addition, if a certificate for a web site with a
huge amount of traffic is in that subtree, it will increase the
difficulty in removing the certificate with a weak cryptographic
algorithm or a short public key.
As a result, some valid trust anchors and certificates contain
cryptographic algorithms long after weaknesses have been discovered
and widely known. Similarly, valid trust anchors and certificates
contain public keys after computational resources available to
attackers have rendered them too weak. We have seen a very
successful migration away from certificates that use the MD2 or MD5
one-way hash functions. However, there are still a number of
certificates that use SHA-1 and 1024-bit RSA public keys [MB2015]
[MB2016], and these certificates should be replaced.
Today, the algorithms and key sizes used by a CA to sign end-entity Browser vendors have been trying to manage algorithm and key size
certificates with a traditional lifespan of a year should offer 112 transitions. It is a significant challenge to maintain a very high
to 128 bits of security. SHA-256 is a widely studied one-way hash degree of interoperability across the world wide web while phasing
function that meets this requirement. RSA with a public key of at out aged cryptographic algorithm or too small key size. When these
least 2048 bits or ECDSA with a public key of at least 256 bits are appear in a long-lived trust anchor or intermediate CA certificate,
widely studied digital signature algorithms that meet this refusal to accept them can impact a very large certificate subtree.
requirement. In addition, if a certificate for a web site with a huge amount of
traffic is in that subtree, rejecting that certificate may impact too
many users.
The algorithms and key sizes used by a CA to sign long-lived Despite this situation, the MD5 and SHA-1 one-way hash functions have
intermediate CA certificates that often have a lifespan of several been almost completely eliminated from the Web PKI, and 1024-bit RSA
decades should offer even greater security. SHA-384 is a widely public keys are essentially gone [MB2015] [MB2016]. It took a very
studied one-way hash function that meets this requirement. RSA with long time to make this happen, and trust anchors and certificates
a public key of at least 3072 bits or ECDSA with a public key of at that used these cryptographic algorithms were considered valid long
least 384 bits are widely studied digital signature algorithms that after they were widely known to be too weak.
meet this requirement.
Obviously, additional algorithm transitions will be needed in the Obviously, additional algorithm transitions will be needed in the
future as these algorithms age. These algorithms, like the ones that future. The algorithms and key sizes that are acceptable today will
were used earlier, will become weaker with time. RFC 7696 [RFC7696] become weaker with time. [RFC7696] offers some guidelines regarding
offers some guidelines regarding cryptographic algorithm agility. cryptographic algorithm agility.
3.2. Certificate Status Checking
Several years ago, many browsers did not perform certificate status
checks by default. That is, browsers did not check whether the
issuing CA had revoked the certificate unless the user explicitly
adjusted a setting to enable this feature. This check can be made by
fetching the most recent certificate revocation list (CRL) RFC 5280
[RFC5280], or this check can use the Online Certificate Status
Protocol (OCSP) RFC 6960 [RFC6960]. The location of the CRL or the
OCSP responder is usually found in the certificate itself. However,
both of these approaches add latency. The desire to provide a
responsive user experience is a significant reason that this feature
has not been turned on by default. Mobile browsers simply do not
bother to check revocation status [IMC2015].
Certificate status checking needs to be used at all times. Several
techniques have been tried by CAs and browsers to make certificate
status checking more efficient. Many CAs are using Content Delivery
Networks (CDNs) to deliver CRLs and OCSP responses, resulting in very
high availability and low latency. Yet, browser vendors are still
reluctant to perform standard-based status checking by default for
every session.
Certificate status checking by the browser can reveal the web sites
that the browser user is visiting to the OCSP Responder or the server
providing the CRL. This privacy concern can be eliminated by having
the Web Server include the OCSP Response in the TLS handshake. This
is called OCSP Stapling, and it is discussed further in
Section 3.2.4.
Measurements in 2015 [IMC2015] show that a surprisingly large
fraction of Web PKI certicates have been revoked. Note that these
measurements were taken around the time of the Heartbleed incident
[HEARTBLEED], and the revocation activity may have been unusually
high due to this incident. In addition, this incident exacerbates
the problem of incomplete Web PKI revocation checking. These
measurements show that browsers are not obtaining current certificate
revocation information because it is too expensive in terms of
latency and bandwidth. Finally, only a small number of CRL and OCSP
servers are available over IPv6, and as more of the Web moves to IPv6
[ABLOG] this is expected to become an increasingly significant issue.
The following subsections identify some approaches for reducing the
perceived and actual cost of revocation status checks.
3.2.1. Short-lived Certificates
Short-lived certificates are an excellent way to reduce the need for The Web PKI can prepare for the next transition by:
certificate status checking. The shorter the life of the
certificate, the less time there is for anything to go wrong. If the
lifetime is short enough, policy might allow certificate status
checking can be skipped altogether. In practice, implementation of
short-lived certificates requires automation to assist web server
administrators, which is a topic that is discussed elsewhere in this
document.
3.2.2. CRL Distribution Points 1. Having experts periodically evaluate the current choices of
algorithm and key size. While it is not possible to predict when
a new cryptanalysis technique will be discovered, the end of the
useful lifetime of most algorithms and key sizes is known many
years in advance.
The certificate revocation list distribution point (CRLDP) 2. Planning for a smooth and orderly transition from a weak
certificate extension RFC 5280 [RFC5280] allows a CA to control the algorithm or key size. Experience has shown that many years are
maximum size of the CRLs that they issue. This helps in two ways. needed produce to specifications, develop implementations, and
First, the amount of storage needed by the browser to cache CRLs is then deploy replacements.
reduced. Second, and more importantly, the amount of time it takes
to download a CRL can be scoped, so that the amount of time needed to
fetch any single CRL is reasonable.
Few CAs take advantage of the CRLDP certificate extension to limit 3. Reducing the lifetime of certificates, especially intermediate CA
the size of CRLs. In fact, there are several CAs that publish certificates, to create frequent opportunities to change an
extremely large CRLs. Browsers never want to suffer the latency algorithm or key size.
associated with large CRLs, and some ignore the CRLDP extension when
it is present. Browsers tend to avoid the use of CRLs altogether.
3.2.3. Proprietary Revocation Checks 3.2. Support for Enterprise PKIs
Some browser vendors provide a proprietary mechanism for revocation Many enterprises operate their own PKI. These enterprises do not
checking. These mechanisms obtain revocation status information once want to be part of the traditional Web PKI, but they face many
per day for the entire Web PKI in a very compact form. No network challenges in order to achieve a similar user experience and level of
traffic is generated at the time that a certificate is being security.
validated, so there is no latency associated with revocation status
checking. The browser vendor infrastructure performs daily checks of
the Web PKI, and then the results are assembled in a proprietary
format and made available to the browser. These checks only cover
the trust anchor store for that browser vendor, so any trust anchors
added by the user cannot be checked in this manner.
Measurements in 2015 [IMC2015] show that proprietary status checking Users must install the trust anchor or trust anchors for the
is not currently providing adequate coverage of the Web PKI. enterprise PKI in their browser. There is not a standard way to
accomplish trust anchor installation, and users are often faced with
scary warnings in the process of the installation.
3.2.4. OCSP Stapling Enterprise PKI users often experience greater latency than tradition
Web PKI users. Some browser vendors provide a proprietary revocation
checking mechanism that obtains revocation status for the entire Web
PKI in a very compact form. This mechanism eliminates latency since
no network traffic is generated at the time that a certificate is
being validated. However, these mechanisms cover only the trust
anchor store for that browser vendor, excluding all enterprise PKIs.
In addition, measurements in 2015 [IMC2015] show that these
mechanisms do not currently provide adequate coverage of the Web PKI.
Browsers can avoid transmission of CRLs altogether by using the RFC 6961 [RFC6961] defines the TLS Multiple Certificate Status
Online Certificate Status Protocol (OCSP) RFC 6960 [RFC6960] to check Request extension, which allows the web server to provide status
the validity of web server certificates. The TLS Certificate Status information about its own certificate and also the status of
Request extension is defined in Section 8 of RFC 6066 [RFC6066]. In
addition, RFC 6961 [RFC6961] defines the TLS Multiple Certificate
Status Request extension, which allows the web server to provide
status information about its own certificate and also the status of
intermediate certificates in the certification path. By including intermediate certificates in the certification path. By including
this extension in the TLS handshake, the browser asks the web server this extension in the TLS handshake, the browser asks the web server
to provide an OCSP response in addition to its certificate. This to provide OCSP responses in addition to the server certificate.
approach greatly reduces the number of round trips by the browser to This approach greatly reduces the latency since the browser does not
check the status of each certificate in the path. In addition, the need to generate any OCSP requests or wait for any OCSP responses.
web server can cache the OCSP response for a period of time, avoiding
additional latency. Even in the cases where the web server needs to
contact the OCSP responder, the web server usually has a higher
bandwidth connection than the browser to do so.
The provision of the time-stamped OCSP response in the TLS handshake The provision of the time-stamped OCSP response in the TLS handshake
is referred to as "stapling" the OCSP response to the TLS handshake. is referred to as "stapling" the OCSP response to the TLS handshake.
If the browser does not receive a stapled OCSP response, it can If the browser does not receive a stapled OCSP response, it can
contact the OCSP responder directly. In addition, the MUST_STAPLE contact the OCSP responder directly. In addition, the MUST_STAPLE
feature [TLSFEATURE] can be used to insist that OCSP stapling be feature [TLSFEATURE] can be used to insist that OCSP stapling be
used. used.
When every browser that connects to a high volume website performs When every browser that connects to a high volume website performs
its own OCSP lookup, the OCSP responder must handle a real-time its own OCSP lookup, the OCSP responder must handle a large volume of
response to every browser. OCSP stapling can avoid enormous volumes OCSP requests in real-time. OCSP stapling can avoid enormous volumes
of OCSP requests for certificates of popular websites, so stapling of OCSP requests for certificates of popular websites, so stapling
can significantly reduce the cost of providing an OCSP service. can significantly reduce the cost of providing an OCSP service.
OCSP stapling can also improve user privacy, since the web server, OCSP stapling can also improve user privacy, since the web server,
not the browser, contacts the OCSP responder. In this way, the OCSP not the browser, contacts the OCSP responder. In this way, the OCSP
responder is not able to determine which browsers are checking the responder is not able to determine which browsers are checking the
validity of certificate for websites. validity of certificate for particular websites.
Many web site are taking advantage of OCSP stapling. At the time of
this writing, browser venders report that about 12% the the
transactions use OCSP stapling, and the number is on the rise.
3.3. Surprising Certificates
All of the CAs in the trust store are equally trusted for the entire
domain name space, so any CA can issue for any domain name. In fact,
there have been certificates issued by CAs that are surprising to the
legitimate owner of a domain. The domain name owner is surprised
because they did not request the certificates. They are initially
unaware that a CA has issued a certificate that contains their domain
name, and once the surprising certificate is discovered, it can be
very difficult for the legitimate domain name owner to get it
revoked. Further, browsers and other relying parties cannot
distinguish a certificate that the legitimate domain name owner
requested from a surprising one.
Since all of the CAs in the trust store are equally trusted, any CA
can issue a certificate for any domain name. There are known cases
where attackers have thwarted the CA protections and issued
certificates that were then used to mount attacks against the users
of that web site [FOXIT]. For this reason, all of the CAs listed in
the trust store must be very well protected.
The Baseline Requirements produced by the CA/Browser Forum [CAB2014]
tell CAs the checks that need to be performed before a certificate is
issued. In addition, WebTrust [WEBTRUST] provides the audit
requirements for CAs, and browser vendors will remove a CA from the
trust anchor store if successful audit reports are not made
available.
When a CA issues a certificate to a subordinate CA, the inclusion of
widely supported certificate extensions can reduce the set of
privileges given to the sub-CA. This aligns with the traditional
security practice of least privilege, where only the privileges
needed to perform the envisioned tasks are provided. However, many
sub-CAs have certificates that pass along the full powers of the CA,
creating additional high-pay-off targets for attackers, and these
sub-CAs may not be held to the same certificate issuance requirements
and audit requirement as the parent CA.
Some major implementations have not fully implemented the mechanisms
necessary to reduce sub-CA privileges. For example, RFC 5280
[RFC5280] includes the specification of name constraints, and the CA/
Browser Forum guidelines [CAB2014] encourage the use of dNSNames in
permittedSubtrees within the name constraints extension. Despite
this situation, one major browser does not support name constraints,
and as a result, CAs are reluctant to use them. When they are used,
the name constraints extension in not marked critical so that the
browser that does not support this extension is free to ignore the
extension. This situation leads to enforcement of the name
constraint by some browsers and not others. Further, global CAs are
prepared to issue certificates within every top-level domain,
including ones that are newly-approved. It is not practical for
these global CAs to use name constraints in their sub-CA
certificates.
As a result of procedural failures or attacks, surprising
certificates are being issued. Several mechanisms have been defined
to avoid the issuance of surprising certificates or prevent browsers
from accepting them.
3.3.1. Certificate Authority Authorization (CAA)
The Certificate Authority Authorization (CAA) [RFC6844] DNS resource
record allows a domain administrator to specify one or more CAs
authorized to issue certificates that include that domain name.
Then, a trustworthy CA will refuse to issue a certificate for a
domain name that has a CAA resource record that does not explicitly
name the CA.
To date, only one major CA performs this check, and there is no
indication that other CAs are planning to add this check in the near
future.
3.3.2. HTTP Public Key Pinning (HPKP) Several enterprises issue certificates to all of their employees, and
among other uses, these certificates are used in TLS client
authentication. There is not a common way to import the private key
and the client certificate into browsers. In fact, the private key
can be stored in many different formats depending on the software
used to generate the public/private key pair. PKCS#12 [RFC7292]
seems to be the most popular format at the moment. A standard way to
import the needed keying material and a standard format will make
this task much easier, and the World Wide Web might enjoy an increase
in mutual authentication.
HTTP Public Key Pinning (HPKP) [RFC7469] allows a web server to Enterprise PKIs can be better supported if:
instruct browsers to remember the server's public key fingerprints
for a period of time. The fingerprint is a one-way hash of the
subject public key information in the certificate. The Public-Key-
Pins header provides a maximum retention period, fingerprints of the
web server certificate, and optionally fingerprints for backup
certificates. The act of saving the fingerprints is referred to as
"pinning". During the pin lifetime, browsers require that the same
web server present a certificate chain that includes a public key
that matches one of the retained fingerprints. This prevents
impersonation of the website with a surprising certificate.
A website can choose to pin the CA certificate so that the browser 1. Each enterprise PKI offers an OCSP Responder, and web sites with
will accept only valid certificates for the website domain that are certificates from the enterprise PKI make use of OCSP Stapling.
issued by that CA. Alternatively, the website can choose to pin
their own certificate and at least one backup certificate in case the
current certificate needs to be replaced due to a compromised server.
Some browser vendors also pin certificates by hardcoding fingerprints 2. Browser vendors support a standard way for the trust anchors for
of very well known websites. the enterprise PKI to be installed.
When HPKP is used, browsers may be able to detect a man-in-the- 3. Browser vendors support a standard way to install private keys
middle. Sometimes the man-in-the-middle is an attacker, and other and certificates for use in client authentication.
times a service provider purposefully terminates the TLS at a
location other than the web server. One example became very public
in February 2012 when Trustwave admitted that it had issued a
subordinate CA certificate for use by a company to inspect corporate
network traffic [LC2012]. When HPKP is used, the browser user will
be notified if the key-pining is violated, unless the violating
certificate can be validated to a locally installed trust anchor. In
this situation, the browser is assuming that the user intended to
explicitly trust the certificate.
3.3.3. HTTP Strict Transport Security (HSTS) 4. In the event that browser vendors continue to offer latency-free
proprietary revocation status checking mechanisms, then these
mechanisms need to expand the coverage to all of the Web PKI and
offer a means to include enterprise PKIs in the coverage.
HTTP Strict Transport Security (HSTS) [RFC6797] is a security policy 3.3. Web PKI in the Home
mechanism that protects secure websites against downgrade attacks,
and it greatly simplifies protection against cookie hijacking. The
presence of the Strict-Transport-Security header tells browsers that
all interactions with this web server should never use HTTP without
TLS, providing protection against both eavesdropping and active
network attacks. The protections can be tied to a domain or a domain
and all of its sub-domains.
When a web server includes the Strict-Transport-Security header, the More and more, web protocols are being used to manage devices in the
browser is expected to do two things. First, the browser home. For example, homeowners can use a web browser to connect to a
automatically turns any insecure links into secure ones. For web site that is embedded in their home router to adjust various
instance, "http://mysite.example.com/mypage/" will be changed to settings. The router allows the browser to access web pages to
"https://mysite.example.com/mypage/". Second, if the TLS Handshake adjust these setting as long as the connection originates from the
results in some failure, such as the certificate cannot be validated, home network and the proper password is provided. However, there is
then an error message is displayed and the user is denied access to no way for the browser to authenticate to the embedded web site.
the web application. Any web server misconfiguration, such as a Authentication of the web site is normally performed during the TLS
certificate expiration, will result no one being able to access the handshake, but the Web PKI is not equipped to issue certificates to
web site until the configuration is corrected. home routers or the many other home devices that employ embedded web
sites for homeowner management.
To date, HSTS ha seen very little deployment, and there is no A solution in this environment must not depend on the homeowner to
indication that the browser vendors intend to add support for it. perform duties that are normally associated with a web site
administrator. However, some straightforward tasks could be done at
the time the device is installed in the home. These task cannot be
more complex that the initial setup of a new printer in the home,
otherwise they will be skipped or done incorrectly.
3.3.4. DNS-Based Authentication of Named Entities (DANE) There are two very different approaches to certificates for home
devices that have been discussed over the years. In the first
approach, a private key and certificate are installed in the device
at the factory. The certificate has an unlimited lifetime. Since it
never expires, no homeowner action is needed to renew it. Also,
since the certificate never changes, the algorithms are selected by
the factory for the lifetime of the device. The subject name in the
certificate is quite generic, as it must be comprised of information
that is known in the factory. The subject name is often based on
some combination of the manufacturer, model, serial number, and MAC
address. While these do uniquely identify the device, they have
little meaning to the homeowner.
The DNS-Based Authentication of Named Entities (DANE) [RFC6698] In the second approach, like the first one, a private key and a
allows domain administrators to specify the raw public keys or certificate that are installed in the device at the factory, but the
certificates that are used by web servers in their domain. DANE homeowner is unaware of them. This factory-installed certificate is
leverages the DNS Security Extensions (DNSSEC) [RFC4034][RFC4035], used only to authenticate to a CA operated by the manufacturer. At
which provides digital signatures over DNS zones that are validated the time the device is installed, the homeowner can provide a portion
with keys that are bound to the domain name of the signed zone. The of the subject name for the device, and the manufacturer CA can issue
keys associated with a domain name can only be signed by a key a certificate that includes a subject name that the homeowner will
associated with the parent of that domain name. For example, the recognize. The certificate can be renewed without any action by the
DNSSEC keys for "www.example.com" can only be signed by the DNSSEC homeowner at appropriate intervals. Also, following a software
keys for "example.com". Therefore, a malicious actor can only update, the algorithms used in the TLS handshake and the certificate
compromise the keys of their own subdomains. Like the Web PKI, can be updated.
DNSSEC relies on public keys used to validate chains of signatures,
but DNSSEC has a single root domain as opposed to a multiplicity of
trusted CAs.
DANE binds raw public keys or certificates to DNS names. The domain Section 3.1 of this document calls for the ability to transition from
administrator is the one that vouches for the binding of the public weak cryptographic algorithms over time. For this reason, and the
key or the certificate to the domain name by adding the TSLA records ability to use a subject name that the homeowner will recognize, the
to the zone and then signing the zone. In this way, the same second approach is preferred.
administrator is responsible for managing the DNS names themselves
and associated public keys or certificates with those names. DANE
restricts the scope of assertions that can be made, forcing them to
be consistent with the DNS naming hierarchy.
In addition, DNSSEC reduces opportunities for redirection attacks by One potential problem with the second approach is continuity of
binding the domain name to the public key or certificate. operations of the manufacturer CA. After the device is deployed, the
manufacturer might go out of business, and then come time for renewal
of the certificate, there will not be a CA to issue the new
certificate. One possible solution might be modeled on the domain
name business, where other parties will continue to provide needed
services if the original provider goes out of business.
Some Web PKI certificates are being posted in TLSA records, but The Web PKI can prepare for the vast number of home devices that need
browsers expect to receive the server certificate in the TLS certificates by:
handshake, and there is little incentive for browsers to confirm that
the received certificate matches the one posted in the DNS. For this
reason, work has begun on a TLS extension that will allow the DNSSEC-
protected information to be provided in the handshake, which will
eliminate the added latency [TLSCHAIN].
3.3.5. Certificate Transparency 1. Building upon the work being done in the IETF ACME Working Group
[ACMEWG] to facilitate the automatic renewal of certificates for
home devices without any actions by the homeowner beyond the
initial device setup.
Certificate Transparency (CT) [RFC6962] offers a mechanism to detect 2. Working with device manufacturers to establish scalable CAs that
surprising certificates, and once detected, administrators and CAs will continue to issue certificates for the deployed devices even
can take the necessary actions to revoke the surprising certificates. if the manufacture goes out of business.
When requesting a certificate, the administrator can request the CA 3. Working with device manufacturers to establish OCSP Responders so
to include an embedded Signed Certificate Timestamp (SCT) in the that the web sites that are embedded in the devices can provide
certificate to ensure that their legitimate certificate is logged robust authentication and OCSP stapling in a manner that is
with one or more CT logs. compatible with traditional web sites.
An administrator, or another party acting on behalf of the 3.4. Browser Error Messages
administrator, is able to monitor one or more CT logs to which a pre-
certificate or certificate is submitted, and detect the logging of a
pre-certificate or certificate that contains their domain name. When
such a pre-certificate or certificate is detected, the CA can be
contacted to to get the surprising certificate revoked.
In the future, a browser may choose to reject certificates that do Many users find browser error messages related to certificates
not contain an SCT, and potentially notify the website administrator confusing. Good man-machine interfaces are always difficult, but in
or CA when they encounter such a certificate. Such reporting will this situation users are unable to fully understand the risks that
help detect mis-issuance of certificates and lead to their they are accepting, and as a result they do not make informed
revocation. decisions about when to proceed and when to stop. This aspect of
browser usability needs to be improved for users to make better
security choices.
The IETF Certificate Transparency Working Group is in the process of Browser users have been trained to ignore warnings, making them
updating RFC 6962. Many data structures are changing, and CT logs ineffective. Further, solving the error message situation in
will have to pick a format, choosing version 1 (v1) that conforms to isolation is probably not possible; instead, it needs to be
RFC 6962 or version 2 (v2) that conforms to the new specification. considered along side the other issues raised in this document.
Since the data structures are incompatible, a v2 log will not be able Browser users have been trained to find a way around any error, and
to issue a valid v1 SCT. A CT client can support both v1 and v2 SCTs very often, the error is the result of web server misconfiguration,
for the same certificate, simultaneously, since a v1 SCT will be and it does not actually present a risk to the browser user.
carried in different extension than a v2 SCT.
3.4. Automation for Server Administrators If the risk to the user is high, then the session should be closed
with a clear description of the problem that was encountered. Doing
so will lead to improved management of the overall Web infrastructure
over time, especially as the tools that are being developed for web
server administrators are rolled out.
The IETF has developed several protocols for certificate management, In some enterprises, avoiding these errors requires the addition of
including the Certificate Management Protocol (CMP) [RFC4210], enterprise-specific trust anchors to the browser. Additional tools
Certificate Management over CMS (CMC) [RFC5272], and Enrollment over are needed to allow administrations to easily add appropriate trust
Secure Transport (EST) [RFC7030]. There are also some proprietary anchors, especially browsers on consumer devices as more and more
certificate management protocols. None of these protocols enjoys a enterprises are embracing bring-your-own-device policies.
dominate position in the market.
There have been several attempts to provide automation for routine The Web PKI can simplify user choice and improve user actions by:
tasks that are performed by web server administrators, such as
certificate renewal. For example, some commercial tools offer
automated certificate renewal and installation [DCEI][SSLM]. Also,
at least one proposal was brought to the IETF that allows a web
server to automate obtaining and renewing certificates [PHBOB].
Without automation, there are many manual steps involved in getting a
certificate from a CA, and to date none of these attempts at
automation have enjoyed widespread interoperability and adoption.
There are at least two ways that this impacts web security. First,
many web sites do not have a certificate at all. The cost, time, and
effort are too great for the system administrator. This is
especially true if the web site is not involved in financial
transactions or some other critical activity. Second, once a
certificate is obtained, a replacement is not obtained until the
current one expires. Automation can reduce the amount of time that
an administrator needs to dedicate to certificate management, and it
can make certificate renewal timely and automatic. Both of these
should lead to more widespread deployment and improved web security.
The IETF ACME working group [ACMEWG] is working on protocols that 1. Browser vendors providing additional intelligence to eliminate
will provide system administrators with an automated way to enroll the majority of certificate warnings, only prompting the user
and renew their certificates. The expectation is that these when there is likely to be a risk.
specifications will lead to widely available and interoperable tools
for system administrators. The expectation is that these protocols
and tools will be supported by all web server environments and CAs,
which will greatly reduce complexity and cost. In addition, the
easier renewal process provided by automation can be used to reduce
certificate lifetimes, which in turn will reduce the time required to
flush old algorithms out of the system when it is decided to
transition to newer more secure algorithms.
4. Policy and Process Improvements to the Web PKI 2. Browser vendors improving error messages to clearly indicate the
risk that the user is accepting if they proceed.
As with many technologies, the issues and complexities associated 3.5. Governance Improvements to the Web PKI
with Web PKI use and deployment are just as much policy and process
as technical. These have evolved over time as well. This section
discusses the ways that business models and operational policies and
processes impact the Web PKI.
4.1. Determination of the Trusted Certificate Authorities As with many other technologies, Web PKI technical issues are tangled
up with policy and process issues. Policy and process issues have
evolved over time, sometimes eroding confidence and trust in the Web
PKI. Governance structures are needed that increase transparency and
trust.
A very basic question for users of the Web PKI is "Who do you trust?" Web PKI users are by definition asked to trust CAs. This includes
The system for determining which CAs are added to or removed from the what CAs are trusted to do properly, and what they are trusted not to
trust store in browsers has been perceived by some as opaque and do. The system for determining which CAs are added to or removed
confusing. As mentioned earlier, the CA/Browser Forum has developed from the trust anchor store in browsers is opaque and confusing to
baseline requirements for the management and issuance of certificates most Web PKI users. The CA/Browser Forum has developed baseline
requirements for the management and issuance of certificates
[CAB2014] for individual CAs. However, the process by which an [CAB2014] for individual CAs. However, the process by which an
individual CA gets added to the trust store for each of the major individual CA gets added to the trust anchor store by each of the
browsers is not straightforward. The individual browser vendors browsers vendors is not straightforward. The individual browser
determine what should and should not be trusted by including those vendors determine what should and should not be trusted by including
trusted CAs in their trust store. They do this by leveraging the the CA certificate in their trust anchor store. They do this by
AICPA/CICA WebTrust Program for Certification Authorities [WEBTRUST]. leveraging the AICPA/CICA WebTrust Program for Certification
This program provides auditing requirements and a trust mark for CAs. Authorities [WEBTRUST]. This program provides auditing requirements
Failure to pass an audit can result in the CA being removed from the and a trust mark for CAs that meet them. Failure to pass an audit
trust store. can result in the CA being removed from the trust store.
Once the browser has shipped, how does a user know which CAs are Once the browser has shipped, how does a user know which CAs are
trusted or what has changed recently? For an informed user, trusted or what has changed recently? For an informed user,
information about which CAs have been added to or deleted from the information about which CAs have been added to or deleted from the
browser trust store can be found in the release notes. Users can browser trust anchor store can be found in the browser release notes.
also examine the policies of the various CAs which would have been Users can also examine the policies of the various CAs that have been
developed and posted for the WebTrust Program. However, this is a developed and posted for the WebTrust Program. However, this is a
very high barrier for the average user. There are options to make very high barrier for the average user. There are options to make
local modifications by educated users, but there is little local modifications by educated users, but there is little
understanding about the implications of these choices. How does an understanding about the implications of these choices. How does an
individual, organization, or enterprise really determine if a individual, organization, or enterprise really determine if a
particular CA is trustworthy? Do the default choices inherited from particular CA is trustworthy? Do the default choices inherited from
the browser vendors truly represent the organization's trust model? the browser vendors truly represent the organization's trust model?
What constitutes sufficiently bad behavior by a CA to cause removal What constitutes sufficiently bad behavior by a CA to cause removal
from the trust store? from the trust anchor store?
In addition, it can be hazardous for users to remove CAs from the In addition, it can be hazardous for users to remove CAs from the
browser trust store. If a user removes a CA from the browser trust browser trust anchor store. If a user removes a CA from the browser
store, some web sites may become completely inaccessible or require trust anchor store, some web sites may become completely inaccessible
the user to take explicit action to accept warnings or bypass browser or require the user to take explicit action to accept warnings or
protections related to untrusted certificates. bypass browser protections related to untrusted certificates.
One form of bad behavior by CAs is the mis-issuance of certificates.
This mis-issuance can be either an honest mistake by the CA,
malicious behavior by the CA, or a case where an external party has
duped the CA into the mis-issuance. When a CA has delegated
authority to a sub-CA, and then the sub-CA issued bad certificates
either unintentionally or maliciously, the CA is able to deny
responsibility for the actions of the sub-CA. However, the CA may be
the only party that can revoke the sub-CA certificate to protect the
overall Web PKI.
Another complication with CAs and the trust store maintained by the
browser vendor is an enterprise managed PKI. For example, the US
Department of Defense operates its own PKI. In this case, the
enterprise maintains its own PKI for the exclusive use of the
enterprise itself. A bridge CA may be used to connect related
enterprises. The complication in this approach is that the
revocation mechanisms don't work with any additions that have been
made by the enterprise. See Section 3.2.3 on proprietary revocation
checks.
The guidelines provided by the WebTrust program [WEBTRUST] provide a The guidelines provided by the WebTrust program [WEBTRUST] provide a
framework for removing a CA from the trust store. However, the framework for removing a CA from the trust anchor store. There may
implications of removing a CA can be significant. There may be a few be a few very large CAs that are critical to significant portions of
very large CAs that are critical to significant portions of Internet World Wide Web infrastructure. Removing one of these CAs can have a
infrastructure. Removing one of these trusted CAs can have a significant impact on a huge number of websites. As discussed in
significant impact on a large cross section of Internet users Section 3.4, users are already struggling to understand the
resulting in potentially large numbers of websites no longer being implications of untrusted certificates, so they often ignore warnings
trusted. Users are already struggling to understand the implications presented by the browser.
of untrusted websites and often ignore the current warnings as
discussed below.
4.2. Price for Certificates
Many CAs charge for each of the certificates that they issue. This
business model creates a hurdle for proper deployment. In some
cases, the cost causes people to deploy self-signed certificates that
cannot be validated against the browser trust store. In other cases,
the cost is an incentive to use the same certificate and the
associate private key on many different servers within a domain.
This leads to greater exposure of the private key, and coordination
is needed among the server administrators when it is time to renew
the certificate.
At least one CA is moving away from the charging-per-certificate
business model. The Let's Encrypt CA [LE] is offering free web
server certificates. This zero-cost business model will
significantly change the Web PKI, removing the cost concerns that
leaded to insecure deployment.
4.3. Governance Structures for the Web PKI
There are a number of organizations that play significant roles in There are a number of organizations that play significant roles in
the operation of the Web PKI, including the CAB Forum, the WebTrust the operation of the Web PKI, including the CA/Browser Forum, the
Program, and the browser vendors. These organizations act on behalf WebTrust Program, and the browser vendors. These organizations act
of the entire Internet community. Transparency in these operations on behalf of the entire Internet community; therefore, transparency
is vital to basic trust in the Web PKI. As one example, in the past in these operations is fundamental to confidence and trust in the Web
the CAB Forum was perceived as being a closed forum; however, some PKI. Recently the CA/Browser Forum made some changes to their
changes were made to the operational procedures to allow more operational procedures to make it easier for people to participate
visibility if not actual participation in the process [CAB1.2]. How and to improve visibility into their process [CAB1.2]. This is a
do we ensure that these processes continue to evolve in an open, significant improvement, but these processes need to continue to
inclusive, and transparent manner? Currently, as the name implies, evolve in an open, inclusive, and transparent manner. Currently, as
the CAB Forum members represent CAs and browser vendors. How do we the name implies, the CA/Browser Forum members primarily represent
ensure that relying parties have a voice in this forum? CAs and browser vendors. It would be better if relying parties also
have a voice in this forum.
Since the Web PKI is widespread, applications beyond the World Wide Since the Web PKI is widespread, applications beyond the World Wide
Web are making use of the Web PKI. For example, the Web PKI is used Web are making use of the Web PKI. For example, the Web PKI is used
to secure the connections between SMTP servers. In these to secure connections between SMTP servers. In these environments,
environments, the browser-centric capabilities are unavailable. For the browser-centric capabilities are unavailable. The current
example, see Section 3.2.3 on proprietary revocation checks. The governance structure does not provide a way for the relying parties
current governance structure does not provide a way for these other in these applications to participate.
applications to participate. How do we ensure that these other
applications get a voice in this forum?
5. Additional Technical Considerations
Beyond the technical mechanisms that constitute the Web PKI itself,
there are additional technical considerations that impact the success
of the Web PKI.
5.1. Browser Error Messages
Many people find browser error messages related to certificates
confusing. Good man-machine interfaces are always difficult, but in
this situation users are unable to understand the risks that they
being asked to accept. Even experts do not have the time or
inclination to make an assessment of the situation that caused the
error message. As a result, browser users have learned to largely
ignore the warning messages.
Many different situations can cause an error message, where blocking
the communication would not be in the interest of the browser user.
There are many examples, including web sites that use self-signed
certificates, captive portals that redirect intercepted HTTPS
connections, and certificates that appear expired because the local
computer clock is wrong.
Too often the warnings are due to web server misconfiguration.
Further, solving the error message situation in isolation is probably
not possible; instead, it needs to be considered along side the other
issues raised in this document.
If the risk to the user is high, then the session should be closed
with a clear description of the problem that was encountered. Doing
so will lead to improved management of the overall infrastructure
over time, especially as the tools that are being developed for web
server administrators are rolled out.
In some enterprises, avoiding these errors requires the addition of
enterprise-specific trust anchors to the browser. Additional tools
are needed to allow administrations to easily add appropriate trust
anchors, especially browsers on consumer-grade devices as more and
more enterprises are embracing bring-your-own-device policies.
5.2. Time Synchronization
Time synchronization is another factor that impacts the security and
reliability of the Web PKI. Reasonably accurate time is needed to
check certificate expiration and to determine whether cached
revocation status information is fresh. There is ongoing work to
improve the security of the time synchronization infrastructure, and
it will use certificates to authenticate time servers. Since the
certificate infrastructure relies on quality time synchronization,
this dependency creates a boot strapping issue.
6. Recommendations for Improving the Web PKI
To make the Web PKI more secure and more robust, the following
priorities have been identified and are recommended for further
development and deployment:
Improve certificate status checking.
Develop and deploy a standard solution for all relying parties
is needed. OCSP stapling seems to be a significant part of
this solution.
Automation for certificate enrollment and renewal.
Develop and deploy standard protocols that provide system
administrators with an automated way to enroll and renew their
certificates. This work is currently underway in the IETF.
In addition, solutions to these procedural and policy challenges are
needed:
Smooth transition between cryptographic algorithms.
Develop best practices for smooth and timely transition between
cryptographic algorithms.
Eliminate surprising certificates.
Develop best practices that use one or more of the several
mechanisms that have been defined throughout the Web PKI to
eliminate surprising certificates.
Confidence in CA actions.
Develop best practices for identifying and dealing with bad
behavior by a CA that can be followed by all browser vendors.
Open and transparent Web PKI governance. The Web PKI governance structures can be made more open and
Develop a governance structure that allows relying parties to transparent by:
have a voice resulting in open and transparent governance.
7. Security Considerations 1. Browser vendors providing additional visibility and tools to
support the management of the trust anchor store.
Not just the Web depends on the Web PKI. For example, mail servers 2. Governance organizations providing a way for all relying parties,
often use certificates that are validated using the trust store from including ones associated with non-browser applications, to
a browser. In addition, applications written in scripting languages participate.
that run in the browser environment do not have access to any
alternative infrastructures. The Web PKI is being leveraged to avoid
the time and expense to establish an independent PKI.
More and more Internet applications depend on the Web PKI. For the 4. Security Considerations
most part, leveraging the Web PKI is improving the security of the
Internet. However, the Web PKI is being used in ways that were not
envisaged in its design. Care is needed to ensure that applications
are not expecting security properties that cannot be delivered by the
Web PKI.
This document considers the weaknesses of the current Web PKI system This document considers the weaknesses of the current Web PKI system
and provides recommendations for improvements. Some of the risks and provides recommendations for improvements. Some of the risks
associated with doing nothing or continuing down the current path are associated with doing nothing or continuing down the current path are
articulated. The Web PKI is a vital component of a trusted Internet articulated. The Web PKI is a vital component of a trusted Internet,
and as such needs to be improved to sustain continued growth of the and as such needs to be improved to sustain continued growth of the
Internet. Internet.
8. IANA Considerations 5. IANA Considerations
None. None.
{{{ RFC Editor: Please remove this section prior to publication. }}} {{{ RFC Editor: Please remove this section prior to publication. }}}
9. References 6. References
9.1. Normative References 6.1. Normative References
[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S.,
Housley, R., and W. Polk, "Internet X.509 Public Key Housley, R., and W. Polk, "Internet X.509 Public Key
Infrastructure Certificate and Certificate Revocation List Infrastructure Certificate and Certificate Revocation List
(CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008,
<http://www.rfc-editor.org/info/rfc5280>. <http://www.rfc-editor.org/info/rfc5280>.
[RFC6960] Santesson, S., Myers, M., Ankney, R., Malpani, A., [RFC6960] Santesson, S., Myers, M., Ankney, R., Malpani, A.,
Galperin, S., and C. Adams, "X.509 Internet Public Key Galperin, S., and C. Adams, "X.509 Internet Public Key
Infrastructure Online Certificate Status Protocol - OCSP", Infrastructure Online Certificate Status Protocol - OCSP",
RFC 6960, DOI 10.17487/RFC6960, June 2013, RFC 6960, DOI 10.17487/RFC6960, June 2013,
<http://www.rfc-editor.org/info/rfc6960>. <http://www.rfc-editor.org/info/rfc6960>.
9.2. Informative References 6.2. Informative References
[ABLOG] Nygren, E., "Three years since World IPv6 Launch: strong
IPv6 growth continues", June 2015,
<https://blogs.akamai.com/2015/06/three-years-since-world-
ipv6-launch-strong-ipv6-growth-continues.html>.
[ACMEWG] IETF, "Charter for Automated Certificate Management [ACMEWG] IETF, "Charter for Automated Certificate Management
Environment (acme) Working Group", June 2015, Environment (acme) Working Group", June 2015,
<https://datatracker.ietf.org/doc/charter-ietf-acme/>. <https://datatracker.ietf.org/doc/charter-ietf-acme/>.
[AV] Arnbak, A. and N. van Eijk, "Certificate Authority [AV] Arnbak, A. and N. van Eijk, "Certificate Authority
Collapse: Regulating Systemic Vulnerabilities in the HTTPS Collapse: Regulating Systemic Vulnerabilities in the HTTPS
Value Chain", 2012 TRPC , August 2012, Value Chain", 2012 TRPC , August 2012,
<http://dx.doi.org/10.2139/ssrn.2031409>. <http://dx.doi.org/10.2139/ssrn.2031409>.
skipping to change at page 19, line 5 skipping to change at page 11, line 47
[CAB1.2] CA/Browser Forum, "Bylaws of the CA/Browser Forum", [CAB1.2] CA/Browser Forum, "Bylaws of the CA/Browser Forum",
October 2014, <https://cabforum.org/wp-content/uploads/CA- October 2014, <https://cabforum.org/wp-content/uploads/CA-
Browser-Forum-Bylaws-v.1.2.pdf>. Browser-Forum-Bylaws-v.1.2.pdf>.
[CAB2014] CA/Browser Forum, "CA/Browser Forum Baseline Requirements [CAB2014] CA/Browser Forum, "CA/Browser Forum Baseline Requirements
for the Issuance and Management of Publicly-Trusted for the Issuance and Management of Publicly-Trusted
Certificates, v.1.2.2", October 2014, Certificates, v.1.2.2", October 2014,
<https://cabforum.org/wp-content/uploads/BRv1.2.2.pdf>. <https://cabforum.org/wp-content/uploads/BRv1.2.2.pdf>.
[DCEI] DigiCert Inc, "Express Install(TM): Automate SSL
Certificate Installation and HTTPS Configuration", August
2015, <https://www.digicert.com/express-install/>.
[FOXIT] Prins, J., "DigiNotar Certificate Authority breach:
"Operation Black Tulip"", September 2011,
<http://www.rijksoverheid.nl/bestanden/documenten-en-
publicaties/rapporten/2011/09/05/
diginotar-public-report-version-1/
rapport-fox-it-operation-black-tulip-v1-0.pdf>.
[HEARTBLEED]
Wikipedia, "Heartbleed", 2016,
<https://en.wikipedia.org/wiki/Heartbleed>.
[IMC2015] Liu, Y., Tome, W., Zhang, L., Choffnes, D., Levin, D., [IMC2015] Liu, Y., Tome, W., Zhang, L., Choffnes, D., Levin, D.,
Maggs, B., Mislove, A., Schulman, A., and C. Wilson, "An Maggs, B., Mislove, A., Schulman, A., and C. Wilson, "An
End-to-End Measurement of Certificate Revocation in the End-to-End Measurement of Certificate Revocation in the
Web's PKI", October 2015, Web's PKI", October 2015,
<http://conferences2.sigcomm.org/imc/2015/papers/ <http://conferences2.sigcomm.org/imc/2015/papers/
p183.pdf>. p183.pdf>.
[LC2012] Constantin, L., "Trustwave admits issuing man-in-the-
middle digital certificate; Mozilla debates punishment",
February 2012,
<http://www.computerworld.com/article/2501291/internet/
trustwave-admits-issuing-man-in-the-middle-digital-
certificate--mozilla-debates-punishment.html>.
[LE] Internet Security Research Group, "Let's Encrypt", July
2015, <https://letsencrypt.org/>.
[MB2015] Wilson, K., "Phase 2: Phasing out Certificates with [MB2015] Wilson, K., "Phase 2: Phasing out Certificates with
1024-bit RSA Keys", January 2015, 1024-bit RSA Keys", January 2015,
<https://blog.mozilla.org/security/2015/01/28/phase-2- <https://blog.mozilla.org/security/2015/01/28/phase-2-
phasing-out-certificates-with-1024-bit-rsa-keys/>. phasing-out-certificates-with-1024-bit-rsa-keys/>.
[MB2016] Barnes, R., "Payment Processors Still Using Weak Crypto", [MB2016] Barnes, R., "Payment Processors Still Using Weak Crypto",
February 2016, February 2016,
<https://blog.mozilla.org/security/2016/02/24/payment- <https://blog.mozilla.org/security/2016/02/24/payment-
processors-still-using-weak-crypto/>. processors-still-using-weak-crypto/>.
[PHBOB] Hallam-Baker, P., "OmniBroker Publication Protocol",
draft-hallambaker-omnipublish-00 (work in progress), May
2014.
[RFC4034] Arends, R., Austein, R., Larson, M., Massey, D., and S.
Rose, "Resource Records for the DNS Security Extensions",
RFC 4034, DOI 10.17487/RFC4034, March 2005,
<http://www.rfc-editor.org/info/rfc4034>.
[RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S.
Rose, "Protocol Modifications for the DNS Security
Extensions", RFC 4035, DOI 10.17487/RFC4035, March 2005,
<http://www.rfc-editor.org/info/rfc4035>.
[RFC4210] Adams, C., Farrell, S., Kause, T., and T. Mononen,
"Internet X.509 Public Key Infrastructure Certificate
Management Protocol (CMP)", RFC 4210,
DOI 10.17487/RFC4210, September 2005,
<http://www.rfc-editor.org/info/rfc4210>.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, (TLS) Protocol Version 1.2", RFC 5246,
DOI 10.17487/RFC5246, August 2008, DOI 10.17487/RFC5246, August 2008,
<http://www.rfc-editor.org/info/rfc5246>. <http://www.rfc-editor.org/info/rfc5246>.
[RFC5272] Schaad, J. and M. Myers, "Certificate Management over CMS
(CMC)", RFC 5272, DOI 10.17487/RFC5272, June 2008,
<http://www.rfc-editor.org/info/rfc5272>.
[RFC6066] Eastlake 3rd, D., "Transport Layer Security (TLS)
Extensions: Extension Definitions", RFC 6066,
DOI 10.17487/RFC6066, January 2011,
<http://www.rfc-editor.org/info/rfc6066>.
[RFC6698] Hoffman, P. and J. Schlyter, "The DNS-Based Authentication
of Named Entities (DANE) Transport Layer Security (TLS)
Protocol: TLSA", RFC 6698, DOI 10.17487/RFC6698, August
2012, <http://www.rfc-editor.org/info/rfc6698>.
[RFC6797] Hodges, J., Jackson, C., and A. Barth, "HTTP Strict
Transport Security (HSTS)", RFC 6797,
DOI 10.17487/RFC6797, November 2012,
<http://www.rfc-editor.org/info/rfc6797>.
[RFC6844] Hallam-Baker, P. and R. Stradling, "DNS Certification
Authority Authorization (CAA) Resource Record", RFC 6844,
DOI 10.17487/RFC6844, January 2013,
<http://www.rfc-editor.org/info/rfc6844>.
[RFC6961] Pettersen, Y., "The Transport Layer Security (TLS) [RFC6961] Pettersen, Y., "The Transport Layer Security (TLS)
Multiple Certificate Status Request Extension", RFC 6961, Multiple Certificate Status Request Extension", RFC 6961,
DOI 10.17487/RFC6961, June 2013, DOI 10.17487/RFC6961, June 2013,
<http://www.rfc-editor.org/info/rfc6961>. <http://www.rfc-editor.org/info/rfc6961>.
[RFC6962] Laurie, B., Langley, A., and E. Kasper, "Certificate [RFC7292] Moriarty, K., Ed., Nystrom, M., Parkinson, S., Rusch, A.,
Transparency", RFC 6962, DOI 10.17487/RFC6962, June 2013, and M. Scott, "PKCS #12: Personal Information Exchange
<http://www.rfc-editor.org/info/rfc6962>. Syntax v1.1", RFC 7292, DOI 10.17487/RFC7292, July 2014,
<http://www.rfc-editor.org/info/rfc7292>.
[RFC7030] Pritikin, M., Ed., Yee, P., Ed., and D. Harkins, Ed.,
"Enrollment over Secure Transport", RFC 7030,
DOI 10.17487/RFC7030, October 2013,
<http://www.rfc-editor.org/info/rfc7030>.
[RFC7469] Evans, C., Palmer, C., and R. Sleevi, "Public Key Pinning
Extension for HTTP", RFC 7469, DOI 10.17487/RFC7469, April
2015, <http://www.rfc-editor.org/info/rfc7469>.
[RFC7696] Housley, R., "Guidelines for Cryptographic Algorithm [RFC7696] Housley, R., "Guidelines for Cryptographic Algorithm
Agility and Selecting Mandatory-to-Implement Algorithms", Agility and Selecting Mandatory-to-Implement Algorithms",
BCP 201, RFC 7696, DOI 10.17487/RFC7696, November 2015, BCP 201, RFC 7696, DOI 10.17487/RFC7696, November 2015,
<http://www.rfc-editor.org/info/rfc7696>. <http://www.rfc-editor.org/info/rfc7696>.
[SSLM] Opsmate, Inc., "SSLMate: Secure your website the easy
way", August 2015, <https://sslmate.com/>.
[TLSCHAIN]
Shore, M., Barnes, R., Huque, S., and W. Toorop, "X.509v3
TLS Feature Extension", draft-shore-tls-dnssec-chain-
extension-01 (work in progress), July 2015.
[TLSFEATURE] [TLSFEATURE]
Hallam-Baker, P., "X.509v3 TLS Feature Extension", draft- Hallam-Baker, P., "X.509v3 TLS Feature Extension", draft-
hallambaker-tlsfeature-10 (work in progress), July 2015. hallambaker-tlsfeature-10 (work in progress), July 2015.
[VFBH] Vratonjic, N., Freudiger, J., Bindschaedler, V., and J. [VFBH] Vratonjic, N., Freudiger, J., Bindschaedler, V., and J.
Hubaux, "The Inconvenient Truth About Web Certificates", Hubaux, "The Inconvenient Truth About Web Certificates",
Workshop on Economics of Information Security (WEIS) Workshop on Economics of Information Security (WEIS)
2011 , 2011, 2011 , 2011,
<http://www.econinfosec.org/archive/weis2011/papers/The%20 <http://www.econinfosec.org/archive/weis2011/papers/The%20
Inconvenient%20Truth%20about%20Web%20Certificates.pdf>. Inconvenient%20Truth%20about%20Web%20Certificates.pdf>.
skipping to change at page 22, line 13 skipping to change at page 13, line 13
homepage-documents/item27839.aspx>. homepage-documents/item27839.aspx>.
Appendix A. Acknowledgements Appendix A. Acknowledgements
This document has been developed within the IAB Privacy and Security This document has been developed within the IAB Privacy and Security
Program. The authors greatly appreciate the review and suggestions Program. The authors greatly appreciate the review and suggestions
provided by Rick Andrews, Mary Barnes, Richard Barnes, Marc Blanchet, provided by Rick Andrews, Mary Barnes, Richard Barnes, Marc Blanchet,
Alissa Cooper, Nick Doty, Stephen Farrell, Joe Hall, Ted Hardie, Alissa Cooper, Nick Doty, Stephen Farrell, Joe Hall, Ted Hardie,
Ralph Holz, Lee Howard, Christian Huitema, Eliot Lear, Xing Li, Lucy Ralph Holz, Lee Howard, Christian Huitema, Eliot Lear, Xing Li, Lucy
Lynch, Gervase Markham, Andrei Robachevsky, Thomas Roessler, Jeremy Lynch, Gervase Markham, Andrei Robachevsky, Thomas Roessler, Jeremy
Rowley, Christine Runnegar, Jakob Schlyter, Wendy Seltzer, Martin Rowley, Christine Runnegar, Jakob Schlyter, Wendy Seltzer, Brian
Thomson, Brian Trammell, and Juan Carlos Zuniga. Trammell, and Juan Carlos Zuniga.
Appendix B. IAB Members at the Time of Approval Appendix B. IAB Members at the Time of Approval
{{{ RFC Editor: Please add the names to the IAB members at the time {{{ RFC Editor: Please add the names to the IAB members at the time
that this document is put into the RFC Editor queue. }}} that this document is put into the RFC Editor queue. }}}
Authors' Addresses Authors' Addresses
Russ Housley Russ Housley
Vigil Security Vigil Security
 End of changes. 77 change blocks. 
721 lines changed or deleted 293 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/