go-blockchain/crypto
Claude dd04cc9dee
feat(crypto): wire BPP/BPPE/BGE proof verification with real testnet data
Add cn_bpp_verify for Bulletproofs++ (1 delta, bpp_crypto_trait_ZC_out)
used by zc_outs_range_proof in post-HF4 transactions. Distinguish from
cn_bppe_verify (2 deltas, bpp_crypto_trait_Zarcanum) used for Zarcanum
PoS proofs.

Key changes:
- Add deserialise_bpp() and cn_bpp_verify() to bridge.cpp
- Add VerifyBPP() Go wrapper in proof.go
- Wire BPPE and BGE stubs into real C++ verify functions
- Add try/catch to all proof verifiers (C++ throws on invalid points)
- Add nil/empty input guards to all Go proof functions
- Test with real BPP proof from testnet block 101 coinbase tx

The BPP proof from tx 543bc3c2... (first post-HF4 coinbase) verifies
successfully through the full CGo pipeline, confirming wire format
deserialisation matches the C++ daemon output.

Co-Authored-By: Charon <charon@lethean.io>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 18:37:08 +00:00
..
common feat(crypto): Phase 2a scaffold — vendored C++ and CMake build 2026-02-20 18:21:44 +00:00
compat feat(crypto): Phase 2a scaffold — vendored C++ and CMake build 2026-02-20 18:21:44 +00:00
currency_core feat(crypto): Phase 2a scaffold — vendored C++ and CMake build 2026-02-20 18:21:44 +00:00
randomx feat(crypto): RandomX PoW hash via CGo bridge 2026-02-21 01:01:23 +00:00
upstream feat(crypto): Phase 2a scaffold — vendored C++ and CMake build 2026-02-20 18:21:44 +00:00
bridge.cpp feat(crypto): wire BPP/BPPE/BGE proof verification with real testnet data 2026-02-21 18:37:08 +00:00
bridge.h feat(crypto): wire BPP/BPPE/BGE proof verification with real testnet data 2026-02-21 18:37:08 +00:00
clsag.go feat(crypto): CLSAG ring signatures (GG/GGX/GGXXG) and proof verification stubs 2026-02-20 18:47:08 +00:00
CMakeLists.txt feat(crypto): RandomX PoW hash via CGo bridge 2026-02-21 01:01:23 +00:00
crypto.go feat(crypto): RandomX PoW hash via CGo bridge 2026-02-21 01:01:23 +00:00
crypto_test.go feat(crypto): wire BPP/BPPE/BGE proof verification with real testnet data 2026-02-21 18:37:08 +00:00
doc.go feat(crypto): CGo bridge smoke test — FastHash via Keccak-256 2026-02-20 18:22:25 +00:00
keygen.go feat(crypto): key derivation, one-time addresses, and key images 2026-02-20 18:28:43 +00:00
keyimage.go feat(crypto): key derivation, one-time addresses, and key images 2026-02-20 18:28:43 +00:00
pow.go feat(crypto): RandomX PoW hash via CGo bridge 2026-02-21 01:01:23 +00:00
pow_test.go feat(crypto): RandomX PoW hash via CGo bridge 2026-02-21 01:01:23 +00:00
proof.go feat(crypto): wire BPP/BPPE/BGE proof verification with real testnet data 2026-02-21 18:37:08 +00:00
PROVENANCE.md feat(crypto): Phase 2a scaffold — vendored C++ and CMake build 2026-02-20 18:21:44 +00:00
signature.go feat(crypto): standard and ring signature (NLSAG) generation/verification 2026-02-20 18:30:53 +00:00