Triton is a virtual machine that comes with Algebraic Execution Tables (AET) and Arithmetic Intermediate Representations (AIR) for use in combination with a STARK proof system.
Currently, the STARK prover derives all randomness by calling rand::random(), the “thread-local random number generator, seeded by the system.” For some testing and benchmarking purposes of the STARK prover, it is beneficial to have reproducible proofs. i.e., to allow seeding the random number generator explicitly.
Misusing such an interface can break zero-knowledge, a property most central to Triton VM. Therefore, using this interface must be purely optional, and it must be plastered with warning signs.
Currently, the STARK prover derives all randomness by calling
rand::random()
, the “thread-local random number generator, seeded by the system.” For some testing and benchmarking purposes of the STARK prover, it is beneficial to have reproducible proofs. i.e., to allow seeding the random number generator explicitly.Misusing such an interface can break zero-knowledge, a property most central to Triton VM. Therefore, using this interface must be purely optional, and it must be plastered with warning signs.