mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
Restructured from flat .tex/.pdf files into per-paper subdirectories. Added Antje Worring as co-author on all papers. Synced PDFs to pdfs/ for download site.
28 lines
1.1 KiB
TeX
28 lines
1.1 KiB
TeX
\section{Replay Protection}
|
|
\label{sec:replay}
|
|
|
|
We identify five classes of replay attack and the corresponding defense:
|
|
|
|
\begin{center}
|
|
\begin{tabular}{lll}
|
|
\toprule
|
|
\textbf{Replay Class} & \textbf{Attack} & \textbf{Defense} \\
|
|
\midrule
|
|
Cross-network & Replay on testnet/devnet & Domain separator (networkID) \\
|
|
Cross-chain & Replay on wrong dest chain & dstChainID binding \\
|
|
Same-chain double & Submit same msg twice & Consumed-message bitmap \\
|
|
Nonce skip & Submit future nonce to block others & Strict monotonic nonce \\
|
|
Stale message & Replay old message after key rotation & Epoch freshness + staleness window \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\end{center}
|
|
|
|
\begin{theorem}[Replay Completeness]
|
|
The five replay protection mechanisms are complete: no valid Warp message can be accepted more than once on any chain in any Lux network instance.
|
|
\end{theorem}
|
|
|
|
\begin{proof}
|
|
By exhaustive case analysis over the five replay classes. Each class is closed by exactly one mechanism, and the mechanisms are independent (no replay attack exploits the gap between two mechanisms).
|
|
\end{proof}
|
|
|