diff options
author | Nick Mathewson <nickm@torproject.org> | 2024-02-06 11:18:31 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2024-02-06 13:00:44 -0500 |
commit | db80b935f799ab44750ff378267b10a967af38e3 (patch) | |
tree | 12be4d952e51f6102fee807c25532025fad91def /spec/tor-spec/creating-circuits.md | |
parent | ad73886e2a38255b5b0b599628f67fe820a5c440 (diff) | |
download | torspec-db80b935f799ab44750ff378267b10a967af38e3.tar.gz torspec-db80b935f799ab44750ff378267b10a967af38e3.zip |
Apply "cell" and "message" consistently
Done by grepping for "cell" and making sure it was accurate in every
place where it occurs. In tor-spec, I also searched for "message".
Part of #253.
Diffstat (limited to 'spec/tor-spec/creating-circuits.md')
-rw-r--r-- | spec/tor-spec/creating-circuits.md | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/spec/tor-spec/creating-circuits.md b/spec/tor-spec/creating-circuits.md index eb8de36..10e23b4 100644 --- a/spec/tor-spec/creating-circuits.md +++ b/spec/tor-spec/creating-circuits.md @@ -9,7 +9,7 @@ When creating a circuit through the network, the circuit creator * N MAY be 1 for non-anonymous directory mirror, introduction point, or service rendezvous connections. * N SHOULD be 3 or more for anonymous connections. - Some end nodes accept streams (see ["Relay Cells"](./relay-cells.md#relay-cells)), + Some end nodes accept streams (see ["Opening streams"](./opening-streams.md)), others are introduction or rendezvous points (see the [Rendezvous Spec](../rend-spec/index.md)). 2. Choose a chain of (N-1) onion routers (R_1...R_N-1) to constitute @@ -34,35 +34,35 @@ these steps: 1. Create an onion skin, encrypted to R_M's public onion key. -2. Send the onion skin in a relay EXTEND/EXTEND2 cell along +2. Send the onion skin in a relay EXTEND/EXTEND2 message along the circuit (see - ["EXTEND and EXTENDED cells"](./create-created-cells.md#EXTEND) + ["EXTEND and EXTENDED messages"](./create-created-cells.md#EXTEND) and ["Routing relay cells"](./routing-relay-cells.md#routing-relay-cells)). -3. When a relay EXTENDED/EXTENDED2 cell is received, verify KH, +3. When a relay EXTENDED/EXTENDED2 message is received, verify KH, and calculate the shared keys. The circuit is now extended. -When an onion router receives an EXTEND relay cell, it sends a CREATE +When an onion router receives an EXTEND relay message, it sends a CREATE cell to the next onion router, with the enclosed onion skin as its payload. -When an onion router receives an EXTEND2 relay cell, it sends a CREATE2 +When an onion router receives an EXTEND2 relay message, it sends a CREATE2 cell to the next onion router, with the enclosed HLEN, HTYPE, and HDATA as its payload. The initiating onion router chooses some circID not yet used on the connection between the two onion routers. (But see section ["Choosing circuit IDs in create cells"](./create-created-cells.md#choosing-circid)) -As special cases, if the EXTEND/EXTEND2 cell includes a legacy identity, or +As special cases, if the EXTEND/EXTEND2 message includes a legacy identity, or identity fingerprint of all zeroes, or asks to extend back to the relay that sent the extend cell, the circuit will fail and be torn down. -Ed25519 identity keys are not required in EXTEND2 cells, so all zero +Ed25519 identity keys are not required in EXTEND2 messages, so all zero keys SHOULD be accepted. If the extending relay knows the ed25519 key from the consensus, it SHOULD also check that key. (See -[EXTEND and EXTENDED cells](./create-created-cells.md#EXTEND)) +[EXTEND and EXTENDED message](./create-created-cells.md#EXTEND)) -If an EXTEND2 cell contains the ed25519 key of the relay that sent the -extend cell, the circuit will fail and be torn down. +If an EXTEND2 message contains the ed25519 key of the relay that sent the +EXTEND2 message, the circuit will fail and be torn down. When an onion router receives a CREATE/CREATE2 cell, if it already has a circuit on the given connection with the given circID, it drops the @@ -70,9 +70,9 @@ cell. Otherwise, after receiving the CREATE/CREATE2 cell, it completes the specified handshake, and replies with a CREATED/CREATED2 cell. Upon receiving a CREATED/CREATED2 cell, an onion router packs it payload -into an [EXTENDED/EXTENDED2](./create-created-cells.md#EXTEND) relay cell, and sends -that cell up the circuit. Upon receiving the EXTENDED/EXTENDED2 relay -cell, the OP can retrieve the handshake material. +into an [EXTENDED/EXTENDED2](./create-created-cells.md#EXTEND) relay message, and sends +that message up the circuit. Upon receiving the EXTENDED/EXTENDED2 relay +message, the OP can retrieve the handshake material. (As an optimization, OR implementations may delay processing onions until a break in traffic allows time to do so without harming |