What's Changed
The following only lists the changes from the previous v6 prerelease.
For more context about the crypto-refresh changes introduced by OpenPGP.js v6, refer to the changelog of the initial prerelease.
Main non-breaking changes:
- Add
config.parseAEADEncryptedV4KeysAsLegacy
to support decrypting AEAD-encrypted v4 keys from OpenPGP.js v5 or older (#1672) - Skip key validation for keys encrypted with non-legacy AEAD mechanism (#1713)
- Add sha3_256 and sha3_512 to preferred algorithms in newly generated keys (#1696)
- Relax constraints for UserID email address validity, to accept domains such as
@localhost
(#1641) - Use WebCrypto for AES-KW, drop AES_ECB dependency (#1724)
- Use the Compression Stream API when available (#1717)
- Import legacy ciphers (CAST5, TwoFish, BlowFish, DES) only on demand, to optimise lightweight build (#1723)
- Node: drop asn1.js dependency (#1722)
Breaking changes:
- Throw if WebCrypto API is not available (before, it was already required, but it would not cause issues with operations that did not rely on it, such as RSA encryption)
- Drop support for native Node Readable stream: require passing Node Web Streams (#1716). Utils to convert from and to Web Streams in Node are available from v17.
- Ensure primary key meets strength and algo requirements when encrypting/verifying/signing using subkeys (#1719)
- Rename NIST curves to disambiguate the names with the Brainpool curves (#1721).:
- the identifiers
enums.curve.p256
,.p384
,.p521
are now marked as@deprecated
(to be dropped in the main release) - the new identifiers are, respectively:
enums.curve.nistP256
,.nistP384
,.nistP521
. - the corresponding values have been changed from
'p256'
,'p384'
,'p521'
to'nistP256'
,'nistP384'
,'nistP521'
(these new values are expected bygenerateKey
, for theoptions.curve
argument).
- the identifiers
- Remove
config.deflateLevel
(#1717)
Full Changelog: v6.0.0-alpha.0...v6.0.0-alpha.1