Files
usenix-2026-nested/main.tex
2025-10-25 03:54:21 -04:00

297 lines
7.2 KiB
TeX

\documentclass[letterpaper,twocolumn,10pt]{article}
\usepackage{usenix}
% to be able to draw some self-contained figs
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{msc, array}
\usepackage{xcolor,color,xspace}
\usepackage{xcolor,color,xspace,enumerate,centernot,multirow,float,graphicx,
xcolor,caption,subcaption,textcomp,tikz,listings,adjustbox,algorithm,algorithmic,tcolorbox}
\usepackage{enumitem}
\usepackage{cite}
\usepackage{hyperref}
\usepackage{booktabs,tabularx,makecell}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\usepackage{pifont}
\title{A Mechanized Analysis of Nested Ratchet Protocols}
\newcommand{\pv}[0]{\textsc{ProVerif}\xspace}
\usetikzlibrary{arrows, positioning, automata, fit}
\usepackage{pgf}
\usepackage{adjustbox}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{booktabs}
\usepackage{color}
\usepackage{paralist}
\usepackage{enumitem}
\usepackage{hhline}
\usepackage{hyperref}
\usepackage[switch]{lineno}
\usepackage{mathtools}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{tabularx}
\usepackage[dvipsnames,table]{xcolor}
\usepackage{tikz}
\usepackage{soul}
\usepackage{arydshln}
% Comments
\newif\ifcomments
\commentstrue
\newcommand{\mb}[1]{\ifcomments\textit{\color{Blue}[MB] : #1}\fi}
\newcommand{\gb}[1]{\ifcomments\textit{\color{ForestGreen}[GB] : #1}\fi}
\newcommand{\kb}[1]{\ifcomments\textit{\color{DarkOrchid}[KB] : #1}\fi}
\newcommand{\bb}[1]{\ifcomments\textit{\color{Mahogany}[BB] : #1}\fi}
\newcommand{\cc}[1]{\ifcomments\textit{\color{OrangeRed}[CC] : #1}\fi}
\newcommand{\kl}[1]{\ifcomments\textit{\color{Cerulean}[KL] : #1}\fi}
\newcommand{\bp}[1]{\ifcomments\textit{\color{RoyalPurple}[BP] : #1}\fi}
\newcommand{\revised}[1]{{\ifcomments\color{RoyalPurple}\fi#1}}
% Link colors
\hypersetup{
colorlinks,
linkcolor={black},
citecolor={red!70!black},
urlcolor={blue!70!black}
}
% Table formatting
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{X}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[2]{%
>{\adjustbox{angle=#1,lap=\width-(#2)}\bgroup}%
l%
<{\egroup}%
}
\newcommand*\rot{\multicolumn{1}{R{45}{0em}}}
\setlength{\tabcolsep}{2.5pt}
\newcommand{\extension}{\raisebox{0.2em}{\rotatebox[origin=c]{180}{$\Lsh$}}}
\newcommand{\extensionl}{\rotatebox[origin=c]{180}{$\Lsh$}}
\newcommand{\raisecircle}[1]{\raisebox{0.1em}{#1}}
\newcommand{\pie}[1]{%
\raisebox{-0.15em}{%
\begin{tikzpicture}
\draw (0,0) circle (0.65ex);\fill[rotate=90] (0.65ex,0) arc (0:#1:0.65ex) -- (0,0) -- cycle;
\end{tikzpicture}}%
}
\newcommand{\ppie}[1]{%
\raisebox{-0.15em}{%
\begin{tikzpicture}
\draw (0,0) circle (0.65ex);\fill[rotate=90] (0.65ex,0) arc (0:#1:0.65ex) -- (0,0) -- cycle;
\end{tikzpicture}}%
}
\newcommand{\fullc}{\pie{360}}
\newcommand{\threequartc}{\pie{270}}
\newcommand{\halfc}{\pie{180}}
\newcommand{\quartc}{\pie{90}}
\newcommand{\emptyc}{%
\raisebox{-0.15em}{%
\begin{tikzpicture}
\draw (0,0) circle (0.65ex);
\end{tikzpicture}}%
}
\newcommand{\fullcr}{\raisecircle{\fullc}}
\newcommand{\halfcr}{\raisecircle{\halfc}}
\newcommand{\emptycr}{\raisecircle{\emptyc}}
% Symbolic table
\newcommand{\fullcd}{~\,$\fullc^{\emph{d}\,}$}
\newcommand{\fullctsym}{~\,$\fullc^{\emph{t}\,\,}$}
\newcommand{\fullco}{~\,$\fullc^{\emph{o}\,}$}
\newcommand{\fullctl}{~\,$\fullc^{\emph{t,l}}$}
\newcommand{\emptycsym}{~\,$\emptyc^{~\,}$}
% Grand slam table
%\newcommand{\fullct}{$\fullc^{\emph{t\,}}$}
%\newcommand{\fullcs}{$\fullc^{\emph{s}}$}
%\newcommand{\emptycx}{$\emptyc^{\;}$}
\newcommand{\fullct}{\fullc}
\newcommand{\fullcs}{\halfc}
\newcommand{\emptycx}{\emptyc}
\newcommand{\featheader}[1]{\emph{\textbf{{#1}.}}}
\newcommand{\featheadernp}[1]{\emph{\textbf{{#1}}}}
% true/false circles
\newcommand{\truecirc}{%
\raisebox{-0.15em}{%
\begin{tikzpicture}
\draw (0,0) circle (0.65ex);\fill[rotate=90] (0.65ex,0) arc (0:180:0.65ex) -- (0,0) -- cycle;
\end{tikzpicture}}%
}
\newcommand{\falsecirc}{%
\raisebox{-0.15em}{%
\begin{tikzpicture}
\draw (0,0) circle (0.65ex);\fill[rotate=270] (0.65ex,0) arc (0:180:0.65ex) -- (0,0) -- cycle;
\end{tikzpicture}}%
}
\usepackage{amsthm}
\newtheoremstyle{mydefinition} % Name of style
{3pt} % Space above
{3pt} % Space below
{\normalfont} % Body font
{} % Indent amount
{\bfseries} % Theorem head font
{.} % Punctuation after theorem head
{ } % Space after theorem head
{} % Theorem head spec
\theoremstyle{mydefinition}
\newtheorem{mydef}{Definition}
\hyphenation{op-tical net-works semi-conduc-tor}
\definecolor{gris}{gray}{0.4}
\definecolor{framecolor}{rgb}{0.122, 0.435, 0.698}%
\definecolor{framecolor2}{named}{red}
\definecolor{bgcolor}{rgb}{0.95, 0.95, 0.95}%
\newcommand{\attackerbox}[1]{%
\begin{tcolorbox}[
colframe=framecolor, %
colback=bgcolor, %
boxrule=0pt, %
leftrule=3pt, %
arc=0pt, %
left=2pt, %
right=2pt, %
top=2pt, %
bottom=2pt, %
width=\linewidth, %
before skip=4pt, %
after skip=4pt %
]
#1
\end{tcolorbox}
}
\newcommand{\badpropbox}[1]{%
\begin{tcolorbox}[
colframe=framecolor2, %
colback=bgcolor, %
boxrule=0pt, %
leftrule=3pt, %
arc=0pt, %
left=2pt, %
right=2pt, %
top=2pt, %
bottom=2pt, %
width=\linewidth, %
before skip=4pt, %
after skip=4pt %
]
#1
\end{tcolorbox}
}
\newcommand{\capbox}[1]{%
\begin{tcolorbox}[
colframe=framecolor, %
colback=bgcolor, %
boxrule=0pt, %
leftrule=0pt, %
arc=0pt, %
left=2pt, %
right=2pt, %
top=2pt, %
bottom=2pt, %
width=\linewidth, %
before skip=4pt, %
after skip=4pt %
]
#1
\end{tcolorbox}
}
\hypersetup{
colorlinks,
linkcolor={black},
citecolor={red!70!black},
urlcolor={blue!70!black},
}
\begin{document}
\date{}
\author{
% {\rm Your N.\ Here}\\
% Your Institution
% \and
% {\rm Second Name}\\
% Second Institution
Anonymous Author(s)
}
\maketitle
\input{sections/abstract}
\section{Introduction}
\input{sections/intro}
\section{Related Works}
\input{sections/related}
\section{The Nested Ratchet Protocol}
\input{sections/background}
\section{Formal Modeling}
\input{sections/models}
\section{Analysis of the Nested Ratchet Protocol}
\input{sections/analysis}
\section{Discussion}
\input{sections/discussion}
\section{Limitations \& Future Work}
\input{sections/limitations}
\section{Conclusions}
\input{sections/conclusion}
\input{sections/usenix}
\bibliographystyle{plain}
\bibliography{refs}
\end{document}