zeekay f63b76cde3 name the work this is derived from
The license text travelled with the code but nothing said whose code it was,
so a reader had to infer the origin from a directory name or a line of README
left over from upstream. A NOTICE states it: the project, the terms it came
under, and the copyright holder to reproduce.
2026-09-06 03:12:12 -07:00
2026-06-28 20:54:45 -07:00
2022-05-16 14:47:28 +01:00
2021-10-21 20:17:56 +01:00
2023-02-02 20:16:18 +00:00
2023-02-02 20:15:25 +00:00
2026-09-06 03:12:12 -07:00
2026-06-28 20:54:45 -07:00

go-ipa

This is a luxfi-maintained fork of crate-crypto/go-ipa; see LUXFI-FORK.md for sync policy.


go-ipa

go-ipa is a library of cryptographic primitives for Verkle Trees.

License Go Version

Table of Contents

Description

go-ipa implements the Verkle Tree cryptography spec with extra optimizations.

The includes:

  • Implementation of the Bandersnatch curve, and Banderwagon prime-order group.
  • Pedersen Commitment for vector commitments using precomputed tables.
  • Inner Product Argument prover and verifier implementations for polynomials in evaluation form.
  • Multiproof prover and verifier implementations.

Usage in Verkle Tree client libraries

It's extremely important that clients using this library for Verkle Tree implementations only use the following packages:

  • common for general utility functions.
  • banderwagon for the prime-order group.
  • ipa for proof generation and verification.

Do not use the bandersnatch package directly nor use unsafe functions to get into banderwagon internals. Doing so can create a security vulnerability in your implementation.

Test & Benchmarks

To run the tests and benchmarks, run the following commands:

$ go test ./...

To run the benchmarks:

go test ./... -bench=. -run=none -benchmem

Security

If you find any security vulnerability, please don't open a GH issue and contact repo owners directly.

LICENSE

MIT and Apache 2.0.

S
Description
luxfi-maintained fork of crate-crypto/go-ipa. See LUXFI-FORK.md.
Readme
493 KiB
Languages
Go 84.7%
Assembly 15.3%