Skip to content
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

BEP-439: Implement EIP-2537: Precompile for BLS12-381 curve operations #2719

Closed
wants to merge 3 commits into from

Conversation

buddh0
Copy link
Collaborator

@buddh0 buddh0 commented Sep 23, 2024

Description

BEP-439: Implement EIP-2537: Precompile for BLS12-381 curve operations

Rationale

tell us why we need these changes...

Example

how to verify the code implement? two steps:

  1. ensure test case files in bsc/core/vm/testdata/precompiles are the same with go-ethereum/core/vm/testdata/precompiles at the latest commit
  2. run the test cases
cd core/vm
go test -run TestPrecompiledBLS12381

all pass

Changes

the first two commitss are picked from upstream
the third commit refers to ethereum/go-ethereum#29552

…#29441)

This PR updates the bls contracts from our internal implementation which is an unmaintained fork of the kilic library to the gnark-crypto library that is actively maintained by consensys.

It also updates the gas-costs according to the EIP
@buddh0
Copy link
Collaborator Author

buddh0 commented Sep 23, 2024

lint error for commits from upstream, so ignore

@buddh0
Copy link
Collaborator Author

buddh0 commented Sep 23, 2024

please reserve all commits when merging into develop!

@buddh0 buddh0 marked this pull request as ready for review September 23, 2024 10:27
@buddh0 buddh0 changed the title BEP-439: Implement EIP-2537: Precompile for BLS12-381 curve operations BEP-439: Precompile for BLS12-381 curve operations Sep 23, 2024
@buddh0 buddh0 changed the title BEP-439: Precompile for BLS12-381 curve operations BEP-439: Implement EIP-2537: Precompile for BLS12-381 curve operations Sep 26, 2024
@buddh0
Copy link
Collaborator Author

buddh0 commented Sep 29, 2024

the implement is aligned with pectrac-devnet-3,
according to the latest Ethereum All Core Developers Execution Call #197
image
so the spec still not be finalized.

Copy link

@octavio12345300 octavio12345300 left a comment

Choose a reason for hiding this comment

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

listo

@buddh0
Copy link
Collaborator Author

buddh0 commented Oct 10, 2024

convert to draft, for the gas cost will change

@buddh0 buddh0 marked this pull request as draft October 10, 2024 08:01
@will-2012
Copy link
Contributor

convert to draft, for the gas cost will change

What is the reason for this? :)

@buddh0
Copy link
Collaborator Author

buddh0 commented Nov 22, 2024

has been upstreamed in PR #2761

@buddh0 buddh0 closed this Nov 22, 2024
@Ali3219
Copy link

Ali3219 commented Nov 22, 2024

@Ali3219
Copy link

Ali3219 commented Nov 22, 2024

0x08Dc6385204D434f0A407902eF6A271de0366912

1 similar comment
@Ali3219
Copy link

Ali3219 commented Nov 22, 2024

0x08Dc6385204D434f0A407902eF6A271de0366912

@Ali3219
Copy link

Ali3219 commented Nov 22, 2024

لطفاً هنگام ادغام در توسعه، تمام تعهدات را رزرو کنید!

Header
Cell

[ ]

0x08Dc6385204D434f0A407902eF6A271de0366912

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants