All new relay implementations of the Tor protocol MUST support backwards-compatible renegotiation
But the v3 link handshake came out in Tor 0.2.3.6-alpha. That's certainly older than any relays. Is it older than any clients that we expect to work?
Step 0 in phasing out old link versions would be to admit in tor-spec that supporting them is not a MUST. I'd say we're ready to do this one any time. We could put v3 as the minimum you MUST implement, or we might pick v4, since it came out in 0.2.4.11-alpha, and that's pretty old now too.
Step 1 in phasing out old link versions would be to actually remove the code from mainline Tor. That's legacy/trac#9476 (moved).
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items 0
Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Linked items 0
Link issues together to show that they're related.
Learn more.
In light of legacy/trac#9476 (moved), I'm going to change this ticket to be only about the spec change.
Trac: Description: In our spec, we have
All new relay implementations of the Tor protocol MUST support backwards-compatible renegotiation
But the v3 link handshake came out in Tor 0.2.3.6-alpha. That's certainly older than any relays. Is it older than any clients that we expect to work?
Step 0 in phasing out old link versions would be to admit in tor-spec that supporting them is not a MUST. I'd say we're ready to do this one any time. We could put v3 as the minimum you MUST implement, or we might pick v4, since it came out in 0.2.4.11-alpha, and that's pretty old now too.
Step 1 in phasing out old link versions would be to actually remove the code from mainline Tor. In preparation, we should try to figure out which Tor client versions are still in use today, and which ones still happen to work with the current network, and figure out in what time frame we'll be ok breaking those old Tor clients.
to
In our spec, we have
All new relay implementations of the Tor protocol MUST support backwards-compatible renegotiation
But the v3 link handshake came out in Tor 0.2.3.6-alpha. That's certainly older than any relays. Is it older than any clients that we expect to work?
Step 0 in phasing out old link versions would be to admit in tor-spec that supporting them is not a MUST. I'd say we're ready to do this one any time. We could put v3 as the minimum you MUST implement, or we might pick v4, since it came out in 0.2.4.11-alpha, and that's pretty old now too.
Step 1 in phasing out old link versions would be to actually remove the code from mainline Tor. That's legacy/trac#9476 (moved). Summary: Time to retire old link versions? to Time to not require Tor relays to support old link versions?
... the v3 link handshake came out in Tor 0.2.3.6-alpha. That's certainly older than any relays. Is it older than any clients that we expect to work?
We don't expect clients older than 0.2.4.26 or 0.2.5.11 to work: they don't believe enough current directory authority identities.
arma and I did the exact analysis by email the last time we dropped a directory authority, then posted it to tor-project:
Constraint 6: Tor versions before 0.2.8.1-alpha don't believe indannenberg's current v3 identity key, and Tor versions before 0.2.4.26or 0.2.5.11 don't believe in longclaw at all. The dannenberg issue canbe solved by having dannenberg resume voting with its legacy v3 identitykey (I don't know why it stopped -- maybe it never started?), and thelongclaw issue can be solved by declaring that versions that old don'tmatter to us.
We have a potential fast zombie problem blocking us from ripping out the actual code (though that ship might have sailed some years ago), but in any case we could, any time we like, change the spec to say that relays don't need to support the old design.
Trac: Summary: Time to not require Tor relays to support old link versions? to Spec should change: stop requiring Tor relays to support old link versions