-\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}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\Section{Overview}
+\section{Overview}
\label{sec:intro}
Onion Routing is a distributed overlay network designed to anonymize
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\Section{Related work}
+\section{Related work}
\label{sec:related-work}
Modern anonymity systems date to Chaum's {\bf Mix-Net}
% 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}\\
\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
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\Section{The Tor Design}
+\section{The Tor Design}
\label{sec:design}
The Tor network is an overlay network; each onion router (OR)
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
\end{picture}
\end{figure}
-\SubSection{Circuits and streams}
+\subsection{Circuits and streams}
\label{subsec:circuits}
Onion Routing originally built one circuit for each
``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
% 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
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
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
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
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
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,
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
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
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
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
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\Section{Future Directions}
+\section{Future Directions}
\label{sec:conclusion}
Tor brings together many innovations into a unified deployable system. The
\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
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
--- /dev/null
+% 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}}