summaryrefslogtreecommitdiffstats
path: root/openpgp/src/crypto/backend/rust/symmetric.rs
AgeCommit message (Collapse)Author
2023-05-03openpgp: Update rust-crypto dependenciesNeal H. Walfield
- Note: `x25519-dalek` is broken. It depends on zeroize `=1.3`, but crates like rsa depend on newer versions of zeroize. - See https://github.com/WebAssembly/wasi-crypto/issues/63 , https://github.com/dalek-cryptography/x25519-dalek/issues/92 . - Resolve this by using `x25519-dalek-ng`, which fixes this issue. This is a common workaround, and is also used by, for instance OpenMLS: https://github.com/openmls/openmls/blob/3ff090fd4881cb796d4688f7f174929a7521dbf1/openmls_rust_crypto/README.md?plain=1#L3 - Fixes #910.
2023-03-24openpgp: Provide a common public SymmetricAlgorithm::is_supported.Justus Winter
2023-03-24openpgp: Hardcode symmetric algorithm key and block sizes.Justus Winter
- Previously, every crypto backend had to implement these methods. Instead, implement them just once and hard code the lengths. Anchor them using the values from the crypto backends, if available. - Fixes #966.
2023-03-24openpgp: Use the correct (3TDEA) variant of 3DES in RustCrypto.Justus Winter
- Previously, we incorrectly selected the 2TDEA variant that uses 112-bit keys.
2021-10-05openpgp: Add a RustCrypto backend.Nikhil Benesch
- This adds a cryptographic backend based on the RustCrypto crates. The backend is marked as experimental, as the RustCrypto crates' authors state that they have not been audited and may not perform computations in constant time. Nevertheless, it may be useful in certain environments, e.g. WebAssembly. - The backend implements RSA, EdDSA and ECDH over Curve25519, IDEA, 3DES, CAST5, Blowfish, AES, Twofish, EAX, MD5, SHA1, RipeMD160, and the SHA2 family. - Notably missing are DSA, ElGamal, and ECDSA and ECDH over the NIST curves. - See #333.