aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2008-07-01 23:13:42 +0000
committerNick Mathewson <nickm@torproject.org>2008-07-01 23:13:42 +0000
commit3d0360d4e02f40d326ad469d854dabbb9440e2fe (patch)
tree48584da685760833f6156ff1615c938fe2b85c93 /doc
parentc411f8321122b0470977a7e813b9abe9e20c457f (diff)
downloadtor-3d0360d4e02f40d326ad469d854dabbb9440e2fe.tar
tor-3d0360d4e02f40d326ad469d854dabbb9440e2fe.tar.gz
Add proposal 144 from M Fr.
svn:r15586
Diffstat (limited to 'doc')
-rw-r--r--doc/spec/proposals/000-index.txt2
-rw-r--r--doc/spec/proposals/144-enforce-distinct-providers.txt165
2 files changed, 167 insertions, 0 deletions
diff --git a/doc/spec/proposals/000-index.txt b/doc/spec/proposals/000-index.txt
index 71469a10a..5e0a9a30e 100644
--- a/doc/spec/proposals/000-index.txt
+++ b/doc/spec/proposals/000-index.txt
@@ -66,6 +66,7 @@ Proposals by number:
141 Download server descriptors on demand [DRAFT]
142 Combine Introduction and Rendezvous Points [OPEN]
143 Improvements of Distributed Storage for Tor Hidden Service Descriptors [OPEN]
+144 Increase the diversity of circuits by detecting nodes belonging the [DRAFT]
Proposals by status:
@@ -78,6 +79,7 @@ Proposals by status:
133 Incorporate Unreachable ORs into the Tor Network
134 More robust consensus voting with diverse authority sets
141 Download server descriptors on demand
+ 144 Increase the diversity of circuits by detecting nodes belonging the
OPEN:
120 Shutdown descriptors when Tor servers stop
121 Hidden Service Authentication
diff --git a/doc/spec/proposals/144-enforce-distinct-providers.txt b/doc/spec/proposals/144-enforce-distinct-providers.txt
new file mode 100644
index 000000000..8d1cb70cc
--- /dev/null
+++ b/doc/spec/proposals/144-enforce-distinct-providers.txt
@@ -0,0 +1,165 @@
+Filename: 144-enforce-distinct-providers.txt
+Title: Increase the diversity of circuits by detecting nodes belonging the
+same provider
+Author: Mfr
+Created: 2008-06-15
+Status: Draft
+
+Overview:
+
+ Increase network security by reducing the capacity of the relay or
+ ISPs monitoring personally or requisition, a large part of traffic
+ Tor trying to break circuits privacy. A way to increase the
+ diversity of circuits without killing the network performance.
+
+Motivation:
+
+ Since 2004, Roger an Nick publication about diversity [1], very fast
+ relays Tor running are focused among an half dozen of providers,
+ controlling traffic of some dozens of routers [2].
+
+ In the same way the generalization of VMs clonables paid by hour,
+ allowing starting in few minutes and for a small cost, a set of very
+ high-speed relay whose in a few hours can attract a big traffic that
+ can be analyzed, increasing the vulnerability of the network.
+
+ Whether ISPs or domU providers, these usually have several groups of
+ IP Class B. Also the restriction in place EnforceDistinctSubnets
+ automatically excluding IP subnet class B is only partially
+ effective. By contrast a restriction at the class A will be too
+ restrictive.
+
+ Therefore it seems necessary to consider another approach.
+
+Proposal:
+
+ Add a provider control based on AS number added by the router on is
+ descriptor, controlled by Directories Authorities, and used like the
+ declarative family field for circuit creating.
+
+Design:
+
+Step 1 :
+
+ Add to the router descriptor a provider information get request [4]
+ by the router itself.
+
+ "provider" name NL
+
+ 'names' is the AS number of the router formated like this:
+ 'ASxxxxxx' where AS is fixed and xxxxxx is the AS number,
+ left aligned ( ex: AS98304 , AS4096,AS1 ) or if AS number
+ is missing the network A class number is used like that:
+ 'ANxxx' where AN is fixed and xxx is the first 3 digits of
+ the IP (ex: for the IP 1.1.1.2 AN1) or an 'L' value is set
+ if it's a local network IP.
+
+ If two ORs list one another in their "provider" entries,
+ then OPs should treat them as a single OR for the purpose
+ of path selection.
+
+ For example, if node A's descriptor contains "provider B",
+ and node B's descriptor contains "provider A", then node A
+ and node B should never be used on the same circuit.
+
+ Add the regarding config option in torrc
+
+ EnforceDistinctProviders set to 1 by default.
+ Permit building circuits with relays in the same provider
+ if set to 0.
+ Regarding to proposal 135 if TestingTorNetwork is set
+ need to be EnforceDistinctProviders is unset.
+
+ Control by Authorities Directories of the AS numbers
+
+ The Directories Authority control the AS numbers of the new node
+ descriptor uploaded.
+
+ If an old version is operated by the node this test is
+ bypassed.
+
+ If AS number get by request is different from the
+ description, router is flagged as non-Valid by the testing
+ Authority for the voting process.
+
+Step 2 When a ' significant number of nodes' of valid routers are
+generating descriptor with provider information.
+
+ Add missing provider information get by DNS request
+functionality for the circuit user:
+
+ During circuit building, computing, OP apply first
+ family check and EnforceDistinctSubnets directives for
+ performance, then if provider info is needed and
+ missing in router descriptor try to get AS provider
+ info by DNS request [4]. This information could be
+ DNS cached. AN ( class A number) is never generated
+ during this process to prevent DNS block problems. If
+ DNS request fails ignore and continue building
+ circuit.
+
+Step 3 When the 'whole majority' of valid Tor clients are providing
+DNS request.
+
+ Older versions are deprecated and mark as no-Valid.
+
+ EnforceDistinctProviders replace EnforceDistinctSubnets functionnality.
+
+ EnforceDistinctSubnets is removed.
+
+ Functionalities deployed in step 2 are removed.
+
+Security implications:
+
+ This providermeasure will increase the number of providers
+ addresses that an attacker must use in order to carry out
+ traffic analysis.
+
+Compatibility:
+
+ The presented protocol does not raise compatibility issues
+ with current Tor versions. The compatibility is preserved by
+ implementing this functionality in 3 steps, giving time to
+ network users to upgrade clients and routers.
+
+Performance and scalability notes:
+
+ Provider change for all routers could reduce a little
+ performance if the circuit to long.
+
+ During step 2 Get missing provider information could increase
+ building path time and should have a time out.
+
+Possible Attacks/Open Issues/Some thinking required:
+
+ These proposal seems be compatible with proposal 135 Simplify
+ Configuration of Private Tor Networks.
+
+ This proposal does not resolve multiples AS owners and top
+ providers traffic monitoring attacks [5].
+
+ Unresolved AS number are treated as a Class A network. Perhaps
+ should be marked as invalid. But there's only fives items on
+ last check see [2].
+
+ Need to define what's a 'significant number of nodes' and
+ 'whole majority' ;-)
+
+References:
+[1] Location Diversity in Anonymity Networks by Nick Feamster and Roger
+Dingledine.
+In the Proceedings of the Workshop on Privacy in the Electronic Society
+(WPES 2004), Washington, DC, USA, October 2004
+http://freehaven.net/anonbib/#feamster:wpes2004
+[2] http://as4jtw5gc6efb267.onion/IPListbyAS.txt
+[3] see Goodell Tor Exit Page
+http://cassandra.eecs.harvard.edu/cgi-bin/exit.py
+[4] see the great IP to ASN DNS Tool
+http://www.team-cymru.org/Services/ip-to-asn.html
+[5] Sampled Traffic Analysis by Internet-Exchange-Level Adversaries by
+Steven J. Murdoch and Piotr Zielinski.
+In the Proceedings of the Seventh Workshop on Privacy Enhancing Technologies
+
+(PET 2007), Ottawa, Canada, June 2007.
+http://freehaven.net/anonbib/#murdoch-pet2007
+[5] http://bugs.noreply.org/flyspray/index.php?do=details&id=690