mirror of
https://github.com/luxfi/threshold.git
synced 2026-10-30 15:15:53 +00:00
4.6 KiB
4.6 KiB
SUBMISSION-STATUS — CGGMP21 (Lux Profile)
Honest framing. Tier B — production implementation, Lux-profile submission documentation in progress, formal submission gated per §3 below.
§1 Tier classification
| Tier | Meaning | Status |
|---|---|---|
| A | Cut-ready submission package: spec consolidated, KAT manifest enforced, interop suites green, cut script verified | not yet |
| B | Implementation production-grade; submission-shape docs being assembled; gaps explicit; not deadline-bound | current |
| C | Implementation only; no submission scaffold | past state |
Cross-suite comparison:
luxfi/pulsar— Tier Aluxfi/corona— Tier Bprotocols/cmp(this) — Tier Bprotocols/frost— Tier Bprotocols/bls— Tier B
§2 Submission tracks
CGGMP21 is not a NIST MPTC primary candidate (NIST has not standardized threshold-ECDSA). The Lux profile targets:
| Track | Form | Status |
|---|---|---|
| Lux-profile precompile spec | LP-4720 | Final |
| Lux-profile precompile package (this dir) | 7 docs (README/SPEC/SUBMISSION-STATUS/PROOF-CLAIMS/PARAMS/TEST-VECTORS/SECURITY) | Tier B in progress |
| Academic/IETF formal submission | NIST has no MPTC track for threshold-ECDSA; possible CFRG draft authorship is roadmap | not pursued |
| ACVP / CAVP for the underlying ECDSA | Tracks luxfi/crypto/secp256k1 upstream — not separately validated here |
n/a |
The Lux production target is a Tier A submission tarball under
scripts/cut-submission.sh bundling SPEC + ref impl + KAT + interop.
§3 Tier B → Tier A gating items
3.1 KAT determinism
- Status: KAT generator exists in tests; no Lux-specific KAT manifest yet.
- Gate: stand up
cmd/cmp_oracle/(mirroringcorona/cmd/corona_oracle_v2/); addregen-kats.sh --verifyinvariant. - Estimate: 2-3 weeks.
3.2 Cross-validation against single-party ECDSA
- Status: tests cover Lux implementation; cross-validation
against
crypto/ecdsa(Go stdlib) + Bitcoin Core ECDSA verifier- Ethereum
gethECDSA verifier is partial.
- Ethereum
- Gate: explicit cross-validation test exercising every signature against ≥3 third-party secp256k1 ECDSA verifiers.
- Estimate: 1-2 weeks.
3.3 Paillier-modulus generation audit
- Status:
pkg/paillierexists; biprime testing per CCS '21 Appendix C is implemented. - Gate: published audit of Paillier-modulus generation against CCS '21 §6.1 mandates (specifically: prime-quality, blum-prime property, biprime soundness).
- Estimate: 1 week internal review + lab engagement for external.
3.4 Single-doc spec
- Status: SPEC.md + LP-4720 + CCS '21 paper.
- Gate: single
spec/cmp-lux.texconsolidating these for reviewer convenience. - Estimate: weeks.
3.5 Performance worksheet
- Status: benchmark tests exist (
cmp_benchmark_test.go); no formal performance memo. - Gate: measured-vs-paper table (per-round latency, CPU cost, Paillier-op count) with reproducibility script.
- Estimate: 1-2 weeks.
3.6 Identifiable-abort attribution
- Status: round-N share verification implemented; explicit Lux blame-attribution flow on partition/equivocation is undocumented.
- Gate: explicit
IDENTIFIABLE-ABORT.md(or section in SPEC.md) with the Lux profile's blame rules. - Estimate: 1 week.
3.7 Formal-methods overlay (research target)
- Status: no EasyCrypt theory, no Lean bridge, no Jasmin sources. Consistent with Corona's honest disclosure.
- Gate: EC theory shell for the Lux profile.
- Estimate: 8-16 weeks research + 12-16 weeks engineering. CGGMP21's UC framework + complex ZK subprotocols make this the most labor-intensive of the threshold primitives.
3.8 Independent cryptographic review
- Status: no formal sign-off doc.
- Gate: independent reviewer attests Lux profile correctness + CCS '21 conformance + Paillier handling + ZK subprotocol correctness.
- Estimate: depends on reviewer engagement; multi-month.
§4 Non-promises
Per the project's "no AI slop / no fake closure" rule, this package will NOT claim:
- Mechanized refinement until §3.7 closes
- Cryptographer sign-off until §3.8 closes
- NIST MPTC Class N1 byte-equality framing — NIST has not standardized threshold-ECDSA; the analogous claim here is "byte-identical to single-party secp256k1 ECDSA" which IS made in SPEC.md §2.2.
§5 Cross-references
- Companion docs in this directory
- LP-4720 / LP-4730 / LP-4700
corona/SUBMISSION-STATUS.md— Tier B template (this file mirrors)pulsar/SUBMISSION.md— Tier A reference target