Служба Доменных Имен Эфириума ENS (Ethereum Name Service) – инфраструктурный проект, сопоставляющий адресам Эфириума удобочитаемые имена *.eth, подобно службе DNS в сети Интернет. Основатели проекта – сотрудники Фонда Эфириума Ник Джонсон (Nick Johnson), и Алекс Ван де Санде (Alex van de Sande), автор кошелька и браузера Mist, однако сам проект полностью независим от Фонда, а сетевой эффект организаторы ожидают получить от интеграции ENS в основные кошельки Эфириума – Mist, MyEtherWallet и Metamask.
Технически, ENS представляет собой смарт-контракт Эфириума. Доменные имена приобретаются на аукционе, правила которого аналогичны правилам платформы Ebay: участник называет максимальную ставку, которую он готов заплатить за имя, однако финальная сумма равна ставке предыдущего участника. Минимальная ставка – 0.01 ETH.
Длительность аукциона составляет 4 недели:
-
Аукцион – 4 дня участники делают ставки, не раскрывая их
-
Раскрытие – 2 дня. Участники раскрывают свои ставки
-
Финализация – 22 дня. Победитель вносит ETH на смарт-контракт. Если сумма не внесена в течение этого срока, победителем объявляется следующий участник.
При этом уплаченная сумма в ETH не пропадает – она находится на депозите смарт-контракта не менее одного года, после чего владелец имени может от него отказаться. После отказа, средства возвращаются участнику, а имя направляется на новый аукцион. Если обладатель имени занимается недобросовестной деятельностью – спам, мошеннические схемы, и т. п., его депозит может быть конфискован и «сожжен» – отправлен на адрес, у которого не существует приватного ключа.
После развертывания ENS на рабочем блокчейне Эфириума, на 14 марта был назначен первый аукцион по распределению доменных имен, однако, вскоре после его начала в смарт-контракте были обнаружены две критические ошибки. В результате, аукцион был отменен, а начало работы ENS отложено на неопределенное время. Конечно, некоторые комментаторы поспешили окрестить инцидент «вторым TheDAO», хотя единственные финансовые потери, которые понесли участники неудачного аукциона, это комиссии за транзакции. Как раз, если бы не история с TheDAO, последствия могли бы быть гораздо более катастрофическими.
Ошибки и выводы
-
Оказалось возможным сделать ставку во время периода Раскрытия, когда участник может видеть ставки других участников, в результате любой мог перебить ставку победителя, или наоборот, установить свою ставку на 0.01 ETH меньше, заставляя победителя платить более высокую цену. Этот баг был оперативно устранен.
-
Оказалось возможным «фальсифицировать» ставку, то есть указать высокую цену, но в действительности ее не оплатить. Это полностью разрушало процесс, поскольку любой мог выиграть имя, в действительности оплатив всего 0.01 ETH.
После обнаружения второй ошибки стало понятно, что это не случайность, и было принято решение прекратить аукцион, так как стало очевидно, что код требует серьезного аудита.
В качестве положительного результата можно отметить, что в смарт-контракт реестра был включен «эвакуационный люк»: комитет держателей ключей, имеющий полномочия апгрейдить контракт. Комитет состоит из 6 человек, а для апгрейда необходимы подписи минимум четверых. Это и есть урок, усвоенный после инцидента с TheDAO – на ранних стадиях работы некоторая степень централизованного контроля необходима. Кроме того, графический интерфейс (UI) пользователя намеренно не был активирован – так что на первом этапе участниками стали, в основном, технически подкованные пользователи.
В качестве серьезных просчетов можно отметить что, хотя код находился в тестовой сети с середины ноября, все это время продолжались разработки – тестирование вместе с одновременными изменениями кода вносит неразбериху. Не проводился «баг баунти» – выплата наград сторонним участникам за выявленные ошибки. Также не был проведен формальный аудит смарт-контрактов третьей стороной.
Итоги таковы: сроки повторной попытки запуска ENS неизвестны, называются разные сроки: от нескольких недель до 3 месяцев. Кажется, что задержки, преследовавшие разработчиков Эфириума весь 2016 год, продолжаются и в 2017. Это печально, поскольку ENS в сочетании с цифровым паспортом uPort рассматривается в качестве одного из ключевых проектов, открывающим доступ к Эфириуму обычным пользователям.