4 Commits
Author SHA1 Message Date
Abhishek KrishnaandGitHub 92efe562a9 docs(attestation): add package README (#7)
Anchors the attestation package's API + trust model + vendor
integrations + production status. Adjacent to LP-5300 / LP-5301
PoT/PoI receipts insofar as PoT is a form of computation
attestation.

Pure docs. No behavior change.
2026-07-04 10:48:55 -07:00
Abhishek KrishnaandGitHub a6cc9670f7 docs(cggmp21): add package README (#6)
CGGMP21 threshold ECDSA is Lux's canonical native MPC library
(production bridge default per luxfi/bridge#405). Package had no
README — adds Overview + Public API + Paillier note + security
model + operational constraints (non-custodial, no cosigner path
by default).

Pure docs. No behavior change.
2026-07-04 10:48:52 -07:00
Abhishek KrishnaandGitHub 447c43314d docs(poi): add package README (#5)
The poi package (Freivalds-over-F_p verification) is hard-consumed
by luxfi/precompile/aivmbridge/computeproof.go but has no README.
Adds Overview + API + wire codec spec + soundness bound + worked
example so a new contributor can audit a fraud proof without
reading the engine.

Pure docs. No behavior change.
2026-07-04 10:48:49 -07:00
64779780e0 fix(pedersen): collapse to single canonical PEDERSEN_SEEDED_GEN_V1 DST (#1)
Closes LP-137 RED-FINAL §2.4 (issue N3): collapse the legacy two-DST
PEDERSEN_G_V1 / PEDERSEN_H_V1 path to a single canonical
PEDERSEN_SEEDED_GEN_V1 with counter-indexed generation, matching the
C++ canonical at luxcpp/crypto/pedersen/cpp/pedersen.hpp:47.

Both NewGenerators(rng) and DeterministicGenerators(seed) now flow
through pedersen_seed.NewGeneratorsFromSeed:

  - NewGenerators reads 32 bytes from rng as the seed.
  - DeterministicGenerators compresses arbitrary-length input via
    SHA-256 to a 32-byte key, then dispatches.
  - Both branches use HashToG1(key || u64_le(i), DST=SeededGenDST)
    with i=0 for G and i=1 for H — byte-equivalent to C++ from_seed.

KAT vectors (pedersen_test.go::katCases) regenerated under the new
derivation. Two new tests:

  - TestCanonicalSeededDST locks the on-wire DST string so any drift
    fails loudly before it can break GPU↔CPU byte-equality.
  - TestDeterministicMatchesFromSeed proves DeterministicGenerators
    reduces to NewGeneratorsFromSeed(SHA-256(seed)) — the contract the
    post-N3 collapse promises.

All 11 pedersen tests pass; existing TestNewGeneratorsFromSeed_GoldenVector
remains the cross-language anchor (matches luxcpp pedersen_kat.h G[0].x).

Co-authored-by: Abhishek Krishna <abhi@kcolbchain.com>
2026-05-30 09:20:07 -07:00