Skip to content

Conversation

@rodiazet
Copy link
Member

Implementation of the bls12_map_fp_to_g1 and bls12_map_fp2_to_g2 precompiles: mapping of fp field element to a point on E1 curve (BLS12-381) and mapping fp2 extension field element to a point on E2 curve (BLS12-381) according to the EIP-2537 spec https://eips.ethereum.org/EIPS/eip-2537#abi-for-mapping-fp-element-to-g1-point and https://eips.ethereum.org/EIPS/eip-2537#abi-for-mapping-fp2-element-to-g2-point.

Depends on: #1010

@rodiazet rodiazet added precompiles Related to EVM precompiles Prague Changes for Prague upgrade labels Sep 17, 2024
@rodiazet rodiazet requested a review from chfast September 17, 2024 14:20
@codecov
Copy link

codecov bot commented Sep 17, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 94.15%. Comparing base (7c6a3ce) to head (dac8d4d).
Report is 1 commits behind head on master.

Additional details and impacted files
@@ Coverage Diff @@ ## master #1012 +/- ## ========================================== + Coverage 94.08% 94.15% +0.06%  ========================================== Files 147 147 Lines 15748 15796 +48 ========================================== + Hits 14816 14872 +56  + Misses 932 924 -8 
Flag Coverage Δ
eof_execution_spec_tests 17.31% <0.00%> (-0.06%) ⬇️
ethereum_tests 27.36% <0.00%> (-0.09%) ⬇️
ethereum_tests_silkpre 19.21% <0.00%> (-0.07%) ⬇️
execution_spec_tests 20.12% <80.55%> (+0.20%) ⬆️
unittests 88.83% <69.44%> (-0.07%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
lib/evmone_precompiles/bls.cpp 100.00% <100.00%> (ø)
test/state/precompiles.cpp 97.65% <100.00%> (+3.34%) ⬆️
test/unittests/precompiles_bls_test.cpp 100.00% <100.00%> (ø)
@rodiazet rodiazet changed the title precompilles: Implement maping of field elements to BLS12-381 curve points precompilles: Implement mapping of field elements to BLS12-381 curve points Sep 17, 2024
@rodiazet rodiazet force-pushed the bls-map-to-point branch 2 times, most recently from 3f5cc8e to d4f5e81 Compare September 18, 2024 09:12
@rodiazet rodiazet force-pushed the bls-map-to-point branch 2 times, most recently from 51421d0 to de4c167 Compare September 18, 2024 12:54
@rodiazet rodiazet force-pushed the bls-map-to-point branch 3 times, most recently from b53e3f2 to 06af5a5 Compare September 18, 2024 13:45
@chfast chfast enabled auto-merge (squash) September 18, 2024 13:49
@chfast chfast merged commit f007e7c into master Sep 18, 2024
@chfast chfast deleted the bls-map-to-point branch September 18, 2024 14:00
chfast added a commit that referenced this pull request Sep 18, 2024
Implementation of the `bls12_pairing_check` precompile: According to spec https://eips.ethereum.org/EIPS/eip-2537#abi-for-pairing-check Depends on: #1012 Co-authored-by: Paweł Bylica <pawel@ethereum.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Prague Changes for Prague upgrade precompiles Related to EVM precompiles

3 participants