[Servercert-wg] SCXX Ballot proposal: Debian Weak keys
Christopher Kemmerer
chris at ssl.com
Thu Dec 10 16:13:35 UTC 2020
Purpose of ballot:
We believe that there is a need to clarify the set of Debian weak keys
that are relevant to the Web PKI and that CAs are expected to reject. To
this end, we have 1) updated 6.1.1.3 to more precisely define them,
instead of just deferring to https://wiki.debian.org/SSLkeys, and 2)
included a cutoff point regarding the key length.
More specifically, we believe that for key length greater than 4096
bits, we enter an area of diminishing returns. This proposed cutoff
point takes into account the antiquity of the vulnerable Debian
environment, the lack of meaningful probability of users creating and
using keys of greater length in this environment, and the amount of
computational effort required to generate complete Debian weak key sets
with such key lengths (in the various combinations). Even so, in an
abundance of caution, we have included a clause to force CAs to take
some action when they offer certificates with greater key lengths. That
action could include requesting information from the subscriber about
the circumstances under which the keys were generated, using a
probabilistic mechanism that can detect the most common cases or even
banning certain key lengths.
Other changes as part of the proposed language:
• New clause for the detection of weak keys that are affected by the
ROCA vulnerability
• Updated 4.9.1.1(4) to point to 6.1.1.3(4), which tries to more
generally deal with “weak” keys.
• Removal of “based on the Public Key in the Certificate” from
4.9.1.1(4), in order to make it more general. If a Private Key can be
easily computed, it shouldn’t matter how it’s done.
• Change of “Key Pair” to “requested Public Key” in 6.1.1.3(1); since
the CA doesn’t have access to the Private Key this seems more precise.
• Removal of 6.1.1.3(2); we believe that it is covered by 6.1.1.3(3).
This motion is made by Chris Kemmerer of SSL.com and we are seeking two
endorsers.
--- Motion Begins ---
This ballot modifies the “Baseline Requirements for the Issuance and
Management of Publicly-Trusted Certificates” as follows, based on
Version 1.7.3:
Proposed ballot language:
*4.9.1.1 Reasons for Revoking a Subscriber Certificate*
*Replace:*
4. The CA is made aware of a demonstrated or proven method that can
easily compute the Subscriber’s Private Key based on the Public Key in
the Certificate (such as a Debian weak key, see
https://wiki.debian.org/SSLkeys)
*With:*
4. The CA is made aware of a demonstrated or proven method that can
easily compute the Subscriber’s Private Key (such as those identified in
6.1.1.3(4)).
---
*6.1.1.3. Subscriber Key Pair Generation*
*Replace:*
The CA SHALL reject a certificate request if one or more of the
following conditions are met:
1. The Key Pair does not meet the requirements set forth in Section
6.1.5 and/or Section 6.1.6;
2. There is clear evidence that the specific method used to generate the
Private Key was flawed;
3. The CA is aware of a demonstrated or proven method that exposes the
Applicant's Private Key to compromise;
4. The CA has previously been made aware that the Applicant's Private
Key has suffered a Key Compromise, such as through the provisions of
Section 4.9.1.1;
5. The CA is aware of a demonstrated or proven method to easily compute
the Applicant's Private Key based on the Public Key (such as a Debian
weak key, see https://wiki.debian.org/SSLkeys).
*With:*
The CA SHALL reject a certificate request if one or more of the
following occurs:
1) The requested Public Key does not meet the requirements set forth in
Sections 6.1.5 and/or 6.1.6;
2) The CA is aware of a demonstrated or proven method that exposes the
Subscriber's Private Key to compromise;
3) The CA has previously been made aware that the Subscriber's Private
Key has suffered a Key Compromise, such as through the provisions of
Section 4.9.1.1;
4) The Public Key corresponds to an industry demonstrated weak Private
Key, in particular:
a) In the case of ROCA vulnerability, the CA SHALL reject keys
identified by the tools available at https://github.com/crocs-muni/roca
or equivalent.
b) In the case of Debian weak keys (https://wiki.debian.org/SSLkeys),
the CA SHALL reject at least keys generated by the flawed OpenSSL
version with the combination of the following parameters:
i) Big-endian 32-bit, little-endian 32-bit, and little-endian 64-bit
architecture;
ii) Process ID of 0 to 32767, inclusive;
iii) All RSA Public Key lengths supported by the CA up to and including
4096 bits;
iv) rnd, nornd, and noreadrnd OpenSSL random file state.
For Debian weak keys not covered above, the CA SHALL take actions to
minimize the probability of certificate issuance.
--- Motion Ends ---
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cabforum.org/pipermail/servercert-wg/attachments/20201210/272819e8/attachment.html>
More information about the Servercert-wg
mailing list