[v6] crypto-refresh: add support for Ed448/X448#1625
Conversation
crypto-refresh: add support for Ed488/X448crypto-refresh: add support for Ed448/X448
9115132 to
23d2d52
Compare
|
What is your policy with regards to browser versions? I notice you support Safari 13. The browser is used by 0.38%+0.77% of users globally, as per caniuse. v13 was last updated with 13.1.2 on July 15, 2020 - around 3 years ago. Safari 13 has following vulnerabilities:
Also, the bn.js shim has likely not been audited and fuzzed properly. |
|
Hey @paulmillr , we've confirmed with internal stats that around 1% of our end users are on Safari 13 (desktop or mobile), and that's too large a chunk for us to drop support, considering that BigInt cannot be polyfilled. Hopefully the usage goes down enough in the next year and we can require BigInt in OpenPGP.js v7. As for bn.js, it's a library that OpenPGP.js has used for a while, both directly and as part of elliptic.js, and while this is certainly no guarantee of security, we are positive about its stability. Unlike previous versions of OpenPGP.js, once we switch to noble-curves, bn.js will only be used as fallback for legacy browsers and the Brainpool curves. Plus, thanks to the design of the BigInteger interface, if we find a better fallback library it'll be easy to switch out bn.js for that. |
|
Understood. Thanks for clarification. |
00794d4 to
2a3b7b0
Compare
crypto-refresh: add support for Ed448/X448crypto-refresh: add support for Ed448/X448
795b4ba to
bde8d11
Compare
…atures Detect extra bytes in secret key material, as well as missing bytes in other parameters.
This addition is backwards compatible. We offer no way to generate v4 keys in the new format, since existing implementations might not support them.
TODO:
crypto-refresh: add support for new Ed25519/X25519 keys, signatures and messages #1620bigint)add key generation (in generateKey)done in [v6]crypto-refresh: support generating Curve448 and Curve25519 keys (new format) #1676@openpgp/noble-curvesadd Node Crypto support(TODO in separate PR, as it's not a priority nor a breaking change)