Files
papers/lp-137-gpu-crypto-stack/lp-137-gpu-crypto-stack.tex
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

83 lines
4.3 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{booktabs}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{listings}
\usepackage{xcolor}
\usepackage{tikz}
\usepackage{float}
\usepackage{enumitem}
\usepackage{array}
\usepackage{multirow}
\usepackage{tabularx}
\input{../shared/lstlang}
\usetikzlibrary{arrows.meta,positioning,shapes.geometric,fit,calc}
\hypersetup{colorlinks=true,linkcolor=black,citecolor=blue,urlcolor=blue}
\lstset{
basicstyle=\ttfamily\scriptsize,
breaklines=true,
frame=single,
numbers=left,
numberstyle=\tiny\color{gray},
keywordstyle=\color{blue!70!black}\bfseries,
commentstyle=\color{green!50!black}\itshape,
stringstyle=\color{red!60!black},
showstringspaces=false,
}
\newtheorem{theorem}{Theorem}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{definition}{Definition}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{remark}{Remark}
\title{GPU-Optimized Blockchain Cryptography:\\Methodology for CPU/GPU Determinism Testing,\\Crossover Thresholds, and Safety}
\author{
Lux Research\thanks{Corresponding author: [email protected]}\\
\textit{Lux Industries Inc}\\
\textit{A subsidiary of Hanzo Industries Inc}\\
\texttt{[email protected]}
}
\date{2026}
\begin{document}
\luxcoverpage
\begin{abstract}
We describe a methodology for shipping production-grade cryptographic primitives held to a byte-equality contract across CPU and three GPU backends (Metal, CUDA, WGSL). The methodology has three components: (i) a byte-equality contract enforced between a first-party CPU canonical and every shipping GPU kernel on $N{=}1000$ randomized inputs per release; (ii) a per-algorithm crossover-threshold sweep that determines, empirically, the batch size $N^{*}$ at which the GPU kernel becomes faster than the single-thread CPU baseline; and (iii) a safety analysis that combines test-oracle isolation (the audited upstream is never linked into shipped libraries), GPU-memory hygiene (secret state never leaves attested GPU memory on the hot path), and brand-neutral C-ABI symbol layout.
We apply the methodology to a 29-primitive corpus covering hashes, AEAD, elliptic curves (including pairing-friendly), polynomial commitments, lattice primitives, post-quantum signatures and KEMs, threshold schemes, FHE building blocks, and EVM precompile wrappers. Per-algorithm formal specs live in their own Lux Improvement Proposals (LP-026, LP-029, LP-066, LP-069, LP-070--077, LP-110--126, LP-131, LP-146--159); this paper covers the GPU mode that all of them share.
Empirical results from the same methodology: $144.22\times$ on fused BLS aggregation \cite{lp137benchmarks}, $16.92\times$ on FHE Metal NTT (10-iter median, kernel-only) \cite{lp137benchmarks}, $26.7\times$ on batched Ed25519 RFC 8032 verify at $N{=}4096$ \cite{lp137benchmarks}, and CPU NTT throughput of 6--9 Mops/s at $N=2^{20}$ on Apple M2 Ultra (LP-164 six-step) \cite{lp164}. Crossover thresholds range from $N^{*}{=}1$ (FHE NTT) to $N^{*}{=}1024$ (SHA-256), validated on a single Apple Silicon M2 Ultra device. Byte-equality is enforced on every release: 36 of 36 BN254 KAT vectors match \texttt{gnark-crypto v0.19.2} \cite{gnarkcrypto,lp146}, with cross-oracle KAT verification against \texttt{arkworks-rs} \cite{arkworks} for adversarial distance.
This paper provides the substrate-level methodology for LP-137 of the Lux Improvement Proposals \cite{lp137}. Per-algorithm formal content (parameters, KAT sources, security analysis) lives in the per-algorithm LPs cited above; this paper carries no per-algorithm specification beyond a pointer index. Acceleration-kernel-level specs that augment the substrate (batched Montgomery inversion, Pippenger MSM, combined-pair Miller, Karatsuba modexp, six-step NTT, Pedersen tree-reduce, threshold pre-sign) live in LP-160 through LP-166 \cite{lp160,lp161,lp162,lp163,lp164,lp165,lp166}.
\end{abstract}
\tableofcontents
\newpage
\input{sections/01-introduction}
\input{sections/02-architecture}
\input{sections/03-per-algorithm-spec}
\input{sections/04-determinism-harness}
\input{sections/05-performance}
\input{sections/06-security-analysis}
\input{sections/07-related-work}
\input{sections/99-conclusion}
\bibliographystyle{plain}
\bibliography{references}
\end{document}