mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-14 06:59:24 +00:00
3.8.6 Correct transcript to scalar derivation
Replaces the externally passed in Digest with C::H since C is available.
This commit is contained in:
@@ -3,8 +3,6 @@ use core::ops::Deref;
|
||||
use zeroize::Zeroizing;
|
||||
use rand_core::OsRng;
|
||||
|
||||
use sha2::Sha256;
|
||||
|
||||
use group::{ff::Field, Group};
|
||||
use multiexp::BatchVerifier;
|
||||
|
||||
@@ -84,7 +82,7 @@ pub(crate) fn aggregate<C: Ciphersuite>() {
|
||||
// Create 5 signatures
|
||||
let mut keys = vec![];
|
||||
let mut challenges = vec![];
|
||||
let mut aggregator = SchnorrAggregator::<Sha256, C>::new(DST);
|
||||
let mut aggregator = SchnorrAggregator::<C>::new(DST);
|
||||
for i in 0 .. 5 {
|
||||
keys.push(Zeroizing::new(C::random_nonzero_F(&mut OsRng)));
|
||||
// In practice, this MUST be a secure challenge binding to the nonce, key, and any message
|
||||
@@ -102,7 +100,7 @@ pub(crate) fn aggregate<C: Ciphersuite>() {
|
||||
let aggregate = aggregator.complete().unwrap();
|
||||
let aggregate =
|
||||
SchnorrAggregate::<C>::read::<&[u8]>(&mut aggregate.serialize().as_ref()).unwrap();
|
||||
assert!(aggregate.verify::<Sha256>(
|
||||
assert!(aggregate.verify(
|
||||
DST,
|
||||
keys
|
||||
.iter()
|
||||
|
||||
Reference in New Issue
Block a user