Skip to content

Conversation

@ivokub
Copy link
Collaborator

@ivokub ivokub commented Apr 14, 2025

Description

This commit cherry-picks only map-to-g2 from #1473. Depends on #1447.

Hash-to-G2 will be worked on in #1473 as requires some modification in other gadgets which could be pushed separately.

Type of change

  • New feature (non-breaking change which adds functionality)

How has this been tested?

  • TestG2Isogeny
  • TestClearCofactorTestSolve
  • TestMapToCurve2
  • TestMapToG2

Checklist:

  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I did not modify files generated from templates
  • golangci-lint does not output errors locally
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot reviewed 34 out of 36 changed files in this pull request and generated no comments.

Files not reviewed (2)
  • go.mod: Language not supported
  • internal/stats/latest_stats.csv: Language not supported
Comments suppressed due to low confidence (3)

std/algebra/emulated/sw_bls12381/g2_test.go:227

  • Verify that the scalar field used in tests (ecc.BN254.ScalarField()) is appropriate for BLS12-381 operations, as an inadvertent mismatch might lead to subtle errors during verification.
err := test.IsSolved(&MultiScalarMulTest{}, &assignment, ecc.BN254.ScalarField())

std/algebra/emulated/sw_bls12381/g1.go:190

  • [nitpick] Consider clarifying the subgroup order check within AssertIsOnG1 with additional inline comments to improve maintainability and ease future reviews.
func (g1 *G1) AssertIsOnG1(P *G1Affine) {

std/algebra/emulated/sw_bls12381/hints.go:345

  • [nitpick] Consider clarifying the function comment regarding the expected order of nativeOutputs in g1SqrtRatioHint to ensure maintainers understand the intended behavior.
func g1SqrtRatioHint(nativeMod *big.Int, nativeInputs, nativeOutputs []*big.Int) error {

@ivokub ivokub requested a review from ThomasPiellard April 16, 2025 09:42
@ivokub ivokub merged commit 117c462 into master Apr 16, 2025
5 checks passed
@ivokub ivokub deleted the feat/clean-map_to_g2 branch April 16, 2025 10:07
AlexandreBelling pushed a commit that referenced this pull request Apr 30, 2025
Co-authored-by: Youssef El Housni <[email protected]>
Co-authored-by: Thomas Piellard <[email protected]>
Co-authored-by: Arya Tabaie <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants