aboutsummaryrefslogtreecommitdiff
path: root/proposals/277-detect-id-sharing.txt
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-02-24 11:23:31 -0500
committerNick Mathewson <nickm@torproject.org>2017-02-24 11:23:31 -0500
commit2e5e0cb3f87f6813b789f09459daea6ebcaa4eb4 (patch)
treeafc7ac9d197b525508c1f2ebb5c72a1d03a437c9 /proposals/277-detect-id-sharing.txt
parent0f03581e748d4867a009d3d9473d61a400a3f5c1 (diff)
downloadtorspec-2e5e0cb3f87f6813b789f09459daea6ebcaa4eb4.tar.gz
torspec-2e5e0cb3f87f6813b789f09459daea6ebcaa4eb4.zip
Four new proposals based on experiments with download size
Diffstat (limited to 'proposals/277-detect-id-sharing.txt')
-rw-r--r--proposals/277-detect-id-sharing.txt59
1 files changed, 59 insertions, 0 deletions
diff --git a/proposals/277-detect-id-sharing.txt b/proposals/277-detect-id-sharing.txt
new file mode 100644
index 0000000..dee7f6e
--- /dev/null
+++ b/proposals/277-detect-id-sharing.txt
@@ -0,0 +1,59 @@
+Filename: 277-detect-id-sharing.txt
+Title: Detect multiple relay instances running with same ID.
+Author: Nick Mathewson
+Created: 20-Feb-2017
+Status: Open
+Target: 0.3.??
+
+1. Overview
+
+ This document proposes that we detect multiple relay instances running
+ with the same ID, and block them all, or block all but one of each.
+
+2. Motivation
+
+ While analyzing microdescriptor and relay status transitions (see
+ proposal XXXX), I found that something like 16/10631 router
+ identities from January 2017 were apparently shared by two or
+ more relays, based on their excessive number of onion key
+ transitions. This is probably accidental: and if intentional,
+ it's probably not achieving whatever the relay operators
+ intended.
+
+ Sharing identities causes all the relays in question to "flip" back
+ and forth onto the network, depending on which one uploaded its
+ descriptor most recently. One relay's address will be listed; and
+ so will that relay's onion key. Routers connected to one of the
+ other relays will believe its identity, but be suspicious of its
+ address. Attempts to extend to the relay will fail because of the
+ incorrect onion key. No more than one of the relays' bandwidths will
+ actually get significant use.
+
+ So clearly, it would be best to prevent this.
+
+3. Proposal 1: relay-side detection
+
+ Relays should themselves try to detect whether another relay is using
+ its identity. If a relay, while running, finds that it is listed in
+ a fresh consensus using an onion key other than its current or
+ previous onion key, it should tell its operator about the problem.
+
+ (This proposal borrows from Mike Perry's ideas related to key theft
+ detection.)
+
+4. Proposal 2: offline detection
+
+ Any relay that has a large number of onion-key transitions over time,
+ but only a small number of distinct onion keys, is probably two or
+ more relays in conflict with one another.
+
+ In this case, the operators can be contacted, or the relay
+ blacklisted.
+
+ We could build support for blacklisting all but one of the addresses,
+ but it's probably best to treat this as a misconfiguratino serious
+ enough that it needs to be resolved.
+
+
+
+