Блокчейн против блокировок

Или о том, как современные децентрализованные технологии возвращают Интернету былое единство

Закат Интернета

Что ни говори, а современный Интернет отходит всё дальше и дальше от изначальной концепции сетевой нейтральности и прозрачного принципа “все видят всех”. В угоду сиюминутной политической выгоде в жертву приносится возможность доступа к сетевым ресурсам, что по факту фрагментирует сеть, раскалывая былой единый Интернет на осколки. Роскомнадзор блокирует торренты и оппозиционеров. Украина блокирует российские сайты и своих оппозиционеров. Китай за своим Великим Файрволом вообще держит весь остальной мир. И даже цитадель демократии не осталась в стороне, вынеся судебное решение о блокировке домена sci-hub. И чем дальше, тем больше каждое правительство считает, что оно лучше понимает, что нужно знать гражданам, а чего гражданам знать совсем не обязательно, и даже вредно.

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

emerDNS

Для устранения опасности разделегирования, многие сайты стали создавать зеркала своих доменов в распределённой децентрализованной блокчейн-системе emerDNS. Система emerDNS существует с 2014 года, и за время эксплуатации показала свою высокую надёжность и эффективность, и ни одного домена в этой системе не было разделегировано за все 7 лет её существования. Сайты, зарегистрированные в emerDNS, невидимы из обычного интернета, для доступа к ним нужно предпринять несколько простых шагов, воспользовавшись одним из вариантов из документации, или же простой инструкцией с картинками от библиотеки Максима. При этом emerDNS не снижает скорости доступа, в отличие от VPN, TOR, i2p, что было позитивно отмечено пользователями. Вследстие невидимости, домены в emerDNS также долго оставались (да и остаются) без внимания Роскомназдора. Ибо как можно запретить то, чего как бы не существует? Тем не менее, невидимая рука Роскомнадзора всё-таки сумела добраться до как бы несуществующего домена http://nnm-club.lib/, и внесла его в свой список. Эксперименты сообщества показали, что в зависимости от механизма блокировки, применяемого провайдером, блокировка может как сработать, так и нет. Срабатывание же блокировки происходит вследствие того, что emerDNS хотя и защищает доменное имя, и скрывает сайт, но не защищает сетевой трафик. То есть этот инструмент решает не все проблемы, которые могут создать блокираторы пользователям.

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

Кроме того, emerDNS пожалуй единственная из альтернативных DNS-систем, где можно получить и использовать серверный SSL-сертификат, и пользоваться безопасным соединением по https. Провайдер сертификата (компания Постмет) не входит в форум браузеров, и потому может выдавать сертификаты для зон, не входящих в ICANN. Чтобы запросить бесплатный сертификат для сайта в emerDNS, воспользуйтесь формой запроса: https://www.postmet.com/csr/ . Так как Постмет не входит в форум браузеров, то для избежание окна предупреждения браузера, пользователям необходимо скачать и внести в свой браузер корневой сертификат “PostMet Root CA Class 1” со страницы: http://www.postmet.com/securepost.

Yggdrasil

Долгое время не существовало удовлетворительного решения проблемы блокирования сетевого трафика. Использование VPN снижает скорость соединения, и обычно стоит денег, да и не все VPN совместимы с emerDNS. В результате VPN паллиативно решает проблему блокировки трафика, но возвращает проблему уязвимости доменной системы. Да и сами VPN-провайдеры тоже попадают под блокировки. Использование TOR и i2p вроде бы позволяет обойти блокировки трафика, но в жертву приносится скорость соединения, которая становится совершенно недостаточной в современном Интернете, и они тоже несовместимы с emerDNS.

И вот наконец-то появился Иггдрасиль (Мировое Древо в скандинавской мифологии) — виртуальная сеть самого современного стандарта IPv6, работающая поверх обычного Интернета, то есть использующая публичный Интернет IPv4 и IPv6 как свой транспортный уровень. Концептуально эта сеть напоминает сети на базе rfc1356 или i2p, и построена по пиринговой технологии, использующей для маршрутизации распределённые хеш-таблицы. Ключевой особенностью этой системы является то, что IPv6 адрес узла определяется не провайдером, а является хешем от публичного ключа узла. Таким образом, обеспечивается как сквозное шифрование трафика, так и уверенность в том, что трафик, отправляемый узлу-получателю, может им быть расшифрован, и не может быть расшифрован промежуточными узлами, которые имеют другие адреса, а следовательно — другие ключевые пары из публичного и приватного ключа (шанс коллизии пренебрежимо мал). Здесь не делается упор на тотальную анонимность, как это происходит в i2p, и серверу известен IPv6 адрес клиента внутри Иггдрасиль. Тем не менее, с точки зрения внешнего наблюдателя (провайдера, Роскомнадзора и тп) виден только зашифрованный трафик, идущий к каким-то узлам сети, не обязательно к целевым. И догадаться, что там внутри запаковано, невозможно.

За счёт разумного баланса между анонимностью и производительностью, соединения работают достаточно быстро, и например люди без раздражения играют в Minecraft через Иггдрасиль, что демонстрирует достаточную для практики производительность сети.

За счёт высокой избыточности соединений пиринговой mesh-сети, даже при блокировке или разрыве части соединений, сеть “на ходу” перестроится, и направит трафик по новому обходному пути. Для пользователя это выглядит как “подтормаживание” сети на какое-то время, с последующим почти полным восстановление скорости. Резюмируя можно сказать, что наконец-то появился неблокируемый и нецензурируемый сетевой транспорт, который возвращает Интернету связность в единую сеть на базе сетевого протокола IPv6.

Подробнее об этой системе можно узнать на Вики проекта, или присоединиться к русскоязычной группе в телеграм.

Yggdrasil и DNS

Разработчики Иггдрасиля сфокусировались на разработке сетевого уровня, оставив доменную систему на усмотрение внешних сервисов, в Yggdrasil не входящих, например классического DNS. Но если следовать логике децентрализованной mesh-сети, для неё тоже необходим такой же неубиваемый децентрализованный DNS-сервис (иначе он станет уязвимым местом), и emerDNS тут идеально подходит.

emerDNS

Действительно Yggdrasil+emerDNS образуют взаимодополняющую (комплементарную) пару:

  • Пользователи используют децентрализованный emerDNS для нахождения сайтов по имени.
  • Yggdrasil обеспечивает передачу трафика и его сквозное шифрование, так что блокировки по IP или через DPI становятся невозможными.
  • Yggdrasil сможет обеспечивать для emerDNS каналы для трафика между Emer-нодами по своей сети.
  • emerDNS может обеспечить достоверное именование первичных узлов подключения в обычном Интернете, к которым очередной узел сети Yggdrasil подключается при старте, как это и происходит с обычными сайтами.

Формально говоря, пользователи emerDNS могут создать любые доменные имена в emerDNS, назначить им IPv6 адрес из сети Yggdrasil, и комплементарная пара начнёт работать. Однако следует иметь в виду, что сайты обычно присутствуют в классическом Интернете тоже, и если назначить IPv6 адрес из сети Yggdrasil, то обычные клиенты, которые с Yggdrasil дела не имеют, не смогут получить доступ к сайту по стандартному IPv6. Поэтому предлагается следовать рекомендации:

Для адреса сайта, например site.emc, создать домен 3го уровня ygg (ygg.site.emc), который будет специфицировать доступ по протоколу Иггдрасиль, точно также, как в обычном Интернете домен 3го уровня ftp.site.emc специфицирует доступ по ftp, а www.site.emc специфицирует доступ по http/https. Такой подход к построению доменных имён позволит сайту одновременно присутствовать в обеих сетях — классическом Интернете и сети Yggdrasil, а также обеспечивает возможность присоединения других транспортных сетевых протоколов.

Alfis

В сети Yggdrasil также имеется свой доменный сервис Alfis (Alternative Free Identity System), построенный также на базе технологии блокчейн, не привязанный к криптовалюте. В отличие от emerDNS, являющимся одним из многих сервисов криптовалюты Emercoin, Alfis — это блокчейн одного сервиса. Alfis поддерживает несколько доменных зон (TLD), две из которых (.ygg, .anon) предназначены для сайтов в сети Иггдрасиль. Пример сайта в зоне Alfis: sites.ygg. Так как TLD система Alfis и emerDNS не пересекаются, доменные зоны emerDNS и Alfis не конфликтуют между собою, и владельцы сайтов свободны выбрать, в какой доменной системе регистрировать и поддерживать свои имена, и никто не мешает использовать обе одновременно.

Преимущества emerDNS

  • Множество сервисов на одном блокчейне. Поставили один раз, используете многократно.
  • Открытая архитектура как для новых сервисов, так и для новых сетевых протоколов.
  • Высочайший траст (сложность и цена реорганизации блокчейна), за счёт уникального механизма тройного консенсуса превышающий таковой у Биткоин.
  • Небольшой размер блокчейна (в настоящее время менее 2G), и его медленный рост.
  • Низкая цена транзакций — как для доменных имён и прочего использования NVS, так и для пересылки монет в сети (доли копейки в прямом смысле слова).
  • Нетребовательность к ресурсам, нода может работать на Raspberry Pi.
  • Зрелая система, без проблем работающая с 2014го года, высокая надёжность.
  • Множество сайтов и клиентов уже используют emerDNS, миллионы запросов в месяц.
  • Весьма широкая поддержка. Пиринг в OpenNIC, также доступ к системе через плагины браузеров, или из встроенных систем.
  • Имеется возможность использовать SSL-сертификат для сайта от центра сертификации, хотя и не входящего в форум браузеров, но полноценно поддерживающего выпуск новых и отзыв скомпрометированных сертификатов.
  • Независимые записи о сабдоменах. Управлять сабдоменом может сторонний оператор, а в записи вышележащего домена прописывается только “якорь доверия” SD.
  • Защита от сквоттинга основана на “сжигании” монет Эмеркоин при регистрации или обновлении записи.

Преимущества Alfis

  • Сверхкомпактный блокчейн, занимает сейчас 1.1М при текущих 246 доменах, и не растёт от каких-либо непрофильных операций, вроде криптовалютных транзакций.
  • Легковесный клиент сети, который можно даже держать в роутере OpenWRT.
  • Нет необходимости использовать криптовалюту для покупки и обновления доменных имён. Криптоключи, дающие возможность создавать и изменять доменные имена, нужно майнить на компьютерах, примерно таже, как когда-то майнили первые биткоины.
  • Разработан на безопасном языке Rust.
  • Имеет современный графический интерфейс для управления доменами.
  • Не требует сложных действий для установки.
  • Защита от сквоттинга основана на ограничении количества созданий или обновлений имён — не более одного в сутки на один ранее намайненный криптоключ.

Yggdrasil и emerDNS

Так как автор статьи — разработчик emerDNS, далее мы будем рассматривать практику применения именно связки Yggdrasil и emerDNS для возвращения Интернета в первозданный вид. Как было замечено выше, эта связка позволяет полностью обходить блокировки, так как Иггдрасиль является децентрализованной и неблокируемой транспортной сетью, а децентрализованный и неблокируемый emerDNS позволяет находить сайты в этой сети по именам (впрочем, и в обычном Интернете — тоже). Проведя примерную аналогию можно сказать, что Иггдрасиль — это распределённый пиринговый VPN, который обеспечивает доступ к существующим в нём сайтам, и ограниченно через шлюзы из неблокируемых юрисдикций — к некоторым другим сайтам обычного Интернета. А emerDNS — распределённый сервис имён, играющий в Иггдрасиль роль, аналогичную сервису DNS обычного Интернета.

Чтобы приступить к практическим шагам, Вам необходимо скачать core-кошелёк (не мобильный), запустить его, и дождаться закачки блокчейна. Закачка происходит один раз, и занимает несколько часов. После этого надо где-то приобрести немного монет Emercoin, или же получить бесплатно (см ниже). Сразу же рекомендуем сделать резервную копию файла кошелька, комбинация клавиш CTRL/B. В случае потери кошелька и отсутствии резервной копии (backup) Вы лишитесь возможности продления или обновления доменных имён и своих монет. Пожалуйста позаботьтесь о себе! Сделали backup? Прекрасно (делайте его регулярно), теперь Вы готовы к дальнейшим действиям!

Итак, пусть Вы хотите создать сайт с именем mysite, представленный как в обычном Интернете, так и в Иггдрасиль. Вначале, конечно же, надо создать “просто сайт” точно также, как он создаётся без применения рассматриваемой здесь связки. Предположим, что Ваш сайт в обычном Интернете имеет адреса IPv4=100.51.198.13 и IPv6=2a01:4f8:c010:222::3.

После этого Вам надо зарегистрировать домен в emerDNS в доменой зоне, ассоциированной с родом деятельности Вашего сайта:

  • *.coin — всё связанное с монетами и коммерцией;
  • *.emc — всё связанное с проектом EmerCoin;
  • *.lib — От слов Library и Liberty — то есть библиотеки и свобода;
  • *.bazar — различные сервисы купли/продажи.

Предположим, Вы решили, что будете создавать сайт в доменной зоне .coin.

Теперь Вам надо создать в emerNVS пару Name-Value с префиксом сервиса dns:

  • Name: dns:mysite.coin
  • Value: A=100.51.198.13|AAAA=2a01:4f8:c010:222::3|SD=ygg

Это можно сделать в GUI кошелька, в разделе “Manage Names”, см картинку ниже.

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

Во вновь созданной DNS-записи присутствуют оба IP-адреса, а также запись SD=ygg. Она означает, что Вы доверяете будущему сабдомену своего сайта ygg.mysite.coin, и позволяете системе emerDNS разрешать этот сабдомен. Если эта запись не указана, emerDNS игнорирует сабдомен 3го уровня, и обрабатывает неизвестный сабдомен подобный hacker.mysite.coin как домен более высокого уровня, в нашем примере — mysite.coin.

Теперь Вам осталось развернуть на своём сервере ноду Иггдрасиль, и получив IPv6 адрес в сети Иггдрасиль (других там нет) — назначить его на домен 3го уровня в emerDNS, cоздав NVS-запись подобную:

  • Name: dns:ygg.mysite.coin
  • Value: AAAA=222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c

Подробнее об установке и настройке Иггдрасиль, см на вики-сайте: https://howto.yggnode.cf

Аттракцион невиданной щедрости

Для регистрации сайтов в emerDNS необходимы монеты Emercoin, пусть и в исчезающе малом количестве. Их всегда можно приобрести на криптобиржах в любых количествах и для любых целей.

Мы, идя навстречу чаяниям вебсайтов, объявляем бесплатную и безвозмездную раздачу монет Emercoin для сайтов, которые захотят использовать связку систем emerDNS+Yggdrasil для защиты своих сайтов от блокировок. Этих монет хватит для создания 10 имён в emerDNS на 50 лет, чего достаточно для практического использования системы в течение разумного срока эксплуатации. Условия раздачи следующие:

Раздача монет новым сайтам

  • Если Вы сделали сайт в обычном интернете, и хотите присоединить его к emerDNS, пришлите нам IP или классическое доменное имя сайта, в корне которого разместите файл emer-ygg.txt, а в том файле — напишите EMC-address, куда отправлять монеты. Вы получите на этот адрес 0.02EMC в течение недели.
  • Если Ваш сайт также присутствует в сети Иггдрасиль, в том же запросе пришлите IPv6 адрес в сети Иггдрасиль, то есть имеющий префикс 200::/7. В этом случае, выплата Вам увеличивается до 0.05EMC.
  • Мы проверяем содержимое сайта перед отправкой монет, и оставляем за собою право отказать в спонсировании сайтов, связанные с киберкриминалом, а также сайтов-пустышек, не содержащих значимой информации.
  • Предложение действительно для первых 500 сайтов, прошедших проверку предыдущего пункта. Для первых 50и — награда удваивается. То есть, первые 50, кто захочет получить домен emerDNS для сайта в Интернете и Yggdrasil, имеют шанс получить 0.10EMC.
  • Предложение действительно только в течение 2021, истекает 1 января 2022 00:00 GMT.
  • Мы принимаем заявки по e-mail на support@emercoin.com.

Если сайт уже присутствует в emerDNS

Для таких сайтов мы произвели пре-регистрацию сабдомена с префиксом ygg, для предотвращения сквоттинга. Доменная запись для поддомена ygg.* отправлена на EMC-адрес основного домена в системе emerDNS, и может быть модифицирована владельцем в любой момент. Эта запись содержит поле CNAME, указывающее на наш временный шлюз из сети Yggdrasil в Интернет, и Ваш сайт уже доступен для пользователей Yggdrasil через этот шлюз. Для активации этого сабдомена, добавьте к Value Вашей основной записи в emerDNS дополнительный тэг SD=ygg, и Ваш сайт сразу же будет доступен пользователям Yggdrasil через наш шлюз.

Если же Вы развернёте у себя ноду Yggdrasil, то Вы сможете сделать name_update записи о сабдомене, которую мы Вам отправили, и тем самым заменить использование нашего шлюза на прямой доступ клиентов сети Yggdrasil к Вашему сайту. При этом Вы должны заменить текущее Value “CNAME=…..” на запись, содержащую Yggdrasil IPv6 address из подсети 200::/7: “AAAA=….”.

Кроме того, Вы также можете участвовать в получении монет на тех же условиях, что приведены выше. И Вам это будет сделать даже проще. Достаточно просто прислать на e-mail доменное имя Вашего сайта в emerDNS, мы отправим награду на EMC адрес, связанный с существующим доменом (файл emer-ygg.txt создавать не нужно).

Заключение

Предлагаемая здесь связка технологических решений позволяет навсегда закрыть вопрос о блокировках сайта и разделегированиях домена. Давайте использовать её как можно шире, вместе приложив усилия к тому, чтобы Интернет снова стал един, а мы — сами за себя решали, что нам нужно читать и какие сайты посещать.

С дополнительными вопросами обращайтесь в телеграм-сообщества:

Пусть у нас будет всё, и нам за это не будет ничего!

Автор статьи: Олег Ховайко, эксперт по криптографии и финансовым технологиям, технический директор Эмеркоин.

--

--