Skip to content

Update Rust crate rand to 0.9 #43

Update Rust crate rand to 0.9

Update Rust crate rand to 0.9 #43

Triggered via pull request July 27, 2025 21:57
Status Failure
Total duration 2m 45s
Artifacts

audit.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 2 warnings
the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied: src/lib.rs#L500
error[E0277]: the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied --> src/lib.rs:500:45 | 500 | match BatchDLEQProof::new::<Sha512, OsRng>(&mut rng, &blinded_tokens, &signed_tokens, &*key) | ^^^^^ the trait `rand_core::RngCore` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:137:1 | 137 | pub trait RngCore { | ^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree = note: required for `rand::rngs::OsRng` to implement `rand::Rng` note: required by a bound in `challenge_bypass_ristretto::voprf::BatchDLEQProof::new` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/dleq.rs:277:12 | 269 | pub fn new<D, T>( | --- required by a bound in this associated function ... 277 | T: Rng + CryptoRng, | ^^^ required by this bound in `BatchDLEQProof::new`
the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied: src/lib.rs#L500
error[E0277]: the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied --> src/lib.rs:500:45 | 500 | match BatchDLEQProof::new::<Sha512, OsRng>(&mut rng, &blinded_tokens, &signed_tokens, &*key) | ^^^^^ the trait `rand_core::CryptoRng` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:208:1 | 208 | pub trait CryptoRng {} | ^^^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree note: required by a bound in `challenge_bypass_ristretto::voprf::BatchDLEQProof::new` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/dleq.rs:277:18 | 269 | pub fn new<D, T>( | --- required by a bound in this associated function ... 277 | T: Rng + CryptoRng, | ^^^^^^^^^ required by this bound in `BatchDLEQProof::new`
the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied: src/lib.rs#L406
error[E0277]: the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied --> src/lib.rs:406:40 | 406 | match DLEQProof::new::<Sha512, OsRng>(&mut rng, &*blinded_token, &*signed_token, &*key) { | ^^^^^ the trait `rand_core::RngCore` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:137:1 | 137 | pub trait RngCore { | ^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree = note: required for `rand::rngs::OsRng` to implement `rand::Rng` note: required by a bound in `challenge_bypass_ristretto::voprf::DLEQProof::new` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/dleq.rs:87:12 | 79 | pub fn new<D, T>( | --- required by a bound in this associated function ... 87 | T: Rng + CryptoRng, | ^^^ required by this bound in `DLEQProof::new`
the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied: src/lib.rs#L406
error[E0277]: the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied --> src/lib.rs:406:40 | 406 | match DLEQProof::new::<Sha512, OsRng>(&mut rng, &*blinded_token, &*signed_token, &*key) { | ^^^^^ the trait `rand_core::CryptoRng` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:208:1 | 208 | pub trait CryptoRng {} | ^^^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree note: required by a bound in `challenge_bypass_ristretto::voprf::DLEQProof::new` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/dleq.rs:87:18 | 79 | pub fn new<D, T>( | --- required by a bound in this associated function ... 87 | T: Rng + CryptoRng, | ^^^^^^^^^ required by this bound in `DLEQProof::new`
the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied: src/lib.rs#L307
error[E0277]: the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied --> src/lib.rs:307:34 | 307 | let key = SigningKey::random(&mut rng); | ------------------ ^^^^^^^^ the trait `rand_core::RngCore` is not implemented for `rand::rngs::OsRng` | | | required by a bound introduced by this call | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:137:1 | 137 | pub trait RngCore { | ^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree = note: required for `rand::rngs::OsRng` to implement `rand::Rng` note: required by a bound in `challenge_bypass_ristretto::voprf::SigningKey::random` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/oprf.rs:320:22 | 320 | pub fn random<T: Rng + CryptoRng>(rng: &mut T) -> Self { | ^^^ required by this bound in `SigningKey::random`
the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied: src/lib.rs#L307
error[E0277]: the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied --> src/lib.rs:307:34 | 307 | let key = SigningKey::random(&mut rng); | ------------------ ^^^^^^^^ the trait `rand_core::CryptoRng` is not implemented for `rand::rngs::OsRng` | | | required by a bound introduced by this call | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:208:1 | 208 | pub trait CryptoRng {} | ^^^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree note: required by a bound in `challenge_bypass_ristretto::voprf::SigningKey::random` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/oprf.rs:320:28 | 320 | pub fn random<T: Rng + CryptoRng>(rng: &mut T) -> Self { | ^^^^^^^^^ required by this bound in `SigningKey::random`
the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied: src/lib.rs#L125
error[E0277]: the trait bound `rand::rngs::OsRng: rand::Rng` is not satisfied --> src/lib.rs:125:41 | 125 | let token = Token::random::<Sha512, OsRng>(&mut rng); | ^^^^^ the trait `rand_core::RngCore` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:137:1 | 137 | pub trait RngCore { | ^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree = note: required for `rand::rngs::OsRng` to implement `rand::Rng` note: required by a bound in `challenge_bypass_ristretto::voprf::Token::random` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/oprf.rs:121:12 | 118 | pub fn random<D, T>(rng: &mut T) -> Self | ------ required by a bound in this associated function ... 121 | T: Rng + CryptoRng, | ^^^ required by this bound in `Token::random`
the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied: src/lib.rs#L125
error[E0277]: the trait bound `rand::rngs::OsRng: rand_core::CryptoRng` is not satisfied --> src/lib.rs:125:41 | 125 | let token = Token::random::<Sha512, OsRng>(&mut rng); | ^^^^^ the trait `rand_core::CryptoRng` is not implemented for `rand::rngs::OsRng` | note: there are multiple different versions of crate `rand_core` in the dependency graph --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/lib.rs:208:1 | 208 | pub trait CryptoRng {} | ^^^^^^^^^^^^^^^^^^^ this is the required trait | ::: src/lib.rs:2:1 | 2 | extern crate challenge_bypass_ristretto; | ---------------------------------------- one version of crate `rand_core` used here, as a dependency of crate `curve25519_dalek` ... 5 | extern crate rand; | ------------------ one version of crate `rand_core` used here, as a dependency of crate `rand` | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/os.rs:47:1 | 47 | pub struct OsRng; | ---------------- this type doesn't implement the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.5.1/src/os.rs:48:1 | 48 | pub struct OsRng; | ---------------- this type implements the required trait | ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.9.3/src/block.rs:67:1 | 67 | pub trait BlockRngCore { | ---------------------- this is the found trait = note: two types coming from two different versions of the same crate are different types even if they look the same = help: you can use `cargo tree` to explore your dependency tree note: required by a bound in `challenge_bypass_ristretto::voprf::Token::random` --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/challenge-bypass-ristretto-1.0.1/src/oprf.rs:121:18 | 118 | pub fn random<D, T>(rng: &mut T) -> Self | ------ required by a bound in this associated function ... 121 | T: Rng + CryptoRng, | ^^^^^^^^^ required by this bound in `Token::random`
security_audit
Critical vulnerabilities were found, marking check as failed
security_audit
1 warnings found!
security_audit
1 vulnerabilities found!