[tor-bugs] #32634 [Core Tor/Stem]: Stem can't fetch hidden service descriptors with descriptor ID.

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Dec 2 00:45:50 UTC 2019


#32634: Stem can't fetch hidden service descriptors with descriptor ID.
---------------------------+------------------------
 Reporter:  moonsikpark    |          Owner:  atagar
     Type:  defect         |         Status:  new
 Priority:  Medium         |      Milestone:
Component:  Core Tor/Stem  |        Version:
 Severity:  Normal         |     Resolution:
 Keywords:  tor-hs         |  Actual Points:
Parent ID:                 |         Points:
 Reviewer:                 |        Sponsor:
---------------------------+------------------------

Comment (by teor):

 Replying to [comment:2 atagar]:
 > Thanks moonsikpark! If **await_result** is provided this looks like
 it'll fail (note the "event.address == address" conditionals below).
 >
 > Would you mind describing your use case? I've never run across someone
 that wanted to query HS descriptors via their identifier.
 >
 > In checking the spec there's a couple other wrinkles with identifier
 queries...
 >
 > * "DescIDs can only be version 2 IDs."
 >
 >   So despite taking a version prefix this doesn't work at all with v3
 services. This is a bit concerning because v2 will be deprecated at some
 point. Is there a ticket for adding tor support for querying v3 services
 by their descriptor id? If not then it sounds like this capability might
 be going away.
 >
 > * "If a DescId is specified, at least one Server MUST also be provided"
 >
 >   If we do decide to support this within stem we'll need to raise a
 ValueError if we get a descriptor id and a server argument is not
 supplied.

 There's no equivalent for the "Descriptor ID" in the v3 onion service
 protocol.

 The onion address can be used to derive a blinded public key for each time
 period:
 https://gitweb.torproject.org/torspec.git/tree/rend-spec-v3.txt#n655

 The blinded public key works on any HSDir:
 https://gitweb.torproject.org/torspec.git/tree/rend-spec-v3.txt#n974

 And the blinded public key can be used to find the relevant set of HSDirs:
 https://gitweb.torproject.org/torspec.git/tree/rend-spec-v3.txt#n781

 For debugging, we might eventually want to query the previous/current/next
 sets of HSDirs, but that's complicated, and not implemented yet:
 https://gitweb.torproject.org/torspec.git/tree/rend-spec-v3.txt#n885

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


More information about the tor-bugs mailing list