Releases: Consensys/gnark-crypto
Releases · Consensys/gnark-crypto
v0.12.1
What's Changed
- fix: GLV exponentiation in GT with large exponents by @ThomasPiellard in #451 Security Advisory
- feat: kzg extended transcript by @ThomasPiellard in #452
- perf(fft): introduce cache efficient bit reverse shuffling by @gbotrel in #446
- perf: Improve performance of point equality checks by @jsign in #450
Full Changelog: v0.12.0...v0.12.1
v0.12.0
What's Changed
-
fix malleability sig by @ThomasPiellard in #449 https://nvd.nist.gov/vuln/detail/CVE-2023-44273
-
perf: multiexp, avoid direct coordinate access to check for zero points by @jsign in #414
-
perf: edwards, improve the performance of Add, MixedAdd and IsOnCurve by @jsign in #441
-
perf: edwards, avoid inversions in Add in extended points by @jsign in #442
Full Changelog: v0.11.2...v0.12.0
v0.11.2
What's Changed
- Fix some typos by @jtraglia in #394
- Adding testing for deserialization of G1 and G2 points by @asanso in #393
- Fix some implicit memory aliasing in for loops by @jtraglia in #395
- Do not XOR with zero by @jtraglia in #398
- Disable check shadowing in govet linter by @jtraglia in #397
- Add a bunch of "nosec G404" comments in test code by @jtraglia in #399
- Enable misspell linter & fix findings by @jtraglia in #401
- Fix
RSis.CopyWithFreshBuffer
by @AlexandreBelling in #402 - feat: Marshal [][]fr.Element by @Tabaie in #400
- Run golangci-lint on generated files by @jtraglia in #396
- docs: ConsenSys -> Consensys by @Tabaie in #406
- msm: semaphore to limit CPUs + better split strategy (up to 25% perf boost on 96cores) by @gbotrel in #403
- Feat/fold pedersen by @Tabaie in #407
- fix: do not read empty slices as nil by @Tabaie in #410
- fix: incorrect semaphore init could cause msm deadlock by @gbotrel in #411
- edwards: optimize point negation by @jsign in #413
- Feat/gkr custom gates by @Tabaie in #419
- perf: fast path for SIS with logTwoBound: 8, logTwoDegree: 6 by @gbotrel in #416
- feat: add WriteRawTo, UnsafeReadFrom to kzg.ProvingKey by @gbotrel in #422
- Fix/gkr eq bug by @Tabaie in #421
- feat: add AsyncReadFrom to fr.Vector and fft.Domain by @gbotrel in #424
- fix: ECDSA HashToInt bytes-bits mismatch by @ivokub in #428
- Small optimization over the memory usage of MiMC by @AlexandreBelling in #435
- perf: improve fft domain memory footprint by @gbotrel in #437
- Refactor/gkr test vectors by @Tabaie in #425
- v0.11.2 by @gbotrel in #438
New Contributors
Full Changelog: v0.11.1...v0.11.2
v0.11.1
v0.10.1
v0.9.2
v0.11.0
What's Changed
- build: update ci github action dependencies by @gbotrel in #369
- Eliminate 2 allocations per Pedersen call by @omerfirmak in #371
- Fix/fold kzg fs by @Tabaie in #377
- Add
CopyWithFreshBuffer
a function to copy the state by @AlexandreBelling in #370 - Refactor: final exponentiation in pairings by @yelhousni in #375
- Refactor: export endomorphisms by @yelhousni in #376
- fix(kzg): nb of digests in BatchVerifyMultiPoints should be nonzeo by @yelhousni in #374
- Precompute point multiplication results in pedersen by @omerfirmak in #380
- Refactor: do not export endomorphisms + Double in affine by @yelhousni in #382
- Refactor/break kzg srs by @Tabaie in #378
- Feat/encode uint64 slices by @Tabaie in #379
- refactor: break pedersen key into proving (committing) and verifying by @Tabaie in #384
- Perf: KZG verification in a single point by @yelhousni in #386
- make
mapToCurve
public to allow for custom cofactor clearing by @hussein-aitlahcen in #372 - feat: fix v computation in ECDSA signature by @ivokub in #385
- Update the limb decomposition of the SIS by @AlexandreBelling in #389
- fix: handle all bitmask in point deserialization
New Contributors
- @omerfirmak made their first contribution in #371
- @hussein-aitlahcen made their first contribution in #372
Full Changelog: v0.10.0...v0.11.0
v0.10.0
What's Changed
Fixes
New features / refactor
- feat: FFT signature now takes variadic options by @gbotrel in #345
- feat: add ECDSA public key recover from message, signature and recovery info by @ivokub in #347
- expose bn254 tower to gnark by @yelhousni in #354
- Export BW6-761 E3/E6 by @SherLzp in #359
- Expose BLS12-381 tower by @yelhousni in #360
Perf
- perf: sis tensor commitment by @gbotrel in #344
- Add support for parallelization in the tensor-commitment by @AlexandreBelling in #263
- Perf/tensor commitment by @AlexandreBelling in #341
- perf(stark-curve): no subgroup check on prime-order curve by @yelhousni in #349
- perf(bw6-756): optimize GT subgroup membership by @yelhousni in #351
- perf: optimize BLS24-317 final exp by @yelhousni in #356
- perf: tweaks in iop/ kzg/ packages by @gbotrel in #361
- perf & refactor: pairings by @yelhousni in #366
New Contributors
- @ivokub made their first contribution in #347
- @SherLzp made their first contribution in #359
- @jtraglia made their first contribution in #364
Full Changelog: v0.9.1...v0.10.0
v0.9.1
What's Changed
- Add STARK curve by @yelhousni in #299
- feat: Add ECDSA by @yelhousni in #310
- feat: introduce field.Vector by @gbotrel in #311
- fix: number of rounds for mimc by @yelhousni in #320
- nuke element.Bit() fixes #306 by @gbotrel in #331
- feat: iop arguments by @ThomasPiellard in #282
- fix: mimc pow7 by @Tabaie in #333
- perf: gkr improvements by @gbotrel in #328
- perf: gkr improvements by @Tabaie in #319
- field agnostic fiat shamir challenge names by @Tabaie in #308
- feat: add Vector support to ecc marshal encoder by @gbotrel in #336
- bn254 mimc test vector by @Tabaie in #323
Full Changelog: v0.9.0...v0.9.1
v0.9.0
What's Changed
New features
- GKR by @Tabaie in #243
- Efficiently verifiable Pedersen commitments by @Tabaie in #266
- secp256k1 curve by @yelhousni in #277
element.SetBytesCanonical
,element.BigEndian
andelement.LittleEndian
by @gbotrel in #286
Performance
- MSM uses batch affine addition (up to 60% speedup 🎉 ) by @gbotrel in #261
- Faster G2 subgroup membership on BN254 by @yelhousni in #251
- arm64,purego: field arithmetic mul for arm64 and cleanup build tags by @gbotrel in #257
Refactor and cleanup
- Field package exposes Hash by @Tabaie in #271
- Remove
internal/
dependencies in field generated code by @gbotrel in #287 - Removes
FromMont
andToMont
fromfield.Element
api by @gbotrel in #288 - ToBigIntRegular is deprecated, introduce BigInt method by @gbotrel in #290
Fixes
- MiMC reasons with p-digits block by @ThomasPiellard in #265
Full Changelog: v0.8.0...v0.9.0