mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
73 lines
2.1 KiB
TeX
73 lines
2.1 KiB
TeX
\section{Performance Benchmarks}
|
|
|
|
|
|
\subsection{On-Chain Verification}
|
|
|
|
\textbf{Solidity Contracts (Optimism Sepolia):}
|
|
\begin{center}
|
|
\begin{tabular}{lrrr}
|
|
\hline
|
|
\textbf{Variant} & \textbf{Gas} & \textbf{USD (\$2k ETH)} & \textbf{Address} \\
|
|
\hline
|
|
FALCON (NIST) & 7.0M & \$0.14 & 0xD088...279A41Fa \\
|
|
ETHFALCON & 1.8M & \$0.036 & 0x2F27...Ae7f96cA \\
|
|
EPERVIER & 1.9M & \$0.038 & 0x5ab1...aEB824B \\
|
|
\hline
|
|
ECDSA (ecrecover) & 3k & \$0.00006 & (precompile) \\
|
|
\hline
|
|
\end{tabular}
|
|
\end{center}
|
|
|
|
\textbf{Cost Comparison with Operations:}
|
|
\begin{itemize}
|
|
\item EPERVIER: 1.9M gas $\approx$ 633x cost of ECDSA
|
|
\item Equivalent to $\sim$20 ERC-20 transfers (100k gas each)
|
|
\item Feasible for Account Abstraction (4M gas budget for UserOp)
|
|
\item Current Ethereum gas limit: 30M (can fit 15 verifications/block)
|
|
\end{itemize}
|
|
|
|
\subsection{Off-Chain Performance}
|
|
|
|
\textbf{Python Reference Implementation (Apple M1 Pro):}
|
|
\begin{center}
|
|
\begin{tabular}{lrrr}
|
|
\hline
|
|
\textbf{Variant} & \textbf{n=512} & \textbf{n=1024} & \textbf{Signing} \\
|
|
\hline
|
|
FALCON & 2.8 ms & 5.8 ms & 1.2 ms \\
|
|
FalconRec & 4.6 ms & 9.6 ms & 1.2 ms \\
|
|
EPERVIER & 4.0 ms & 8.4 ms & 1.2 ms \\
|
|
\hline
|
|
ECDSA & 0.15 ms & --- & 0.1 ms \\
|
|
\hline
|
|
\end{tabular}
|
|
\end{center}
|
|
|
|
\textbf{Key Observations:}
|
|
\begin{itemize}
|
|
\item EPERVIER adds 40\% overhead vs. standard FALCON (extra NTT)
|
|
\item Still $<$5ms verification (acceptable for most applications)
|
|
\item Signing speed unaffected (no recovery computation needed)
|
|
\item Comparable to other PQC schemes (ML-DSA: 3-5ms)
|
|
\end{itemize}
|
|
|
|
\subsection{Memory Requirements}
|
|
|
|
\begin{center}
|
|
\begin{tabular}{lrrr}
|
|
\hline
|
|
\textbf{Variant} & \textbf{PubKey} & \textbf{Signature} & \textbf{Total} \\
|
|
\hline
|
|
FALCON-512 & 897 bytes & 666 bytes & 1563 bytes \\
|
|
EPERVIER-512 & 20 bytes* & 2202 bytes** & 2222 bytes \\
|
|
ECDSA secp256k1 & 20 bytes & 65 bytes & 85 bytes \\
|
|
\hline
|
|
\end{tabular}
|
|
\end{center}
|
|
|
|
* Address only (Keccak256 hash of NTT public key) \\
|
|
** Includes $s_1$ (666B), $s_2$ (666B), hint (768B), salt (40B)
|
|
|
|
\textbf{Trade-off:} EPERVIER increases signature size by 3.3x but reduces public key to 20-byte address, enabling seamless Ethereum integration.
|
|
|