p3-challenger
A Fiat–Shamir transcript and challenger framework, used to derive random challenges from an IOP's transcript.
Key items:
CanObserve,CanSample,CanSampleBits,FieldChallenger— the observe/sample trait familyDuplexChallenger— sponge-based challenger over a cryptographic permutationHashChallenger— challenger built from a generic hash functionMultiField32Challenger,SerializingChallenger32/64— challengers bridging fields of different sizesGrindingChallenger— proof-of-work witness generation and verification
Prover and verifier must observe and sample in the exact same order; every proof object is bound to the transcript before any challenge it influences is sampled.
Part of Plonky3, dual-licensed under MIT and Apache 2.0.