-
Notifications
You must be signed in to change notification settings - Fork 242
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
Generic pairings for BW6 #633
Conversation
A fun observation. In the Miller loop computation we are currently free to get rid of
For BW6-761 nothing changes as it has |
That's still missing right? Would be good to have that PR open for this to test too, at least locally. Edit: NVM, just saw this in the 767 PR too. |
Surprisingly, on my machine Generic implementation:
Curve specific one:
what slightly contradicts https://hackmd.io/@gnark/BW6-761-changes#Final-exponentiation. Moreover, the addition chains optimization (#634) is less applicable to the curve specific implementation. The question then is if we want to support curve-specific final exp implementation for BW-761 for compatibility reasons? The results of the pairing computation will be different, but I don't know any project that would use it for smth other than bilinearity, that still holds. |
Co-authored-by: mmagician <[email protected]>
Thank you for the review @mmagician Really exciting findings! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good 👍🏼
@swasilyev On second thoughts this should go into breaking changes not features section in the CHANGELOG, WDYT? |
Btw, i think that currently the change is not breaking, as i moved the existing curve-specific implementation to the curve definition in arkworks-rs/curves#156. Though i would remove it later in another pr. |
I think it's still a breaking change because defining a BW6 curve now requires specifying more constants. |
@swasilyev I think the last part is to move the CHANGELOG entry from features to breaking changes: I agree with Pratyush that is indeed a breaking change on the API. |
Co-authored-by: mmagician <[email protected]> Co-authored-by: Pratyush Mishra <[email protected]>
This reverts commit 83cd321.
Part of the project of getting BW6-767 the outer curve for BLS12-381 into arkworks, supersedes (fixes) #624
Implements pairings for the BW6 family in a generic way, following https://yelhousni.github.io/phd.pdf, section 4.4.2
for curves with "trace modulo r" = 0 (this is BW6-767)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.
Pending
section inCHANGELOG.md
Files changed
in the GitHub PR explorer