Opened 4 months ago

Closed 3 months ago

#30364 closed enhancement (wontfix)

prop289: Add consensus param to use or not SENDME v1 for one-hop directory download

Reported by: dgoulet Owned by: dgoulet
Priority: Very High Milestone: Tor: 0.4.1.x-final
Component: Core Tor/Tor Version:
Severity: Normal Keywords: prop289, sendme, 0411-alpha, postfreeze-ok, 041-must
Cc: Actual Points: 0.2
Parent ID: #26288 Points: 1
Reviewer: nickm Sponsor:

Description

See proposal 289 section 4.5 which is about adding a consensus param that controls the minimum version to use when doing one-hop directory connections.

Child Tickets

Change History (9)

comment:1 Changed 3 months ago by dgoulet

Actual Points: 0.2
Status: assignedneeds_review

PR: https://github.com/torproject/tor/pull/1027
Branch: ticket30364_041_01

The "onehop" concept was dropped because it is actually not reliable to figure that out but also it doesn't matter if we have a 3 hop or 1 hop I believe.

In the end, any directory requests on a circuit will result in honoring this SENDME version from the consensus param. It is actually hard to associate a circuit to a hidden service directory request at the server side. Not impossible but hard.

comment:2 Changed 3 months ago by nickm

Keywords: 0411-alpha added

comment:3 Changed 3 months ago by nickm

Keywords: postfreeze-ok added

comment:4 Changed 3 months ago by nickm

Keywords: 041-must added

comment:5 Changed 3 months ago by nickm

Reviewer: nickm

comment:6 Changed 3 months ago by nickm

Status: needs_reviewneeds_revision

I've left some comments on the PR. There's some stuff here that looks wrong, and other stuff I don't understand.

comment:7 Changed 3 months ago by dgoulet

Status: needs_revisionneeds_information

Interesting... I have one question there that will drive quite a bit how everything else is fixed. Once that is clarified, I might just submit an _02 since like more than 50% of the patch will change... Thanks!

comment:8 Changed 3 months ago by dgoulet

Status: needs_informationneeds_revision

comment:9 Changed 3 months ago by dgoulet

Resolution: wontfix
Status: needs_revisionclosed

After discussion with nickm on IRC, we'll drop this idea and instead go with this deployment plan:

1) emit=v1, accept=v0, protover=v0
2) emit=v1, accept=v0, protover=v1
3) emit=v1, accept=v1, protover=v1

Bottom line is that during phase 2, we will exit() all tor that do not support SENDME >= v1 but still accept v0 so bootstrapping tor can learn what is required. Finally, phase 3 will stop all this madness and normalize everyone to v1.

This mean that we'll drop this ticket entirely. I've opened #30557 for the change on the spec.

Note: See TracTickets for help on using tickets.