Система DNS – Domain Name System связывает доменные имена Интернета с IP-адресами серверов и сетевых служб. Корневые серверы DNS регулируются международной некоммерческой организацией ICANN, а домены верхних уровней управляются международными и национальными компаниями – так, к примеру, в России, по состоянию на начало 2015 года, работал 31 регистратор.
Вместе с тем, желание всевозможных структур тем или образом контролировать содержимое Интернета непрерывно растет, а запись DNS, которая хранится у регистратора, представляет собой одно из слабых звеньев. Получение контроля над доменным именем злоумышленником, которым может быть как хакер, так и какая-либо из государственных служб, позволяет перенаправить пользователя на фишинговый сайт, или подчинить сайт цензуре: блокировке, смене собственника, или информационным ограничениям.
Одним из способов избежать централизованного контроля являются альтернативные системы доменных имен: они самостоятельно управляют собственными доменами верхнего уровня и усложняют задачу злоумышленников. Эти системы не связаны с основной системой DNS и более того, ICANN в лице Совета по архитектуре интернета, высказался резко против альтернативных DNS.
Почему блокчейн
В основной системе DNS, запись, подтверждающая собственность на доменное имя, хранится у регистратора – DNS провайдера, он управляет ей по поручению собственника. Другими словами, это посредник, который создает дополнительный фактор риска – он может прекратить деятельность по экономическим причинам, злоумышленники могут подделать записи, а государственные органы могут приказать разделегировать домен.
В децентрализованном DNS, запись находится в блокчейне и ее может прочесть любой пользователь с любого из узлов, хранящих копию блокчейна, но управлять ей может только владелец с помощью своего закрытого ключа. К тому же, поскольку копия записи есть во всех узлах синхронизированного блокчейна, пользователь может получить ее локально, не запрашивая внешние серверы – провайдер не получит данные о том, на какой сайт переходит пользователь, особенно, если трафик идет по https.
DNS на блокчейне Emercoin
Архитектура альтернативного DNS, используемая в Emercoin, впервые разработана для криптовалюты Namecoin, который поддерживает альтернативный домен *.bit. Однако, в отличие от Namecoin, новая версия протокола позволяет подключать новые доменные зоны, причем как публичные – доступные любому пользователю, так и закрытые, для доступа к которым необходима специальная конфигурация Emer-сервера. Открытые доменные зоны сопрягаются с основным DNS через сервера OpenNIC. В текущей конфигурации Emer поддерживает четыре тематические доменные зоны: *.coin для криптовалют; *.emc – для нынешних и будущих сервисов Emer; *.bazar – для торговых площадок; *.lib – для библиотек, пример – популярная библиотека flibusta.lib, зеркала которой постоянно блокируются.
Правда, для того, чтобы страницы доменов Emer открывались в обычном браузере, необходимо подключиться к любому серверу OpenNIC, или установить на локальном компьютере кошелек Emercoin (он уже содержит в себе EMC сервер), после чего создать точку сопряжения, смешивающую зоны ICANN и EMC DNS с помощью любой DNS cache утилиты (например, BIND, DNSMASQ, Acrylic).
Конечно, необходимость установки дополнительных программ существенно ограничивает возможности применения EMC DNS. Однако, в феврале, поддержка доменной системы *.lib была добавлена в популярное расширение Google FriGate – систему proxy для входа на страницы, заблокированные в России. Теперь для просмотра сайтов в доменной зоне lib достаточно всего лишь установить и включить FriGate.
Рынок альтернативных доменных имен
Несмотря на то, что альтернативные доменные системы существуют в Интернете уже давно (Chaos Computer Club, OpenNIC, Namecoin), широкого распространения они не получили. Такие системы как Tor с доменной зоной *.onion, i2p, и VPN каналы обеспечивают более надежную защиту от блокировок со стороны государства. В то же время, использование EMC DNS бизнесом ограничено из-за отсутствия сетевого эффекта – слишком мало эмеркойнов используется в денежных расчетах.
Для сравнения можно привести альтернативную доменную зону *.eth, поддерживаемую ENS – системой доменных имен Эфириума. Название сайта единственным способом определяет публичный адрес счета, а доступ в сеть осуществляется с помощью расширения Metamask, доступного для браузеров Chrome и Mozilla.
С запуском сети станет возможным производить расчеты, указывая не адрес, а имя *.eth. Сама система уже развернута на блокчейне Эфириума, однако первый аукцион по распределению доменных имен 20 марта был отменен из-за ошибок в коде аукционного смарт-контракта. Повторный аукцион состоится после аудита смарт-контракта.