Files
Hanzo AI a3dd3f991f ipa: fix stale banderwagon import path
Replace github.com/luxfi/crypto/ipa/banderwagon with the canonical
github.com/luxfi/crypto/banderwagon in ipa/batch.go and its test, plus
the verkle-ipa docs example and the rust spec_vectors comment. The old
ipa/banderwagon subdirectory was deleted in 5a1479b; banderwagon now
has a single canonical home at the top level of luxfi/crypto.

go.mod adds the indirect entries for go-verkle and go-ipa that the
rerouted test_helper graph now exercises. The luxfi-mirror replace
directives remain in place so all upstream go-ipa/go-verkle traffic
still flows through luxfi-maintained sources.

Build: go build ./... clean (one ld linker warning unrelated).
Tests: ./banderwagon/... ./ipa/... pass (7 ok, 2 no-test-files).

Pre-existing failure in ./verkle/ is unrelated: verkle_test.go
references BatchProof/VerifyBatch/ErrBatchLengthMismatch symbols that
were never implemented in the verkle package (separate gap, present on
main before this fix).
2026-04-28 01:54:51 -07:00
..

lux-crypto-banderwagon

Canonical Rust binding for Banderwagon, the prime-order subgroup of the Bandersnatch curve used in Verkle commitments.

Wraps the C-ABI exposed by luxcpp/crypto/banderwagon.

Algorithm

  • Banderwagon -- prime-order subgroup of Bandersnatch (twisted Edwards over BLS12-381 scalar)
  • Used as the base group for Pedersen / IPA / Verkle

Build

Set CRYPTO_DIR (install prefix) or CRYPTO_BUILD_DIR (cmake build dir) so the build script can find libbanderwagon_cpu.a.

git clone https://github.com/luxfi/crypto
cd crypto && cmake -S . -B build-cto && cmake --build build-cto
export CRYPTO_BUILD_DIR=$(pwd)/build-cto
cargo build -p lux-crypto-banderwagon

Attribution

Curve constants derived from the public Banderwagon SRS.

License

See LICENSE at the repository root.