I’ve heard it explained a million times but it never clicked. Perhaps it’s the cryptography part im struggling with. It’s pretty easy for me to get overwhelmed by the technical terms.
To be clear, im talking about how a client running the tor browser manages to anonymously connect to a .onion webserver.
In: 34
It’s a bit difficult to ELI5 the tor hidden service protocol but I will summarize assuming we already understand how tor makes a tor connections anonymous.
Source: https://community.torproject.org/onion-services/overview/
In summary, a service needs to advertise itself to a client but does not want to give out it’s IP. To achieve this it:
1/ sets up several long lived tor connections by asking a number of tor relay nodes to act as the services Introduction Points
2/ publish these nodes to a database held within the tor network related to the services onion address (Distributed Hash Table, DHT)
3/ a client wanting the service searches the DHT using the onion address to get the service description.
4/ client then request a random tor relay node act as it’s rendezvous point.
5/ it sends a message through the rendezvous node to one of the service’s Introduction nodes.
6/ finally the service responds & the connection is made.
The connection now consists of at least 6 tor nodes, 3 or more picked by the client & 3 or more picked by the service. This way neither the service nore the client reveals their IP address or the middle rendezvous node or each other.
Latest Answers