Skip to content

chore(deps): bump github.com/consensys/gnark-crypto from 0.20.1 to 0.21.0 - #3946

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/consensys/gnark-crypto-0.21.0
Open

chore(deps): bump github.com/consensys/gnark-crypto from 0.20.1 to 0.21.0#3946
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/consensys/gnark-crypto-0.21.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 17, 2026

Copy link
Copy Markdown
Contributor

Bumps github.com/consensys/gnark-crypto from 0.20.1 to 0.21.0.

Release notes

Sourced from github.com/consensys/gnark-crypto's releases.

v0.21.0

⚠️ Breaking Changes

  • FRI & Plookup relocated — The fri and plookup packages are gone from all curves. FRI primitives now live under field/koalabear.
  • Parallel goes publicinternal/parallel is now exported as parallel; the worker pool moved to utils.
  • Stricter EdDSA key parsing:
    • PublicKey.SetBytes now rejects points outside the prime-order subgroup.
    • PrivateKey.SetBytes now rejects malformed scalars and public keys that don't match their scalar.
    • Keys that used to load may now error.

🔒 Security

  • shplonk & fflonk were missing subgroup membership checks on digests and proof points before verifying.
  • KZG MPC setupVerify was checking the ratio on the previous SRS instead of the contributed one, and never bound the G1 update to the proof.
  • Subgroup membership tests added to all twistededwards curves.
  • Fp2.Sqrt returned a wrong result on (non-QR, 0) inputs.
  • Fixed a 4-byte overread in the innerProdVec AVX-512 path.

✨ New

  • Cube roots in Fp and Fp2.
  • FFT over degree-6 extensions for koalabear and babybear.
  • Generic BitReverse / BitReverseCopy helpers in utils.
  • Fixed-base scalar multiplication on twisted Edwards curves (used by eddsa).
  • secp256r1: Fp2 tower + Cardano cube-root solver.

⚡ Faster

  • 4-bit sliding window exponentiation across all fields.
  • Lazy-reduction 𝔽p2 multiplication assembly for BLS12-381, BLS12-377, BLS24-315 & BLS24-317, plus improved Expt/mulBySeed chains and faster hash-to-G1 in the highly 2-adic Fp case.
  • New SIMD work on the small fields:
    • AVX-512 & NEON kernels for Poseidon2 compression and VectorE6
    • AVX-512 batch ops for E6 FFT (2.97×)
    • Inlined E6 arithmetic for 31-bit primes (2.07×)
    • Unrolled FFT kernels
Changelog

Sourced from github.com/consensys/gnark-crypto's changelog.

[v0.21.0] - 2026-08-10

Breaking

  • remove fri package from all curves; FRI primitives now live in field/koalabear (#856, #871)
  • remove plookup package from all curves (#862)
  • internal/parallel is now public as parallel; the worker pool moved to utils (#819, #823)
  • eddsa PublicKey.SetBytes rejects points outside the prime-order subgroup; PrivateKey.SetBytes rejects malformed scalars and public keys that don't match the scalar (#859)

Security

  • eddsa: reject small-subgroup public keys (#859)
  • shplonk, fflonk: check digests and proof points are in the subgroup before verifying (#858)
  • kzg: MpcSetup.Verify checked the ratio on the previous SRS instead of the contributed one, and did not bind the G1 update to the proof (#857)
  • add subgroup membership tests to all twistededwards curves (#833)

Feat

  • cube roots in Fp and Fp2 (#825)
  • FFT over degree-6 extension for koalabear and babybear (#838, #772)
  • generic BitReverse/BitReverseCopy (naive and Cobra) in utils (#871)
  • koalabear: Compressx16Columns, Compressx16ColumnsWithState and VectorE6.MulAccByElement (#865, #866, #871)
  • twistededwards: fixed-base ScalarMultiplicationBase, used by eddsa (#839)
  • secp256r1: Fp2 tower and Cardano cube-root solver (#831)

Fix

  • Fp2.Sqrt returned a wrong result on (non-QR, 0) inputs (#845)
  • amd64: 4-byte overread in the innerProdVec AVX-512 path (#841)
  • restore ExecuteAligned behavior lost in the Execute refactor (#836)
  • macOS build
  • fft/domain: stale FinerGenerator/GeneratorSqrt comment (#744)

Perf

  • 4-bit sliding window exponentiation for all fields (#817)
  • lazy-reduction 𝔽p2 multiplication assembly (BLS12-381, BLS12-377, BLS24-315, BLS24-317) (#861)
  • add-sub chains in Expt/mulBySeed and optimal Karabina 0-runs (#860)
  • hash-to-G1 in the highly 2-adic Fp case (#830)
  • inline E6.Mul/E6.Square for 31-bit primes (2.07x) (#842)
  • AVX-512 batch ops for E6 FFT on koalabear (2.97x) (#843)
  • koalabear: unrolled FFT kernels and faster SIS LimbIterator (#834)
  • koalabear: AVX-512 VectorE6 scalar mul-acc kernels (#868)
  • koalabear: NEON Compressx16Columns kernel (arm64) (#870)
  • F31 Poseidon2: permutation16_avx512 (-17%) (#829)
  • generalize Compressx16 AVX-512 for variable colSize (#824)
  • kzg mpc setup: drop the parallel pool, use batch subgroup checks (#823)

Build

  • deps: bump golang.org/x/crypto to 0.54.0, x/sys to 0.47.0, x/sync to 0.22.0
  • pin GitHub Actions to commit SHAs (#837)
  • apply go fix modernizations (#820)

Commits
  • 0a975d7 v0.21.0 (#872)
  • a71790d feat(koalabear): upstream FRI primitives (#871)
  • e2a02f7 perf(koalabear): NEON kernel for Compressx16Columns (arm64) (#870)
  • e4cf874 fix: KZG MPC setup consistency (#857)
  • bc5b07e fix: prevent small subgroup public keys (#859)
  • 039783a Perf: Lazy-reduction 𝔽p2 multiplication assembly (BLS12-381, BLS12-377, BLS24...
  • 24876de feat(koalabear): AVX-512 VectorE6 scalar mul-acc kernels (#868)
  • 0d62bae deps(actions)(deps): bump actions/setup-go from 6.5.0 to 7.0.0 (#864)
  • 5736a0e deps(actions)(deps): bump actions/checkout from 7.0.0 to 7.0.1 in the core-ac...
  • f1c4fca feat(koalabear): vectorized VectorE6.MulAccByElement (#866)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/consensys/gnark-crypto](https://github.com/consensys/gnark-crypto) from 0.20.1 to 0.21.0.
- [Release notes](https://github.com/consensys/gnark-crypto/releases)
- [Changelog](https://github.com/Consensys/gnark-crypto/blob/master/CHANGELOG.md)
- [Commits](Consensys/gnark-crypto@v0.20.1...v0.21.0)

---
updated-dependencies:
- dependency-name: github.com/consensys/gnark-crypto
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Aug 17, 2026
@codecov

codecov Bot commented Aug 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 74.76%. Comparing base (98ce435) to head (59c2293).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3946   +/-   ##
=======================================
  Coverage   74.76%   74.76%           
=======================================
  Files         461      461           
  Lines       40915    40915           
=======================================
+ Hits        30590    30591    +1     
+ Misses       8232     8224    -8     
- Partials     2093     2100    +7     
Flag Coverage Δ
jsonv2 77.36% <ø> (-0.05%) ⬇️

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

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants