w3f / schnorrkel

Schnorr VRFs and signatures on the Ristretto group
BSD 3-Clause "New" or "Revised" License
306 stars 92 forks source link

Verify schnorrkel vrf on EVM #83

Closed h4x3rotab closed 1 year ago

h4x3rotab commented 1 year ago

It is something possible? EVM has very limited instructions. It looks like even schnorr is not supported?

burdges commented 1 year ago

It's extremely painful, you'd could compile rust to EVM maybe but the gas would be astronomically expensive.

If you absolutely require this, then you could implement a Groth16 SNARK verifier gadget, but then you'd need non-native curve arithmetic since EVM only supports Groth16 on BN254. Ain't much going on in schnorkell, but this non-native curve arithmetic requires enough constraints your SNARK prover runs slow.

Ideally EVM will simply die one day. :)