Все знают о DNS — Distributed Name System — википедия говорит нам, что это распределённая система доменных имён, и настолько привыкли к ней, что и забыли, что «распределённость» в ней достаточно условная. DNS лучше называть Hierarchy Name System, так будет ближе всего по смыслу.
В общем и целом, существующая система DNS сейчас — это такой гордиев узел власти, больших денег и политики, что само оно уже лучше стать не может, ибо у иерархий есть такое свойство — бронзоветь, дубоветь и костенеть.
Чтобы не быть голословным, давайте рассмотрим, что происходит, когда кто-то хочет завести свой домен.
Этот кто-то покупает домен у какого-нибудь аккредитованного регистратора имён, например, список аккредитованных регистраторов в зоне .RU и .РФ можно посмотреть здесь. Цены за домен от 10$ и выше в год. Ни мало, ни много, но всё же деньги. В некоторых странах это средняя зарплата за день.
При этом самим аккредитованным регистраторам навязывается взаимодействие с координационным центром (в случае зоны .RU и .РФ это будет cctld.ru, а также с некими «компетентными организациями», например опять же в российских зонах это будут следующие товарищи, ну и конечно же, с полицейскими и судебными структурами.
Все эти «компетентные организации» могут потребовать приостановить делегирование вашего домена, а денежка, уплаченная регистратору (свою долю по иерархии получают соотв. координационный центр и ICANN), вам не вернётся.
Таковы условия договора с этими замечательными структурами. А других структур-то и нет — всё упирается в 13 корневых DNS серверов, подконтрольных ICANN и далее, вниз по иерархии.
Ну, вы уже поняли — монополия, теория заговора, паранойя и всё такое — в общем, когда дело касается всех пользователей всемирной сети, как-то глупо иметь иерархическую систему, в которой, например, продажный суд Заурюпинска может уничтожить ваш с таким трудом созданный и раскрученный ресурс, не говоря уже о, например, политически ангажированном судебном преследовании владельца ресурса.
Мысль человеческая не стояла на месте, и дух светлый, бунтарский, всё-таки побеждает :-)
Первой возникла система BitCoin, создатели которой поставили перед собой цель сделать альтернативу для всех валют в мире, а валюты, сами понимаете, зарегулированы правительствами по самое не могу. Bitcoin живёт и побеждает, всё больше и больше людей захватывает идея справедливой, регулируемой чистой математикой и реально свободным рынком валюты, у которой нет государственных границ и непонятных регуляторов.
Механизм Bitcoin был взят за основу создателями Namecoin. Всё почти то же самое, но транзакции в этой системе немного другие и призваны хранить актуальность пар доменное имя — ресурсная запись.
Рассмотрим теперь, что же происходит, когда кто-то хочет завести свой namecoin-домен. Этот человек запускает программу-клиент, заводит в ней кошелёк для namecoin'ов, и покупает некоторое количество этих Namecoin'ов (список бирж: [ http://dot-bit.org/Trade ]). Также, вместо того, чтобы вкалывать целый день на дядю из ICANN, человек может подключить свой компьютер к серверам распределённой добычи Namecoin, и получить их почти даром :) После этого, используя namecoin'ы и программу-клиент, регистрирует доменное имя в зоне .bit. Далее ему нужно только заботится об актуальности информации о своём домене и о периодическом его продлении. За продление также нужно заплатить немного namecoin'ов.
НИКТО НЕ СМОЖЕТ ОТОБРАТЬ У ВАС ВАШ NAMECOIN-ДОМЕН, если вы его сами не освободите, перестав платить за него. Вдумайтесь в это. В этом — высшая справедливость ;)
Теперь рассмотрим, что может находиться в ресурсных записях. В них находится JSON-объект, его спецификация до сих пор развивается, в настоящее время там вот что:
- service: то же самое, что может находится и в DNS SRV записях, например:
"service": ["imap", "tcp", 0, 0, 143, "mail.host.com."]; - ip: адрес IPv4, похоже на запись вида A в DNS, например:
"ip: ["192.168.1.1", "192.168.7.1"]; - ip6: адрес IPv6, похоже на запись вида AAAA в DNS, например:
"ip6": ["2001:4860:0:1001::68"] - tor: Tor hidden service address. Ну вы поняли — свобода и анонимность без границ :-)
"tor": "eqt5g4fuenphqinx.onion" - i2p, freenet, alias, translate, email, loc, info, dns, delegate, import, map, и т.д – в общем, многое понятно по именам записей, подробнее по ссылке.
И наконец: fingerprint. Это ещё одна сильная и перспективная вещь. Поддержка защищённых TLS коммуникаций с серверами, обслуживающими описываемый ресурс, будь то WWW-сервер, почтовый, или какой угодно. Например, в настоящее время, если вы хотите поднять https сервер, вам необходимо сходить на поклон к
мировой закулисе
раскрученным центрам сертификации, заплатить денежки, получить сертификат для своего домена, установить его на сервер, и после этого браузер, перед установкой https соединения, выкачивает сертификат с сервера, проверяет его действительность у CA, выдавшего сертификат, и после этого появляется зелёная галочка защищённой связи в браузере. Стоит отметить, что миф о суперзащищённости CA давно снят прецендентами, когда CA взламывали и компроментировали сразу множество выданных ранее сертификатов. Что предлагает Namecoin? Вы сами генерируете сертификат, размещаете его на вашем сервере. Цифровую подпись сертификата размещаете в поле fingerprint вашего ресурса. Тем самым вы и только вы, являясь владельцем ресурса, подтверждаете всем свой сертификат и разрешаете использовать его для защищённой связи с вашими ресурсами. Браузер, перед установкой SSL соединения, выкачивает сертификат с вашего сервера, сверяет его подпись с полем fingerprint в записи namecoin-домена, и зажигает зелёный флажок… Но есть одно «Но». Поддержки этого пока нет в популярных браузерах. Почему? Об этом ниже, и поддержка в перспективе ожидается.
мировой закулисе
раскрученным центрам сертификации, заплатить денежки, получить сертификат для своего домена, установить его на сервер, и после этого браузер, перед установкой https соединения, выкачивает сертификат с сервера, проверяет его действительность у CA, выдавшего сертификат, и после этого появляется зелёная галочка защищённой связи в браузере. Стоит отметить, что миф о суперзащищённости CA давно снят прецендентами, когда CA взламывали и компроментировали сразу множество выданных ранее сертификатов. Что предлагает Namecoin? Вы сами генерируете сертификат, размещаете его на вашем сервере. Цифровую подпись сертификата размещаете в поле fingerprint вашего ресурса. Тем самым вы и только вы, являясь владельцем ресурса, подтверждаете всем свой сертификат и разрешаете использовать его для защищённой связи с вашими ресурсами. Браузер, перед установкой SSL соединения, выкачивает сертификат с вашего сервера, сверяет его подпись с полем fingerprint в записи namecoin-домена, и зажигает зелёный флажок… Но есть одно «Но». Поддержки этого пока нет в популярных браузерах. Почему? Об этом ниже, и поддержка в перспективе ожидается.
Итак, что имеем в сухом остатке — сильная криптография + p2p + DNS + бесплатный TLS SSL — гремучая смесь технологий, возвращающая интернет в руки обычных людей и сильно упрощающая владельцам ресурсов их администрирование, а не-владельцев заставляет поумерить аппетиты и думать больше о созидании, и меньше о силовых приёмах :) Мне кажется, выглядит всё это неплохо.
У любителей силовых приёмов возникает вопрос: «Как закрыть сайт с детской порнографией в домене .bit, ссылающийся на .onion скрытый сервис tor»? Ответ: технически — никак, обе эти системы защищают их владельца от идентификации и «чужого» управления. Нужно не бороться с симптомами болезни, а созидать общество, у которого не возникнет желания ни создавать, ни использовать подобные ресурсы, нравится вам такое положение вещей или нет, и в более длительной перспективе такая политика даст лучшие плоды, чем силовые методы.
Теперь о грустном. Что мешает развитию проекта Namecoin? Самая малость. Корневые серверы проекта Namecoin должны быть приняты ICANN, чтобы существующие средства разрешения имён могли безболезненно их разрешать через корневые серверы DNS. И многим кажется, что это никогда не произойдёт, кусок слишком лакомый, чтобы его отдавать.
Как бороться и/или обойти ICANN? Администраторы крупных сетей и провайдеры могут включать поддержку namecoin-доменов своими DNS серверами или перенаправлять запросы по namecoin-доменам на корневые серверы проекта Namecoin. Некоторые провайдеры и администраторы сетей не надеются на корневые DNS серверы, и перенаправляют запросы, которые сами не могут обслужить, на серверы «корпорации добра» Google Public DNS. То есть если Google включит поддержку namecoin-доменов у себя, это будет замечательно. Наконец, популярные браузеры могут включить у себя поддерку namecoin-доменов и базирующуюся на их основе TLS SSL. И тогда...
Тогда наступит светлое будущее и эпоха ICANN и CA (компаний, выпускающие доверенные сертификаты) канет в небытие, ибо они… всё верно, они не нужны :-)
Всем всего самого доброго, ваш HandleX