Skip to content

Commit 9b2a0a2

Browse files
committed
Add in an explanation of OCSP
OCSP stapling & OCSP must staple
1 parent b3818b4 commit 9b2a0a2

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

pages/authentication.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,5 @@ In order to ensure confidentiality and integrity in communications with a peer,
88
The most common method of TLS authentication using these certificates depends on a [public key infrastructure](https://en.wikipedia.org/wiki/Public_key_infrastructure) that ties public keys to entities. Typically, TLS clients are configured to trust a set of [certificate authorities](https://en.wikipedia.org/wiki/Certificate_authority). These root CAs act as the set of trust anchors trusted by the client. Trust flows to all other entities in the ecosystem via a [chain of trust](http://en.wikipedia.org/wiki/Chain_of_trust) conveyed via a certificate chain. The issuance of the end-entity certificate is signed by an earlier certificate in the chain, which may itself be signed by an earlier certificate and so on until reaching the root certificate, which is self-signed, and whose trust is established by being configured by the client.
99

1010
Relying on a PKI to provide trust has a number of disadvantages. For one, if a website loses control of its key, the certificate is no longer valid and must be revoked. Thus, in practice, TLS certificates contain instructions for determining whether or not they have been revoked, and clients can follow this to determine revocation status. The two main mechanisms for this are certificate revocation lists (CRLs) and OCSP. The problem with these online revocation checks is that [they don't work in practice](https://www.imperialviolet.org/2011/03/18/revocation.html). In short, online checks require being able to query a service (presumably run by the issuing CA) as to the revocation status of a certificate, but due to reluctance to have an availability requirement on these services, clients have generally accepted certificates when the online check times out. Soft-fail mechanisms are clearly vulnerable to active attacks, thereby limiting the effectiveness of certificate revocation schemes.
11+
12+
In order to avoid reliance on external service availability, sites can assume the availability burden themselves by using the [TLS Certificate Status Request extension to staple the OCSP response](https://en.wikipedia.org/wiki/OCSP_stapling) to the TLS handshake. Combining this with the [proposed OCSP must staple X509.3 extension](http://www.ietf.org/mail-archive/web/tls/current/msg10323.html), a site can eventually opt into hard-fail when the OCSP response is not stapled with the handshake, thereby eliminating the reliance on an online revocation check. Without this proposed X509.3 extension, OCSP stapling is merely a performance optimization to eliminate the online revocation check, although it also bloats the TLS handshake which may itself add a roundtrip if the server's initial TCP congestion window is overflowed.

0 commit comments

Comments
 (0)