Приготовление пищи с луком: Имя для сайта

Это вторая статья цикла «Приготовление пищи с луком». С первой можно ознакомиться здесь.

Onion-адреса очень странные…

Если вы знакомы с сетью Tor, то должны были заметить, что скрытые сервисы обычно имеют случайно выглядящие адреса, которые выглядят как эти:

  • 3g2upl4pq6kufc4m.onion
  • 33y6fjyhs3phzfjj.onion
  • propub3r6espa33w.onion

Так, например, если вы хотите посетить сайт Tor Project в зоне .onion, то вы должны использовать адрес expyuzz4wqqyqhjn.onion вместо обычного www.torproject.org.

Чтобы лучше понять почему onion-адреса такие странные, следует вспомнить, что сеть не использует небезопасную Систему доменных имен (DNS). Это означает, что нет организации, наподобие ICAAN, которая бы содержала реестр всех имен и решала бы споры. Вместо этого сеть использует строгую аутентификацию с использованием самосвидетельствующих адресов: адрес это криптографическое доказательство идентичности скрытого сервиса. Когда клиент посещает сайт, Tor проверяет его идентичность, используя адрес в качестве основной истины.

Другими  слова, адреса такие нелепые из-за криптографии для их защиты. Криптография использует в основном большие числа, которые выглядят бессмысленными для большинства людей.

Разработчики Tor имеют среднесрочные планы на будущее: обновить криптографию скрытых сервисов. Побочным эффектом будет увеличение длины адресов до 54 символов! Это означает, что в будущем onion-адреса будют выглядеть следующим образом:

  • llamanymityx4fi3l6x2gyzmtmgxjyqyorj9qsb5r543izcwymlead.onion
  • lfels7g3rbceenuuqmpsz45z3lswakqf56n5i3bvqhc22d5rrszzwd.onion
  • odmmeotgcfx65l5hn6ejkaruvai222vs7o7tmtllszqk5xbysolfdd.onion

 

Вспомним историю

На протяжении многих лет сообщество Tor придумывала различные способы обработки этих больших и плохозапоминающихся адресов. Некоторые люди запоминают их целиком или записывают их в ноутбуки, другие используют татуировки, сторонние централизованные каталоги или просто Google каждый раз. Мы слышали о человеке, использующим колоды карт, чтобы запомнить свои любимые сайты, и другие, которые запоминают их, используя положение звезд и луны.

Мы считаем что проблема пользовательского восприятия (User Experience) адресов не решается с использованием узкоспециализированных решений и остается барьером для использования более широкой аудиторией.

В Tor никогда не было системы подобно DNS. Хоть Доменная система далека от идеала, она играет фундаментальную роль для пользователей Интернета.

Здесь мы представим несколько методов для повышения удобства использования onion-адресов.

1)Модульная система имен для onion-сайтов

За последние годы многие исследовательские группы экспериментировали и разработали различные безопасные системы имен (например, GNS, NamecoinBlockstack). Каждая из этих систем имеет свои сильные и слабые стороны, а также различные пользовательские модели и общий пользовательский опыт. Мы не уверены, какая из них лучше работает для onion-пространства, поэтому в идеале мы хотели бы попробовать их все, и пусть общество и пески времени решать за нас. Мы считаем, что интеграция этих экспериментальные систем в Tor, может значительно усилить и улучшить всю научную область.

По этой причине и на основе нашего опыта с модульной технологией анти-цензуры, мы разработали общую и модульную схему, в которой любая система имен может быть интегрирована в Tor. API, которая может быть использована для интеграции любой комплексной системы имен (например, Namecoin).

Вот графическое изображение API системы имен с Namecoin модулем с поддержкой и разрешением домена sailing.tor для пользователя:

2) Использование расширений браузера для повышения удобства использования

Другой подход для повышения удобства использования адресов, использовать браузер Tor в качестве основы: расширения браузера.

Есть много вариантов, так что давайте перейдем к них:

2.1) Расширение + Новый псевдо-TLD + Локальный реестр адресов

Расширения браузера, как HTTPS-everywhere, используют реестр адресов для отображения запоминающихся адресов из новой псевдо-TLD (например, «.tor») на onion-адреса. Например, он отображает «watchtower.tor» в «fixurqfuekpsiqaf.onion» и «globaleconomy.tor» в «froqh6bdgoda6yiz.onion». Такой реестр адресов может быть локальным (как в HTTPS-everywhere) или удаленным.

Вот графическое изображение расширения браузера с локальным реестром домена sailing.tor для пользователя:

2.2) Расширение + Новый псевдо-TLD + Удаленный реестр адресов

Более динамичная альтернатива включает в себя несколько доверенных удаленных реестров, и пользователь может добавить их в файл torrc.

Подобная более децентрализованная альтернатива может быть представлена в виде расширения, которое использует несколько удаленных реестров имен.

2.3) Расширение браузера, которое перенаправляет существующие имена DNS

Простой, но менее эффективный подход, делать перенаправление на onion-адреса. Так, например, при заходе на «duckduckgo.com» попадать на «3g2upl4pq6kufc4m.onion». Это делает работу с адресами проще, но и в значительной степени ограничивает пользователей только к услугам с зарегистрированным доменным именем. Некоторые попытки уже были сделаны в этой области, но, к сожалению, так и не взлетели.

2.4) Автоматическое перенаправление с помощью HTTP

Заголовок HTTP Alt-Svc определяет способ для сайта, сказать : «Я facebook.com, но вы должны поговорить со мной с помощью fbcdn.com.» Если мы заменим этот fbcdn.com адрес на facebookcorewwi.onion — тогда, когда вы набрали Facebook, браузер будет использовать onion-адрес. И это может быть сделано без какого-либо расширения браузера вообще.

Одна проблема заключается в том, что браузер должен помнить это отображение, а в Tor Browser, что отображение может быть использована для отслеживания или корреляции вас.

2.5) Смарт закладки браузера для onion-адресов

На той же ноте, проще, но менее удобный подход будет заключаться в расширении для смарт-закладок, которое позволяет пользователям регистрировать собственные имена для сайтов, и позволяет доверять им или делиться ими с друзьями.
Конечно, важно понимать, что любой подход, который опирается на расширение браузера будет работать только для Интернета, и вы не можете использовать его для любых служб TCP (например, посещение сервера IRC).

Например, адрес может быть встроен в расширение пользовательского сертификата или в C/ST/L/ поля. Тогда Tor Browser, при посещении такого сайта, будут анализировать и проверять сертификат, и если адрес включен, браузер будет автоматически перенаправлять пользователя.

4) Добавить onion-адрес в DNS/DNSSEC запись

Аналогичный можно использовать систему DNS вместо системы SSL CA. Например, владельцы сайтов могли бы добавить свой адрес в их TXT или SRV запись и Tor может научиться перенаправлять пользователей на onion-адрес. Конечно, этот подход применим только к операторам, которые могут позволить себе домен DNS.

Вывод

Как вы можете видеть, есть много подходов, которые мы должны изучить, чтобы улучшить удобство и простоту использования в этой области. Каждый из них имеет свои собственные компромиссы и применяется для различных пользователей, поэтому очень важно, чтобы мы позволили пользователям экспериментировать с различными системами и позволить каждому сообществу решить, какой подход лучше всего работает для них.
Кроме того, стоит отметить, что некоторые из этих подходов не так уж сложно реализовать технически, но они все еще требуют много усилий и создания сообщества, чтобы действительно заработать.