Skip to content
This repository was archived by the owner on Dec 18, 2023. It is now read-only.

Add curve BW6-767#154

Closed
mmagician wants to merge 9 commits intomasterfrom
bw6-767
Closed

Add curve BW6-767#154
mmagician wants to merge 9 commits intomasterfrom
bw6-767

Conversation

@mmagician
Copy link
Copy Markdown
Member

Description

The outer curve whose scalar field is the base field of BLS12-381.


Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

  • Targeted PR against correct branch (master)
  • Linked to Github issue with discussion and accepted design OR have an explanation in the PR that describes this work.
  • Wrote unit tests
  • Updated relevant documentation in the code
  • Added a relevant changelog entry to the Pending section in CHANGELOG.md
  • Re-reviewed Files changed in the Github PR explorer

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
author information
2-adicity of the scalar field
@mmagician
Copy link
Copy Markdown
Member Author

@yelhousni

@mmagician
Copy link
Copy Markdown
Member Author

Still need to fix the tests, I think the Pairing config is off

@mmagician
Copy link
Copy Markdown
Member Author

It seems that the optimized final exponentiation in BW6 model is specific to the BW6-761 curve. For now I've updated the pairing parameters to match the new Miller loop algorithm.

@mmagician
Copy link
Copy Markdown
Member Author

Superseded by #156

@mmagician mmagician closed this Mar 31, 2023
@mmagician mmagician deleted the bw6-767 branch September 1, 2023 08:12
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants