-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python implementation for bn254 (alt_bn128) pairing #16
Commits on Jul 28, 2023
-
Configuration menu - View commit details
-
Copy full SHA for bce8cbe - Browse repository at this point
Copy the full SHA bce8cbeView commit details -
Configuration menu - View commit details
-
Copy full SHA for eb18443 - Browse repository at this point
Copy the full SHA eb18443View commit details -
Configuration menu - View commit details
-
Copy full SHA for 067c16e - Browse repository at this point
Copy the full SHA 067c16eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 36af2b6 - Browse repository at this point
Copy the full SHA 36af2b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a8fa73 - Browse repository at this point
Copy the full SHA 1a8fa73View commit details
Commits on Aug 1, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 69f44fc - Browse repository at this point
Copy the full SHA 69f44fcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 00500c5 - Browse repository at this point
Copy the full SHA 00500c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for f0db051 - Browse repository at this point
Copy the full SHA f0db051View commit details -
Configuration menu - View commit details
-
Copy full SHA for eb08ec9 - Browse repository at this point
Copy the full SHA eb08ec9View commit details -
Configuration menu - View commit details
-
Copy full SHA for d795f87 - Browse repository at this point
Copy the full SHA d795f87View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b3073b - Browse repository at this point
Copy the full SHA 9b3073bView commit details
Commits on Aug 2, 2023
-
Configuration menu - View commit details
-
Copy full SHA for ca6645c - Browse repository at this point
Copy the full SHA ca6645cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 032f93c - Browse repository at this point
Copy the full SHA 032f93cView commit details
Commits on Aug 4, 2023
-
Configuration menu - View commit details
-
Copy full SHA for aaefd0a - Browse repository at this point
Copy the full SHA aaefd0aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2afbca8 - Browse repository at this point
Copy the full SHA 2afbca8View commit details -
Configuration menu - View commit details
-
Copy full SHA for f858171 - Browse repository at this point
Copy the full SHA f858171View commit details -
Merge branch 'add_eth_tests' of github.com:lambdaclass/zksync_era_pre…
…compiles into add_eth_tests
Configuration menu - View commit details
-
Copy full SHA for 545e701 - Browse repository at this point
Copy the full SHA 545e701View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0491085 - Browse repository at this point
Copy the full SHA 0491085View commit details -
Configuration menu - View commit details
-
Copy full SHA for d084888 - Browse repository at this point
Copy the full SHA d084888View commit details -
Configuration menu - View commit details
-
Copy full SHA for cba561e - Browse repository at this point
Copy the full SHA cba561eView commit details -
Configuration menu - View commit details
-
Copy full SHA for b3ced8d - Browse repository at this point
Copy the full SHA b3ced8dView commit details
Commits on Aug 7, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 69d4596 - Browse repository at this point
Copy the full SHA 69d4596View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce87027 - Browse repository at this point
Copy the full SHA ce87027View commit details -
Configuration menu - View commit details
-
Copy full SHA for d8ef6d3 - Browse repository at this point
Copy the full SHA d8ef6d3View commit details
Commits on Aug 8, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 24732ab - Browse repository at this point
Copy the full SHA 24732abView commit details -
Configuration menu - View commit details
-
Copy full SHA for bb48215 - Browse repository at this point
Copy the full SHA bb48215View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36b5f3d - Browse repository at this point
Copy the full SHA 36b5f3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for de3c03e - Browse repository at this point
Copy the full SHA de3c03eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 88dff03 - Browse repository at this point
Copy the full SHA 88dff03View commit details
Commits on Aug 9, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 813d15b - Browse repository at this point
Copy the full SHA 813d15bView commit details -
Configuration menu - View commit details
-
Copy full SHA for e9590d9 - Browse repository at this point
Copy the full SHA e9590d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a59ba6 - Browse repository at this point
Copy the full SHA 8a59ba6View commit details
Commits on Aug 10, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 11c6a35 - Browse repository at this point
Copy the full SHA 11c6a35View commit details
Commits on Aug 11, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 5f4988d - Browse repository at this point
Copy the full SHA 5f4988dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b73a7e - Browse repository at this point
Copy the full SHA 2b73a7eView commit details
Commits on Aug 13, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 44f1ead - Browse repository at this point
Copy the full SHA 44f1eadView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a87322 - Browse repository at this point
Copy the full SHA 8a87322View commit details -
Configuration menu - View commit details
-
Copy full SHA for 15d43bc - Browse repository at this point
Copy the full SHA 15d43bcView commit details
Commits on Aug 14, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6b93802 - Browse repository at this point
Copy the full SHA 6b93802View commit details
Commits on Aug 15, 2023
-
Configuration menu - View commit details
-
Copy full SHA for a4b3f88 - Browse repository at this point
Copy the full SHA a4b3f88View commit details
Commits on Aug 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4f45d16 - Browse repository at this point
Copy the full SHA 4f45d16View commit details -
Configuration menu - View commit details
-
Copy full SHA for 365468d - Browse repository at this point
Copy the full SHA 365468dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b9b6c46 - Browse repository at this point
Copy the full SHA b9b6c46View commit details -
Configuration menu - View commit details
-
Copy full SHA for fca4c7d - Browse repository at this point
Copy the full SHA fca4c7dView commit details -
Configuration menu - View commit details
-
Copy full SHA for acb0fa1 - Browse repository at this point
Copy the full SHA acb0fa1View commit details -
Finish quadratic extension field arithmetics
Co-authored-by: Nacho Avecilla <nachoavecilla@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 17505b3 - Browse repository at this point
Copy the full SHA 17505b3View commit details -
Co-authored-by: Nacho Avecilla <nachoavecilla@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 1b06688 - Browse repository at this point
Copy the full SHA 1b06688View commit details -
Implement double and addition steps
Co-authored-by: Nacho Avecilla <nachoavecilla@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for d7d4cf9 - Browse repository at this point
Copy the full SHA d7d4cf9View commit details
Commits on Aug 17, 2023
-
Arithmetics over Fp2 in Python (#14)
* Finish fp2 arithmetic * Add more precomputed values * Fix fp2 inv * Add EOF * Rename module
Configuration menu - View commit details
-
Copy full SHA for 6d59006 - Browse repository at this point
Copy the full SHA 6d59006View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7cfed2d - Browse repository at this point
Copy the full SHA 7cfed2dView commit details
Commits on Aug 22, 2023
-
Configuration menu - View commit details
-
Copy full SHA for ce27c79 - Browse repository at this point
Copy the full SHA ce27c79View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1696048 - Browse repository at this point
Copy the full SHA 1696048View commit details -
Arithmetics over Fp6 in Python (#15)
* Finish fp2 arithmetic * Add more precomputed values * Add arithmetic operations for fp6 * Update constant name Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com> * Replace epsilon for XI * Change script name * Add multiplication by xi in fp2 and fp6 * Add alternative inverse method * Fix inverse operation --------- Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar> Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for ba369b1 - Browse repository at this point
Copy the full SHA ba369b1View commit details -
* WIP * add fp12 arithmetics * fix typo * add addition tests * add sub test * rename gamma function * add mul tests * fix function call * fix typo * mul fixes * fix mul by 1 * fix square * fix fp12 inverse * add multiply by 2 asserts * add EOF --------- Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar>
Configuration menu - View commit details
-
Copy full SHA for b7a030d - Browse repository at this point
Copy the full SHA b7a030dView commit details -
Configuration menu - View commit details
-
Copy full SHA for dd7ed95 - Browse repository at this point
Copy the full SHA dd7ed95View commit details
Commits on Aug 24, 2023
-
Add jacobian coordinates in Python (#22)
* Rename file * Add implementation for jacobian projective coordinates * Fix fp12 merge error * Fix addition * Rename function to check inifinity and add extra comments
Configuration menu - View commit details
-
Copy full SHA for a7652f4 - Browse repository at this point
Copy the full SHA a7652f4View commit details -
Fp2, Fp6 and Fp12 arithmetics in Yul (#23)
* Add fp2 arithmetics * Add fp6 arithmetics * Rename funcs * Fix compilation errors in fp6 operations * Add tests for inverse and sub for fp2 * Fix square and multiplication for fp6 * Add tests for add, mul, sub and square in fp6 * add fp12 arithmetic * Fix inverse in fp6 * Add tests for inverse in fp6 * add fp12 tests * add inverse test for fp12 * changes mul for sub --------- Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar> Co-authored-by: Joaquin Carletti <joaquin.carletti@lambdaclass.com>
Configuration menu - View commit details
-
Copy full SHA for a83b64d - Browse repository at this point
Copy the full SHA a83b64dView commit details
Commits on Aug 25, 2023
-
Configuration menu - View commit details
-
Copy full SHA for e77146a - Browse repository at this point
Copy the full SHA e77146aView commit details -
Configuration menu - View commit details
-
Copy full SHA for c698633 - Browse repository at this point
Copy the full SHA c698633View commit details -
Refactor for line evaluation functions (#29)
* Move point doubling and line evaluation to pairing file * Change return type in point adding and line evaluation to match with doubling * Remove incorrect parameter * Change name to match with other pairing function
Configuration menu - View commit details
-
Copy full SHA for ec141a3 - Browse repository at this point
Copy the full SHA ec141a3View commit details
Commits on Aug 28, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 575a0e6 - Browse repository at this point
Copy the full SHA 575a0e6View commit details
Commits on Aug 29, 2023
-
Improve fp6 and fp12 arithmetics return type (#35)
* Change fp6 return type to single tuple * change return to single tuple --------- Co-authored-by: Joaquin Carletti <joaquin.carletti@lambdaclass.com>
Configuration menu - View commit details
-
Copy full SHA for 3c91ddb - Browse repository at this point
Copy the full SHA 3c91ddbView commit details
Commits on Aug 30, 2023
-
* add millers loop basics * add PI functions to loop * add neg of a G2 point * add loop counter * fix return of negate funciton * fix loop_counter values * rename utils file * fix imports * change constants to fp6 file * fix miller loop set up * add comment * fix comment * fix typo
Configuration menu - View commit details
-
Copy full SHA for 8c6f24f - Browse repository at this point
Copy the full SHA 8c6f24fView commit details -
Add Final exponentiation (#32)
* Add ten in montgomery form as constant * Add frobenius operations * Add negate operation for fp6 * Add conjugate operation for fp2 * Add operations in fp2 used in final exponentiation * Add final exponentiation function * Fix return types to match with new changes * Add corrections to n_square function * Use montgomery for gamma factors and add frobenius tests * Add test for cyclotomic square * Add another final exponentiation implementation and test
Configuration menu - View commit details
-
Copy full SHA for 31057fb - Browse repository at this point
Copy the full SHA 31057fbView commit details
Commits on Sep 7, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 526dbee - Browse repository at this point
Copy the full SHA 526dbeeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2bf9833 - Browse repository at this point
Copy the full SHA 2bf9833View commit details
Commits on Sep 8, 2023
-
Add pairing tests for python implementation (#36)
* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop --------- Co-authored-by: Joaquin Carletti <joaquin.carletti@lambdaclass.com>
Configuration menu - View commit details
-
Copy full SHA for 6540a34 - Browse repository at this point
Copy the full SHA 6540a34View commit details -
Frobenius Operator in Yul (#43)
* Implement Frobenius operator in Yul * Fix Frobenius functions returns * Fix Frobenius functions returns * Add tests * Update comment
Configuration menu - View commit details
-
Copy full SHA for a069ac5 - Browse repository at this point
Copy the full SHA a069ac5View commit details -
* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop * add mix addition in yul * fix function * Update precompiles/Playground.yul Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com> --------- Co-authored-by: IAvecilla <iavecilla@fi.uba.ar> Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar> Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 2a5cf36 - Browse repository at this point
Copy the full SHA 2a5cf36View commit details -
Add cyclotomicSquare and nSquare (#47)
* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop * add cyclotomic square * fix assignments * add nSquare --------- Co-authored-by: IAvecilla <iavecilla@fi.uba.ar> Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar>
Configuration menu - View commit details
-
Copy full SHA for fb0a627 - Browse repository at this point
Copy the full SHA fb0a627View commit details -
Add
t
exponentiation for fp12 in Yul (#48)* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop * Add implementation for exponentiation by t for fp12 --------- Co-authored-by: Joaquin Carletti <joaquin.carletti@lambdaclass.com> Co-authored-by: Iván Litteri <ilitteri@fi.uba.ar>
Configuration menu - View commit details
-
Copy full SHA for 853c658 - Browse repository at this point
Copy the full SHA 853c658View commit details -
* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop * add final exponentiation * Update precompiles/Playground.yul Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com> --------- Co-authored-by: IAvecilla <iavecilla@fi.uba.ar> Co-authored-by: Ivan Litteri <67517699+ilitteri@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 4b20a2a - Browse repository at this point
Copy the full SHA 4b20a2aView commit details -
Point doubling step of the miller loop in Yul (#46)
* Add function utils to check elements in curve and twisted curve * Add conditional for g2 from affine * Add tests for conjugate in fp12 and fp2 * Fix miller loop errors * Add pair function * Add pairing test from eth tests * Correct NAF representation * Change exponentiation impl to be able to test it correctly * Correct point doubling and miller loop * Add test for point doubling and line evaluation * add addition tests * Add tests for frobenius * Add line evaluation test after point addition * Add point doubling and adding functions for projective coordinates * Fix in miller loop function * Add test refactors with new functions * Fix constant for fp12 * Add functions for g2 in projective and affine * Fix NAF representation * add eth tests * add tests names * add expt * change final_exp * fix fp6 square * Delete test generator for pairing in python * Delete unnecesary comments * Delete unused exponentiation function * Delete unused import and old todo * Improve naming of doubling and addition steps in miller loop * Add implementation for point doubling step of the miller loop * Fix fp2 neg function parameters * Fix typo in parameters to return * Add precomputation for inverse of two --------- Co-authored-by: Joaquin Carletti <joaquin.carletti@lambdaclass.com>
Configuration menu - View commit details
-
Copy full SHA for ed3b7d3 - Browse repository at this point
Copy the full SHA ed3b7d3View commit details -
* Add basic functionality for G2 Twist * Rename neg to g2Neg
Configuration menu - View commit details
-
Copy full SHA for 35b257d - Browse repository at this point
Copy the full SHA 35b257dView commit details -
Configuration menu - View commit details
-
Copy full SHA for e86dc55 - Browse repository at this point
Copy the full SHA e86dc55View commit details
Commits on Sep 11, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 0ac466a - Browse repository at this point
Copy the full SHA 0ac466aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2230552 - Browse repository at this point
Copy the full SHA 2230552View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9c80888 - Browse repository at this point
Copy the full SHA 9c80888View commit details -
ecPairing common tests for all Ethereum implementations (#51)
* Add ecpairing official tests * Change tests path for test generator script --------- Co-authored-by: IAvecilla <nachoavecilla@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for b8abf9c - Browse repository at this point
Copy the full SHA b8abf9cView commit details