<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:"Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Segoe UI Emoji";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
        {font-family:"\@Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.xxxparagraph, li.xxxparagraph, div.xxxparagraph
        {mso-style-name:x_x_x_paragraph;
        margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.xxxnormaltextrun
        {mso-style-name:x_x_x_normaltextrun;}
span.xxxeop
        {mso-style-name:x_x_x_eop;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle25
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:925922977;
        mso-list-template-ids:-1139247016;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal>Hi Chris,<o:p></o:p></p><p class=MsoNormal>Apologies for the late reply. I noticed that the current proposed language has no guidance regarding RSA exponents. I think it would be useful to specify the expectations in this regard (whether the CA must check for weak keys for all key lengths and exponent combinations accepted/supported by the CA, or if checking weak key lists for only exponents 3 and 65537 is sufficient, etc.).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,<o:p></o:p></p><p class=MsoNormal>Corey<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b>From:</b> Servercert-wg <servercert-wg-bounces@cabforum.org> <b>On Behalf Of </b>Christopher Kemmerer via Servercert-wg<br><b>Sent:</b> Friday, October 15, 2021 10:33 AM<br><b>To:</b> Rob Stradling <rob@sectigo.com>; Dimitris Zacharopoulos (HARICA) <dzacharo@harica.gr>; CA/B Forum Server Certificate WG Public Discussion List <servercert-wg@cabforum.org>; Jacob Hoffman-Andrews <jsha@letsencrypt.org><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys<o:p></o:p></p></div></div><p class=MsoNormal><o:p> </o:p></p><p style='margin-bottom:12.0pt'>Thank you, Rob, and shall watch for that update. Meanwhile we are doing a final-final pass through our draft language for clarity and will send it early next week.<o:p></o:p></p><p style='margin-bottom:12.0pt'>Chris K<br><br>Meanwhile, we've cycled our draft language through  another review and have made IIRC only one or two minor edits for clarity (h/t BenW).<br><br><o:p></o:p></p><div><p class=MsoNormal>On 10/14/2021 9:49 AM, Rob Stradling wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Today I rediscovered that I'd previously generated the RSA-8192 blocklists back in December 2009, and that they're still available at <a href="https://secure.sectigo.com/debian_weak_keys/">https://secure.sectigo.com/debian_weak_keys/</a>.  When I compared the old and new RSA-8192 blocklists, I found that ~0.8% of the "rnd" keys are different.  It looks like, for reasons unknown, the "OpenSSL random file state" misbehaved occasionally over the 8 month run that ended recently.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>I'll report back once I've regenerated and verified the problematic keys.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id=divRplyFwdMsg><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Rob Stradling <a href="mailto:rob@sectigo.com"><rob@sectigo.com></a><br><b>Sent:</b> 23 September 2021 19:17<br><b>To:</b> Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a>; Dimitris Zacharopoulos (HARICA) <a href="mailto:dzacharo@harica.gr"><dzacharo@harica.gr></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a>; Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a>; Rob Stradling <a href="mailto:rob@sectigo.com"><rob@sectigo.com></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> BTW, in case it helps, I'm about half way through generating a full set of RSA-8192 Debian weak keys, which (when complete) I'll add to the <a href="https://github.com/CVE-2008-0166">https://github.com/CVE-2008-0166</a> repositories.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>It took nearly 8 months (using just a single core of a fairly modest CPU), but it finally finished!  Repositories updated.<o:p></o:p></span></p></div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Servercert-wg <a href="mailto:servercert-wg-bounces@cabforum.org"><servercert-wg-bounces@cabforum.org></a> on behalf of Rob Stradling via Servercert-wg <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a><br><b>Sent:</b> 13 May 2021 15:42<br><b>To:</b> Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a>; Dimitris Zacharopoulos (HARICA) <a href="mailto:dzacharo@harica.gr"><dzacharo@harica.gr></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a>; Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> iii) All RSA Public Key lengths supported by the CA up to and including 4096 bits;<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> ...<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> For Debian weak keys not covered above, the CA SHALL take actions to minimize the probability of certificate issuance. <o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Hi Christopher.  What sort of "actions" are envisaged here?  If a CA is processing a certificate request that contains a (for example) RSA-4088 public key (i.e., a key size not covered by an available Debian weak list), either the CA is going to issue the cert or they're not.  What, concretely, does "minimize the probability of certificate issuance" actually mean?<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Why not remove that "SHALL" sentence and change point iii to: "<span style='background:white'>iii) All RSA Public Key lengths supported by the CA." ?</span><o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>BTW, in case it helps, I'm about half way through generating a full set of RSA-8192 Debian weak keys, which (when complete) I'll add to the <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217074727%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=zl%2BZrS8yTo8rthH5xmpwlnX3SpoRMsdVE%2FclqalKoQc%3D&reserved=0">https://github.com/CVE-2008-0166</a> repositories.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a><br><b>Sent:</b> 13 May 2021 15:12<br><b>To:</b> Rob Stradling <a href="mailto:rob@sectigo.com"><rob@sectigo.com></a>; Dimitris Zacharopoulos (HARICA) <a href="mailto:dzacharo@harica.gr"><dzacharo@harica.gr></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a>; Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>Hello,</span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>We deeply appreciate the useful discussion in this thread regarding this issue. We especially applaud the efforts of HARICA and Sectigo to independently generate more comprehensive lists of potentially affected Debian weak keys. As Rob Stradling observed through his crt.sh research (20210107, <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgist.github.com%2Frobstradling%2Fa5590b6a13218fe561dcb5d5c67932c5&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217084682%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KxcClfliIPLheETc%2FQV480nHSRbTo%2FoEK3XgUAk4Yto%3D&reserved=0">https://gist.github.com/robstradling/a5590b6a13218fe561dcb5d5c67932c5</a>) of the five most utilized algorithm/key size populations, two are ECC (so not impacted by the Debian weak key issue) and three are RSA (2048, 4096, and 3072 bit length, in that order).</span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>As of their most recent messages it appears that these two organizations have independently generated comprehensive lists identifying all RSA-2048 and -4096 bit length keys. (We understand RSA-3072 length keys are also available.) This offers the possibility that complete lists, if accepted as authoritative, could be accessed by the community to help prevent exploitation of this vulnerability.</span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>It was also noted (by the representative from Let's Encrypt) that the ROCA vulnerability is presently identified through use of a tool supported externally. It was suggested that this resource be archived in a manner that ensures availability. (Our proposed language points to "<a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcrocs-muni%2F&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217084682%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=PmKVyPxenhak%2B%2BxkCP7%2FhbHQJ805g%2FYcuYLGz0XxQXU%3D&reserved=0">https://github.com/crocs-muni/</a>roca or equivalent.")</span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>We think our present ballot language (reproduced at the end of this message) provides appropriately focused guidance to CAs. If available, we'd certainly like to also see the HARICA/Sectigo lists (which CAs could use for the majority of Debian weak key use cases) captured somewhere in this ballot language. We are agnostic as to 1) where exactly these resources might be maintained and 2) where this ballot places directions to these resources - an annex to the current requirements, a separate CA/BF guidance document or within Sections 4.9.1.1/6.1.1.3.</span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>Our intent is to ensure that 1) clear, accurate guidance on CA expectations is provided and 2) any resources assisting CAs in meeting these expectations are fully described, publicly available (somewhere) and with reliable links provided. The language below, we feel, meets the first requirement. We'd appreciate input on how to best meet the second. (Note that SSL.com would be happy to support the community by hosting any of these as publicly accessible resources, whether solo or alongside other organizations.)</span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>Chris K</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='margin-bottom:12.0pt;vertical-align:baseline'><span class=xxxnormaltextrun>SSL.com</span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>=====</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>--- Motion Begins ---</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>This ballot modifies the “Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates” as follows, based on Version 1.7.4:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>Proposed ballot language:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun><b>4.9.1.1 Reasons for Revoking a Subscriber Certificate</b></span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>Replace:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>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 <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.debian.org%2FSSLkeys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217094639%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=BFBuQxgO8FcG50FeHeHSmrnJjZ6jQHddP5iqg2cwc%2Bw%3D&reserved=0">https://wiki.debian.org/SSLkeys</a>)</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>With:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>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)).</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>---</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun><b>6.1.1.3. Subscriber Key Pair Generation</b></span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>Replace:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>The CA SHALL reject a certificate request if one or more of the following conditions are met:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>1. The Key Pair does not meet the requirements set forth in Section 6.1.5 and/or Section 6.1.6;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>2. There is clear evidence that the specific method used to generate the Private Key was flawed;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>3. The CA is aware of a demonstrated or proven method that exposes the Applicant's Private Key to compromise;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>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;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>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 <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.debian.org%2FSSLkeys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217104593%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=PHaY1K1EU0Kp735Bq9LwL0upowvpAHUqY7VLm7hwfog%3D&reserved=0">https://wiki.debian.org/SSLkeys</a>).</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>With:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>The CA SHALL reject a certificate request if one or more of the following occurs:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>1) The requested Public Key does not meet the requirements set forth in Sections 6.1.5 and/or 6.1.6;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>2) The CA is aware of a demonstrated or proven method that exposes the Subscriber's Private Key to compromise;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>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;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>4) The Public Key corresponds to an industry demonstrated weak Private Key, in particular:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>a) In the case of ROCA vulnerability, the CA SHALL reject keys identified by the tools available at <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcrocs-muni%2Froca&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217104593%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=IbahtE1nhkv01V6tdRcL3%2Be3r3pmow0T7UVY6rWGvRk%3D&reserved=0">https://github.com/crocs-muni/roca</a> or equivalent.</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>b) In the case of Debian weak keys (<a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.debian.org%2FSSLkeys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217114550%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=ivYda%2Bw1kFPj2gIcjGeq%2FZLsoi3GDOPiBn%2FnHZ8kflM%3D&reserved=0">https://wiki.debian.org/SSLkeys</a>), the CA SHALL reject at least keys generated by the flawed OpenSSL version with the combination of the following parameters:</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>i) Big-endian 32-bit, little-endian 32-bit, and little-endian 64-bit architecture;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>ii) Process ID of 0 to 32767, inclusive;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>iii) All RSA Public Key lengths supported by the CA up to and including 4096 bits;</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>iv) rnd, nornd, and noreadrnd OpenSSL random file state.</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>For Debian weak keys not covered above, the CA SHALL take actions to minimize the probability of certificate issuance.</span><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxeop> </span><o:p></o:p></p></div><div><p class=xxxparagraph style='vertical-align:baseline'><span class=xxxnormaltextrun>--- Motion Ends ---</span><o:p></o:p></p></div><div><p class=MsoNormal>On 1/18/2021 3:34 PM, Rob Stradling wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> I'm mid-way through generating the RSA-4096 keys.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>The RSA-4096 private keys and blocklists are now in <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fprivate_keys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217114550%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KWBNwIlyUPcvrvaKg8iPgBQ5FI9pPMluRzaew4zPd%2BI%3D&reserved=0">https://github.com/CVE-2008-0166/private_keys</a> and <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fopenssl_blocklists&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217124508%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=3fRkMQs0eFWpwRX6mKOntrHQGooglWuu03LB49ERhCQ%3D&reserved=0">https://github.com/CVE-2008-0166/openssl_blocklists</a>.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>The RSA-2048 and RSA-4096 private keys in <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FHARICA-official%2Fdebian-weak-keys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217124508%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=UGwMkOD1q1jxIXPHuJJUsCIDwLSDgvWj0hRnu7y1fiY%3D&reserved=0">https://github.com/HARICA-official/debian-weak-keys</a> (which only covers 2 of the 3 word size / endianness combinations) are identical to the equivalents in <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fprivate_keys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217134467%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=DfRGy7XTHeCCr%2Bvg91ai%2BwJgIJv3cDiZnaF87DjYCHs%3D&reserved=0">https://github.com/CVE-2008-0166/private_keys</a>.<o:p></o:p></span></p></div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_x_x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Dimitris Zacharopoulos (HARICA) <a href="mailto:dzacharo@harica.gr"><dzacharo@harica.gr></a><br><b>Sent:</b> 14 January 2021 18:39<br><b>To:</b> Rob Stradling <a href="mailto:rob@sectigo.com"><rob@sectigo.com></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a>; Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a>; Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p><div><p class=MsoNormal>On 14/1/2021 12:30 π.μ., Rob Stradling wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Thanks Dmitris.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>So far I've generated the RSA-2048 and RSA-3072 keys using <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fkey_generator&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217134467%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=i8tJYB5eeKFqK1IW7fRfUuZYkU7a0nsa53tO3n2Oe2Y%3D&reserved=0">https://github.com/CVE-2008-0166/key_generator</a> and uploaded them to <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fprivate_keys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217144421%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=gMWLE%2FC%2FADXIuHQgkf%2BdZaMDM2Fl2p2kY%2FDSHu4STxY%3D&reserved=0">https://github.com/CVE-2008-0166/private_keys</a>, and I've generated the corresponding blocklists and uploaded them to <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166%2Fopenssl_blocklists&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217154377%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=bb31TV4W%2FDDFp8OmDvOCvUFCpFtHLgJvDzYtQ7aDu2w%3D&reserved=0">https://github.com/CVE-2008-0166/openssl_blocklists</a>.  My RSA-2048 blocklists exactly match the ones from the original Debian openssl-blacklist package.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>I'm mid-way through generating the RSA-4096 keys.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Let's compare keys when we're both done.  </span><span style='font-size:12.0pt;font-family:"Segoe UI Emoji",sans-serif;color:black'>🙂</span><span style='font-size:12.0pt;color:black'><o:p></o:p></span></p></div></blockquote><p class=MsoNormal><br>Certainly :-) the RSA-2048 keys already match the fingerprints from the openssl-blacklist Debian package.<br><br>We did this work several months ago but never found the time to make it publicly available. We managed to break down the big task and run jobs in parallel which made things a bit more interesting.<br><br>It's nice we did this independently, I guess it increases the accuracy level of the resulted keys :)<br><br><br>Cheers,<br>Dimitris.<br><br><br><o:p></o:p></p><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_x_x_x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Dimitris Zacharopoulos (HARICA) <a href="mailto:dzacharo@harica.gr"><dzacharo@harica.gr></a><br><b>Sent:</b> 13 January 2021 21:49<br><b>To:</b> Rob Stradling <a href="mailto:rob@sectigo.com"><rob@sectigo.com></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a>; Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a>; Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>Dear friends,<br><br>HARICA has generated the weak keys (RSA 2048 and 4096 bit lengths) from the vulnerable openssl package. We will generate 3072 bit keys as well and add them soon. The methodology is described in the following GitHub repo along with the produced keys:<o:p></o:p></p><ul type=disc><li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo1'><a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FHARICA-official%2Fdebian-weak-keys&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217154377%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=MXJsH%2FmY6leMCDewbsU6JbeeEcem0u5rJu8gk9YdqR8%3D&reserved=0">https://github.com/HARICA-official/debian-weak-keys</a><o:p></o:p></li></ul><p class=MsoNormal style='margin-bottom:12.0pt'>Please review and let us know if you spot any issues or problems with our approach and methodology.<br><br>As always, please use other people's work at your own risk.<br><br><br>Dimitris.<o:p></o:p></p><div><p class=MsoNormal>On 7/1/2021 2:25 μ.μ., Rob Stradling via Servercert-wg wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>I've used crt.sh to produce a survey of key algorithms/sizes in currently unexpired, publicly-trusted server certificates:<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgist.github.com%2Frobstradling%2Fa5590b6a13218fe561dcb5d5c67932c5&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217164330%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=xjks4ZUMTP0hJ2FfET89jZDX1t9OjjyKvU7aMtOWk8A%3D&reserved=0">https://gist.github.com/robstradling/a5590b6a13218fe561dcb5d5c67932c5</a><o:p></o:p></span></p></div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>The four most popular choices are no surprise: RSA-2048, P-256, RSA-4096, and P-384.  openssl-blacklist covers RSA-2048 and RSA-4096, and ECC keys are implicitly not Debian weak keys.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Fifth most popular is RSA-3072, with over 3 million unexpired, publicly-trusted server certs.  openssl-blacklist doesn't cover RSA-3072, but ISTM that this is a key size that CAs will want to permit.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Some of the lesser used key sizes are mostly likely due to Subscriber typos (e.g., 2408 and 3048 were probably intended to be 2048, 4048 was probably intended to be either 2048 or 4096, etc), but some of the other ones look like they were deliberately chosen (e.g., 2432 is 2048+384).  Is it worth generating Debian weak keys/blocklists for any of these key sizes?<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fnvlpubs.nist.gov%2Fnistpubs%2FSpecialPublications%2FNIST.SP.800-57pt1r5.pdf&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217164330%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=8ViOp4z45yyVKMH87lrF0fFZ80huwEtPxw9QyRRzs5I%3D&reserved=0">https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt1r5.pdf</a> (Table 4, p59) permits RSA-2048 until the end of 2030, whereas <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.sogis.eu%2Fdocuments%2Fcc%2Fcrypto%2FSOGIS-Agreed-Cryptographic-Mechanisms-1.2.pdf&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217174300%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=jloaFDmapMElTMrMjq4cq%2BdKKB81F18ieo%2FGdeMeifI%3D&reserved=0">https://www.sogis.eu/documents/cc/crypto/SOGIS-Agreed-Cryptographic-Mechanisms-1.2.pd f</a> permits RSA-2048 only until the end of 2025.  It is of course possible that quantum computing will render RSA obsolete before Subscribers need to think about which larger RSA keysize they want to migrate to; however, it seems prudent to also plan for the possibility that RSA will survive and that some other RSA keysize(s) might become popular.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_x_x_x_x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Servercert-wg <a href="mailto:servercert-wg-bounces@cabforum.org"><servercert-wg-bounces@cabforum.org></a> on behalf of Rob Stradling via Servercert-wg <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a><br><b>Sent:</b> 06 January 2021 16:08<br><b>To:</b> Jacob Hoffman-Andrews <a href="mailto:jsha@letsencrypt.org"><jsha@letsencrypt.org></a>; Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Jacob wrote:<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> Lastly, I think we should archive openssl-blacklist, and include in the BRs: "A CA may reject the full set of Debian weak keys by rejecting this superset of the Debian weak keys:<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>><o:p> </o:p></span></p><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> - All RSA public keys with modulus lengths other than 2048 or 4096, and<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> - All RSA public keys with exponents other than 65537, and<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Hi Jacob.  65537 (aka 0x10001) is hard-coded here...<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black;background:white'><br><br></span><span style='font-size:12.0pt;color:black'><o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black;background:white'><a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fopenssl%2Fopenssl%2Fblob%2FOpenSSL_0_9_8f%2Fapps%2Freq.c%23L768&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217174300%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=4cbYj85QRS4EJCOa3h%2FUeQolfCDnwt%2Bvu4fOrixIK10%3D&reserved=0">https://github.com/openssl/openssl/blob/OpenSSL_0_9_8f/apps/req.c#L768</a><br><br></span><span style='font-size:12.0pt;color:black'><o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>Would it therefore be fair to say that keys with public exponents other than 65537 are implicitly <u>not</u> Debian weak keys?<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><p class=MsoNormal><span style='font-size:12.0pt;color:black'>> - All RSA public keys that are detected as vulnerable by the openssl-vulnkey program in the openssl-blacklist package version 0.5-3 (see addendum), or an equivalent program."<o:p></o:p></span></p></div></div><div><div><p class=MsoNormal><span style='font-size:12.0pt;color:black'><o:p> </o:p></span></p></div><div class=MsoNormal align=center style='text-align:center'><hr size=2 width="98%" align=center></div><div id="x_x_x_x_x_x_divRplyFwdMsg"><p class=MsoNormal><b><span style='color:black'>From:</span></b><span style='color:black'> Servercert-wg <a href="mailto:servercert-wg-bounces@cabforum.org"><servercert-wg-bounces@cabforum.org></a> on behalf of Jacob Hoffman-Andrews via Servercert-wg <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a><br><b>Sent:</b> 12 December 2020 02:21<br><b>To:</b> Christopher Kemmerer <a href="mailto:chris@ssl.com"><chris@ssl.com></a>; CA/B Forum Server Certificate WG Public Discussion List <a href="mailto:servercert-wg@cabforum.org"><servercert-wg@cabforum.org></a><br><b>Subject:</b> Re: [Servercert-wg] SCXX Ballot proposal: Debian Weak keys</span> <o:p></o:p></p><div><p class=MsoNormal> <o:p></o:p></p></div></div><div><div style='border:solid black 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt'><p class=MsoNormal style='line-height:12.0pt;background:#FAFA03'><span style='font-size:10.0pt;color:black'>CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><div><p class=MsoNormal>Thanks for your continued efforts to improve this part of the BRs! Let's Encrypt is in theory interested in endorsing, but I think it still needs a bit of work. Thanks for incorporating my most recent comments on endianness and word size vs 11 platforms.<br><br>Goals: We want CAs to consistently not issue certificates for weak keys in general, and also in the specific case of Debian and ROCA keys. We want the definition of Debian and ROCA keys to be clear and actionable for as long as possible - say, at least twenty years.<br><br>We have three ways to specify Debian and ROCA keys: With a list, with a tool, or with an algorithm*. The original revision of this ballot proposed to use a list (<a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.cabforum.org%2Fpipermail%2Fservercert-wg%2F2020-April%2F001821.html&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217184247%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=7Ty5ye8OuF1cEUf%2BDVK8BqWCoQixa%2BLEQXKPGgq8LqE%3D&reserved=0">https://lists.cabforum.org/pipermail/servercert-wg/2020-April/001821.html</a>). There were two objections:<br><br> - The list (openssl-blacklist) is subject to change or removal.<br> - The list only covers 2048 and 4096 bit keys.<br><br>The current draft proposes specifying a tool for ROCA (<a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcrocs-muni%2Froca&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217184247%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=lYRVn%2BlfCxc%2FBEY73QKiH0hQYOVDUDNqJwvWg02TxRg%3D&reserved=0">https://github.com/crocs-muni/roca</a>) and an algorithm for Debian keys.<br><br>The ROCA tool is subject to change or removal, just like the openssl-blacklist package. I propose we instead specify ROCA detection in terms of the paper (<a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcrocs.fi.muni.cz%2Fpublic%2Fpapers%2Frsa_ccs17&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217194202%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=WOygxUjpjBXpHmDwEa5FlrzVOQ%2BGVtuzCvIaYLcVzZs%3D&reserved=0">https://crocs.fi.muni.cz/public/papers/rsa_ccs17</a>) and ask for permission from the authors to archive an unchanging copy as an addendum to the BRs.<br><br>For Debian keys, what looks like an algorithm specification is actually a tool + algorithm specification. The tool is "OpenSSL 0.9.8c-1 up to versions before 0.9.8g-9 on Debian-based operating systems" (per CVE-2008-01666 - <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcve.mitre.org%2Fcgi-bin%2Fcvename.cgi%3Fname%3D2008-0166&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217204157%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=k8TzKB9yaN9M3szAvvYKFwb7SWaAIZtmbh6kTDpRUWI%3D&reserved=0">https://cve.mitre.org/cgi-bin/cvename.cgi?name=2008-0166</a>). To ensure an unchanging copy of that, we should archive 3 copies of Debian, for the 3 word size + endianness combinations.<br><br>The algorithm also needs an additional line: "v) using the command 'openssl req -nodes -subj / -newkey rsa:<Public Key length>'" (adapted from <a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsources.debian.org%2Fdata%2Fmain%2Fo%2Fopenssl-blacklist%2F0.5-3%2Fexamples%2Fgen_certs.sh&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217204157%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=mJbnosdyxAHvzj1zOAcJ7ippJu6sDDNl5fNfg0nEi98%3D&reserved=0">https://sources.debian.org/data/main/o/openssl-blacklist/0.5-3/examples/gen_certs.sh</a>). Other tools that linked OpenSSL, like openvpn and openssh, generated different sets of keys. We can include or exclude openvpn and openssh keys, but should thoroughly specify.<br><br>Lastly, I think we should archive openssl-blacklist, and include in the BRs: "A CA may reject the full set of Debian weak keys by rejecting this superset of the Debian weak keys:<br><br> - All RSA public keys with modulus lengths other than 2048 or 4096, and<br> - All RSA public keys with exponents other than 65537, and<br> - All RSA public keys that are detected as vulnerable by the openssl-vulnkey program in the openssl-blacklist package version 0.5-3 (see addendum), or an equivalent program."<br><br>My reasoning: Given the difficulty of correctly setting up old Debian versions and generating weak keys for sizes that are not part of openssl-blacklist, I expect most CAs will choose this path. Given that, we should just say what we mean: the pregenerated list is fine if you restrict key sizes, but you don't *have* to restrict key sizes, so long as you have an alternate method to ensure you're not issuing for Debian weak keys at other sizes.<br><br>*I'm considering specifying an algorithm to be functionally equivalent to specifying an "outcome," though I recognize this may be too hand-wavy.<o:p></o:p></p></div></div></div></div></div></div></div><p class=MsoNormal><br><br><o:p></o:p></p><pre>_______________________________________________<o:p></o:p></pre><pre>Servercert-wg mailing list<o:p></o:p></pre><pre><a href="mailto:Servercert-wg@cabforum.org">Servercert-wg@cabforum.org</a><o:p></o:p></pre><pre><a href="https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.cabforum.org%2Fmailman%2Flistinfo%2Fservercert-wg&data=04%7C01%7Crob%40sectigo.com%7C149793a77768442bd12008d97ebe5652%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637680178217214120%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=6xVg5WENHqAmHV5%2B0vMsLYGqlVkQ3pR92qrJe9G9gag%3D&reserved=0">https://lists.cabforum.org/mailman/listinfo/servercert-wg</a><o:p></o:p></pre></blockquote><p class=MsoNormal><o:p> </o:p></p></div></div></div></blockquote><p class=MsoNormal><o:p> </o:p></p></div></div></div></blockquote></div></div></div></div></div></div></div></blockquote></div></body></html>