Hanzo AI b01a152536 LP-107 Phase 4: pulsar consumes luxfi/math/codec
wire/wire.go — pulsar's wire-format hardening boundary. Untrusted
lattice Vector[Poly] frames now flow through luxfi/math/codec.Reader
so the bounded-decode contract is centralized: no recursion, no
hidden growth, no unbounded allocation.

Replaces the test-only validateVectorPolyFrameInline walker that
lived at threshold/fuzz_round_test.go with a production-grade
equivalent on the canonical luxfi/math/codec substrate.

Tests:
* TestValidateVectorPolyFrame_RejectsHugeLength — regression for
  lattice issue #4 (70-trillion-element attack input). Same input
  the original fuzz finding produced, now rejected with
  codec.ErrLimitExceeded via the shared math substrate.
* TestValidateVectorPolyFrame_HappyPath — 3-element accept.
* TestValidateVectorPolyFrame_AtCap — exactly MaxLatticeUintSliceLen
  accepted.
* TestValidateVectorPolyFrame_OverCap — MaxLatticeUintSliceLen+1
  rejected.

go.mod bumps luxfi/math v1.2.4 -> v1.3.0 (the LP-107 substrate
release with codec/ + params/ + backend/ + modarith/ + ntt/ + poly/
+ rns/ + sample/).

This is the first downstream consumer of the math substrate. Lens,
FHE, and lattice consumers follow.
2026-05-04 09:47:05 -07:00

Pulsar

Lux is not merely adding post-quantum signatures to a chain; it defines a hybrid finality architecture for DAG-native consensus, with protocol-agnostic threshold lifecycle, post-quantum threshold sealing, and cross-chain propagation of Horizon finality.

See LP-105 §Claims and evidence for the canonical claims/evidence table and the ten architectural commitments — single source of truth.

Pulsar is the Lux-evolved post-quantum threshold signature stack for Quasar consensus, derived from daryakaviani/corona (academic 2-round threshold signature from LWE) with the protocol additions needed to operate on a leaderless open public chain.

Why "Pulsar"

Lux (Latin) → light. Pulsar → SI unit of luminous flux. Each validator emits a "pulsar" of signature toward consensus; aggregated, they form the chain's overall light. Brand-paired with Quasar (the consensus that consumes them).

Relationship to upstream Corona

The upstream repo at daryakaviani/corona is an academic proof-of-concept ("not ready for production use" per its README). Pulsar is the production track:

Layer Upstream Corona Pulsar
2-round threshold sign same byte-equal protocol inherited
Trusted-dealer Gen for fixed federation retained for bridge MPC
Proactive resharing for epoch validator rotation not specified 🚧 pulsar/reshare/ (this fork)
Pedersen DKG over R_q with proper hiding not specified 🚧 pulsar/dkg2/ (this fork)
Per-validator triple-sign integration with Quasar N/A 🚧 pulsar/consensus/ integration

Layout

  • sign/ — 2-round threshold signing (byte-equal with upstream)
  • primitives/ — Shamir, hashes, MACs, PRFs (byte-equal with upstream)
  • utils/ — NTT, Montgomery, ring helpers (byte-equal with upstream)
  • networking/ — TCP peer-to-peer (byte-equal with upstream)
  • dkg/ — original Lux DKG (Feldman VSS without noise; broken for public broadcast — see RED-DKG-REVIEW). Retained for reference.
  • dkg2/ — proper Pedersen DKG over R_q (Pulsar addition; this fork)
  • reshare/ — proactive secret resharing for epoch rotation (Pulsar addition; this fork)
  • cmd/ — KAT oracle generators

Status

WIP. The 2-round Sign+Verify path is byte-equal-validated against the academic Corona spec via 16 SHA-256 KATs. The Pulsar-specific additions (resharing + Pedersen DKG) are under design and implementation.

S
Description
A 2-round lattice-based threshold signature from standard assumptions for public networks
Readme
16 MiB
Languages
Go 74.3%
eC 14.2%
TeX 6%
Shell 3.8%
Makefile 0.8%
Other 0.8%