diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f2a50d..fd55583 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,32 @@ # Changelog +## 2.0.0-pre.1 (March 15, 2022) + +* Synced implementation with draft-irtf-cfrg-opaque-07 +* Split out VOPRF implementation into its own crate +* Added support for running the API without performing + allocations +* Revamped the way the Group trait was used, so as to be more + easily extendable to other groups +* Added support for p256 as the group and x25519 as the key exchange group +* Added common traits for each public-facing struct, including serde support + +## 1.2.0 (October 7, 2021) + +* Added explicit support for the thumbv6m-none-eabi target (no-std) + +## 1.1.0 (August 18, 2021) + +* Updated dependencies and bumped MSRV to 1.51 +* Added no_std support + +## 1.0.0 (July 19, 2021) + +* Branched from v0.5.0 +* Various security improvements: non-zero scalars, zeroizing on drop, + constant-time operations, reflected value check, and adding an + i2osp error condition + ## 0.6.0 (June 30, 2021) * Synced implementation with draft-irtf-cfrg-opaque-05, which changes diff --git a/README.md b/README.md index 9465a5d..0476bdb 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ Installation Add the following line to the dependencies of your `Cargo.toml`: ``` -opaque-ke = "0.6.0" +opaque-ke = "2.0.0-pre.1" ``` ### Minimum Supported Rust Version @@ -40,7 +40,7 @@ Resources --------- - [OPAQUE academic publication](https://eprint.iacr.org/2018/163.pdf), including formal definitions and a proof of security -- [draft-irtf-cfrg-opaque-05](https://www.ietf.org/archive/id/draft-irtf-cfrg-opaque-05.html), containing a detailed (byte-level) specification for OPAQUE +- [draft-irtf-cfrg-opaque-07](https://www.ietf.org/archive/id/draft-irtf-cfrg-opaque-07.html), containing a detailed (byte-level) specification for OPAQUE - ["Let's talk about PAKE"](https://blog.cryptographyengineering.com/2018/10/19/lets-talk-about-pake/), an introductory blog post written by Matthew Green that covers OPAQUE - [opaque-wasm](https://github.com/marucjmar/opaque-wasm), a WebAssembly package for this library diff --git a/src/envelope.rs b/src/envelope.rs index 468e924..1531fda 100644 --- a/src/envelope.rs +++ b/src/envelope.rs @@ -57,11 +57,11 @@ impl TryFrom for InnerEnvelopeMode { } } -/// This struct is an instantiation of the envelope as described in +/// This struct is an instantiation of the envelope. /// /// Note that earlier versions of this specification described an implementation /// of this envelope using an encryption scheme that satisfied random-key -/// robustness (). +/// robustness. /// The specification update has simplified this assumption by taking an /// XOR-based approach without compromising on security, and to avoid the /// confusion around the implementation of an RKR-secure encryption. diff --git a/src/lib.rs b/src/lib.rs index 6038bbf..1c4d457 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -8,7 +8,7 @@ //! An implementation of the OPAQUE asymmetric password authentication key //! exchange protocol //! -//! Note: This implementation is in sync with [draft-irtf-cfrg-opaque-05](https://www.ietf.org/archive/id/draft-irtf-cfrg-opaque-05.html), +//! Note: This implementation is in sync with [draft-irtf-cfrg-opaque-07](https://www.ietf.org/archive/id/draft-irtf-cfrg-opaque-07.html), //! but this specification is subject to change, until the final version //! published by the IETF. //!