# Hidden stealth service

**URL:** <https://forum.torproject.org/t/hidden-stealth-service/820>\
**Category:** Onion Services\
**Created:** [November 22, 2021, 7:00pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820 "2021-11-22T19:00:38Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![devildancer](https://forum.torproject.org/user_avatar/forum.torproject.org/devildancer/32/353_2.png) [@devildancer](https://forum.torproject.org/u/devildancer)\
**Post date:** [November 22, 2021, 7:00pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/1 "2021-11-22T19:00:38Z")

</div>

hello, im doin an investigation about tor for my project of college. As a result i found out about the hidden stealth (?) services. My question now is, whats the difference between hidden services and hidden stealth services, if there are this stealth services. I couldnt find any helpful posts.  
Thx a lot.

---

<div class="post-metadata">

**Author:** ![joedoe47](https://forum.torproject.org/user_avatar/forum.torproject.org/joedoe47/32/127_2.png) [@joedoe47](https://forum.torproject.org/u/joedoe47)\
**Post date:** [November 22, 2021, 7:37pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/2 "2021-11-22T19:37:06Z")

</div>

When it comes to hidden services. The stealth option has been changed to “client authorization”. In where you run a hidden service but tor will check if the person connecting has a special key to be able to access your hidden service.

This is great if you have only ‘N’ number of small users who will access your site. (and you have to know these small users because you have to manually give them the key to access it via email, in person, in usb, etc)

[Tor Project | Client Authorization](https://community.torproject.org/onion-services/advanced/client-auth/)

---

<div class="post-metadata">

**Author:** ![devildancer](https://forum.torproject.org/user_avatar/forum.torproject.org/devildancer/32/353_2.png) [@devildancer](https://forum.torproject.org/u/devildancer)\
**Post date:** [November 22, 2021, 7:48pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/3 "2021-11-22T19:48:51Z")

</div>

thanks a lot!

---

<div class="post-metadata">

**Author:** ![smuggler](https://forum.torproject.org/letter_avatar_proxy/v4/letter/s/49beb7/32.png) [@smuggler](https://forum.torproject.org/u/smuggler)\
**Post date:** [December 1, 2021, 1:44pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/4 "2021-12-01T13:44:40Z")

</div>

> [@joedoe47](#):
>
> …but tor will check if the person connecting has a special key to be able to access your hidden service.

So my understanding is, that normal “Hidden Services” are listed in the Tor directory and therefore discoverable. What can attackers do with the information listed in the directory and can I proactively do something to harden against such attacks?

And further, do _authenticated_ hidden services prevent these kind of attack vectors? I.e. do outsiders already have contact to my _authenticated_ hidden service" or is the key check done somehow and somewhere before?

Background of this question comes from watching the following video (starting at minute 1:30):  
[https://inv.riverside.rocks/watch?v=n3EWENfaMOs&t=90](https://inv.riverside.rocks/watch?v=n3EWENfaMOs&t=90)

---

<div class="post-metadata">

**Author:** ![gus](https://forum.torproject.org/user_avatar/forum.torproject.org/gus/32/16_2.png) [@gus](https://forum.torproject.org/u/gus)\
**Post date:** [December 1, 2021, 2:10pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/5 "2021-12-01T14:10:07Z")

</div>

> [@smuggler](#):
>
> So my understanding is, that normal “Hidden Services” are listed in the Tor directory

Nope. There isn’t a “Tor Directory”.

Please read: [Tor Project | Client Authorization](https://community.torproject.org/onion-services/advanced/client-auth/)

---

<div class="post-metadata">

**Author:** ![smuggler](https://forum.torproject.org/letter_avatar_proxy/v4/letter/s/49beb7/32.png) [@smuggler](https://forum.torproject.org/u/smuggler)\
**Post date:** [December 1, 2021, 2:43pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/6 "2021-12-01T14:43:58Z")

</div>

Thanks for the answer. I think I imagined the _distributed hash table_ as a kind of “Tor Directory” which is obviously wrong.

So in the hash tables one can find just the addresses of the 3 introduction points, not my hidden service, right? These introduction points will also check if the connecting client has the authentication keys needed I reckon? So if a client can’t provide them no single data packet from them will reach my hidden service?!

---

<div class="post-metadata">

**Author:** ![devildancer](https://forum.torproject.org/user_avatar/forum.torproject.org/devildancer/32/353_2.png) [@devildancer](https://forum.torproject.org/u/devildancer)\
**Post date:** [December 1, 2021, 3:10pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/7 "2021-12-01T15:10:56Z")

</div>

yeah in the DHT u can only find the IPs of the intro. points and the HS public key. The HSDir gives the DHT to the Client and the Client can encrypt the hash table cause the hash of the table is the onion adress. the client then connects to one random introduction point which is already in line with the HS. The HS then decides if he wanna talk to the client.  
Thats how i understand it works in general.

---

<div class="post-metadata">

**Author:** ![gus](https://forum.torproject.org/user_avatar/forum.torproject.org/gus/32/16_2.png) [@gus](https://forum.torproject.org/u/gus)\
**Post date:** [December 1, 2021, 3:13pm UTC](https://forum.torproject.org/t/hidden-stealth-service/820/8 "2021-12-01T15:13:01Z")

</div>

> [@smuggler](#):
>
> So in the hash tables one can find just the addresses of the 3 introduction points, not my hidden service, right? These introduction points will also check if the connecting client has the authentication keys needed I reckon? So if a client can’t provide them no single data packet from them will reach my hidden service?!

Yes, your onion service will upload an encrypted data to HSDirs. If you enable client authorization, clients won’t connect without the private key. You can use client authorization to protect your Onion Service against DoS attacks ([see our docs](https://community.torproject.org/onion-services/advanced/dos/)).
