<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">So far a universal voice for removal of the DRBG_RAND APIs.<div class="">I’ll write up an OMC vote.</div><div class=""><br class=""></div><div class=""><br class=""><div class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div>Pauli<br class="">-- <br class="">Dr Paul Dale | Distinguished Architect | Cryptographic Foundations <br class="">Phone +61 7 3031 7217<br class="">Oracle Australia</div><div><br class=""></div></div><br class="Apple-interchange-newline"><br class="Apple-interchange-newline">
</div>
<div><br class=""><blockquote type="cite" class=""><div class="">On 27 Jul 2020, at 6:51 pm, Matt Caswell <<a href="mailto:matt@openssl.org" class="">matt@openssl.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">I'm ok with option 1 (but it will require a vote). I think the<br class="">percentage of our user base that are using the existing API is<br class="">sufficiently close to zero that we're not breaking our compatibility<br class="">promises.<br class=""><br class="">Matt<br class=""><br class=""><br class="">On 27/07/2020 02:08, Dr Paul Dale wrote:<br class=""><blockquote type="cite" class="">The RAND_DRBG (crypto/rand/drbg_lib) APIs are quite some mess and sit<br class="">badly with the move to provider based infrastructure.<br class="">They are definitely being deprecated in master but without more, the<br class="">extra layer of indirection and additional complexity generating random<br class="">numbers will remain.<br class=""><br class="">The option I see are:<br class=""><br class="">1. Remove, rather than deprecate, RAND_DRBG in 3.0.  This is a breaking<br class="">change.<br class="">2. Bypass RAND_DRBG and live with a breaking change (refer:<br class=""><a href="https://github.com/openssl/openssl/pull/12509#pullrequestreview-455396828" class="">https://github.com/openssl/openssl/pull/12509#pullrequestreview-455396828</a>)<br class="">3. Leave things as they currently are in master.<br class=""><br class="">The first two are breaking changes and will require an OMC vote.<br class=""><br class=""><br class="">Some pertinent points:<br class=""><br class="">1. RAND_bytes will continue to work as is — this API is perfect for<br class="">almost everyone.<br class="">2. The RAND_METHOD functionality remains — this allows wholesale<br class="">replacement of OpenSSL’s RNGs if desired.<br class="">3. The name EVP_RAND is the working name and might change — this is not<br class="">relevant to this discussion.<br class="">4. The RAND_DRBG APIs are unlikely to be widely used — they were<br class="">introduced in 1.1.1.  The two users I know of (Akamai and NCP) are both<br class="">fine with them being removed.<br class=""><br class=""><br class="">Thoughts anyone?<br class=""><br class=""><br class="">Pauli<br class="">-- <br class="">Dr Paul Dale | Distinguished Architect | Cryptographic Foundations <br class="">Phone +61 7 3031 7217<br class="">Oracle Australia<br class=""><br class=""></blockquote></div></div></blockquote></div><br class=""></div></body></html>