|
@@ -293,11 +293,14 @@ see tor-design.pdf.
|
|
|
|
|
|
The CircID for a CREATE cell is an arbitrarily chosen 2-byte integer,
|
|
|
selected by the node (OP or OR) that sends the CREATE cell. To prevent
|
|
|
- CircID collisions, when one OR sends a CREATE cell to another OR, it chooses
|
|
|
+ CircID collisions, when one node sends a CREATE cell to another, it chooses
|
|
|
from only one half of the possible values based on the ORs' public
|
|
|
- identity keys: if the sending OR has a lower key, it chooses a CircID with
|
|
|
+ identity keys: if the sending node has a lower key, it chooses a CircID with
|
|
|
an MSB of 0; otherwise, it chooses a CircID with an MSB of 1.
|
|
|
|
|
|
+ (An OP with no public key MAY choose any CircID it wishes, since an OP
|
|
|
+ never needs to process a CREATE cell.)
|
|
|
+
|
|
|
Public keys are compared numerically by modulus.
|
|
|
|
|
|
As usual with DH, x and y MUST be generated randomly.
|