\documentclass{beamer} \usefonttheme[onlymath]{serif} \mode { \usetheme{Frankfurt} \usecolortheme{dove} %% grey scale \useinnertheme{circles} % \setbeamercovered{transparent} } \hypersetup{ colorlinks, citecolor=black, filecolor=black, linkcolor=black, urlcolor=blue } \usepackage{graphicx} \usepackage{color} \usepackage{changepage} % for adjustwidth \usepackage{xcolor} \usepackage[most]{tcolorbox} \usepackage{pgf-umlsd} % diagrams \usepackage{tikz} \usetikzlibrary{positioning,arrows.meta} \usepackage{comment} \graphicspath{ {./imgs-lattices} } \setbeamertemplate{itemize}{$\circ$} \setbeamertemplate{itemize items}{$\circ$} \beamertemplatenavigationsymbolsempty %% no navigation bar \setbeamertemplate{footline}{\hspace*{.1cm}\scriptsize{ \hspace*{50pt} \hfill\insertframenumber/\inserttotalframenumber\hspace*{.1cm}\vspace*{.1cm}}} % paint red background to slides that I may end up removing \newenvironment{mayberm}[1][red!20] {\setbeamercolor{background canvas}{bg=#1}} {} \setbeamertemplate{caption}[numbered] \setbeamerfont{caption}{size=\tiny} \newtheoremstyle{customstyle} {18pt} % Space above {0pt} % Space below {} % Body font {} % Indent {\bfseries} % Head font {.} % Punctuation after head { } % Space after head {} % Head spec \theoremstyle{customstyle} \newtheorem{thm}{Theorem}[section] \let\lemma\relax \let\endlemma\relax \newtheorem{lemma}[thm]{Lemma} \newtheorem{prop}[thm]{Proposition} \newtheorem{cor}[thm]{Corollary} \newtheorem{defn}[thm]{Definition} \newtheorem{remark}[thm]{Remark} \newcommand{\Rr}{\mathbb{R}} \newcommand{\Zz}{\mathbb{Z}} \newcommand{\Ll}{\mathcal{L}} \title{Introduction to lattice based cryptography} \author{arnaucube} \date{\scriptsize{September 2026, Barcelona}} \begin{document} \frame{\titlepage} \section[Motivation]{Motivation} % - Motivation % - till now we've been mostly using RSA & E.C. cryptography % - they are susceptible to quantum computers based attacks. Shor's algorithm, etc % - post-quantum cryptography context: hash-based (starks), lattices, isogenesis % - historical timeline of papers (XMMS SPHINCHS (+), Falcon, etc (exclude isogenesis) % - hash vs lattices: hash had more engineering effort, it's currently more performant. Lattice have more algebraic structure, interesting properties. % - Lattices math % - lattice hard problems are based on the hardness of finding short vectors. SVP, CVP, SIS, etc % TODO: why lattices are post quantum % [done] Lattices are already used in browsers: explain how, dual signautres, etc % clarify L^\perp notation, is it q-ary? \begin{frame}{Motivation} \begin{itemize} \item till now most cryptography relied on hardness of finding prime factors or finding the discrete logarithm, ie. RSA, Elliptic Curves, etc \item Shor's algorithm suggests that factorization can be done in polynomial time (on quantum computers).\\ \small{ $\rightarrow$ given an odd composite $n \in \Zz$, find $d \in \Zz$, such that $1< d =Latex, % every node/.style={font=\scriptsize}, % ] % % % ========================================================= % % Headers % % \node[anchor=west] at (0,0) % {\textbf{Signer / Prover}}; % % \node[anchor=west] at (8.3,0) % {\textbf{Verifier}}; % % % ========================================================= % % Keys % % \node[anchor=west, align=left] at (0,-0.8) { % $s_1 \leftarrow S^\ell,~ s_2 \leftarrow S^k$ % \\[1mm] % Public:\\ % $A \leftarrow R_q^{k\times\ell},~ t = As_1+s_2$ % }; % % \node[anchor=west, align=left] at (8.3,-1.4) { % Public key:\\ % $(A,t)$ % }; % % \draw[->] % (4.9,-1.5) % -- % node[above] {$pk=(A,t)$} % (8.0,-1.5); % % % ========================================================= % % Commitment % % \node[anchor=west, align=left] at (0,-2.35) { % Sample short vectors:\\ % $y_1\leftarrow Y^\ell,~ % y_2\leftarrow Y^k$ % \\[1mm] % Compute:\\ % $w = Ay_1+y_2$ % }; % % \draw[->] % (4.9,-3.05) % -- % node[above] {$w$} % (8.0,-3.05); % % % ========================================================= % % Challenge % % \node[anchor=west, align=left] at (8.3,-3.25) { % $c\leftarrow C$\\ % \scriptsize{ % (in practice, $c = H(M ||w)$) % } % }; % % \draw[<-] % (4.9,-3.9) % -- % node[above] {$c$} % (8.0,-3.9); % % % ========================================================= % % Response % % \node[anchor=west, align=left] at (0,-4.45) { % Compute:\\ % $z_1=y_1+cs_1,~ % z_2=y_2+cs_2$ % \\[1mm] % Reject if $z_1,z_2$ are not short. % }; % % \draw[->] % (4.9,-5.55) % -- % node[above] {$z_1,z_2$} % (8.0,-5.55); % % % ========================================================= % % Verification % % \node[anchor=west, align=left] at (8.3,-6.0) { % Reconstruct:\\[1mm] % $\begin{aligned} % w' % &= Az_1+z_2-ct \\ % &= A(y_1+cs_1)+(y_2+cs_2) \\ % &\qquad-c(As_1+s_2) \\ % &= Ay_1+y_2 \stackrel{?}{=} w % \end{aligned}$ % \\[1mm] % Accept if $z_1,z_2$ are short. % }; % % \end{tikzpicture} % % % %%% % % \end{frame} \begin{comment} \begin{mayberm} \begin{frame}{Falcon signatures} \end{frame} \begin{frame}{LaBRADOR SNARK} \end{frame} \end{mayberm} \end{comment} \begin{frame}{Benchmarks} % TODO review benchmarks \centering % \small{ \setlength{\tabcolsep}{4pt} \renewcommand{\arraystretch}{1.10} \textbf{Digital signatures} \vspace{0.05cm} \resizebox{0.88\textwidth}{!}{% \begin{tabular}{llll} \toprule \textbf{Scheme} & \textbf{Assumption} & \textbf{Public key size} & \textbf{Signature size} \\ \midrule ECDSA-secp256k1 & elliptic curves & $33$ B & $64$ B \\ Falcon-512 & NTRU lattice & $897$ B & $666$ B \\ ML-DSA-44 & Module-LWE / Module-SIS & $1.31$ KB & $2.42$ KB \\ XMSS-SHA2-10-256 & hash based, stateful & $64$ B & $2.50$ KB \\ SLH-DSA-128s & hash based, stateless & $32$ B & $7.86$ KB \\ \bottomrule \end{tabular}% } \vspace{0.20cm} \textbf{SNARKs / STARKs} \vspace{0.05cm} \resizebox{0.87\textwidth}{!}{% \begin{tabular}{lll} \toprule \textbf{Scheme} & \textbf{Assumption / technique} & \textbf{Proof size} \\ \midrule Groth16 & pairings / elliptic curves & $128$ B \\ LaBRADOR & Module-SIS & $50$--$60$ KB \\ Flock & binary fields + coding theory & $200$--$400$ KiB \\ Binius64 & binary fields + sumcheck & $200$--$500$ KiB \\ Plonky2 & Plonk + FRI & $40$--$200$ KB \\ Plonky3 / FRI-STARK & polynomial IOP + FRI & $1$--$3$ MiB \\ \bottomrule \end{tabular} } \end{frame} \section[Conclusions]{Conclusions} \begin{frame}{Conclusions - Key Takeaways} \begin{itemize} \item lattice-based cryptography: \begin{itemize} \item not a single assumption on all schemes: NTRU, SIS, R-SIS, M-SIS, LWE, R-LWE, M-LWE, $\ldots$ \item actual operations (implementation) are over polynomial rings \item smaller proofs and keys than hash-based \item often we're interested in 'short' values $\longrightarrow$ trick: decompose bigger values before operate on them \end{itemize} \end{itemize} \end{frame} \end{document}