git.schokokeks.org
Repositories
Help
Report an Issue
tor-webwml.git
Code
Commits
Branches
Tags
Suche
Strukturansicht:
c18f0dd52
Branches
Tags
bridges
docs-debian
jobs
master
press-clips
tor-webwml.git
branches
original_web
ru
hidden-services.wml
Added 19 FAQ entries
Matt Pagan
commited
c18f0dd52
at 2013-08-26 04:06:05
hidden-services.wml
Blame
History
Raw
## translation metadata # Revision: $Revision: 23093 $ # Translation-Priority: 3-low #include "head.wmi" TITLE="Tor: Hidden Service Protocol" CHARSET="UTF-8" <div class="main-column"> <h2>Tor: Скрытый Сервисный Протокол</h2> <hr /> <p> Tor предоставляет своим пользователям возможность скрывать их месторасположение, и в то же время предлагает им различные сервисы, например, веб публикации или сервер быстрого обмена сообщениями. Используя "точки синхронизации" Tor, другие пользователи Tor могут подсоединяться к этим скрытым сервисам, не имея возможности идентифицировать сетевые характеристики других пользователей. На этой странице описаны технические детали работы протокола точек синхронизации. Более подробную инструкцию смотрите на нашей странице <a href="<page docs/tor-hidden-service>">конфигурации скрытых сервисов</a>. </p> <p> Прежде чем клиенты смогут подключиться к скрытому сервису, он должен заявить о своем существовании в сети Tor. Поэтому сервис беспорядочно выбирает некоторые ретрансляторы, создает цепи подключения к ним и запрашивает у них выполнение функций в качестве <em>точек интродукции</em>, сообщая им свой публичный код. Обратите внимание, что в следующих цифрах зеленые линии являются цепями подключения, а не прямыми связями. При использовании полной цепи подключения Tor трудно ассоциировать точку интродукции с IP-адресом скрытого сервера. Сообщая точкам интродукции и другим участникам сети идентификационные данных скрытого сервиса (его публичный код), мы не хотим, раскрыть информацию о физическом местонахождении скрытого сервера (IP-адрес). </p> # maybe add a speech bubble containing "PK" to Bob, because that's what # Bob tells to his introduction points <img alt="Tor hidden service step one" src="$(IMGROOT)/THS-1.png" /> <p> Шаг второй: скрытый сервис собирает <em>описание скрытого сервиса</em>, содержащее его публичный код и сводку по каждой точке интродукции, и подписывает это описание своим личным ключом. Он загружает это описание в распространяемую хэш-таблицу. Описание будет получено клиентами, запрашивающими XYZ.onion, где XYZ - это шестнадцатизначное имя, которое является уникальным и генерируется с использованием публичного ключа сервиса. После прохождения этого шага скрытый сервис установлен. </p> <p> Хотя использование автоматически генерируемого сервисного имени может показаться непрактичным, оно служит важной цели: Все, включая точки интродукции, директорию распространяемой хэш-таблицы и, конечно, клиентов, могут убедиться в том, что они подключаются к верному скрытому сервису. Смотрите также <a href="https://zooko.com/distnames.html"> гипотезу Zooko</a>, согласно которой из Децентрализованного, Безопасного и Значительного вы можете достичь не больше двух. Возможно, в один прекрасный день кто-то применит <a href="http://www.skyhunter.com/marcs/petnames/IntroPetNames.html">имя любимой собаки</a> в качестве названия для скрытого сервиса? </p> # maybe replace "database" with "DHT"; further: how incorrect # is it to *not* add DB to the Tor cloud, now that begin dir cells are in # use? <img alt="Tor hidden service step two" src="$(IMGROOT)/THS-2.png" /> <p> Шаг третий: Клиент, который желает подключиться к скрытому сервису, должен сначала узнать его адрес. После этого, клиент может инициировать установку соединения, загрузив описание из распространяемой хэш-таблицы. Если есть описание для XYZ.onion (скрытый сервис может находиться оффлайн или, возможно, он давно покинул сеть, возможно также вы сделали опечатку в onion адресе), то клиент получает набор точек интродукции и правильный публичный код. Примерно в это же время, клиент создает цепь подключения к другому случайно выбранному ретранслятору и просит его выступить в качестве <em>точки синхронизации</em>, открывая ему "одноразовый" секрет. </p> # maybe add "cookie" to speech bubble, separated from the surrounded # "IP1-3" and "PK" <img alt="Tor hidden service step three" src="$(IMGROOT)/THS-3.png" /> <p> Шаг четвертый: когда есть описание и точка синхронизации готова, клиент предоставляет <em>вводное</em> сообщение (зашифрованное в публичном ключе скрытого сервиса), вклющее адрес точки синхронизации и "одноразовый" секрет. Клиент посылает это сообщение одному из пунктов вступления, запрашивая его о доставке скрытому сервису. И снова общение происходит по цепи Tor: никто не может послать приветственное послание на IP-адрес клиента, и, таким образом, клиент остается анонимным. </p> <img alt="Tor hidden service step four" src="$(IMGROOT)/THS-4.png" /> <p> Шаг пятый: Скрытый сервис расшифровывает послание клиента и находит в нем адрес точки синхронизации и единовременный ключ. Сервис создает цепь подключения к точке синхронизации и в сообщении посылает туда одноразовый ключ. </p> <p> В настоящее время очень важно, что скрытый сервис придерживается набора <a href="https://trac.torproject.org/projects/tor/wiki/TheOnionRouter/TorFAQ#Whatsthisaboutentryguardformerlyknownashelpernodes">входной защиты</a>, необходимого при создании новых каналов. В противном случае, нарушитель смог бы запустить свой собственный ретранслятор и заставить скрытый сервис создать случайное количество каналов в надежде на то, что ложный ретранслятор будет воспринят как входной узел и таким образом, через временной анализ он узнает IP-адрес скрытого сервера. Такая атака была описана Оверлиром и Сиверсоном в их работе <a href="http://freehaven.net/anonbib/#hs-attack06">Обнаружение Скрытых Серверов</a>. </p> # it should say "Bob connects to Alice's ..." <img alt="Tor hidden service step five" src="$(IMGROOT)/THS-5.png" /> <p> На последнем этапе, пункт встречи уведомляет клиента об успешной установке соединения. После чего оба, клиент и скрытый сервис, могут использовать их цепь подключения к точке синхронизации для связи друг с другом. Пункт встречи просто ретранслирует (полностью зашифрованное) сообщение от клиента к сервису и обратно. </p> <p> Одной из причин, по которой не используется вступительная цепь для действующей коммуникации, является то, что ни один ретранслятор не должен быть ответственным за скрытый сервис. Именно поэтому точка синхронизации никогда не получает информацию о подлинных данных скрытого сервиса. </p> <p> В общем, полная связь между клиентом и скрытым сервисом состоит из 6 ретрансляторов: 3 из них были выбраны клиентом, где третий находился на точке синхронизации, а другие 3 были выбраны скрытым сервисом. </p> <img alt="Tor hidden service step six" src="$(IMGROOT)/THS-6.png" /> <p> Существуют более подробные описания протокола скрытых сервисов. Обратите внимание на <a href="<svnprojects>design-paper/tor-design.pdf">Документ об архитектуре сети Tor</a> для получения более углубленной информации об архитектуре и <a href="<gitblob>doc/spec/rend-spec.txt">спецификациях точек синхронизации</a> для форматов сообщений. </p> </div> #include <foot.wmi>