diff --git a/zebra-chain/src/commitments/sapling.rs b/zebra-chain/src/commitments/sapling.rs index 323d6715..6a3c8679 100644 --- a/zebra-chain/src/commitments/sapling.rs +++ b/zebra-chain/src/commitments/sapling.rs @@ -30,9 +30,10 @@ pub fn generate_trapdoor(csprng: &mut T) -> jubjub::Fr where T: RngCore + CryptoRng, { - let mut bytes = [0u8; 32]; + let mut bytes = [0u8; 64]; csprng.fill_bytes(&mut bytes); - jubjub::Fr::from_bytes(&bytes).unwrap() + // Fr::from_bytes_wide() reduces the input modulo r via Fr::from_u512() + jubjub::Fr::from_bytes_wide(&bytes) } /// "...an algebraic hash function with collision resistance (for