* Rework bw6-761 to bw6-767
use bls12-381 instead of 377 for test imports
fix the inline comments with correct name and params
Set the right base field
Equation for base curve is y2 = x3 + 1
fill in pairing params
adapt sage scripts with correct moduli
calculate the correct cubic non residue
correct the parameter B in the curve equation
remove the specialized method for mult by nonresidue
nonresidue is two, so default will be doubling
calculate more correct parameters for fq3
`TRACE_MINUS_ONE_DIV_TWO` and `QUADRATIC_NONRESIDUE_TO_T`
compute the right fq3 & fp6 frobenious coefficients
calculate the cofactor for g1
use the g1 generator from gnark's fork
use the right g2 equation
g2 cofactor is slightly smaller than g1 cofactor
get the g2 generators from gnark's fork
update g1 and g2 curve info in the comments
fill in `COFACTOR_INV` value for g1
fill in `COFACTOR_INV` value for g2
* update module description
author information
2-adicity of the scalar field
* update changelog
* remove trailing comma
* remove todo
* 2nd loop count is x^3 - x^2 - x
* Revert "2nd loop count is x^3 - x^2 - x"
This reverts commit 2b323db3ba.
* fix comment regarding non-residue
* first loop count should be X
* 1. Generic BW6 params added to BW6-761
2. Curve specific hard part of the final exp moved from algebra
* 1. Generic BW6 params added to BW6-767
2. Miller loop params changed to the "unoptimized" version
* cargo fmt
* changelog updated
* X_MINUS_1_DIV_3 added to BW6Config
* imports fixed
---------
Co-authored-by: mmagician <marcin.gorny.94@protonmail.com>
* add faster cofactor clearing and tests for g1
* add faster cofactor clearing and tests for g2
parameters of endomorphisms are wrong for now
* add h_eff to g2 tests for correctness
test
* improve cofactor tests g2
* add a test for psi(psi(P)) == psi2(P)
* fix bls12-377 psi & psi2 computation parameters
* rename const to DOUBLE_P_POWER_ENDOMORPHISM_COEFF_0 and make private
* fix clippy warnings in changed code
* remove bls12-381-specific in line comment
* update code comments, make methods private
* master should be patched with master
* update changelog
* Fixed benchmarking compile error
* Updated CHANGELOG
* patch `algebra-test-templates` due to breaking changes since the last release
Co-authored-by: Marcin Górny <marcin.gorny.94@protonmail.com>
* implementation of the fast subgroup check for bls12_381
* add a bench
* subgroup check for g1
* subgroup check modifications
* remove useless test
* fmt
* need the last version of arkworks/algebra
* remove Parameters0
* using projective points is more efficient
* use of projective coordinates in G2
* fmt
* documentation on the constants and the psi function
* references for algorithms of eprint 2021/1130
* fmt
* sed ^ **
* minor improvement
* fmt
* fix Cargo toml
* nits
* some cleanup for g1
* add the beta test back
* fmt
* g2
* changelog
* add a note on the Cargo.toml
* nits
* avoid variable name conflicts
* add the early-out optimization
Co-authored-by: weikeng <w.k@berkeley.edu>
* impl bandersnatch
* clean up
* update changelog
* Relocate the readme so they show up in the doc
* Delete README.md
* Relocate the changelog entry
* rename & fmt
Co-authored-by: Weikeng Chen <w.k@berkeley.edu>