chore: fix README package name, enable zeroize on crates, rand_core removed for reexport (#4)
Rust CI / cargo fmt (push) Successful in 15s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / cargo clippy (push) Successful in 1m28s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m40s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m28s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m35s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m39s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m38s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 3m8s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m56s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m52s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 3m0s
Publish / publish (release) Successful in 1m5s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m56s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m53s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m1s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m21s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m7s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m3s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m13s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m10s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m31s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m29s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m20s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m8s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m28s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m17s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m56s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m47s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 4m0s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m21s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m58s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 4m3s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m34s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m28s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation () (push) Successful in 1m45s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m53s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m33s
Rust CI / cargo audit (push) Successful in 10s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 29s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 31s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 31s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 21s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 41s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 20s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 29s
Rust CI / cargo fmt (push) Successful in 15s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / cargo clippy (push) Successful in 1m28s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m40s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m28s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m35s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m39s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m38s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 3m8s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m56s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m52s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 3m0s
Publish / publish (release) Successful in 1m5s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m56s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m53s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m1s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m21s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m7s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m3s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m13s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m10s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m31s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m29s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m20s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m8s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m28s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m17s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m56s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m47s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 4m0s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m21s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m58s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 4m3s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m34s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m28s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation () (push) Successful in 1m45s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m53s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m33s
Rust CI / cargo audit (push) Successful in 10s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 29s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 31s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 31s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 21s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 41s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 20s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 29s
Reviewed-on: #4 Co-authored-by: UneBaguette <[email protected]> Co-committed-by: UneBaguette <[email protected]>
This commit was merged in pull request #4.
This commit is contained in:
@@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 1.0.0-pre.1 (July 1, 2026)
|
||||||
|
|
||||||
|
* Fixed README package name
|
||||||
|
* Implement `zeroize` feature on `argon2`, `ed25519-dalek`, `hmac`, `chacha20poly1305` and `sha2`
|
||||||
|
* Removed `rand_core` dependency to use it through `rand` re-export
|
||||||
|
|
||||||
## 1.0.0-pre.0 (June 29, 2026)
|
## 1.0.0-pre.0 (June 29, 2026)
|
||||||
|
|
||||||
Forked from [facebook/opaque-ke](https://github.com/facebook/opaque-ke/) at `4.1.0-pre.2`.
|
Forked from [facebook/opaque-ke](https://github.com/facebook/opaque-ke/) at `4.1.0-pre.2`.
|
||||||
|
|||||||
+7
-7
@@ -14,7 +14,7 @@ name = "opaque-vx"
|
|||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
repository = "https://github.com/vexahub/opaque-vx"
|
repository = "https://github.com/vexahub/opaque-vx"
|
||||||
rust-version = "1.90"
|
rust-version = "1.90"
|
||||||
version = "1.0.0-pre.0"
|
version = "1.0.0-pre.1"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
argon2 = ["dep:argon2"]
|
argon2 = ["dep:argon2"]
|
||||||
@@ -22,7 +22,7 @@ curve25519 = ["dep:curve25519-dalek"]
|
|||||||
default = ["ristretto255", "serde"]
|
default = ["ristretto255", "serde"]
|
||||||
ecdsa = ["dep:ecdsa"]
|
ecdsa = ["dep:ecdsa"]
|
||||||
ed25519 = ["dep:curve25519-dalek", "dep:ed25519-dalek"]
|
ed25519 = ["dep:curve25519-dalek", "dep:ed25519-dalek"]
|
||||||
kem = ["dep:ml-kem", "dep:rand_core"]
|
kem = ["dep:ml-kem"]
|
||||||
ristretto255 = ["dep:curve25519-dalek", "voprf/ristretto255-ciphersuite"]
|
ristretto255 = ["dep:curve25519-dalek", "voprf/ristretto255-ciphersuite"]
|
||||||
serde = [
|
serde = [
|
||||||
"dep:serde",
|
"dep:serde",
|
||||||
@@ -39,6 +39,7 @@ std = ["dep:getrandom", "rand/std"]
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
argon2 = { version = "0.6.0-rc", default-features = false, features = [
|
argon2 = { version = "0.6.0-rc", default-features = false, features = [
|
||||||
|
"zeroize",
|
||||||
"alloc",
|
"alloc",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
curve25519-dalek = { version = "5.0.0-rc", default-features = false, features = [
|
curve25519-dalek = { version = "5.0.0-rc", default-features = false, features = [
|
||||||
@@ -51,6 +52,7 @@ ecdsa = { version = "0.17.0-rc.23", default-features = false, features = [
|
|||||||
"algorithm",
|
"algorithm",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
ed25519-dalek = { version = "3.0.0-rc", default-features = false, features = [
|
ed25519-dalek = { version = "3.0.0-rc", default-features = false, features = [
|
||||||
|
"zeroize",
|
||||||
"digest",
|
"digest",
|
||||||
"hazmat",
|
"hazmat",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
@@ -58,12 +60,11 @@ elliptic-curve = { version = "0.14", features = ["sec1"] }
|
|||||||
generic-array = { version = "1.4", features = ["hybrid-array-0_4", "zeroize"] }
|
generic-array = { version = "1.4", features = ["hybrid-array-0_4", "zeroize"] }
|
||||||
hybrid-array = { version = "0.4", features = ["extra-sizes", "zeroize"] }
|
hybrid-array = { version = "0.4", features = ["extra-sizes", "zeroize"] }
|
||||||
hkdf = "0.13"
|
hkdf = "0.13"
|
||||||
hmac = "0.13"
|
hmac = { version = "0.13", features = ["zeroize"] }
|
||||||
ml-kem = { version = "0.3", default-features = false, features = [
|
ml-kem = { version = "0.3", default-features = false, features = [
|
||||||
"zeroize",
|
"zeroize",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
rand = { version = "0.10", default-features = false }
|
rand = { version = "0.10", default-features = false }
|
||||||
rand_core = { version = "0.10", default-features = false, optional = true }
|
|
||||||
serde = { version = "1", default-features = false, features = [
|
serde = { version = "1", default-features = false, features = [
|
||||||
"derive",
|
"derive",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
@@ -79,11 +80,10 @@ getrandom = { version = "0.4", features = ["wasm_js"], optional = true }
|
|||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
bincode-next = { version = "3", features = ["serde", "alloc"] }
|
bincode-next = { version = "3", features = ["serde", "alloc"] }
|
||||||
chacha20poly1305 = "0.11"
|
chacha20poly1305 = { version = "0.11", features = ["zeroize"] }
|
||||||
criterion = "0.8"
|
criterion = "0.8"
|
||||||
cryptoki = "0.12"
|
cryptoki = "0.12"
|
||||||
elliptic-curve = { version = "0.14", features = ["alloc", "pkcs8"] }
|
elliptic-curve = { version = "0.14", features = ["alloc", "pkcs8"] }
|
||||||
rand_core = { version = "0.10", default-features = false }
|
|
||||||
hex = "0.4"
|
hex = "0.4"
|
||||||
p256 = { version = "0.14.0-rc.15", default-features = false, features = [
|
p256 = { version = "0.14.0-rc.15", default-features = false, features = [
|
||||||
"ecdsa",
|
"ecdsa",
|
||||||
@@ -106,7 +106,7 @@ proptest = "1"
|
|||||||
rand = "0.10"
|
rand = "0.10"
|
||||||
rand_chacha = "0.10"
|
rand_chacha = "0.10"
|
||||||
regex = "1"
|
regex = "1"
|
||||||
sha2 = { version = "0.11", default-features = false }
|
sha2 = { version = "0.11", default-features = false, features = ["zeroize"] }
|
||||||
thiserror = "2"
|
thiserror = "2"
|
||||||
# MSRV
|
# MSRV
|
||||||
rustyline = "18"
|
rustyline = "18"
|
||||||
|
|||||||
@@ -30,12 +30,12 @@ Installation
|
|||||||
Add the following line to the dependencies of your `Cargo.toml`:
|
Add the following line to the dependencies of your `Cargo.toml`:
|
||||||
|
|
||||||
```
|
```
|
||||||
opaque-ke = { package = "opaque-ke-vx", version = "1.0.0-pre.0" }
|
opaque-ke = { package = "opaque-vx", version = "1.0.0-pre.0" }
|
||||||
```
|
```
|
||||||
|
|
||||||
### Minimum Supported Rust Version
|
### Minimum Supported Rust Version
|
||||||
|
|
||||||
Rust **1.89** or higher.
|
Rust **1.90** or higher.
|
||||||
|
|
||||||
Audit
|
Audit
|
||||||
-----
|
-----
|
||||||
|
|||||||
+1
-1
@@ -7,8 +7,8 @@ extern crate criterion;
|
|||||||
|
|
||||||
use criterion::Criterion;
|
use criterion::Criterion;
|
||||||
use opaque_vx::*;
|
use opaque_vx::*;
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
|
|
||||||
#[cfg(feature = "ristretto255")]
|
#[cfg(feature = "ristretto255")]
|
||||||
static SUFFIX: &str = "ristretto255";
|
static SUFFIX: &str = "ristretto255";
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ use opaque_vx::{
|
|||||||
CredentialResponse, RegistrationRequest, RegistrationResponse, RegistrationUpload, ServerLogin,
|
CredentialResponse, RegistrationRequest, RegistrationResponse, RegistrationUpload, ServerLogin,
|
||||||
ServerLoginParameters, ServerRegistration, ServerSetup,
|
ServerLoginParameters, ServerRegistration, ServerSetup,
|
||||||
};
|
};
|
||||||
use rand_core::UnwrapErr;
|
use rand::rand_core::UnwrapErr;
|
||||||
use rustyline::Editor;
|
use rustyline::Editor;
|
||||||
use rustyline::error::ReadlineError;
|
use rustyline::error::ReadlineError;
|
||||||
use rustyline::history::DefaultHistory;
|
use rustyline::history::DefaultHistory;
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ use opaque_vx::{
|
|||||||
CredentialResponse, RegistrationRequest, RegistrationResponse, RegistrationUpload, ServerLogin,
|
CredentialResponse, RegistrationRequest, RegistrationResponse, RegistrationUpload, ServerLogin,
|
||||||
ServerLoginParameters, ServerRegistration, ServerRegistrationLen, ServerSetup,
|
ServerLoginParameters, ServerRegistration, ServerRegistrationLen, ServerSetup,
|
||||||
};
|
};
|
||||||
use rand_core::UnwrapErr;
|
use rand::rand_core::UnwrapErr;
|
||||||
use rustyline::Editor;
|
use rustyline::Editor;
|
||||||
use rustyline::error::ReadlineError;
|
use rustyline::error::ReadlineError;
|
||||||
use rustyline::history::DefaultHistory;
|
use rustyline::history::DefaultHistory;
|
||||||
|
|||||||
@@ -429,8 +429,8 @@ mod test {
|
|||||||
use std::iter;
|
use std::iter;
|
||||||
|
|
||||||
use ed25519_dalek::{Signer, SigningKey, Verifier, VerifyingKey};
|
use ed25519_dalek::{Signer, SigningKey, Verifier, VerifyingKey};
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
|
|||||||
@@ -111,8 +111,8 @@ fn ecdsa() {
|
|||||||
use p256::ecdsa::signature::RandomizedDigestSigner;
|
use p256::ecdsa::signature::RandomizedDigestSigner;
|
||||||
use p256::ecdsa::{Signature, SigningKey, VerifyingKey};
|
use p256::ecdsa::{Signature, SigningKey, VerifyingKey};
|
||||||
use p256::{NistP256, PublicKey};
|
use p256::{NistP256, PublicKey};
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
use sha2::Sha256;
|
use sha2::Sha256;
|
||||||
|
|
||||||
use crate::tests::mock_rng::CycleRng;
|
use crate::tests::mock_rng::CycleRng;
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ pub trait KemCoreWrapper {
|
|||||||
/// which is required by `ml-kem 0.3.x`.
|
/// which is required by `ml-kem 0.3.x`.
|
||||||
struct RngCompat<'a, R>(&'a mut R);
|
struct RngCompat<'a, R>(&'a mut R);
|
||||||
|
|
||||||
impl<R: Rng> rand_core::TryRng for RngCompat<'_, R> {
|
impl<R: Rng> rand::rand_core::TryRng for RngCompat<'_, R> {
|
||||||
type Error = core::convert::Infallible;
|
type Error = core::convert::Infallible;
|
||||||
|
|
||||||
fn try_next_u32(&mut self) -> Result<u32, Self::Error> {
|
fn try_next_u32(&mut self) -> Result<u32, Self::Error> {
|
||||||
@@ -133,7 +133,7 @@ impl<R: Rng> rand_core::TryRng for RngCompat<'_, R> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<R: Rng + CryptoRng> rand_core::TryCryptoRng for RngCompat<'_, R> {}
|
impl<R: Rng + CryptoRng> rand::rand_core::TryCryptoRng for RngCompat<'_, R> {}
|
||||||
|
|
||||||
type RcEncapsulationKeyLen<K> = <<K as MlKemTrait>::EncapsulationKey as KeySizeUser>::KeySize;
|
type RcEncapsulationKeyLen<K> = <<K as MlKemTrait>::EncapsulationKey as KeySizeUser>::KeySize;
|
||||||
#[allow(deprecated)]
|
#[allow(deprecated)]
|
||||||
|
|||||||
+1
-1
@@ -307,8 +307,8 @@ mod tests {
|
|||||||
ServerRegistrationStartResult, ServerSetup,
|
ServerRegistrationStartResult, ServerSetup,
|
||||||
};
|
};
|
||||||
use hkdf::Hkdf;
|
use hkdf::Hkdf;
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
|
|
||||||
macro_rules! test {
|
macro_rules! test {
|
||||||
($mod:ident, $point:ty) => {
|
($mod:ident, $point:ty) => {
|
||||||
|
|||||||
+18
-18
@@ -64,7 +64,7 @@
|
|||||||
//! # }
|
//! # }
|
||||||
//! use rand::Rng;
|
//! use rand::Rng;
|
||||||
//! use rand::rngs::SysRng;
|
//! use rand::rngs::SysRng;
|
||||||
//! use rand_core::UnwrapErr;
|
//! use rand::rand_core::UnwrapErr;
|
||||||
//!
|
//!
|
||||||
//! let mut rng = UnwrapErr(SysRng);
|
//! let mut rng = UnwrapErr(SysRng);
|
||||||
//! let server_setup = ServerSetup::<Default>::new(&mut rng);
|
//! let server_setup = ServerSetup::<Default>::new(&mut rng);
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
//! use opaque_vx::ClientRegistration;
|
//! use opaque_vx::ClientRegistration;
|
||||||
//! use rand::Rng;
|
//! use rand::Rng;
|
||||||
//! use rand::rngs::SysRng;
|
//! use rand::rngs::SysRng;
|
||||||
//! use rand_core::UnwrapErr;
|
//! use rand::rand_core::UnwrapErr;
|
||||||
//!
|
//!
|
||||||
//! let mut client_rng = UnwrapErr(SysRng);
|
//! let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! let client_registration_start_result =
|
//! let client_registration_start_result =
|
||||||
@@ -159,7 +159,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -207,7 +207,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -256,7 +256,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -308,7 +308,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! use opaque_vx::ClientLogin;
|
//! use opaque_vx::ClientLogin;
|
||||||
//!
|
//!
|
||||||
//! let mut client_rng = UnwrapErr(SysRng);
|
//! let mut client_rng = UnwrapErr(SysRng);
|
||||||
@@ -345,7 +345,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -416,7 +416,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -474,7 +474,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -572,7 +572,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -670,7 +670,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -783,7 +783,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -830,7 +830,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -888,7 +888,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -948,7 +948,7 @@
|
|||||||
//! # type Ksf = opaque_vx::ksf::Identity;
|
//! # type Ksf = opaque_vx::ksf::Identity;
|
||||||
//! # }
|
//! # }
|
||||||
//! # use rand::{rngs::SysRng, Rng};
|
//! # use rand::{rngs::SysRng, Rng};
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # let mut client_rng = UnwrapErr(SysRng);
|
//! # let mut client_rng = UnwrapErr(SysRng);
|
||||||
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
//! # let client_registration_start_result = ClientRegistration::<Default>::start(
|
||||||
//! # &mut client_rng,
|
//! # &mut client_rng,
|
||||||
@@ -1021,7 +1021,7 @@
|
|||||||
//! # use generic_array::{GenericArray, typenum::U0};
|
//! # use generic_array::{GenericArray, typenum::U0};
|
||||||
//! # use opaque_vx::{CipherSuite, ClientLogin, ClientRegistration, ClientRegistrationFinishParameters, ServerRegistration, keypair::{PrivateKey, PublicKey}, key_exchange::{KeyExchange, group::Group, tripledh::DiffieHellman}};
|
//! # use opaque_vx::{CipherSuite, ClientLogin, ClientRegistration, ClientRegistrationFinishParameters, ServerRegistration, keypair::{PrivateKey, PublicKey}, key_exchange::{KeyExchange, group::Group, tripledh::DiffieHellman}};
|
||||||
//! # use rand::rngs::SysRng;
|
//! # use rand::rngs::SysRng;
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//!
|
//!
|
||||||
//! type Ristretto255 = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Group;
|
//! type Ristretto255 = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Group;
|
||||||
//! # struct Default;
|
//! # struct Default;
|
||||||
@@ -1118,7 +1118,7 @@
|
|||||||
//! # use opaque_vx::{CipherSuite, ClientLogin, ClientRegistration, ClientRegistrationFinishParameters, keypair::{PrivateKey, PublicKey}, key_exchange::{KeyExchange, group::Group, tripledh::DiffieHellman}};
|
//! # use opaque_vx::{CipherSuite, ClientLogin, ClientRegistration, ClientRegistrationFinishParameters, keypair::{PrivateKey, PublicKey}, key_exchange::{KeyExchange, group::Group, tripledh::DiffieHellman}};
|
||||||
//! # use rand::rngs::SysRng;
|
//! # use rand::rngs::SysRng;
|
||||||
//! # use rand::Rng;
|
//! # use rand::Rng;
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//!
|
//!
|
||||||
//! type Ristretto255 = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Group;
|
//! type Ristretto255 = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Group;
|
||||||
//! # type Hash = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Hash;
|
//! # type Hash = <<Default as CipherSuite>::KeyExchange as KeyExchange>::Hash;
|
||||||
@@ -1277,7 +1277,7 @@
|
|||||||
//! # use opaque_vx::errors::ProtocolError;
|
//! # use opaque_vx::errors::ProtocolError;
|
||||||
//! # use rand::rngs::SysRng;
|
//! # use rand::rngs::SysRng;
|
||||||
//! # use rand::Rng;
|
//! # use rand::Rng;
|
||||||
//! # use rand_core::UnwrapErr;
|
//! # use rand::rand_core::UnwrapErr;
|
||||||
//! # use std::default::Default;
|
//! # use std::default::Default;
|
||||||
//! # #[cfg(feature = "argon2")]
|
//! # #[cfg(feature = "argon2")]
|
||||||
//! # {
|
//! # {
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ use generic_array::typenum::{Sum, Unsigned};
|
|||||||
use proptest::collection::vec;
|
use proptest::collection::vec;
|
||||||
use proptest::prelude::*;
|
use proptest::prelude::*;
|
||||||
use rand::Rng;
|
use rand::Rng;
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
use voprf::Group as _;
|
use voprf::Group as _;
|
||||||
|
|
||||||
use crate::ciphersuite::{CipherSuite, KeGroup, OprfGroup, OprfHash};
|
use crate::ciphersuite::{CipherSuite, KeGroup, OprfGroup, OprfHash};
|
||||||
|
|||||||
@@ -15,9 +15,9 @@ use generic_array::{ArrayLength, GenericArray};
|
|||||||
#[cfg(feature = "kem")]
|
#[cfg(feature = "kem")]
|
||||||
use ml_kem::MlKem768;
|
use ml_kem::MlKem768;
|
||||||
use rand::SeedableRng;
|
use rand::SeedableRng;
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_chacha::ChaCha20Rng;
|
use rand_chacha::ChaCha20Rng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
use serde_json::Value;
|
use serde_json::Value;
|
||||||
use subtle::ConstantTimeEq;
|
use subtle::ConstantTimeEq;
|
||||||
use voprf::Group as _;
|
use voprf::Group as _;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ use core::cmp::min;
|
|||||||
use std::vec::Vec;
|
use std::vec::Vec;
|
||||||
|
|
||||||
use core::convert::Infallible;
|
use core::convert::Infallible;
|
||||||
use rand_core::{TryCryptoRng, TryRng};
|
use rand::rand_core::{TryCryptoRng, TryRng};
|
||||||
|
|
||||||
/// A simple implementation of `Rng` for testing purposes.
|
/// A simple implementation of `Rng` for testing purposes.
|
||||||
///
|
///
|
||||||
|
|||||||
@@ -26,8 +26,8 @@ use digest::OutputSizeUser;
|
|||||||
use generic_array::typenum::Sum;
|
use generic_array::typenum::Sum;
|
||||||
use generic_array::{ArrayLength, GenericArray};
|
use generic_array::{ArrayLength, GenericArray};
|
||||||
use rand::Rng;
|
use rand::Rng;
|
||||||
|
use rand::rand_core::UnwrapErr;
|
||||||
use rand::rngs::SysRng;
|
use rand::rngs::SysRng;
|
||||||
use rand_core::UnwrapErr;
|
|
||||||
use serde_json::Value;
|
use serde_json::Value;
|
||||||
|
|
||||||
#[allow(non_snake_case)]
|
#[allow(non_snake_case)]
|
||||||
|
|||||||
Reference in New Issue
Block a user