fastcrypto icon indicating copy to clipboard operation
fastcrypto copied to clipboard

Make generic Groth16 implementation

Open jonas-lj opened this issue 10 months ago • 1 comments

This PR replaces the BLS12-381 Groth16 implementation with a generic implementation that uses the GroupElement and Pairing abstractions. This is much simpler and wraps calls to external libraries.

We can also use this for the BN254 Groth16 implementation, but it requires that we first add the BN254 construction to the supported groups.

Benchmarks have demonstrated, that the performance is unchanged.

jonas-lj avatar Apr 04 '24 12:04 jonas-lj

Can we add regression tests in a different PR (with fixed bytes of vk & proofs that worked with the previous version, including of edge cases) and only afterwards submit this one? I want to make sure we are not breaking the current APIs

Added in #772.

jonas-lj avatar Apr 29 '24 08:04 jonas-lj