From f3f4fef0e92b05a91ae9ff79f7e81f7c78a9c2c4 Mon Sep 17 00:00:00 2001 From: daxpedda Date: Thu, 8 May 2025 00:40:24 +0200 Subject: [PATCH] Align `Ristretto255::random_scalar()` with spec (#142) --- src/group/ristretto.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/group/ristretto.rs b/src/group/ristretto.rs index 39aa4c1..68c7523 100644 --- a/src/group/ristretto.rs +++ b/src/group/ristretto.rs @@ -96,9 +96,10 @@ impl Group for Ristretto255 { fn random_scalar(rng: &mut R) -> Self::Scalar { loop { - let scalar = Scalar::random(rng); + let mut scalar_bytes = [0u8; 32]; + rng.fill_bytes(&mut scalar_bytes); - if scalar != Scalar::ZERO { + if let Ok(scalar) = Self::deserialize_scalar(&scalar_bytes) { break scalar; } }