ENS: читаемые имена вместо длинных адресов Ethereum
Что такое ENS и имена .eth, как имя превращается в адрес, чем это удобно и опасно, как работают обратное разрешение и субдомены, и как проверять адрес.
В этой статье
Адрес 0x6462DDDc0a3D893A7C17f94410e2d27162a390aD невозможно запомнить, а ошибка в одном символе стоит денег. ENS (Ethereum Name Service) решает это так же, как DNS в обычном интернете: вместо числового адреса вы пользуетесь именем вида anna.eth. Основы про адреса - в статье кошелёк и ключи.
Аналогия с DNS
Когда вы открываете сайт, браузер спрашивает службу DNS: «какой IP у example.com?» ENS делает то же самое для блокчейна: «какой адрес у anna.eth?» Разница в том, что реестр имён - это смарт-контракт, а владеет именем тот, кто контролирует соответствующий кошелёк, а не регистратор.
Как это устроено
- Реестр (Registry) - контракт, хранящий для каждого имени владельца и «резолвер».
- Резолвер (Resolver) - контракт, который отвечает на вопрос «какой адрес у имени?». Он хранит и другие записи: адреса в других сетях, текст, ссылку на сайт, аватар.
- Регистратор (Registrar) - контракт, продающий имена
.ethна срок (обычно по годам) за плату.
Имя превращается в идентификатор через namehash - рекурсивное применение хеш-функции: так что anna.eth превращается в 32-байтовое число, по которому реестр находит запись.
Имена .eth - это NFT (обзор токенов): имя можно передать, продать или подарить.
Что можно хранить в имени
- адрес для получения ETH и токенов;
- адреса в других сетях;
- текстовые записи: email, сайт, Twitter, описание;
- аватар;
- хеш содержимого для децентрализованного сайта.
Обратное разрешение
Помимо «имя в адрес» есть обратная запись: «адрес в имя». Благодаря ей обозреватели блоков и приложения показывают anna.eth вместо длинной строки. Владелец адреса сам выбирает основное имя для него.
Субдомены
Владелец company.eth может раздавать anna.company.eth, bob.company.eth - без повторной регистрации. Компании используют это для сотрудников и проектов.
Удобство и риски
Удобно:
- легко запомнить и продиктовать;
- меньше шансов ошибиться при вводе;
- один профиль на разные сервисы.
Риски:
- Имя можно сменить. Владелец может изменить адрес, на который оно указывает. Если вы сохранили
anna.ethв адресной книге, сегодня и завтра он может вести на разные адреса. - Срок действия. Если владелец не продлил регистрацию, имя истекает и его может занять кто-то другой.
- Похожие имена.
anna.ethиannа.eth(с кириллической «а») выглядят одинаково. Это омограф-атака; хорошие кошельки показывают предупреждения, но не все. - Подмена на стороне интерфейса. Если вы работаете через ненадёжный сайт, он может показать одно имя и отправить на другой адрес.
Как получить имя и сколько это стоит
Имена .eth регистрируют через официальное приложение ENS (проверяйте адрес сайта по закладке или документации: подделки здесь частое явление, см. фишинг).
- Проверьте, свободно ли имя.
- Выберите срок регистрации (от одного года).
- Подтвердите две транзакции: сначала «обязательство» (commit), затем, после короткого ожидания около минуты, саму регистрацию (register). Такая схема нужна, чтобы наблюдатель в mempool не успел перехватить желаемое имя (MEV и фронтраннинг).
- Установите основное имя для вашего адреса (обратная запись) - ещё одна транзакция.
Стоимость зависит от длины имени: чем оно короче, тем дороже в год. По последним известным данным, имена от пяти символов стоят порядка нескольких долларов в год, а совсем короткие - значительно дороже; точные цены уточняйте в приложении. К этому добавляется газ за каждую транзакцию. Не забывайте продлевать имя: после окончания срока и льготного периода оно становится доступно всем.
ENS и сделки
В контракте эскроу всегда хранятся именно адреса, а не имена (как устроена оферта). Имя - лишь удобная оболочка в интерфейсе. Поэтому, договариваясь о сделке, сторонам полезно сверить итоговые адреса контрагента и гаранта.
Пример
Анна и Борис договариваются о сделке. Борис диктует свой адрес по телефону: сорок два символа - это почти гарантированная ошибка. Вместо этого он говорит: «Мой адрес - boris.eth». Анна вводит имя, кошелёк показывает адрес 0x3b1…, а Борис сверяет его в своём кошельке: совпадает. Сделку можно создавать.
Что почитать дальше
Больше о том, как мошенники пользуются похожими адресами, - в статье фишинг и отравление адресов. Чтобы быстро найти адрес в блокчейне, - обозреватель блоков.
Читайте также
- 1 · Основы
Криптокошелёк, адрес и seed-фраза: как не потерять деньги
Как устроен криптокошелёк: закрытый и открытый ключ, адрес, seed-фраза, виды кошельков и главные правила безопасности для новичка.
3 мин чтения - 2 · Практика
Как читать Etherscan: проверяем контракт, транзакцию и события
Практическое руководство по обозревателям блоков (Etherscan, Basescan, Polygonscan, BscScan): как проверить адрес, транзакцию, контракт, токены и разрешения.
3 мин чтения
Упоминается в статьях
Готовы попробовать?
Создайте первую сделку за пару минут. Деньги блокируются в смарт-контракте и выплачиваются по правилам, которые видны заранее.

