Hex Artifact Content
Not logged in

Artifact 19c9e2ea3ee03231342d0ffb82e2094b2d69ec30:

Wiki page [onion-routing] by bernd 2014-07-03 14:31:03.
0000: 44 20 32 30 31 34 2d 30 37 2d 30 33 54 31 34 3a  D 2014-07-03T14:
0010: 33 31 3a 30 33 2e 32 37 31 0a 4c 20 6f 6e 69 6f  31:03.271.L onio
0020: 6e 2d 72 6f 75 74 69 6e 67 0a 50 20 30 38 34 34  n-routing.P 0844
0030: 66 35 32 37 38 64 33 31 33 64 35 39 35 30 36 65  f5278d313d59506e
0040: 31 34 65 36 64 33 30 31 63 30 33 38 64 33 61 38  14e6d301c038d3a8
0050: 35 61 36 30 0a 55 20 62 65 72 6e 64 0a 57 20 34  5a60.U bernd.W 4
0060: 37 34 31 0a 3c 68 31 3e 4f 6e 69 6f 6e 20 52 6f  741.<h1>Onion Ro
0070: 75 74 69 6e 67 3c 2f 68 31 3e 0a 0a 3c 70 3e 41  uting</h1>..<p>A
0080: 6e 6f 6e 79 6d 69 74 79 20 69 73 20 73 6f 6d 65  nonymity is some
0090: 77 68 61 74 20 6f 72 74 68 6f 67 6f 6e 61 6c 20  what orthogonal 
00a0: 74 6f 20 65 6e 63 72 79 70 74 69 6f 6e 3a 20 54  to encryption: T
00b0: 68 65 20 72 6f 75 74 69 6e 67 20 69 6e 66 6f 72  he routing infor
00c0: 6d 61 74 69 6f 6e 20 69 6e 0a 79 6f 75 72 20 6d  mation in.your m
00d0: 65 73 73 61 67 65 20 72 65 76 65 61 6c 73 20 77  essage reveals w
00e0: 68 6f 27 73 20 74 61 6c 6b 69 6e 67 20 74 6f 20  ho's talking to 
00f0: 77 68 6f 6d 2e 20 26 6e 62 73 70 3b 54 68 65 20  whom. &nbsp;The 
0100: 54 4f 52 20 70 72 6f 6a 65 63 74 20 73 75 67 67  TOR project sugg
0110: 65 73 74 73 20 74 68 61 74 0a 61 6e 6f 6e 79 6d  ests that.anonym
0120: 69 74 79 20 63 61 6e 20 62 65 20 61 63 68 69 65  ity can be achie
0130: 76 65 64 20 62 79 20 75 73 69 6e 67 20 73 65 76  ved by using sev
0140: 65 72 61 6c 20 68 6f 70 73 2c 20 61 6e 64 20 64  eral hops, and d
0150: 65 63 72 79 70 74 69 6e 67 20 74 68 65 20 6d 65  ecrypting the me
0160: 73 73 61 67 65 0a 62 6c 6f 63 6b 73 20 6f 6e 20  ssage.blocks on 
0170: 65 61 63 68 20 68 6f 70 2c 20 72 6f 75 74 69 6e  each hop, routin
0180: 67 20 74 68 65 6d 20 66 6f 72 77 61 72 64 20 74  g them forward t
0190: 6f 20 61 6e 6f 74 68 65 72 20 68 6f 70 2e 3c 2f  o another hop.</
01a0: 70 3e 0a 0a 3c 70 3e 54 68 65 20 72 65 71 75 69  p>..<p>The requi
01b0: 72 65 6d 65 6e 74 73 20 66 6f 72 20 6f 6e 69 6f  rements for onio
01c0: 6e 20 72 6f 75 74 69 6e 67 20 63 72 79 70 74 6f  n routing crypto
01d0: 67 72 61 70 68 79 20 61 72 65 20 64 69 66 66 65  graphy are diffe
01e0: 72 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 72 65  rent from the re
01f0: 73 74 0a 6f 66 20 6e 65 74 32 6f 20 63 72 79 70  st.of net2o cryp
0200: 74 6f 67 72 61 70 68 79 2e 20 54 68 65 20 69 6e  tography. The in
0210: 74 65 72 6d 65 64 69 61 74 65 20 68 6f 70 73 20  termediate hops 
0220: 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 61 75  don't need to au
0230: 74 68 65 6e 74 69 63 61 74 65 20 74 68 65 0a 62  thenticate the.b
0240: 6c 6f 63 6b 73 3b 20 69 6e 20 66 61 63 74 2c 20  locks; in fact, 
0250: 69 74 20 69 73 20 62 65 74 74 65 72 20 77 68 65  it is better whe
0260: 6e 20 74 68 65 79 20 64 6f 6e 27 74 20 65 76 65  n they don't eve
0270: 6e 20 6b 6e 6f 77 20 77 68 6f 27 73 20 73 65 6e  n know who's sen
0280: 64 69 6e 67 20 74 68 65 6d 2e 3c 2f 70 3e 0a 0a  ding them.</p>..
0290: 3c 68 32 3e 54 4f 52 20 64 65 73 69 67 6e 20 70  <h2>TOR design p
02a0: 72 6f 62 6c 65 6d 73 3c 2f 68 32 3e 0a 0a 3c 70  roblems</h2>..<p
02b0: 3e 54 4f 52 20 68 61 73 20 73 6f 6d 65 20 64 65  >TOR has some de
02c0: 73 69 67 6e 20 70 72 6f 62 6c 65 6d 73 2c 20 6f  sign problems, o
02d0: 6e 65 20 69 73 20 74 68 65 20 6d 6f 73 74 6c 79  ne is the mostly
02e0: 20 63 65 6e 74 72 61 6c 69 7a 65 64 20 64 69 63   centralized dic
02f0: 74 69 6f 6e 61 72 79 2e 0a 26 6e 62 73 70 3b 45  tionary..&nbsp;E
0300: 76 65 72 79 62 6f 64 79 20 61 73 6b 69 6e 67 20  verybody asking 
0310: 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73  the dictionary s
0320: 65 72 76 65 72 20 69 73 20 65 78 70 6f 73 65 64  erver is exposed
0330: 20 61 73 20 6f 62 76 69 6f 75 73 20 54 4f 52 20   as obvious TOR 
0340: 75 73 65 72 2e 0a 26 6e 62 73 70 3b 54 68 69 73  user..&nbsp;This
0350: 20 63 61 6e 20 62 65 20 65 61 73 69 6c 79 20 6d   can be easily m
0360: 69 74 69 67 61 74 65 64 20 62 79 20 75 73 69 6e  itigated by usin
0370: 67 20 61 20 44 48 54 2e 20 26 6e 62 73 70 3b 41  g a DHT. &nbsp;A
0380: 6e 6f 74 68 65 72 20 70 72 6f 62 6c 65 6d 20 69  nother problem i
0390: 73 20 6e 6f 74 0a 72 65 6c 61 74 65 64 20 74 6f  s not.related to
03a0: 20 54 4f 52 20 69 74 73 65 6c 66 2c 20 62 75 74   TOR itself, but
03b0: 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20   to the current 
03c0: 69 6e 74 65 72 6e 65 74 3a 20 54 68 65 20 74 72  internet: The tr
03d0: 61 66 66 69 63 20 66 72 6f 6d 20 54 4f 52 20 65  affic from TOR e
03e0: 78 69 74 0a 6e 6f 64 65 73 20 61 6e 64 20 62 65  xit.nodes and be
03f0: 79 6f 6e 64 20 69 73 20 6f 66 74 65 6e 20 75 6e  yond is often un
0400: 65 6e 63 72 79 70 74 65 64 3b 20 61 73 20 54 4f  encrypted; as TO
0410: 52 20 65 78 69 74 20 6e 6f 64 65 73 20 61 72 65  R exit nodes are
0420: 20 65 61 73 79 20 74 6f 20 73 70 6f 74 20 28 74   easy to spot (t
0430: 68 65 79 0a 61 72 65 20 6c 69 73 74 65 64 20 69  hey.are listed i
0440: 6e 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20  n the directory 
0450: 73 65 72 76 65 72 29 2c 20 74 68 65 79 20 61 72  server), they ar
0460: 65 20 76 65 72 79 20 6c 69 6b 65 6c 79 20 74 6f  e very likely to
0470: 20 67 65 74 20 73 70 65 63 69 61 6c 0a 74 72 65   get special.tre
0480: 61 74 6d 65 6e 74 2c 20 61 6e 64 20 61 6c 6c 20  atment, and all 
0490: 74 72 61 66 66 69 63 20 69 73 20 6d 6f 6e 69 74  traffic is monit
04a0: 6f 72 65 64 2e 20 53 63 61 72 69 6e 67 20 54 4f  ored. Scaring TO
04b0: 52 20 65 78 69 74 20 6e 6f 64 65 20 6f 70 65 72  R exit node oper
04c0: 61 74 6f 72 73 20 69 6e 74 6f 0a 73 68 75 74 74  ators into.shutt
04d0: 69 6e 67 20 64 6f 77 6e 20 74 68 65 69 72 20 73  ing down their s
04e0: 65 72 76 69 63 65 73 20 72 65 64 75 63 65 73 20  ervices reduces 
04f0: 62 61 6e 64 77 69 64 74 68 2c 20 61 6e 64 20 6d  bandwidth, and m
0500: 61 6b 65 73 20 54 4f 52 20 64 69 66 66 69 63 75  akes TOR difficu
0510: 6c 74 20 74 6f 20 75 73 65 2e 3c 2f 70 3e 0a 0a  lt to use.</p>..
0520: 3c 70 3e 54 68 65 72 65 66 6f 72 65 2c 20 61 6e  <p>Therefore, an
0530: 6f 6e 79 6d 6f 75 73 20 72 65 6c 61 79 73 20 6f  onymous relays o
0540: 6e 6c 79 20 77 6f 72 6b 20 77 65 6c 6c 20 77 68  nly work well wh
0550: 65 6e 20 6d 61 6e 79 20 70 61 72 74 69 63 69 70  en many particip
0560: 61 6e 74 73 20 64 69 73 74 72 69 62 75 74 65 0a  ants distribute.
0570: 74 68 65 20 6c 6f 61 64 2c 20 61 6e 64 20 63 61  the load, and ca
0580: 6e 27 74 20 65 61 73 69 6c 79 20 62 65 20 73 63  n't easily be sc
0590: 61 72 65 64 20 74 6f 20 74 75 72 6e 20 69 74 20  ared to turn it 
05a0: 6f 66 66 2e 3c 2f 70 3e 0a 0a 3c 68 32 3e 6e 65  off.</p>..<h2>ne
05b0: 74 32 6f 20 6f 6e 69 6f 6e 20 72 6f 75 74 69 6e  t2o onion routin
05c0: 67 3c 2f 68 32 3e 0a 0a 3c 70 3e 3c 69 3e 54 68  g</h2>..<p><i>Th
05d0: 69 73 20 69 73 20 6e 6f 74 20 79 65 74 20 69 6d  is is not yet im
05e0: 70 6c 65 6d 65 6e 74 65 64 3c 2f 69 3e 3c 2f 70  plemented</i></p
05f0: 3e 0a 0a 3c 70 3e 41 73 20 6f 6e 69 6f 6e 20 72  >..<p>As onion r
0600: 6f 75 74 69 6e 67 20 75 73 65 73 20 63 72 79 70  outing uses cryp
0610: 74 6f 67 72 61 70 68 79 20 6f 6e 20 61 6c 72 65  tography on alre
0620: 61 64 79 20 65 6e 63 72 79 70 74 65 64 20 61 6e  ady encrypted an
0630: 64 20 61 75 74 68 65 6e 74 69 63 61 74 65 64 0a  d authenticated.
0640: 70 61 63 6b 65 74 73 2c 20 61 6e 64 20 73 68 6f  packets, and sho
0650: 75 6c 64 20 6e 6f 74 20 69 6e 63 72 65 61 73 65  uld not increase
0660: 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65   the size of the
0670: 20 70 61 63 6b 65 74 73 2c 20 49 20 77 69 6c 6c   packets, I will
0680: 20 75 73 65 20 61 20 62 6c 6f 63 6b 0a 63 69 70   use a block.cip
0690: 68 65 72 2c 20 77 69 74 68 20 61 6e 20 41 45 53  her, with an AES
06a0: 2d 58 45 58 20 76 61 72 69 61 6e 74 2e 20 26 6e  -XEX variant. &n
06b0: 62 73 70 3b 54 68 65 20 64 65 73 74 69 6e 61 74  bsp;The destinat
06c0: 69 6f 6e 20 6d 65 6d 6f 72 79 20 61 64 64 72 65  ion memory addre
06d0: 73 73 20 61 6e 64 20 74 68 65 0a 73 65 63 6f 6e  ss and the.secon
06e0: 64 20 66 6c 61 67 20 62 79 74 65 20 77 69 6c 6c  d flag byte will
06f0: 20 61 6c 73 6f 20 62 65 20 65 6e 63 72 79 70 74   also be encrypt
0700: 65 64 2c 20 75 73 69 6e 67 20 45 43 42 20 28 74  ed, using ECB (t
0710: 61 6b 69 6e 67 20 74 68 65 20 66 69 72 73 74 20  aking the first 
0720: 70 61 72 74 20 6f 66 0a 74 68 65 20 6d 65 73 73  part of.the mess
0730: 61 67 65 20 74 6f 20 66 69 6c 6c 20 74 68 65 20  age to fill the 
0740: 31 36 20 62 79 74 65 73 29 2c 20 74 68 65 20 64  16 bytes), the d
0750: 65 63 72 79 70 74 65 64 20 6d 65 6d 6f 72 79 20  ecrypted memory 
0760: 61 64 64 72 65 73 73 20 69 73 20 74 68 65 20 73  address is the s
0770: 65 63 74 6f 72 0a 69 6e 64 65 78 20 66 6f 72 20  ector.index for 
0780: 41 45 53 2d 58 45 58 2e 20 54 68 69 73 20 65 6e  AES-XEX. This en
0790: 63 72 79 70 74 69 6f 6e 20 69 73 20 6e 6f 74 20  cryption is not 
07a0: 74 61 6d 70 65 72 2d 70 72 6f 6f 66 2c 20 62 75  tamper-proof, bu
07b0: 74 20 74 61 6d 70 65 72 65 64 20 70 61 63 6b 65  t tampered packe
07c0: 74 73 0a 77 69 6c 6c 20 62 65 20 66 69 6c 74 65  ts.will be filte
07d0: 72 65 64 20 6f 75 74 20 61 74 20 74 68 65 20 6c  red out at the l
07e0: 65 67 69 74 69 6d 61 74 65 20 64 65 73 74 69 6e  egitimate destin
07f0: 61 74 69 6f 6e 2e 20 26 6e 62 73 70 3b 54 68 65  ation. &nbsp;The
0800: 20 72 65 71 75 69 72 65 6d 65 6e 74 20 68 65 72   requirement her
0810: 65 0a 69 73 20 74 68 61 74 20 69 74 20 69 73 20  e.is that it is 
0820: 68 61 72 64 65 72 20 74 6f 20 63 6f 72 72 65 6c  harder to correl
0830: 61 74 65 20 69 6e 70 75 74 20 61 6e 64 20 6f 75  ate input and ou
0840: 74 70 75 74 20 6f 66 20 61 20 72 65 6c 61 79 20  tput of a relay 
0850: 74 68 72 6f 75 67 68 0a 64 65 63 72 79 70 74 69  through.decrypti
0860: 6f 6e 20 74 68 61 6e 20 74 68 72 6f 75 67 68 20  on than through 
0870: 6f 74 68 65 72 20 6d 65 61 6e 73 2e 3c 2f 70 3e  other means.</p>
0880: 0a 0a 3c 70 3e 52 65 6c 61 79 73 20 75 73 65 20  ..<p>Relays use 
0890: 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 61 64  the remaining ad
08a0: 64 72 65 73 73 20 70 61 74 68 20 61 73 20 69 6e  dress path as in
08b0: 64 65 78 20 69 6e 74 6f 20 61 6e 20 69 6e 74 65  dex into an inte
08c0: 72 6e 61 6c 20 74 61 62 6c 65 20 74 6f 0a 66 69  rnal table to.fi
08d0: 6e 64 20 74 68 65 20 74 61 72 67 65 74 2e 20 26  nd the target. &
08e0: 6e 62 73 70 3b 54 68 65 20 72 65 74 75 72 6e 20  nbsp;The return 
08f0: 70 61 74 68 20 69 73 20 61 6c 73 6f 20 69 6e 64  path is also ind
0900: 65 78 65 64 20 69 6e 74 65 72 6e 61 6c 6c 79 2e  exed internally.
0910: 20 26 6e 62 73 70 3b 54 68 65 0a 72 65 6c 61 79   &nbsp;The.relay
0920: 20 73 65 74 73 20 61 20 6b 65 79 20 66 6f 72 20   sets a key for 
0930: 62 6f 74 68 20 70 61 72 74 73 2c 20 6f 6e 65 20  both parts, one 
0940: 64 69 72 65 63 74 69 6f 6e 20 75 73 65 73 20 65  direction uses e
0950: 6e 63 72 79 70 74 69 6f 6e 2c 20 74 68 65 20 6f  ncryption, the o
0960: 74 68 65 72 0a 64 65 63 72 79 70 74 69 6f 6e 2e  ther.decryption.
0970: 20 26 6e 62 73 70 3b 54 68 65 20 6f 72 69 67 69   &nbsp;The origi
0980: 6e 61 74 6f 72 20 6e 65 65 64 73 20 74 6f 20 6b  nator needs to k
0990: 6e 6f 77 20 61 6c 6c 20 6b 65 79 73 2c 20 61 6e  now all keys, an
09a0: 64 20 65 6e 63 72 79 70 74 20 77 69 74 68 20 61  d encrypt with a
09b0: 6c 6c 0a 6f 66 20 74 68 65 6d 20 6f 6e 20 73 65  ll.of them on se
09c0: 6e 64 69 6e 67 2c 20 61 6e 64 20 64 65 63 72 79  nding, and decry
09d0: 70 74 20 77 69 74 68 20 61 6c 6c 20 6f 66 20 74  pt with all of t
09e0: 68 65 6d 20 6f 6e 20 72 65 63 65 69 76 69 6e 67  hem on receiving
09f0: 20 2d 20 73 6f 20 74 68 65 0a 6f 72 69 67 69 6e   - so the.origin
0a00: 61 74 6f 72 20 61 63 74 75 61 6c 6c 79 20 63 6f  ator actually co
0a10: 6d 70 75 74 65 73 20 74 68 6f 73 65 20 6b 65 79  mputes those key
0a20: 73 2e 20 26 6e 62 73 70 3b 54 68 65 72 65 66 6f  s. &nbsp;Therefo
0a30: 72 65 2c 20 61 20 66 61 73 74 2c 0a 68 61 72 64  re, a fast,.hard
0a40: 77 61 72 65 2d 61 63 63 65 6c 65 72 61 74 65 64  ware-accelerated
0a50: 20 61 6c 67 6f 72 69 74 68 6d 20 69 73 20 69 6d   algorithm is im
0a60: 70 6f 72 74 61 6e 74 20 68 65 72 65 3b 20 73 65  portant here; se
0a70: 63 75 72 69 74 79 20 63 6f 6e 63 65 72 6e 73 20  curity concerns 
0a80: 61 62 6f 75 74 20 41 45 53 0a 77 65 61 6b 6e 65  about AES.weakne
0a90: 73 73 65 73 20 61 6e 64 20 6d 6f 64 65 20 70 72  sses and mode pr
0aa0: 6f 62 6c 65 6d 73 20 61 72 65 20 73 65 63 6f 6e  oblems are secon
0ab0: 64 61 72 79 2e 20 26 6e 62 73 70 3b 54 68 69 73  dary. &nbsp;This
0ac0: 20 69 73 20 6f 6e 6c 79 20 6d 61 6b 69 6e 67 20   is only making 
0ad0: 69 74 20 6d 6f 72 65 0a 64 69 66 66 69 63 75 6c  it more.difficul
0ae0: 74 20 74 6f 20 63 6f 6d 70 75 74 65 20 61 20 63  t to compute a c
0af0: 6f 72 72 65 6c 61 74 69 6f 6e 2c 20 62 72 65 61  orrelation, brea
0b00: 6b 69 6e 67 20 74 68 65 20 65 6e 63 72 79 70 74  king the encrypt
0b10: 69 6f 6e 20 74 68 65 72 65 66 6f 72 65 20 73 68  ion therefore sh
0b20: 6f 75 6c 64 0a 6f 6e 6c 79 20 62 65 20 68 61 72  ould.only be har
0b30: 64 65 72 20 74 68 61 6e 20 61 6e 79 20 6f 74 68  der than any oth
0b40: 65 72 20 6d 65 61 6e 20 74 6f 20 63 6f 72 72 65  er mean to corre
0b50: 6c 61 74 65 20 70 61 63 6b 65 74 73 20 28 65 2e  late packets (e.
0b60: 67 2e 20 75 73 69 6e 67 20 74 69 6d 69 6e 67 0a  g. using timing.
0b70: 61 74 74 61 63 6b 73 29 2e 20 26 6e 62 73 70 3b  attacks). &nbsp;
0b80: 54 68 65 20 63 6f 6e 74 65 6e 74 20 65 6e 63 72  The content encr
0b90: 79 70 74 69 6f 6e 20 69 73 20 62 65 6c 6f 77 20  yption is below 
0ba0: 74 68 61 74 20 6c 61 79 65 72 3b 20 75 73 69 6e  that layer; usin
0bb0: 67 20 61 6e 20 65 6e 74 69 72 65 6c 79 0a 64 69  g an entirely.di
0bc0: 66 66 65 72 65 6e 74 20 61 6c 67 6f 72 69 74 68  fferent algorith
0bd0: 6d 20 70 72 6f 76 69 64 65 73 20 61 64 64 69 74  m provides addit
0be0: 69 6f 6e 61 6c 20 73 65 63 75 72 69 74 79 3a 20  ional security: 
0bf0: 41 74 74 61 63 6b 65 72 73 20 6f 66 20 72 65 6c  Attackers of rel
0c00: 61 79 65 64 20 74 72 61 66 66 69 63 0a 6e 65 65  ayed traffic.nee
0c10: 64 20 74 6f 20 62 72 65 61 6b 20 74 77 6f 20 65  d to break two e
0c20: 6e 63 72 79 70 74 69 6f 6e 20 73 63 68 65 6d 65  ncryption scheme
0c30: 73 2e 20 26 6e 62 73 70 3b 59 6f 75 20 63 61 6e  s. &nbsp;You can
0c40: 20 73 65 74 75 70 20 61 20 72 65 6c 61 79 20 74   setup a relay t
0c50: 6f 20 69 74 73 65 6c 66 20 6f 6e 0a 79 6f 75 72  o itself on.your
0c60: 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 6f 20   destination to 
0c70: 61 64 64 20 61 6e 20 41 45 53 20 65 6e 63 72 79  add an AES encry
0c80: 70 74 69 6f 6e 20 6f 6e 20 74 6f 70 20 6f 66 20  ption on top of 
0c90: 4b 65 63 63 61 6b 20 65 6e 63 72 79 70 74 69 6f  Keccak encryptio
0ca0: 6e 2c 20 74 68 65 0a 64 65 73 74 69 6e 61 74 69  n, the.destinati
0cb0: 6f 6e 20 74 68 65 6e 20 6f 6e 6c 79 20 72 65 63  on then only rec
0cc0: 65 69 76 65 73 20 70 61 63 6b 65 74 73 20 77 68  eives packets wh
0cd0: 69 63 68 20 6c 6f 6f 6b 20 6c 69 6b 65 20 72 65  ich look like re
0ce0: 6c 61 79 65 64 20 70 61 63 6b 65 74 73 2e 3c 2f  layed packets.</
0cf0: 70 3e 0a 0a 3c 70 3e 54 68 65 20 72 65 6c 61 79  p>..<p>The relay
0d00: 20 6d 61 79 20 73 6c 6f 77 20 64 6f 77 6e 20 70   may slow down p
0d10: 61 63 6b 65 74 20 72 61 74 65 73 20 74 6f 20 6d  acket rates to m
0d20: 61 6b 65 20 63 6f 72 72 65 6c 61 74 69 6f 6e 20  ake correlation 
0d30: 68 61 72 64 65 72 2c 20 62 75 74 20 69 73 20 6e  harder, but is n
0d40: 6f 74 0a 61 6c 6c 6f 77 65 64 20 74 6f 20 73 70  ot.allowed to sp
0d50: 65 65 64 20 75 70 20 62 75 72 73 74 73 2c 20 62  eed up bursts, b
0d60: 65 63 61 75 73 65 20 74 68 61 74 20 77 6f 75 6c  ecause that woul
0d70: 64 20 62 72 65 61 6b 20 6e 65 74 32 6f 27 73 20  d break net2o's 
0d80: 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 0a 28 70 61  flow control.(pa
0d90: 72 74 69 61 6c 20 73 70 65 65 64 20 75 70 20 69  rtial speed up i
0da0: 6e 73 69 64 65 20 61 20 62 75 72 73 74 20 69 73  nside a burst is
0db0: 20 61 6c 6c 6f 77 65 64 2c 20 74 68 6f 75 67 68   allowed, though
0dc0: 29 2e 20 26 6e 62 73 70 3b 52 65 6c 61 79 73 20  ). &nbsp;Relays 
0dd0: 73 68 6f 75 6c 64 20 64 6f 0a 66 61 69 72 20 71  should do.fair q
0de0: 75 65 75 69 6e 67 20 74 6f 20 68 65 6c 70 20 74  ueuing to help t
0df0: 68 65 20 66 6c 6f 77 20 63 6f 6e 74 72 6f 6c 2e  he flow control.
0e00: 3c 2f 70 3e 0a 0a 3c 70 3e 52 65 6c 61 79 20 67  </p>..<p>Relay g
0e10: 65 6e 65 72 61 74 69 6f 6e 20 69 73 20 6a 75 73  eneration is jus
0e20: 74 20 6f 6e 65 20 73 69 6e 67 6c 65 20 63 6f 6d  t one single com
0e30: 6d 61 6e 64 3a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 66  mand:</p>..<p><f
0e40: 6f 6e 74 20 66 61 63 65 3d 22 43 6f 75 72 69 65  ont face="Courie
0e50: 72 20 4e 65 77 22 3e 63 72 65 61 74 65 2d 72 65  r New">create-re
0e60: 6c 61 79 20 28 20 24 6b 65 79 20 24 61 64 64 72  lay ( $key $addr
0e70: 65 73 73 20 2d 2d 20 70 72 65 66 69 78 20 29 3c  ess -- prefix )<
0e80: 2f 66 6f 6e 74 3e 3c 2f 70 3e 0a 0a 3c 70 3e 3c  /font></p>..<p><
0e90: 66 6f 6e 74 20 66 61 63 65 3d 22 41 72 69 61 6c  font face="Arial
0ea0: 22 3e 79 6f 75 20 67 65 74 20 61 20 70 61 74 68  ">you get a path
0eb0: 20 70 72 65 66 69 78 20 61 73 20 6c 69 74 65 72   prefix as liter
0ec0: 61 6c 20 28 36 34 20 62 69 74 20 6d 61 78 69 6d  al (64 bit maxim
0ed0: 75 6d 29 2e 20 52 65 6c 61 79 73 0a 61 75 74 6f  um). Relays.auto
0ee0: 6d 61 74 69 63 61 6c 6c 79 20 61 72 65 20 73 68  matically are sh
0ef0: 75 74 20 64 6f 77 6e 20 61 66 74 65 72 20 31 20  ut down after 1 
0f00: 6d 69 6e 75 74 65 20 6f 66 20 69 6e 61 63 74 69  minute of inacti
0f10: 76 69 74 79 3b 20 72 65 6c 61 79 73 20 61 72 65  vity; relays are
0f20: 20 63 72 65 61 74 65 64 0a 77 69 74 68 20 6f 6e   created.with on
0f30: 6c 79 20 6f 6e 65 2d 74 69 6d 65 20 6b 65 79 73  ly one-time keys
0f40: 2c 20 62 65 63 61 75 73 65 20 79 6f 75 20 64 6f  , because you do
0f50: 6e 27 74 20 77 61 6e 74 20 74 68 65 20 72 65 6c  n't want the rel
0f60: 61 79 20 74 6f 20 6b 6e 6f 77 20 77 68 6f 20 79  ay to know who y
0f70: 6f 75 20 61 72 65 2c 0a 62 75 74 20 79 6f 75 20  ou are,.but you 
0f80: 77 61 6e 74 20 74 6f 20 6b 6e 6f 77 20 74 68 61  want to know tha
0f90: 74 20 74 68 65 20 72 65 6c 61 79 20 69 73 20 74  t the relay is t
0fa0: 68 65 20 6f 6e 65 20 79 6f 75 20 61 73 6b 65 64  he one you asked
0fb0: 2c 20 73 6f 20 79 6f 75 20 77 61 6e 74 20 69 74  , so you want it
0fc0: 73 0a 70 75 62 6b 65 79 2c 20 61 6e 64 20 75 73  s.pubkey, and us
0fd0: 65 20 61 6e 6f 74 68 65 72 20 6f 6e 65 2d 74 69  e another one-ti
0fe0: 6d 65 20 6b 65 79 20 74 6f 20 67 65 6e 65 72 61  me key to genera
0ff0: 74 65 20 74 68 65 20 73 68 61 72 65 64 20 73 65  te the shared se
1000: 63 72 65 74 2e 0a 26 6e 62 73 70 3b 54 68 65 72  cret..&nbsp;Ther
1010: 65 27 73 20 6e 6f 20 66 75 6c 6c 20 63 6f 6e 6e  e's no full conn
1020: 65 63 74 69 6f 6e 20 73 65 74 75 70 20 77 69 74  ection setup wit
1030: 68 20 61 20 72 65 6c 61 79 2c 20 73 65 74 74 69  h a relay, setti
1040: 6e 67 20 75 70 20 61 20 72 65 6c 61 79 20 74 61  ng up a relay ta
1050: 6b 65 0a 74 68 72 65 65 20 6d 65 73 73 61 67 65  ke.three message
1060: 73 20 6f 6e 6c 79 2e 3c 2f 66 6f 6e 74 3e 3c 2f  s only.</font></
1070: 70 3e 0a 0a 3c 70 3e 3c 66 6f 6e 74 20 66 61 63  p>..<p><font fac
1080: 65 3d 22 41 72 69 61 6c 22 3e 59 6f 75 20 63 61  e="Arial">You ca
1090: 6e 20 63 72 65 61 74 65 20 72 65 6c 61 79 20 74  n create relay t
10a0: 72 65 65 73 20 28 77 69 74 68 20 74 68 65 20 72  rees (with the r
10b0: 6f 6f 74 20 69 6e 20 74 68 65 20 74 61 72 67 65  oot in the targe
10c0: 74 0a 79 6f 75 20 74 61 6c 6b 20 74 6f 29 2c 20  t.you talk to), 
10d0: 61 6e 64 20 73 77 69 74 63 68 20 62 65 74 77 65  and switch betwe
10e0: 65 6e 20 6c 65 61 76 65 73 20 72 61 6e 64 6f 6d  en leaves random
10f0: 6c 79 2c 20 61 73 20 6e 65 74 32 6f 20 70 72 6f  ly, as net2o pro
1100: 76 69 64 65 73 20 70 65 72 66 65 63 74 0a 68 61  vides perfect.ha
1110: 6e 64 6f 76 65 72 20 73 75 70 70 6f 72 74 2e 20  ndover support. 
1120: 44 69 66 66 65 72 65 6e 74 20 70 61 74 68 73 20  Different paths 
1130: 63 61 6e 20 68 61 76 65 20 64 69 66 66 65 72 65  can have differe
1140: 6e 74 20 73 65 74 73 20 6f 66 20 6b 65 79 73 2c  nt sets of keys,
1150: 20 79 6f 75 20 77 69 6c 6c 0a 6b 6e 6f 77 20 77   you will.know w
1160: 68 69 63 68 20 70 61 74 68 20 68 61 73 20 62 65  hich path has be
1170: 65 6e 20 75 73 65 64 2e 3c 2f 66 6f 6e 74 3e 3c  en used.</font><
1180: 2f 70 3e 0a 0a 3c 68 32 3e 3c 66 6f 6e 74 20 66  /p>..<h2><font f
1190: 61 63 65 3d 22 41 72 69 61 6c 22 3e 44 6f 77 6e  ace="Arial">Down
11a0: 73 69 64 65 73 20 6f 66 20 4f 6e 69 6f 6e 20 52  sides of Onion R
11b0: 6f 75 74 69 6e 67 3c 2f 66 6f 6e 74 3e 3c 2f 68  outing</font></h
11c0: 32 3e 0a 0a 3c 70 3e 3c 66 6f 6e 74 20 66 61 63  2>..<p><font fac
11d0: 65 3d 22 41 72 69 61 6c 22 3e 4f 6e 69 6f 6e 20  e="Arial">Onion 
11e0: 72 6f 75 74 69 6e 67 20 69 6e 63 72 65 61 73 65  routing increase
11f0: 73 20 6c 61 74 65 6e 63 79 20 61 6e 64 20 74 72  s latency and tr
1200: 61 66 66 69 63 2e 20 49 66 20 79 6f 75 20 77 61  affic. If you wa
1210: 6e 74 0a 74 6f 20 6d 69 6e 69 6d 69 7a 65 20 6f  nt.to minimize o
1220: 6e 20 74 68 61 74 2c 20 75 73 65 20 72 65 6c 61  n that, use rela
1230: 79 73 20 63 6c 6f 73 65 20 74 6f 20 79 6f 75 20  ys close to you 
1240: 28 69 6e 20 74 65 72 6d 73 20 6f 66 20 6e 65 74  (in terms of net
1250: 77 6f 72 6b 20 64 69 73 74 61 6e 63 65 29 2e 20  work distance). 
1260: 41 73 0a 62 69 67 20 69 6e 74 65 72 6e 65 74 20  As.big internet 
1270: 65 78 63 68 61 6e 67 65 73 20 61 72 65 20 6d 75  exchanges are mu
1280: 63 68 20 6d 6f 72 65 20 6c 69 6b 65 6c 79 20 74  ch more likely t
1290: 6f 20 62 65 20 6d 6f 6e 69 74 6f 72 65 64 2c 20  o be monitored, 
12a0: 6c 6f 63 61 6c 20 72 65 6c 61 79 73 20 61 6c 73  local relays als
12b0: 6f 0a 70 72 6f 76 69 64 65 20 6c 65 73 73 20 6d  o.provide less m
12c0: 65 61 6e 73 20 74 6f 20 63 6f 6c 6c 65 63 74 20  eans to collect 
12d0: 63 6f 72 72 65 6c 61 74 69 6f 6e 73 2e 3c 2f 66  correlations.</f
12e0: 6f 6e 74 3e 3c 2f 70 3e 0a 0a 5a 20 36 66 64 64  ont></p>..Z 6fdd
12f0: 62 66 62 61 65 65 31 34 37 35 39 37 65 38 33 38  bfbaee147597e838
1300: 62 63 38 39 30 61 33 62 34 64 66 33 0a           bc890a3b4df3.