nick suggests that the hello cell should have both server IP and

client IP. he's right.


svn:r6771
This commit is contained in:
Roger Dingledine 2006-07-17 05:12:54 +00:00
parent b4433c674d
commit 48ea06ea02

View File

@ -748,9 +748,8 @@ when do we rotate which keys (tls, link, etc)?
Version [1 byte]
Timestamp [4 bytes]
Number of addresses [1 byte]
Addresses [variable]
others?
Server-side address [variable]
Client-side address [variable]
Version is the "link version", and dictates what types and formats
of cells can be sent/received. It should be 1. A Tor connection is
@ -760,12 +759,15 @@ when do we rotate which keys (tls, link, etc)?
Timestamp is the OR's current Unix time (GMT).
Each address contains Type/Length/Value as used in Section 5.4.
This section lists all addresses that the OR has published and is
listening to now -- we include them to block a man-in-the-middle
The first address is the one that the OR has published and is
listening to now -- we include it to block a man-in-the-middle
attack on TLS that lets an attacker bounce traffic through his own
computers to enable timing and packet-counting attacks.
[Do we want to provide just one address? Do we want to be more
general by accepting netmasks or something? -RD]
The second address is the one that the client OP or OR has used to
connect to the server -- it can be used to learn what your IP address
is if you have no other hints.
If we receive a HELLO cell with a version we do not recognize, we drop
it. If we receive a HELLO cell with a version that is older than the