sptor.tex 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349
  1. \documentclass{llncs}
  2. \usepackage{url}
  3. \usepackage{amsmath}
  4. \usepackage{epsfig}
  5. \setlength{\textwidth}{5.9in}
  6. \setlength{\textheight}{8.4in}
  7. \setlength{\topmargin}{.5cm}
  8. \setlength{\oddsidemargin}{1cm}
  9. \setlength{\evensidemargin}{1cm}
  10. \newenvironment{tightlist}{\begin{list}{$\bullet$}{
  11. \setlength{\itemsep}{0mm}
  12. \setlength{\parsep}{0mm}
  13. % \setlength{\labelsep}{0mm}
  14. % \setlength{\labelwidth}{0mm}
  15. % \setlength{\topsep}{0mm}
  16. }}{\end{list}}
  17. \newcommand{\workingnote}[1]{} % The version that hides the note.
  18. %\newcommand{\workingnote}[1]{(**#1)} % The version that makes the note visible.
  19. \begin{document}
  20. \title{Design challenges and social factors in deploying low-latency anonymity}
  21. % Could still use a better title -PFS
  22. \author{Roger Dingledine\inst{1} \and
  23. Nick Mathewson\inst{1} \and
  24. Paul Syverson\inst{2}}
  25. \institute{The Tor Project \email{<\{arma,nickm\}@torproject.org>} \and
  26. Naval Research Laboratory \email{<syverson@itd.nrl.navy.mil>}}
  27. \maketitle
  28. \pagestyle{plain}
  29. \begin{abstract}
  30. There are many unexpected or unexpectedly difficult obstacles to
  31. deploying anonymous communications. We describe Tor (\emph{the}
  32. onion routing), how to use it, our design philosophy, and some of
  33. the challenges that we have faced and continue to face in building,
  34. deploying, and sustaining a scalable, distributed, low-latency
  35. anonymity network.
  36. \end{abstract}
  37. \section{Introduction}
  38. This article describes Tor, a widely-used low-latency general-purpose
  39. anonymous communication system, and discusses some unexpected
  40. challenges arising from our experiences deploying Tor. We will tell
  41. you how to use it, who uses it, how it works, why we designed it the
  42. way we did, and why this makes it usable and stable.
  43. Tor is an overlay network for anonymizing TCP streams over the
  44. Internet~\cite{tor-design}. Tor works on the real-world Internet,
  45. requires no special privileges or kernel modifications, requires
  46. little synchronization or coordination between nodes, and provides a
  47. reasonable trade-off between anonymity, usability, and efficiency.
  48. Since deployment in October 2003 the public Tor network has grown to
  49. about a thousand volunteer-operated nodes worldwide and over 110
  50. megabytes average traffic per second from hundreds of thousands of
  51. concurrent users.
  52. \section{Tor Design and Design Philosophy: Distributed Trust and Usability}
  53. Tor enables users to connect to Internet sites without revealing their
  54. logical or physical locations to those sites or to observers. It
  55. enables hosts to be publicly accessible yet have similar protection
  56. against location through its \emph{location-hidden services}.
  57. To connect to a remote server via Tor, the client software learns
  58. a %signed
  59. list of Tor nodes from several central \emph{directory servers} via a
  60. voting protocol to avoid dependence on or complete trust in any one of
  61. them, and incrementally creates a private pathway or \emph{circuit} of
  62. encrypted connections through authenticated Tor nodes on the network
  63. whose public keys were obtained form the directory servers,
  64. negotiating a separate set of encryption keys for each hop along the
  65. circuit. The nodes in the circuit are chosen at random by the client
  66. subject to a preference for higher performing nodes to allocate
  67. resources effectively and with a client-chosen preferred set of first
  68. nodes called \emph{entry guards} to complicate profiling attacks by
  69. internal adversaries~\cite{hs-attack}.
  70. The circuit is extended one node at a time, and each node
  71. along the way knows only the immediately previous and following nodes
  72. in the circuit, so no individual Tor node knows the complete path that
  73. each fixed-sized data packet (or \emph{cell}) will take. Thus,
  74. neither an eavesdropper nor a compromised node can see both the
  75. connection's source and destination. Later requests use a new
  76. circuit to complicate long-term linkability between different actions
  77. by a single user.
  78. Tor attempts to anonymize the transport layer, not the application
  79. layer. Thus, applications such as SSH can provide
  80. authenticated communication that is hidden by Tor from outside observers.
  81. When anonymity from communication partners is desired,
  82. application-level protocols that transmit identifying
  83. information need additional scrubbing proxies, such as
  84. Privoxy~\cite{privoxy} for HTTP\@. Furthermore, Tor does not relay
  85. arbitrary IP packets; it only anonymizes TCP streams and DNS requests.
  86. Tor, the third generation of deployed onion-routing
  87. designs~\cite{or-ih96,or-jsac98,tor-design}, was researched, developed,
  88. and deployed by the Naval Research Laboratory and the Free Haven
  89. Project under ONR and DARPA funding for secure government
  90. communications. In 2005, continuing work by Free Haven was funded by
  91. the Electronic Frontier Foundation for maintaining civil liberties of
  92. ordinary citizens online. In 2006, The Tor Project incorporated as a
  93. non-profit and has received continued funding from the Omidyar Network,
  94. the U.S. International Broadcasting Bureau, and other groups to combat
  95. blocking and censorship on the Internet. This diversity of funding fits
  96. Tor's overall philosophy: a wide variety of interests helps maintain
  97. both the stability and the security of the network.
  98. Usability is also a central goal. Downloading and installing Tor is
  99. easy. Simply go to\\
  100. http://torproject.org/ and download. Tor comes with install
  101. wizards and a GUI for major operating systems: GNU/Linux, OS X, and
  102. Windows. It also runs on various flavors of BSD and UNIX\@. Basic
  103. instructions, documentation, FAQs, etc.\ are available in many
  104. languages. The Tor GUI Vidalia makes server configuration easy, e.g.,
  105. choosing how much bandwidth to allocate to Tor, exit policy choices,
  106. etc. And, the GUI Torbutton allows Firefox users a one-click toggle of
  107. whether browsing goes through Tor or not. Tor is easily configured by
  108. a site administrator to run at either individual desktops or just at a
  109. site firewall or combinations of these.
  110. The ideal Tor network would be practical, useful and anonymous. When
  111. trade-offs arise between these properties, Tor's research strategy has
  112. been to remain useful enough to attract many users, and practical
  113. enough to support them. Only subject to these constraints do we try
  114. to maximize anonymity. Tor thus differs from other deployed systems
  115. for traffic analysis resistance in its security and flexibility. Mix
  116. networks such as
  117. % Mixmaster~\cite{mixmaster-spec} or its successor
  118. Mixminion~\cite{minion-design} gain the highest degrees of practical
  119. anonymity at the expense of introducing highly variable delays, making
  120. them unsuitable for applications such as web browsing. Commercial
  121. single-hop proxies~\cite{anonymizer} can provide good performance, but
  122. a single-point compromise can expose all users' traffic, and a
  123. single-point eavesdropper can perform traffic analysis on the entire
  124. network. Also, their proprietary implementations place any
  125. infrastructure that depends on these single-hop solutions at the mercy
  126. of their providers' financial health as well as network security.
  127. There are numerous other designs for distributed anonymous low-latency
  128. communication~\cite{crowds-tissec,web-mix,freedom21-security,i2p,tarzan:ccs02,morphmix:fc04}.
  129. Some have been deployed or even commercialized; some exist only on
  130. paper. Though each has something unique to offer, we feel Tor has
  131. advantages over each of them that make it a superior choice for most
  132. users and applications. For example, unlike purely P2P designs we
  133. neither limit ordinary users to content and services available only
  134. within our network nor require them to take on responsibility for
  135. connections outside the network, unless they separately choose to run
  136. server nodes. Nonetheless because we support low-latency interactive
  137. communications, end-to-end \emph{traffic correlation}
  138. attacks~\cite{danezis:pet2004,defensive-dropping,SS03,hs-attack,bauer:tr2007}
  139. allow an attacker who can observe both ends of a communication to
  140. correlate packet timing and volume, quickly linking the initiator to
  141. her destination.
  142. Our defense lies in having a diverse enough set of nodes to prevent
  143. most real-world adversaries from being in the right places to attack
  144. users, by distributing each transaction over several nodes in the
  145. network. This ``distributed trust'' approach means the Tor network
  146. can be safely operated and used by a wide variety of mutually
  147. distrustful users, providing sustainability and security.
  148. The Tor network has a broad range of users, making it difficult for
  149. eavesdroppers to track them or profile interests. These include
  150. ordinary citizens concerned about their privacy, corporations who
  151. don't want to reveal information to their competitors, and law
  152. enforcement and government intelligence agencies who need to do
  153. operations on the Internet without being noticed. Naturally,
  154. organizations will not want to depend on others for their security.
  155. If most participating providers are reliable, Tor tolerates some
  156. hostile infiltration of the network.
  157. This distribution of trust is central to the Tor philosophy and
  158. pervades Tor at all levels: Onion routing has been open source since
  159. the mid-nineties (mistrusting users can inspect the code themselves);
  160. Tor is free software (anyone could take up the development of Tor from
  161. the current team); anyone can use Tor without license or charge (which
  162. encourages a broad user base with diverse interests); Tor is designed to be
  163. usable (also promotes a large, diverse user base) and configurable (so
  164. users can easily set up and run server nodes); the Tor
  165. infrastructure is run by volunteers (it is not dependent on the
  166. economic viability or business strategy of any company) who are
  167. scattered around the globe (not completely under the jurisdiction of
  168. any single country); ongoing development and deployment has been
  169. funded by diverse sources (development does not fully depend on
  170. funding from any one source or even funding for any one primary
  171. purpose or sources in any one jurisdiction). All of these contribute
  172. to Tor's resilience and sustainability.
  173. \section{Social challenges}
  174. Many of the issues the Tor project needs to address extend beyond
  175. system design and technology development. In particular, the Tor
  176. project's \emph{image} with respect to its users and the rest of the
  177. Internet impacts the security it can provide. With this image issue
  178. in mind, this section discusses the Tor user base and Tor's
  179. interaction with other services on the Internet.
  180. \subsection{Communicating security}
  181. Usability for anonymity systems contributes to their security, because
  182. usability affects the possible anonymity set~\cite{econymics,back01}.
  183. Conversely, an unusable system attracts few users and thus can't
  184. provide much anonymity.
  185. This phenomenon has a second-order effect: knowing this, users should
  186. choose which anonymity system to use based in part on how usable and
  187. secure \emph{others} will find it, in order to get the protection of a
  188. larger anonymity set. Thus we might supplement the adage ``usability
  189. is a security parameter''~\cite{back01} with a new one: ``perceived
  190. usability is a security parameter.''~\cite{usability-network-effect}.
  191. \subsection{Reputability and perceived social value}
  192. Another factor impacting the network's security is its reputability,
  193. the perception of its social value based on its current user base. If
  194. Alice is the only user who has ever downloaded the software, it might
  195. be socially accepted, but she's not getting much anonymity. Add a
  196. thousand activists, and she's anonymous, but everyone thinks she's an
  197. activist too. Add a thousand diverse citizens (cancer survivors,
  198. people concerned about identity theft, law enforcement agents, and so
  199. on) and now she's harder to profile.
  200. Furthermore, the network's reputability affects its operator base:
  201. more people are willing to run a service if they believe it will be
  202. used by human rights workers than if they believe it will be used
  203. exclusively for disreputable ends. This effect becomes stronger if
  204. node operators themselves think they will be associated with their
  205. users' ends.
  206. So the more cancer survivors on Tor, the better for the human rights
  207. activists. The more malicious hackers, the worse for the normal
  208. users. Thus, reputability is an anonymity issue for two
  209. reasons. First, it impacts the sustainability of the network: a
  210. network that's always about to be shut down has difficulty attracting
  211. and keeping adequate nodes. Second, a disreputable network is more
  212. vulnerable to legal and political attacks, since it will attract fewer
  213. supporters.
  214. Reputability becomes even more tricky in the case of privacy networks,
  215. since the good uses of the network (such as publishing by journalists
  216. in dangerous countries, protecting road warriors from profiling and
  217. potential physical harm, tracking of criminals by law enforcement,
  218. protecting corporate research interests, etc.) are typically kept private,
  219. whereas network abuses or other problems tend to be more widely
  220. publicized.
  221. \subsection{Abuse}
  222. \label{subsec:tor-and-blacklists}
  223. For someone willing to be antisocial or even break the law, Tor is
  224. usually a poor choice to hide bad behavior. For example, Tor nodes are
  225. publicly identified, unlike the million-node botnets that are now
  226. common on the Internet. Nonetheless, we always expected that,
  227. alongside legitimate users, Tor would also attract troublemakers who
  228. exploit Tor to abuse services on the Internet with vandalism, rude
  229. mail, and so on. \emph{Exit policies} have allowed individual nodes
  230. to block access to specific IP/port ranges. This approach aims to
  231. make operators more willing to run Tor by allowing them to prevent
  232. their nodes from being used for abusing particular services. For
  233. example, by default Tor nodes block SMTP (port 25), to avoid the issue
  234. of spam.
  235. Exit policies are useful but insufficient: if not all nodes block a
  236. given service, that service may try to block Tor instead. While being
  237. blockable is important to being good netizens, we would like to
  238. encourage services to allow anonymous access. Services should not need
  239. to decide between blocking legitimate anonymous use and allowing
  240. unlimited abuse. Nonetheless, blocking IP addresses is a
  241. course-grained solution~\cite{netauth}: entire apartment buildings,
  242. campuses, and even countries sometimes share a single IP address.
  243. Also, whether intended or not, such blocking supports repression of
  244. free speech. In many locations where Internet access of various kinds
  245. is censored or even punished by imprisonment, Tor is a path both to
  246. the outside world and to others inside. Blocking posts from Tor makes
  247. the job of censoring authorities easier. This is a loss for both Tor
  248. and services that block, such as Wikipedia: we don't want to compete
  249. for (or divvy up) the NAT-protected entities of the world. This is
  250. also unfortunate because there are relatively simple technical
  251. solutions~\cite{nym}. Various schemes for escrowing anonymous posts
  252. until they are reviewed by editors would both prevent abuse and remove
  253. incentives for attempts to abuse. Further, pseudonymous reputation
  254. tracking of posters through Tor would allow those who establish
  255. adequate reputation to post without escrow~\cite{nym,nymble}.
  256. We stress that as far as we can tell, most Tor uses are not
  257. abusive. Most services have not complained, and others are actively
  258. working to find ways besides banning to cope with the abuse. For
  259. example, the Freenode IRC network had a problem with a coordinated
  260. group of abusers joining channels and subtly taking over the
  261. conversation; but when they labelled all users coming from Tor IP
  262. addresses as ``anonymous users,'' removing the ability of the abusers
  263. to blend in, the abusers stopped using Tor. This is an illustration of
  264. how simple
  265. technical mechanisms can remove the ability to abuse anonymously
  266. without undermining the ability to communicate anonymously and can
  267. thus remove the incentive to attempt abusing in this way.
  268. \section{The Future}
  269. \label{sec:conclusion}
  270. Tor is the largest and most diverse low-latency anonymity network
  271. available, but we are still in the early stages. Several major
  272. questions remain.
  273. First, will our volunteer-based approach to sustainability continue to
  274. work as well in the long term as it has the first several years?
  275. Besides node operation, Tor research, deployment, maintainance, and
  276. development is increasingly done by volunteers: package maintenance
  277. for various OSes, document translation, GUI design and implementation,
  278. live CDs, specification of new design changes, etc.\
  279. %
  280. Second, Tor is only one of many components that preserve privacy
  281. online. For applications where it is desirable to keep identifying
  282. information out of application traffic, someone must build more and
  283. better protocol-aware proxies that are usable by ordinary people.
  284. %
  285. Third, we need to maintain a reputation for social good, and learn how to
  286. coexist with the variety of Internet services and their established
  287. authentication mechanisms. We can't just keep escalating the blacklist
  288. standoff forever.
  289. %
  290. Fourth, the current Tor architecture hardly scales even to handle
  291. current user demand. We must deploy designs and incentives to further
  292. encourage clients to relay traffic too, without thereby trading away
  293. too much anonymity or other properties.
  294. These are difficult and open questions. Yet choosing not to solve them
  295. means leaving most users to a less secure network or no anonymizing
  296. network at all.
  297. \bibliographystyle{plain} \bibliography{tor-design}
  298. \end{document}