algebra
algebra copied to clipboard
Prepared G2 for CP6-782
Summary
CP6-782 has a similar G2 preparation strategy as others, and it is useful to have real prepared G2 (especially since now G2Prepared cannot be simply G2Affine, at least with a wrapper).
Problem Definition
Due to upstream changes, it seems a good idea to have a prepared G2 implementation for CP6-782.
Proposal
- Have a smoke test for compatibility.
- Implement G2 prepared.
- Test compatibility.
For Admin Use
- [x] Not duplicate issue
- [x] Appropriate labels applied
- [x] Appropriate contributors tagged
- [x] Contributor assigned/self-assigned
Why don't we just deprecate this curve? Are there any project who haven't switched to BW-761? The BW one is strictly better, see https://eprint.iacr.org/2020/351.pdf, and is implemented here https://github.com/arkworks-rs/curves/tree/master/bw6_761
You have a valid point, in that today to build 2-chain for BLS12-377 there is virtually no reason to use CP6-782 anymore...
@Pratyush what do you think about the policy of deprecating curves?
To be honest, maintaining a curve in this library is not difficult---every version update is just a minor refactoring...
I need to consult Youssef about whether the BW curves can easily generalize to non-pairing-friendly curves as the base curves (e.g., situations like ed25519/curve25519 or secp256k1). Will add more info here when I get some info.