Browse Source

switch tor-design to usenix format

svn:r1381
Roger Dingledine 20 years ago
parent
commit
94f048c248
2 changed files with 126 additions and 25 deletions
  1. 28 25
      doc/tor-design.tex
  2. 98 0
      doc/usenix.sty

+ 28 - 25
doc/tor-design.tex

@@ -1,7 +1,10 @@
 
-\documentclass[times,10pt,twocolumn]{article}
-\usepackage{latex8}
-\usepackage{times}
+\documentclass[twocolumn]{article}
+\usepackage{usenix}
+
+%\documentclass[times,10pt,twocolumn]{article}
+%\usepackage{latex8}
+%\usepackage{times}
 \usepackage{url}
 \usepackage{graphics}
 \usepackage{amsmath}
@@ -81,7 +84,7 @@ We close with a list of open problems in anonymous communication.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\Section{Overview}
+\section{Overview}
 \label{sec:intro}
 
 Onion Routing is a distributed overlay network designed to anonymize
@@ -245,7 +248,7 @@ Routing project in Section~\ref{sec:conclusion}.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\Section{Related work}
+\section{Related work}
 \label{sec:related-work}
 
 Modern anonymity systems date to Chaum's {\bf Mix-Net}
@@ -398,7 +401,7 @@ Eternity and Free~Haven.
 % didn't include rewebbers. No clear place to put them, so I'll leave
 % them out for now. -RD
 
-\Section{Design goals and assumptions}
+\section{Design goals and assumptions}
 \label{sec:assumptions}
 
 \noindent{\large\bf Goals}\\
@@ -483,7 +486,7 @@ provided by an external service if appropriate.
 \textbf{Not steganographic:} Tor does not try to conceal who is connected
 to the network.
 
-\SubSection{Threat Model}
+\subsection{Threat Model}
 \label{subsec:threat-model}
 
 A global passive adversary is the most commonly assumed threat when
@@ -529,7 +532,7 @@ each of these attacks.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\Section{The Tor Design}
+\section{The Tor Design}
 \label{sec:design}
 
 The Tor network is an overlay network; each onion router (OR)
@@ -575,7 +578,7 @@ Finally,
 Section~\ref{subsec:congestion} talks about congestion control and
 fairness issues.
 
-\SubSection{Cells}
+\subsection{Cells}
 \label{subsec:cells}
 
 Onion routers communicate with one another, and with users' OPs, via
@@ -628,7 +631,7 @@ in more detail below.
 \end{picture}
 \end{figure}
 
-\SubSection{Circuits and streams}
+\subsection{Circuits and streams}
 \label{subsec:circuits}
 
 Onion Routing originally built one circuit for each
@@ -786,7 +789,7 @@ node can send a \emph{relay truncated} cell back to Alice.  Thus the
 ``break a node and see which circuits go down''
 attack~\cite{freedom21-security} is weakened.
 
-\SubSection{Opening and closing streams}
+\subsection{Opening and closing streams}
 \label{subsec:tcp}
 
 When Alice's application wants a TCP connection to a given
@@ -840,7 +843,7 @@ connections.
 % such as broken HTTP clients that close their side of the
 %stream after writing but are still willing to read.
 
-\SubSection{Integrity checking on streams}
+\subsection{Integrity checking on streams}
 \label{subsec:integrity-checking}
 
 Because the old Onion Routing design used a stream cipher without integrity
@@ -897,7 +900,7 @@ is
 acceptably low, given that Alice or Bob tear down the circuit if they
 receive a bad hash.
 
-\SubSection{Rate limiting and fairness}
+\subsection{Rate limiting and fairness}
 \label{subsec:rate-limit}
 
 Volunteers are more willing to run services that can limit
@@ -934,7 +937,7 @@ attack, but an adversary observing both
 ends of the stream can already learn this information through timing
 attacks.
 
-\SubSection{Congestion control}
+\subsection{Congestion control}
 \label{subsec:congestion}
 
 Even with bandwidth rate limiting, we still need to worry about
@@ -995,7 +998,7 @@ to be flushed is under some threshold (currently 10 cells' worth).
 These arbitrarily chosen parameters seem to give tolerable throughput
 and delay; see Section~\ref{sec:in-the-wild}.
 
-\SubSection{Rendezvous Points and hidden services}
+\subsection{Rendezvous Points and hidden services}
 \label{subsec:rendezvous}
 
 Rendezvous points are a building block for \emph{location-hidden
@@ -1043,10 +1046,10 @@ In Appendix~\ref{sec:rendezvous-specifics} we provide a more detailed
 description of the rendezvous protocol, integration issues, attacks,
 and related rendezvous work.
 
-\Section{Other design decisions}
+\section{Other design decisions}
 \label{sec:other-design}
 
-\SubSection{Resource management and denial-of-service}
+\subsection{Resource management and denial-of-service}
 \label{subsec:dos}
 
 Providing Tor as a public service creates many opportunities for
@@ -1094,7 +1097,7 @@ disrupted. This solution would require more buffering at the network
 edges, however, and the performance and anonymity implications from this
 extra complexity still require investigation.
 
-\SubSection{Exit policies and abuse}
+\subsection{Exit policies and abuse}
 \label{subsec:exitpolicies}
 
 % originally, we planned to put the "users only know the hostname,
@@ -1189,7 +1192,7 @@ unsolved problem, and will probably remain an arms race for the
 foreseeable future.  The abuse problems faced by Princeton's CoDeeN
 project~\cite{darkside} give us a glimpse of likely issues.
 
-\SubSection{Directory Servers}
+\subsection{Directory Servers}
 \label{subsec:dirservers}
 
 First-generation Onion Routing designs~\cite{freedom2-arch,or-jsac98} used
@@ -1295,7 +1298,7 @@ forcing clients to periodically announce their existence to any
 central point.
 
 
-\Section{Attacks and Defenses}
+\section{Attacks and Defenses}
 \label{sec:attacks}
 
 Below we summarize a variety of attacks, and discuss how well our
@@ -1521,7 +1524,7 @@ servers must actively test ORs by building circuits and streams as
 appropriate.  The tradeoffs of a similar approach are discussed
 in~\cite{mix-acc}.\\
 
-\Section{Early experiences: Tor in the Wild}
+\section{Early experiences: Tor in the Wild}
 \label{sec:in-the-wild}
 
 As of mid-January 2004, the Tor network consists of 18 nodes
@@ -1610,7 +1613,7 @@ nodes and maybe 10,000 users before we're forced to become
 more distributed. With luck, the experience we gain running the current
 topology will help us choose among alternatives when the time comes.
 
-\Section{Open Questions in Low-latency Anonymity}
+\section{Open Questions in Low-latency Anonymity}
 \label{sec:maintaining-anonymity}
 
 In addition to the non-goals in
@@ -1718,7 +1721,7 @@ a higher churn rate.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\Section{Future Directions}
+\section{Future Directions}
 \label{sec:conclusion}
 
 Tor brings together many innovations into a unified deployable system. The
@@ -1823,7 +1826,7 @@ our overall usability.
 \newpage
 \appendix
 
-\Section{Rendezvous points and hidden services}
+\section{Rendezvous points and hidden services}
 \label{sec:rendezvous-specifics}
 
 In this appendix we provide specifics about the rendezvous points
@@ -1910,7 +1913,7 @@ for consulting the DHT\@. All of these approaches
 limit exposure even when
 some selected users collude in the DoS\@.
 
-\SubSection{Integration with user applications}
+\subsection{Integration with user applications}
 
 Bob configures his onion proxy to know the local IP address and port of his
 service, a strategy for authorizing clients, and a public key. Bob

+ 98 - 0
doc/usenix.sty

@@ -0,0 +1,98 @@
+% usenix-2e.sty - to be used with latex2e (the new one) for USENIX.
+% To use this style file, do this:
+%
+%    \documentclass[twocolumn]{article}
+%    \usepackage{usenix-2e}
+% and put {\rm ....} around the author names.
+%
+% $Id$
+%
+% The following definitions are modifications of standard article.sty
+% definitions, arranged to do a better job of matching the USENIX
+% guidelines.
+% It will automatically select two-column mode and the Times-Roman
+% font.
+
+%
+% USENIX papers are two-column.
+% Times-Roman font is nice if you can get it (requires NFSS,
+% which is in latex2e.
+
+\if@twocolumn\else\input twocolumn.sty\fi
+\usepackage{times}
+
+%
+% USENIX wants margins of: 7/8" side, 1" bottom, and 3/4" top.
+% 0.25" gutter between columns.
+% Gives active areas of 6.75" x 9.25"
+%
+\setlength{\textheight}{9.0in}
+\setlength{\columnsep}{0.25in}
+%%\setlength{\textwidth}{6.75in}
+\setlength{\textwidth}{7.00in}
+%\setlength{\footheight}{0.0in}
+\setlength{\topmargin}{-0.25in}
+\setlength{\headheight}{0.0in}
+\setlength{\headsep}{0.0in}
+\setlength{\evensidemargin}{-0.125in}
+\setlength{\oddsidemargin}{-0.125in}
+
+%
+% Usenix wants no page numbers for submitted papers, so that they can
+% number them themselves.
+%
+\pagestyle{empty}
+
+%
+% Usenix titles are in 14-point bold type, with no date, and with no
+% change in the empty page headers.  The whol author section is 12 point
+% italic--- you must use {\rm } around the actual author names to get
+% them in roman.
+%
+\def\maketitle{\par
+ \begingroup
+   \renewcommand\thefootnote{\fnsymbol{footnote}}%
+   \def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}%
+    \long\def\@makefntext##1{\parindent 1em\noindent
+            \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}%
+   \if@twocolumn
+     \twocolumn[\@maketitle]%
+     \else \newpage
+     \global\@topnum\z@
+     \@maketitle \fi\@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
+
+\def\@maketitle{\newpage
+ \vbox to 2.5in{
+ \vspace*{\fill}
+ \vskip 2em
+ \begin{center}%
+  {\Large\bf \@title \par}%
+  \vskip 0.375in minus 0.300in
+  {\large\it
+   \lineskip .5em
+   \begin{tabular}[t]{c}\@author
+   \end{tabular}\par}%
+ \end{center}%
+ \par
+ \vspace*{\fill}
+% \vskip 1.5em
+ }
+}
+
+%
+% The abstract is preceded by a 12-pt bold centered heading
+\def\abstract{\begin{center}%
+{\large\bf \abstractname\vspace{-.5em}\vspace{\z@}}%
+\end{center}}
+\def\endabstract{}
+
+%
+% Main section titles are 12-pt bold.  Others can be same or smaller.
+%
+\def\section{\@startsection {section}{1}{\z@}{-3.5ex plus-1ex minus
+    -.2ex}{2.3ex plus.2ex}{\reset@font\large\bf}}