arkworks-rs/snark

Implement Barreto-Naehrig curves

Pratyush opened this issue · 5 comments

Baretto-Naehrig curves are a class of pairing-friendly prime-order elliptic curves. It would be great to have an implementation of these that is generic like our implementation of BLS curves. A good starting point is the implementation by @o1-labs in a fork of Zexe: https://github.com/o1-labs/zexe/tree/master/algebra/src/curves/models/bn

It would help to have some papers listed here especially wrt to concrete parameters. I have not been able to hunt to parameters for BN254, for instance.

It would help to have some papers listed here especially wrt to concrete parameters. I have not been able to hunt to parameters for BN254, for instance.

I think you can find the spec in Appendix E of Ethereum Yellowpaper

Concrete parameters can also be found here (for the Ethereum curve): https://github.com/matter-labs/pairing/tree/master/src/bn256

I implemented a bn256 curve, basically implemented, and is testing in practice. zexe-bn256

These are implemented now by #225