[tor-bugs] #32743 [Core Tor/Tor]: Remove tor-spec requirement of initiator-side V1 and V2 link handshakes

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Dec 13 06:38:59 UTC 2019


#32743: Remove tor-spec requirement of initiator-side V1 and V2 link handshakes
--------------------+------------------------------
 Reporter:  opara   |          Owner:  (none)
     Type:  defect  |         Status:  new
 Priority:  Medium  |      Component:  Core Tor/Tor
  Version:          |       Severity:  Normal
 Keywords:          |  Actual Points:
Parent ID:          |         Points:
 Reviewer:          |        Sponsor:
--------------------+------------------------------
 The tor spec says the following (section "2. Connections"):

   In either case, once the responder has sent its certificate or
 certificates, the initiator counts them.  If two certificates have been
 sent, it proceeds as in "certificates up-front"; otherwise, it proceeds as
 in "renegotiation" or "in-protocol".

 and

   To decide whether to do "renegotiation" or "in-protocol", the initiator
 checks whether the responder's initial certificate matches the criteria
 listed above.

 and

   All new relay implementations of the Tor protocol MUST support
 backwards-compatible renegotiation

 Since the initiator can be a client or relay, I take this to mean that
 relays must allow V1 and V2 handshakes if the responder does not support a
 higher handshake version.

 The tor code removed initiator support for V1 and V2 handshakes in #11150
 for clients and relays. Since the official tor implementation does not
 support these handshakes for initiators, I don't see a reason to keep it
 in the spec. It also makes the code difficult to follow, and I've been
 confused looking at the code trying to understand how the initiators
 respond to these handshakes (assuming they did since it's in the spec),
 but it wasn't until finding the ticket above that I learned that it's been
 removed. So I think removing this requirement from the tor spec removes
 this discrepancy between tor and tor-spec, and also generally makes things
 more clear.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/32743>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list