constantine/sage
Mamy Ratsimbazafy 85d365359d
Endomorphism G2 (#79)
* Clear cofactor in BN254 G2 testgen and frobenius

* Implement G2 endomorphism acceleration in Sage

* Somewhat working accelerated scalar mul G2 (2.2x) faster
- OK for BN254_Snarks
- Some test failing for BLS12-381

* Fix negative miniscalars by adding an extra bit of encoding

* Cleanup accel params

* Small recoding optimizations
2020-09-03 23:10:48 +02:00
..
README.md Add sage script for BN and BLS12 curve families 2020-03-21 15:50:39 +01:00
curve_family_bls12.sage Frobenius endomorphism ψ = φ−1 πp φ (psi = untwist-Frobenius-Twist) (#78) 2020-08-31 23:18:48 +02:00
curve_family_bn.sage Frobenius endomorphism ψ = φ−1 πp φ (psi = untwist-Frobenius-Twist) (#78) 2020-08-31 23:18:48 +02:00
frobenius_bls12_377.sage Frobenius endomorphism ψ = φ−1 πp φ (psi = untwist-Frobenius-Twist) (#78) 2020-08-31 23:18:48 +02:00
frobenius_bls12_381.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
frobenius_bn254_nogami.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
frobenius_bn254_snarks.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
lattice_decomposition_bls12_381_g1.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
lattice_decomposition_bls12_381_g2.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
lattice_decomposition_bn254_snarks_g1.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
lattice_decomposition_bn254_snarks_g2.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
non_residues.sage Properly distinguish between Nogami and Snark/Ethereum BN254 closes #19 2020-04-12 03:01:50 +02:00
testgen_bls12_381.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00
testgen_bn254_snarks.sage Endomorphism G2 (#79) 2020-09-03 23:10:48 +02:00

README.md

Sage scripts

This folder holds sage scripts:

  • either for automating curve configuration for example for computing the prime and order of BN or BLS curve families, for irreducible polynomials for extension fields.
  • for test vectors against a reference implementation.