Может кто-нибудь дать простое описание процесса, который происходит, когда я захожу на сайт с луком в Tor? Т.е. сколько компьютеров посылают какие сигналы в каком порядке. Кроме того, что произойдет, если TLD .onion был создан теоретически? Будут ли доступны только веб-сайты Tor через Tor, или будут отображаться только "официальные" сайты, или ни того, ни другого, или обоих?
2 ответа
Всякий раз, когда вы подключаетесь к Tor, вам назначается направление в домене .onion
основе статического уникального идентификатора, уникального до тех пор, пока вы не удалите или не удалите конфигурацию Tor, созданную с использованием в качестве основы открытого ключа.
Когда кто-то в сети ищет ваше псевдо-имя хоста, он запрашивает хэши, которые зарегистрировали такой ключ, и направляет туда ваши пакеты. Не существует "центрального" хранилища всех ключей, потому что очевидна структура, из которой состоит tor, поэтому нет DNS, но есть несколько маршрутизаторов, пока информация не достигнет узла назначения.
Статьи по Теме:
- http://en.wikipedia.org/wiki/.onion
- https://svn.torproject.org/svn/projects/design-paper/tor-design.pdf
Я попытался упростить условия, если что-то не понятно, пожалуйста, прокомментируйте.
Официальный документ Tor Hidden Service Protocol объясняет все довольно хорошо, но вы можете не знать, где задействован браузер. Ниже приведены некоторые выдержки из этого документа
Вот что происходит:
Во-первых, скрытый сервис должен быть настроен. Происходит следующее:
«Скрытый сервис должен объявить о своем существовании в сети Tor, прежде чем клиенты смогут связаться с ним. Поэтому служба случайным образом выбирает некоторые реле, строит для них схемы и просит их выступать в качестве точек введения, сообщая им свой открытый ключ ».
«... скрытый сервис собирает дескриптор скрытого сервиса, содержащий его открытый ключ и сводку по каждой точке введения, и подписывает этот дескриптор своим закрытым ключом. Он загружает этот дескриптор в распределенную хеш-таблицу. Дескриптор будет найден клиентами, запрашивающими XYZ.onion, где XYZ - это 16-символьное имя, полученное из открытого ключа сервиса. После этого шага скрытый сервис настраивается ».
Теперь по поводу подключения к нему:
У вас запущен Tor, и ваш браузер правильно настроен на прокси через Tor.
- Вы вводите адрес
.onion
. Программа
tor
, настроенная как прокси, перехватывает это.Обратите внимание, что если у вас НЕ установлена правильная настройка
tor
, ваш браузер будет нормально обрабатывать запрос.onion
, что обычно приводит к поиску DNS с этим адресом на каком-либо общедоступном DNS-сервере. Это не сработает, но, что более важно, вы пропускаете попытку подключения к DNS-серверу и любому, у кого есть доступ к вашему трафику на пути к нему.Теперь ваш клиент Tor выполняет работу: "... Клиент, который хочет связаться со скрытой службой, должен сначала узнать свой луковый адрес. После этого клиент может инициировать установление соединения, загрузив дескриптор из распределенной хеш-таблицы. Если есть дескриптор для XYZ.onion (скрытый сервис также может быть отключен или давно ушел, или может быть опечатка в луковом адресе), клиент теперь знает набор точек введения и правильный открытый ключ для использовать. Примерно в это же время клиент также создает канал для другого случайно выбранного ретранслятора и просит его действовать в качестве точки рандеву, сообщая ему одноразовый секрет. "
«Когда дескриптор присутствует и точка встречи готова, клиент собирает вводное сообщение (зашифрованное для открытого ключа скрытой службы), включая адрес точки встречи и одноразовый секрет. Клиент отправляет это сообщение в одну из точек введения, запрашивая его доставку в скрытый сервис. Опять же, общение происходит через канал Tor: никто не может связать отправку вводного сообщения с IP-адресом клиента, поэтому клиент остается анонимным ».
«Скрытый сервис дешифрует вводное сообщение клиента и находит в нем адрес точки свидания и одноразовый секрет. Служба создает канал к точке рандеву и отправляет ей одноразовый секрет в сообщении рандеву. "
Как только вышеперечисленное произойдет, может произойти связь между скрытым сервисом и вашим клиентом. Результаты наконец передаются обратно в ваш браузер.