All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support secp256k1-based DHKEM with libsecp256k1 C bindings via rust-bitcoin's
secp256k1
crate. Enable it using thesecp
feature.
- Removed
k256
,x25519
,p256
,p384
, andp521
features - Removed AesGcm AEAD schemes since bitcoin uses only ChaCha20Poly1305
- Added
Serializable::write_exact
so serialization requires less stack space - Added support for the P-521 curve
- Constrained
Aead::AeadImpl
to beSend + Sync
- Bumped
subtle
dependency and removedbyteorder
dependency
- Removed all impls of
serde::{Serialize, Deserailize}
from crate. See wiki for migration instructions.
- Removed the redundant re-export of the first encapsulated key type as
kem::EncappedKey
- Updated
x25519-dalek
to 2.0 - Updated
subtle
to 2.5
- Added
alloc
feature and feature-gated theopen()
andseal()
methods behind it
- Bumped MSRV from 1.56.1 (
59eed8a2a
2021-11-01) to 1.57.0 (f1edd0429
2021-11-29) - Updated dependencies and weakened
zeroize
dependency from>=1.3
to just^1
- Improved documentation for the AEAD
export()
method and the KDFlabeled_expand()
method
- Refactored some internals so end users can theoretically define their own KEMs. See PR #27.
- Bumped MSRV from 1.51.0 (
2fd73fabe
2021-03-23) to 1.56.1 (59eed8a2a
2021-11-01) - Updated dependencies