Skip to content

Conversation

asanso
Copy link
Contributor

@asanso asanso commented Apr 18, 2024

This is a continuation of #8322 (closed by mistake)

ATTENTION: ERC-RELATED PULL REQUESTS NOW OCCUR IN ETHEREUM/ERCS

--

When opening a pull request to submit a new EIP, please use the suggested template: https://github.com/ethereum/EIPs/blob/master/eip-template.md

We have a GitHub bot that automatically merges some PRs. It will merge yours immediately if certain criteria are met:

  • The PR edits only existing draft PRs.
  • The build passes.
  • Your GitHub username or email address is listed in the 'author' header of all affected PRs, inside .
  • If matching on email address, the email address is the one publicly listed on your GitHub profile.

@asanso asanso requested a review from eth-bot as a code owner April 18, 2024 11:56
@github-actions github-actions bot added c-update Modifies an existing proposal s-review This EIP is in Review t-core labels Apr 18, 2024
@eth-bot
Copy link
Collaborator

eth-bot commented Apr 18, 2024

✅ All reviewers have approved.

@eth-bot eth-bot enabled auto-merge (squash) April 18, 2024 11:57
Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All Reviewers Have Approved; Performing Automatic Merge...

@github-actions github-actions bot added the w-ci Waiting on CI to pass label Apr 18, 2024
EIPS/eip-2537.md Outdated
A subgroup check **is mandatory** during the pairing call. Implementations *should* use fast subgroup checks: at the time of writing, multiplication gas cost is based on the `double-and-add` multiplication method that has a clear "worst case" (all bits are equal to one). For pairing operations, it is expected that implementations use faster subgroup checks, e.g. by using the wNAF multiplication method for elliptic curves that is ~ `40%` cheaper with windows size equal to 4. (Tested empirically. Savings are due to lower hamming weight of the group order and even lower hamming weight for wNAF. Concretely, subgroup check for both G1 and G2 points in a pair are around `35000` combined).

The check **is mandatory** during **ALL** the calls. Implementations *should* use fast subgroup checks. It can be stated that it **must** be performed by fast subgroup checks to achieve a speedup, resulting in a discount over naive implementations based on the `double-and-add` multiplication method, which has a clear "worst-case" scenario where all bits are equal to one.
Before accepting an input, it is recommended to subject the input to the appropriate endomorphism test as described in https://eprint.iacr.org/2021/1130.pdf.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@asanso this link won't work in the EIP. I suggest either removing or uploading the full PDF as an asset in the repo.

Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All Reviewers Have Approved; Performing Automatic Merge...

@mratsim
Copy link
Contributor

mratsim commented Apr 20, 2024

asanso#1

for rephrasing according to #8322 (comment)
and also incidentally addresses @timbeiko remark at #8456 (comment)

eth-bot
eth-bot previously approved these changes Apr 22, 2024
Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All Reviewers Have Approved; Performing Automatic Merge...

Co-authored-by: lightclient <14004106+lightclient@users.noreply.github.com>
auto-merge was automatically disabled April 22, 2024 07:42

Head branch was pushed to by a user without write access

@eth-bot eth-bot enabled auto-merge (squash) April 22, 2024 07:43
eth-bot
eth-bot previously approved these changes Apr 22, 2024
Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All Reviewers Have Approved; Performing Automatic Merge...

Copy link

The commit 5832c53 (as a parent of 490ef62) contains errors.
Please inspect the Run Summary for details.

auto-merge was automatically disabled April 22, 2024 09:30

Head branch was pushed to by a user without write access

@eth-bot eth-bot enabled auto-merge (squash) April 22, 2024 09:31
Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All Reviewers Have Approved; Performing Automatic Merge...

@eth-bot eth-bot merged commit d8f70e7 into ethereum:master Apr 22, 2024
@github-actions github-actions bot removed the w-ci Waiting on CI to pass label Apr 22, 2024
@mratsim
Copy link
Contributor

mratsim commented Apr 22, 2024

Not sure if it was intended, the bot says all reviewers have approved but the bot was the only reviewer
image

somnathb1 added a commit to erigontech/erigon that referenced this pull request May 16, 2024
See ethereum/EIPs#8456 &
ethereum/EIPs#8497.

I updated the tests from
https://github.com/ethereum/EIPs/tree/master/assets/eip-2537 and split
them into separate files from the previously existing tests.

---------

Co-authored-by: Somnath Banerjee <snb895@outlook.com>
yperbasis added a commit to erigontech/erigon that referenced this pull request Oct 1, 2024
See ethereum/EIPs#8456 &
ethereum/EIPs#8497.

I updated the tests from
https://github.com/ethereum/EIPs/tree/master/assets/eip-2537 and split
them into separate files from the previously existing tests.

---------

Co-authored-by: Somnath Banerjee <snb895@outlook.com>
sonhv0212 added a commit to sonhv0212/ronin that referenced this pull request Mar 18, 2025
sonhv0212 added a commit to sonhv0212/ronin that referenced this pull request May 20, 2025
sonhv0212 added a commit to sonhv0212/ronin that referenced this pull request May 21, 2025
sonhv0212 added a commit to ronin-chain/ronin that referenced this pull request May 21, 2025
* core/vm: add precompiled contracts, addresses Prague

reference: ethereum/EIPs#8945

* core/vm: remove redundant MUL precompiles in tests

reference: ethereum/EIPs#8945

* params: adjust gas of BLS precompiled address

References:
- ethereum/EIPs#9097
- ethereum/EIPs#9098

* core/vm,params: update DiscountTable for Bls12381G1 and Bls12381G2

reference: ethereum/EIPs#9116

* core/vm: add subgroup checks for mulexp for G1/G2

Reference:
- PR: ethereum/go-ethereum#29637
- spec: ethereum/EIPs#8456

* core/vm/testdata/precompiles: update precompile tests EIP-2537

* core/vm: fix wrong addresses of precompiled contracts Prague

* core/vm: use gnark BLS12-381 instead of the older

PR: ethereum/go-ethereum#29441

* core/vm,tests/fuzzers/bls12381: Remove unused tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-update Modifies an existing proposal s-review This EIP is in Review t-core
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants