CA/B Forum ballot · SC-033
SC-033: TLS-ALPN validation replaces the old method 10
Details
- Ballot
- SC-033
- Title
- TLS Using ALPN Method
- Status
- Passed
- Date
- 2020-08-14
- Adopted
- Effective
- BR version
- 1.7.2
- Official page
- cabforum.org
Key dates
- Method 3.2.2.4.20 'TLS Using ALPN' available; method 10 no longer usable
SC-033 made the TLS-ALPN-01 ACME challenge a formal BR validation method. In 2020 it replaced the vaguely specified validation method 3.2.2.4.10 with a new method 3.2.2.4.20 that follows RFC 8737, where the CA connects to your server on port 443 and checks a special certificate offered under the acme-tls/1 ALPN protocol.
What changed
SC-033 removed method 10 and added method 20, "TLS Using ALPN". Method 10, "TLS Using a Random Number", was how the ACME TLS-SNI-01 challenge worked, and in January 2018 a vulnerability in that challenge was disclosed: on shared hosting, one customer could get a certificate for another customer's domain. Some browsers had banned method 10 unless mitigated, and the IETF standardized the ALPN-based fix as RFC 8737. The ballot also restricts the new method to the exact FQDN validated: other subdomains require a new validation and wildcards are not permitted, because the ballot considers DNS-based methods more appropriate for whole subdomains. Mozilla proposed it; Let's Encrypt and DigiCert endorsed it.
Effective dates
The BR change took effect on 2020-09-22, with no transition period for method 10.
Who is affected
Users of ACME clients that support tls-alpn-01, such as servers and proxies that answer the challenge themselves on port 443. HTTP-01 and DNS-01 users are not affected.
What to do
Use tls-alpn-01 when port 80 is closed but 443 is reachable and your software supports it. For wildcards use DNS-01. Background: how ACME works.