[tor-dev] Standardizing the 'onion service' name
teor2345 at gmail.com
Thu Apr 26 07:34:52 UTC 2018
There seems to be some confusion in this thread about the
current state of the hidden service to onion service name transition.
So I'm going to describe the state of things as they are, then try to
describe what would need to be done.
I'd also appreciate feedback from Steph and others on our priorities for
transitioning to the onion service name. I think we have been prioritising
user-facing text. (The blog, website, Tor Browser, metrics, etc.)
Is this a sensible way of prioritising things?
On 26 Apr 2018, at 16:42, Paul Syverson <paul.syverson at nrl.navy.mil> wrote:
>> Have OnionService aliases for controller commands, events,
These are current called "hidden service" or an abbreviation.
Tor could add an alias mechanism for controller commands, events,
and fields, and use it to do the rename:
I don't think they are as high a priority as the torrc options and man page.
These are currently called "hidden service", or an abbreviation.
Descriptor fields are part of the directory specification and
implementation, and they are highly technical. So I'm not sure we gain
much from aliasing them or renaming them.
Similar arguments might apply to other codebases:
* consensus health
* Tor (network daemon)
But the following user-facing applications should add documentation or
change names, if they haven't already:
* Relay Search / metrics website
* uses HSDir for relay search, because that's what it's called in the
* uses "onion service" for statistics
* Tor Browser
* uses "onion site"
* the Tor website
* new tor blog posts
>> and anything else referencing 'HS' or 'HiddenService'.
We considered adding OnionService* torrc option aliases for every
HiddenService* option in 0.2.9. But we deferred that change because we
ran out of time.
All we need to do is add some new entries in the alias table, then do a
search and replace in the tor man page:
>> Speaking of which, how do we plan to replace abbreviations? Having an
>> 'OSFETCH' or 'OS_CREATED' event doesn't exactly have the same ring as
>> their HS counterparts. ;P
That's a good question.
OS conflicts with "operating system", so we could use:
* no abbreviations
Or any other colour you want to paint the bikeshed.
To avoid an endless discussion, let's leave the decision to
the people who write, review, and merge the code.
>> Adjust all our docs to be consistent about the name.
> Right, anything v3 should be consistently calling these 'onion
> services'. Variable names, etc. particularly those still in use in
> code shared with v2, don't need to be changed. It is OK if such
> vestiges of older usage remain in abbreviations, as long as the
> description of them, e.g., in any new Tor proposal, describes them
> with appropriately current terminology.
torrc options, the tor man page, and the v3 onion service code
mainly use "hidden service", and sometimes use "onion service".
I don't see much value in changing the code.
If we decide there is value in changing the torrc options and man page,
we need to allocate a few days of work on the roadmap to make it
>> Renaming takes work. Lesson I learned from Nyx is that it works best
>> if you draw a line in the sand and stand by it. With Nyx, version 2.0
>> is called Nyx (you won't find any docs saying otherwise) and version
>> 1.x is the legacy 'arm' project.
>> If I was in your shoes I'd opt for the same. Either prioritize the
>> aliases and be firm that v3 are 'Onion Services' or abort the rename.
>> Otherwise this will live in a confusing dual-named limbo land
>> indefinitely. ;P
> I'm prettty sure that v3 being 'onion services' has been the official
> Tor Project position since at least half a year. We wouldn't be
> aborting the rename, because 'abort' would imply it is not
> complete. Anything now not using the current name is not part of an
> incomplete process, it is simply wrong and outdated. Steph correct me
> if I am wrong about that.
> So I think you've answered your own question. Nothing in v3 should be
> called 'hidden services'.
That's not the current state of the tor network daemon v3 onion service
code, specs, options, and man page. They use a mix of terminology
> And anything new in code and documentation
> should be called 'onion services'. If you want to think of v2 and
> earlier as 'hidden services' for purposes of understanding legacy
> component and variable names, e.g., HSDir that's fine. And as such,
> variable names, etc. in code that continues to be used for both v2 and
> v3 can can persist. But again, any new specs, documentation, etc.
> should call them 'onion services'.
We have gradually been using onion services in new documentation and
specs, since "single onion services". But we haven't changed existing
code and documentation.
> This acceptance of existing v2 documentation calling them 'hidden
> services' while refusing this for anything v3 is a little misleading
> about when and why the naming transition happened, but its close
> enough to serve as your line in the sand if you feel one is needed.
> I actually argued the value of essentially such a line-in-the-sand
> position to Steph a while ago. This doesn't preclude also calling v2
> and earlier 'onion services'. Indeed, it's not just OK but preferable,
> for the above mentioned reasons.
It looks like we are doing a gradual transition. I think we prioritised
the things that are seen by the most users (Tor Browser, statistics,
We did not take a line in the sand position in the past, but we could
adopt one for the remaining changes. We could decide on a particular
Tor release (and releases of other codebases). But we need to schedule
the work on the relevant roadmaps.
And maybe there are some obscure technical things (code, comments,
descriptor fields) that just aren't worth changing.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the tor-dev