The PR #10 introduces the new field-extension based curve Cheetah as underlying curve for our state-transition AIR program.
Unlike the previously used curve, each register is storing a u64 value representing an Fp element. Hence, we need to use more than one register of hash output during Schnorr signature verification AIR program to perform the scalar multiplication with the public key.
The above PR only takes the first element of the hash digest to recompute the scalar mult, similarly to the previous curve over a field of size 252 bits. There are ways to deal with this properly, but it may be impacted by the way we want to rearrange the trace / perform the Schnorr aggregation / implement the in-circuit RAPs. This Issue is to keep track of it.
The PR #10 introduces the new field-extension based curve Cheetah as underlying curve for our state-transition AIR program. Unlike the previously used curve, each register is storing a u64 value representing an
Fp
element. Hence, we need to use more than one register of hash output during Schnorr signature verification AIR program to perform the scalar multiplication with the public key.The above PR only takes the first element of the hash digest to recompute the scalar mult, similarly to the previous curve over a field of size 252 bits. There are ways to deal with this properly, but it may be impacted by the way we want to rearrange the trace / perform the Schnorr aggregation / implement the in-circuit RAPs. This Issue is to keep track of it.