mirror of
https://github.com/luxfi/proofs.git
synced 2026-10-30 15:21:05 +00:00
Squashed batch covering:
- lux-adopts-liquidity-protocol.tex: protocol adoption proof artifact
- chronology updates aligning Quasar consensus references to LP-020
- pq-finality-no-bls.tex: Pulsar (Corona-derived lattice threshold)
naming clarification; per-block / per-epoch / per-era cert language
- quasar-cert-soundness.tex: Pulsar (systems-layer composition with
key-era lifecycle, resharing, activation cert, rollback) vs Corona
(signing primitive); math notation and theorems unchanged
- INFRASTRUCTURE-STATUS-2026-04-20.md → INFRASTRUCTURE-STATUS.md
(drop date stamp from filename)
- LP back-refs and chronology integration
quasar-cert-soundness.tex production-publishable depth (March 3 final):
- NEW Section 6 (Pulsar Key-Era Lifecycle Lemmas): formal
definitions for Pulsar share state, GroupKey hash, and Refresh /
Reshare / Reanchor transitions. Four lifecycle lemmas with full
proofs:
Lemma 10 (Generation monotonicity)
Lemma 11 (KeyEraID stability across Reshare)
Lemma 12 (GroupKey byte-identity across Refresh and Reshare)
Lemma 13 (Rollback-lineage forward reconstruction)
Plus Theorem 14 (Activation-certificate soundness): VerifyActivation
accepts iff the new committee shares Lagrange-recombine to the
master secret under the unchanged GroupKey, except with negligible
probability under MLWE/MSIS.
- Lagrange-recombination identity written as a labelled display
equation, citing
Crypto.Threshold.Reshare.reshare_preserves_public_key in
lean/Crypto/Threshold/Reshare.lean for the mechanised companion.
- Bibliography additions: hjky97 (Herzberg--Jarecki--Krawczyk--Yung
proactive secret sharing), desmedtjajodia97 (redistribution),
wongwangwing02 (verifiable redistribution), lp073 (Pulsar paper).
- LP-073 section pointers updated to text-form references that
survive without LP-073 .aux file.
Naming evolution: throughout this work, "Corona" refers to the
lattice signing primitive (Sign1/Sign2/Combine math); "Pulsar" refers
to the Lux production fork at github.com/luxfi/pulsar that wraps it
with key-era lifecycle for permissionless validator-set rotation.
- proofs/fhe/ (NEW): canonical proof bucket for the Lux FHE
dual-runtime stack (LP-167 companion):
correctness.tex — encrypt → evaluate → decrypt correctness.
dual-runtime-equivalence.tex — Lux FHE-Go and Lux FHE-C++ produce
byte-equal output on identical inputs
and parameters; KAT closure witness.
nebula-binding.tex — FHE result roots bind into Nebula /
Quasar transcripts; reduces a forged
binding to hash collision + Pulsar
SUF-CMA forgery.
parameter-security.tex — concrete LWE parameter security under
the Albrecht estimator; ≥128-bit
classical and ≥128-bit quantum for
PN10QP27 / PN11QP54 / PN9QP28_STD128.
Theorem statements + remarks; no proof bodies duplicated in the
companion paper (papers/lux-fhe-runtime/) — the paper cites these.
50 lines
2.2 KiB
TeX
50 lines
2.2 KiB
TeX
%% ============================================================
|
|
%% quasar/warp-pq-soundness.tex
|
|
%% ============================================================
|
|
%%
|
|
%% Canonical Warp 2.0 cross-chain message PQ soundness theorem.
|
|
%% ============================================================
|
|
|
|
\subsection*{Warp 2.0 PQ soundness}
|
|
|
|
\begin{theorem}[Warp 2.0 envelope unforgeability]
|
|
\label{thm:warp-v2-soundness}
|
|
Let $\mathsf{env}_2$ be a Warp 2.0 envelope
|
|
(Definition~\ref{def:warp-v2-envelope}) with successful verification
|
|
under $\mathsf{Verify}_{V2}$. Then forging an alternative $\mathsf{env}'_2$
|
|
on the same $(\mathsf{sourceChainID}, \mathsf{sourceNebulaRoot},
|
|
\mathsf{sourceKeyEraID}, \mathsf{sourceGeneration})$ tuple with a
|
|
different $\mathsf{payload}$ requires breaking either:
|
|
\begin{enumerate}[nosep]
|
|
\item BLS12-381 co-CDH (forging the Beam component); OR
|
|
\item Module-LWE / Module-SIS (forging the Pulsar Pulse,
|
|
Theorem~\ref{thm:pulsar-suf-cma}).
|
|
\end{enumerate}
|
|
A quantum adversary breaking only co-CDH (and not MLWE/MSIS) succeeds
|
|
against the Beam alone; the Pulse remains unforgeable, so the v2
|
|
envelope as a whole remains sound under $\mathsf{Verify}_{V2}$.
|
|
|
|
\textbf{PQ finality lives in the Pulse, not in any optional Groth16
|
|
wrapper.} If the envelope additionally carries a Z-Chain Groth16 proof
|
|
of the ML-DSA cert set, that proof is a classical compatibility /
|
|
compression artifact and does not contribute to the PQ reduction
|
|
(Remark~\ref{rem:groth16-wrapper}).
|
|
\end{theorem}
|
|
|
|
\begin{remark}[Warp Private orthogonality]
|
|
$\mathsf{Warp\,Private}$ (FHE-encrypted payload, optionally
|
|
Pulse-signed) is orthogonal to $\mathsf{Warp\,2.0}$. Warp Private
|
|
provides confidentiality; Warp 2.0 provides PQ finality. They compose:
|
|
a Warp Private envelope MAY carry a Pulse, in which case Theorem
|
|
\ref{thm:warp-v2-soundness} applies unchanged to the encrypted-payload
|
|
binding.
|
|
\end{remark}
|
|
|
|
\begin{remark}[Future PQ-friendly proof system]
|
|
The current Z-Chain rollup uses Groth16 for ML-DSA cert-set
|
|
compression; a future $\mathsf{Warp\,Private\,PQ}$ replaces the
|
|
pairing-based SNARK with a STARK or lattice-based transparent proof
|
|
system. Until that lands, do not classify the Groth16-wrapped lane as
|
|
post-quantum.
|
|
\end{remark}
|