Releases: openpgpjs/openpgpjs
Releases · openpgpjs/openpgpjs
v5.0.0-2
This is a prerelease of v5.0.0. The full changelog since OpenPGP.js v4 can be found here. The changelog since v5.0.0-1 is:
- Remove
Key.prototype.encrypt
andKey.prototype.decrypt
in favor ofopenpgp.encryptKey
andopenpgp.decryptKey
(#1285) - Fix encoded length in unencrypted v5 secret key packets (#1278)
- Add
expectSigned
option toopenpgp.decrypt
andopenpgp.verify
(#1275) - Fix streaming verification example in README (#1269)
- Fix createMessage return type in type definitions (#1276)
- Test type definitions in Continuous Integration
- Disallow passing streams to
readKey[s]
,readSignature
andreadCleartextMessage
- Remove top-level streaming options, and only return a stream if a stream was passed
- Replace
Message.fromText
andMessage.fromBinary
withcreateMessage
, and replaceCleartextMessage.fromText
withcreateCleartextMessage
- Fetch Streams ponyfill on demand in lightweight build
- Internally use ArrayStreams instead of real streams when not streaming
- Use consistent name casing (#1268)
- Use PascalCase for classes (with uppercase acronyms)
- Use camelCase for function and variables (first word/acronym is always lowercase, otherwise acronyms are uppercase)
- Make the packet classes'
tag
propertiesstatic
- Add
config.rejectPublicKeyAlgorithms
(#1264)- Default to disallowing the use of ElGamal and DSA for verifying and signing or encrypting new messages
- When verifying a message, if the verification key is not found or too weak, the corresponding
signature
will havesignature.valid=false
(instead ofsignature.valid=null
);signature.error
will explain whether the key was missing/too weak/etc
- Take
config.minRsaBits
into account when signing, verifying and encrypting messages, not just on key generation - Drop support for verification of detached cleartext signatures (#1265)
- Add
key.write()
and update type definitions (#1267) - Simplify algorithm preference selection and normalize config names (#1262)
- Rename
config.compression
toconfig.preferredCompressionAlgorithm
- Rename
config.encryptionCipher
toconfig.preferredSymmetricAlgorithm
- Rename
config.preferHashAlgorithm
toconfig.preferredHashAlgorithm
- Rename
config.aeadMode
toconfig.preferredAeadAlgorithm
- When encrypting to public keys, the compression/aead/symmetric algorithm is selected by:
- taking the preferred algorithm specified in config, if it is supported by all recipients
- otherwise, taking the "MUST implement" algorithm specified by rfc4880bis
- When encrypting to passphrases only (no public keys), the preferred algorithms from
config
are always used - EdDSA signing with a hash algorithm weaker than sha256 is explicitly disallowed (https://tools.ietf.org/id/draft-ietf-openpgp-rfc4880bis-10.html#section-15-7.2)
- Rename
v5.0.0-1
This is a prerelease of v5.0.0. The full changelog since OpenPGP.js v4 can be found here. The changelog since v5.0.0-0 is:
- Fix unhandled promise rejection when stream-decrypting non-MDC messages (#1260)
- Rename
config.ignoreMdcError
toconfig.allowUnauthenticatedMessages
(#1261) - Do not support creating symmetrically encrypted message packets without integrity protection
- Use
config.aeadProtect
to determine private key encryption mode - Check critical notations during signature verification instead of during parsing (#1259)
- Remove KeyRing class (keyring handling and storage should be handled in the application, as localStorage may not meet the durability requirements of the application, for example)
- Move WKD client to openpgpjs/wkd-client
- Move HKP client to openpgpjs/hkp-client
- Switch packages installed from git to
@openpgp
npm scope - Update web-stream-tools
- Default to empty filename when creating messages
- Update documentation
- Update TypeScript definitions
v5.0.0-0
v4.10.10
v4.10.9
v4.10.8
- Add config option to allow insecure decryption with RSA signing keys (#1148)
- Allow decryption with revoked keys (#1135)
- Support non-human-readable notation values (#983)
- Add test case for unknown binary notations (#1140)
- Add SecretKey.prototype.makeDummy (#1131)
- Use correct algorithm in ECC validation tests
v4.10.7
v4.10.6
v4.10.5
- Faster and more secure, cipher-specific key validation (#1116). Also,
- Validate keys during decryption
- Check binding signatures for decryption keys when decrypting messages
- Do not always fallback on Web Crypto ECC errors
- Add support for advanced WKD lookup (#1115)
- Fix stream-encrypting+signing a message using the Worker (#1112)
- Pass around KDF params as objects (#1104)
- Fix keyId types in JSDoc comments (#1100)
- Also create issuer fingerprint subpacket for v4 keys, not just v5 keys (#1097)