Files
zeekay f4ee7a0525 Publish under the org, not a person
Bylines, paper authorship, correspondence addresses and the founder blurb under
each post named an individual. They name the organisation that published the
work instead: the brand on posts and pages, the research byline on papers, and
research@ in place of a personal address. Both are what these repositories
already used elsewhere — nothing new was coined.

Co-authors are untouched. Where a paper named someone else alongside, they stay
named; only the one byline changed. Bibliography entries, running heads,
PDF metadata and affiliations move with it, so a citation still resolves to
whoever the cited paper names.

Sample and fixture data uses the placeholder name these tests already use
elsewhere, so no assertion changed meaning.
2026-09-01 08:58:10 -07:00

80 lines
3.5 KiB
TeX

\documentclass[11pt,a4paper]{article}
\usepackage{../shared/luxcover}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,amsfonts,amsthm}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{array}
\usepackage{xcolor}
\usepackage{listings}
\input{../shared/lstlang}
\usepackage{float}
\usepackage{enumitem}
\usepackage{mathtools}
\newtheorem{theorem}{Theorem}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{definition}{Definition}
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{remark}{Remark}
\lstset{
basicstyle=\small\ttfamily,
keywordstyle=\color{blue}\bfseries,
commentstyle=\color{gray},
stringstyle=\color{red},
breaklines=true,
frame=single,
numbers=left,
numberstyle=\tiny\color{gray}
}
\hypersetup{
colorlinks=true,
linkcolor=blue,
citecolor=blue,
urlcolor=blue
}
\title{\textbf{Custom EVM Precompiles for Cryptographic Operations\\on Lux Network}\\[6pt]
\large BLS12-381, BN254, Batch Verification, Post-Quantum Signatures,\\and Gas Cost Analysis for Next-Generation Smart Contracts}
\author{
Lux Research\thanks{Corresponding author: [email protected]}\\
\textit{Lux Industries, Inc.}\\
\texttt{[email protected]}
}
\date{Original: 2021\quad|\quad Revised: February 2026}
\begin{document}
\luxcoverpage
\begin{abstract}
We present a suite of custom EVM precompiled contracts deployed on Lux Network's C-Chain and EVM-compatible appchains, providing native-speed cryptographic operations that would be prohibitively expensive if implemented in Solidity. The precompile suite includes: (i)~full BLS12-381 pairing operations for aggregate signature verification and zero-knowledge proof systems; (ii)~BN254 (alt\_bn128) extensions for efficient Groth16 verification; (iii)~secp256k1 batch signature verification achieving 5x throughput improvement over sequential \texttt{ecrecover}; (iv)~a post-quantum signature verification precompile supporting ML-DSA (FIPS 204, formerly CRYSTALS-Dilithium) and FALCON for quantum-resistant authentication; and (v)~a Warp message verification precompile that validates cross-appchain BLS aggregate proofs in a single call. We provide detailed gas cost models calibrated to actual execution time on reference hardware, ensuring that gas prices reflect computational cost within a factor of 2. Benchmarks demonstrate that BLS12-381 pairing verification completes in 1.7ms (113,000 gas), Dilithium-3 verification in 0.3ms (35,000 gas), and batch verification of 100 secp256k1 signatures in 12ms (180,000 gas versus 300,000 gas for 100 sequential \texttt{ecrecover} calls). All precompiles are assigned addresses in the \texttt{0x0200...} namespace to avoid conflicts with Ethereum's precompile address space.
\end{abstract}
\input{sections/01-introduction}
\input{sections/02-precompile-architecture}
\input{sections/03-bls12-381-precompiles}
\input{sections/04-bn254-extended-precompiles}
\input{sections/05-secp256k1-batch-verification}
\input{sections/06-post-quantum-signature-precompiles}
\input{sections/07-warp-message-verification-precompile}
\input{sections/08-gas-pricing-methodology}
\input{sections/09-security-analysis}
\input{sections/10-hash-function-precompiles}
\input{sections/11-precompile-upgrade-process}
\input{sections/12-comparison-with-ethereum-precompiles}
\input{sections/13-related-work}
\input{sections/99-conclusion}
\end{document}