Function schnorrkel::verify_batch_deterministic

source ยท
pub fn verify_batch_deterministic<T, I>(
    transcripts: I,
    signatures: &[Signature],
    public_keys: &[PublicKey],
    deduplicate_public_keys: bool,
) -> SignatureResult<()>
where T: SigningTranscript, I: IntoIterator<Item = T>,
Expand description

Verify a batch of signatures on messages with their respective public_keys.

Avoids using system randomness and instead depends entirely upon delinearization.

We break the R: CryptRng requirement from verify_batch_rng here, but this appears fine using an Fiat-Shamir transform with an argument similar to public key delinearization.

We caution deeterministic delinearization could interact poorly with other functionality, if one delinarization scalar were left constant. We do not make that mistake here.