[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] Add IP:Port:KeyDigest format to rend-spec.txt
Update of /home/or/cvsroot/doc
In directory moria.mit.edu:/tmp/cvs-serv20315/doc
Modified Files:
rend-spec.txt
Log Message:
Add IP:Port:KeyDigest format to rend-spec.txt
Index: rend-spec.txt
===================================================================
RCS file: /home/or/cvsroot/doc/rend-spec.txt,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- rend-spec.txt 28 Apr 2004 20:01:54 -0000 1.18
+++ rend-spec.txt 15 Aug 2004 20:08:39 -0000 1.19
@@ -117,21 +117,20 @@
PK Bob's public key [KL octets]
TS A timestamp [4 octets]
NI Number of introduction points [2 octets]
- Ipt A list of NUL-terminated OR nicknames [variable]
+ Ipt A list of NUL-terminated ORs [variable]
SIG Signature of above fields [variable]
KL is the length of PK, in octets. (Currently, KL must be 128.)
TS is the number of seconds elapsed since Jan 1, 1970.
+ The members of Ipt may either be OR nicknames, or IP:Port:ID-key-hash
+ triples. Servers must accept both forms. Before 0.0.7 is obsoleted,
+ servers should only generate the first form.
+
[It's ok for Bob to advertise 0 introduction points. He might want
to do that if he previously advertised some introduction points,
and now he doesn't have any. -RD]
- [Shouldn't the nicknames be hostname:port's instead? That way, Alice's
- directory servers don't need to know Bob's chosen introduction points.
- Not important now, but essential if we ever have a non-total-knowledge
- design. -NM]
-
1.3. Bob's OP establishes his introduction points.
The OP establishes a new introduction circuit to each introduction
@@ -160,7 +159,7 @@
currently associated with PK. On success, the OR sends Bob a
RELAY_INTRO_ESTABLISHED cell with an empty payload.
-1.4. Bob's OP advertises his server descriptor
+1.4. Bob's OP advertises his service descriptor
Bob's OP opens a stream to each directory server's directory port via Tor.
(He may re-use old circuits for this.)
@@ -251,10 +250,20 @@
Encrypted to Bob's PK:
RP Rendezvous point's nickname [20 octets]
RC Rendezvous cookie [20 octets]
- g^x Diffie-Hellman data, part 1 [128 octetes]
+ g^x Diffie-Hellman data, part 1 [128 octets]
+ OR
+ VER Version byte: set to 4. [1 octet]
+ RP:IP IP of rendezvous point [4 octets]
+ RP:P Port of rendezvous point [2 octets]
+ RP:ID ID key hash of rendezvous pt [20 octets]
+ RC Rendezvous cookie [20 octets]
+ g^x Diffie-Hellman data, part 1 [128 octets]
PK_ID is the hash of Bob's public key. RP is NUL-padded.
+ Implementations must accept both variants, but should only generate the
+ first so long as Tor 0.0.7.
+
The hybrid encryption to Bob's PK works just like the hybrid
encryption in CREATE cells (see main spec). Thus the payload of the
RELAY_INTRODUCE1 cell on the wire will contain 20+42+16+20+20+128=246