Один и тот же адрес существует во всех совместимых сетях сразу, и это не совпадение, а свойство способа выдачи адресов. Чтобы проверить блокировку токенов ликвидности и не перепутать сеть, сверяйте не адрес, а идентификатор цепочки у своего узла, а затем — адреса обоих токенов внутри пула и адрес фабрики, которая его создала. Одноимённые пулы в разных сетях различаются резервом, составом токенов и владельцем контракта удержания. Совпадает у них только название.

Идентификатор цепочки — это число, встроенное в подпись транзакции и возвращаемое узлом по запросу; именно оно, а не адрес контракта, однозначно указывает, в какой сети вы находитесь.

Почему адрес не указывает на сеть

Адрес контракта вычисляется детерминированно. В обычном случае он выводится из адреса развернувшего и его счётчика транзакций, во втором способе — из соли и кода. Ни в одной из формул нет идентификатора сети. Следствие прямое: один и тот же создатель с тем же счётчиком получит в двух цепочках один и тот же адрес.

Отсюда и ловушка. Вы копируете адрес контракта удержания из описания проекта, открываете обозреватель, видите контракт и читаете баланс. Баланс есть. Сеть другая. Числа, которые вы прочитали, относятся к близнецу, а не к тому пулу, в который собираетесь вложиться.

Защита от опечаток здесь не помогает. Стандарт ERC-55 в статусе Final, созданный 14 января 2016 года, задаёт контрольную сумму регистром букв в адресе и, по оценке самой спецификации, оставляет вероятность 0,0247% того, что случайно искажённый адрес пройдёт проверку. Опечатку такая схема ловит. Правильный адрес в неправильной сети она пропустит без замечаний: он правильный.

Сеть различается в другом месте. Стандарт EIP-155 в статусе Final, созданный 14 октября 2016 года, добавил идентификатор цепочки в подпись: вместо шести элементов хешируются девять, а значение восстановления считается как единица или нуль плюс удвоенный идентификатор плюс 35. Для основной сети Ethereum идентификатор равен единице. Полный перечень поддерживается отдельным реестром, и спецификация прямо на него ссылается.

Как проверить блокировку токенов ликвидности и не перепутать сеть: порядок сверки

  1. Запросите у узла идентификатор цепочки и сравните с тем, в котором собираетесь работать. Это первое действие, а не последнее.
  2. Прочитайте у пула адреса обоих его токенов. Каждый из них должен быть каноническим токеном именно этой сети, а не обёрткой с таким же названием.
  3. Прочитайте адрес фабрики, создавшей пул, и сверьте его с фабрикой протокола в этой сети. Чужая фабрика означает чужой пул.
  4. Прочитайте в контракте удержания адрес удерживаемого токена и сверьте с адресом долей проверяемого пула. Совпадение обязательно.
  5. Прочитайте резервы пула. У близнеца в другой сети они почти всегда меньше на порядки — это самый быстрый признак подмены.
  6. Прочитайте владельца контракта удержания в каждой из сетей, где пул существует. Это могут быть разные адреса, и права у них разные.
Схема из пяти шагов: идентификатор цепочки у узла, адреса токенов внутри пула, адрес фабрики, сверка токена в контракте удержания, сравнение резервов
Схема из пяти шагов: идентификатор цепочки у узла, адреса токенов внутри пула, адрес фабрики, сверка токена в контракте удержания, сравнение резервов

Чем различаются одноимённые пулы

Признак Пул в основной сети Одноимённый пул в другой сети
Название пары Совпадает Совпадает — на этом сходство кончается
Адреса токенов внутри Канонические выпуски Обёртки мостов с иными адресами
Размер резерва Основной объём торговли Нередко на порядки меньше
Фабрика-создатель Фабрика протокола этой сети Другая фабрика, иногда чужого протокола
Контракт удержания долей Свой, со своим сроком Свой, со своим сроком — сроки не связаны
Владелец контракта удержания Один адрес Возможен другой адрес с другими правами
Ставка комиссии пула Выбрана при создании Может отличаться, и это другой пул

Пятая строка объясняет самую обидную ошибку. Блокировка в одной сети не распространяется на близнеца в другой. Это два независимых контракта с независимыми сроками, и проверка одного не говорит о втором ничего.

Расчёт на условной сумме

Условный пример, цифры для иллюстрации разрыва. Пул в основной сети: резерв 400 000 единиц стейблкоина, выпуск долей 1 000 000, в контракте удержания 920 000 долей — заблокировано 92%. Одноимённый пул в другой сети: резерв 3 000 единиц, выпуск долей 7 000, в контракте удержания 6 900 — заблокировано 98,6%. Второй выглядит надёжнее по проценту и держит в 133 раза меньше денег. Процент без резерва не значит ничего. Оба набора чисел читайте на своём узле, сверяя идентификатор цепочки перед каждым запросом.

Из расчёта следует практический приём. Сравнивайте не проценты, а абсолютные величины резерва: подмена сети выдаёт себя масштабом быстрее, чем любой другой признак. Как переводить глубину резерва в оценку последствий сделки, разобрано в материале о том, почему ликвидность важнее размера комиссии при выборе площадки.

Переключение сети в кошельке не меняет открытую страницу обозревателя и наоборот. Два окна способны показывать разные цепочки одновременно, и визуально это ничем не отмечено, кроме мелкой надписи в углу. Поэтому идентификатор цепочки запрашивают у узла программно, а не считывают с интерфейса: интерфейс показывает выбранную сеть, а узел — ту, которая отвечает на ваши запросы.

Скрытые издержки путаницы

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

Четвёртая издержка проявляется позже. Диапазон, выбранный по ценам одной сети, в другой окажется мимо рынка, потому что цена близнеца живёт отдельной жизнью при тонком резерве. Как подбирают диапазон, объясняет разбор о том, как выбрать диапазон в пуле концентрированной ликвидности. И последнее: владелец контракта удержания в разных сетях может быть разным, а значит права на досрочный вывод тоже разные — об этом материал о том, кто управляет параметрами протокола.

  • Идентификатор цепочки получен от узла, а не прочитан в углу интерфейса
  • Адреса обоих токенов пула сверены с каноническими адресами этой сети
  • Фабрика-создатель пула совпадает с фабрикой протокола в этой сети
  • Токен в контракте удержания равен адресу долей проверяемого пула
  • Резервы сравнены в абсолютных единицах, а не в процентах блокировки
  • Владелец контракта удержания прочитан отдельно для каждой сети

Сценарий, при котором средства теряются

История из обращений выглядит так. Читатель получил адрес контракта удержания в чате проекта, открыл обозреватель, который был переключён на другую сеть, и увидел нужный контракт с балансом долей. Вывод сделан: ликвидность заблокирована почти целиком. Покупка совершена в основной сети, где доли того же пула оставались свободными и ушли из резерва через два дня. Контракт существовал. Сеть была не та.

Вторая версия короче и дороже. Читатель отправил доли на адрес контракта удержания, не сверив сеть. В целевой цепочке по этому адресу контракта нет — он там никогда не развёртывался. Токены зачислены на адрес, которым никто не владеет, и вернуть их нельзя ни через проект, ни через узел. Полная потеря отправленной суммы при таком развитии необратима. Банк России ведёт реестры участников финансового рынка, однако контракты в них не регистрируются, и сверка сети остаётся вашей задачей. Правовая рамка с 1 сентября 2026 года задана Федеральным законом от 04.08.2026 № 282-ФЗ; определения — в его статье 2.

Частые вопросы

Почему один адрес работает в нескольких сетях

Потому что адрес контракта выводится из адреса создателя и его счётчика транзакций либо из соли и кода, а идентификатора сети в этих формулах нет. Создатель с одинаковым счётчиком получит одинаковый адрес в любой совместимой цепочке. Совпадение адреса не доказывает ничего о сети.

Разве контрольная сумма адреса не защищает от ошибки

Защищает от опечатки, не от выбора сети. Стандарт ERC-55 кодирует контрольную сумму регистром букв и, по оценке спецификации, пропускает случайно искажённый адрес с вероятностью около 0,0247%. Правильный адрес в неправильной сети контрольную сумму проходит безупречно: он не искажён.

Распространяется ли блокировка на одноимённый пул в другой сети

Нет. Это два независимых контракта удержания с независимыми сроками и, возможно, разными владельцами. Проверка одного не сообщает о втором ничего. Если проект заявляет блокировку в нескольких сетях, читать нужно каждую отдельно, сверяя идентификатор цепочки перед каждым набором запросов.

Как быстро понять, что я в неверной сети

По размеру резерва. Близнец почти всегда на порядки мельче основного пула, и разрыв виден сразу. Второй быстрый признак — адреса токенов внутри пула: обёртки мостов отличаются от канонических выпусков. Третий — фабрика-создатель, у чужой сети она другая.

Достаточно ли переключить сеть в кошельке

Нет, кошелёк и обозреватель переключаются независимо. Две вкладки могут одновременно показывать разные цепочки, и ничто в оформлении об этом не сообщит. Запрашивайте идентификатор у того узла, который отвечает на ваши чтения: он и определяет, о какой сети идут все полученные числа.

Итог

Адрес не содержит сети, и потому сверка адреса не отвечает на вопрос о сети. Отвечает идентификатор цепочки, полученный у узла. Дальше проверяются три вещи: токены внутри пула, фабрика-создатель и токен, записанный в контракте удержания. Резерв служит быстрой подсказкой: близнец мельче на порядки. Блокировка в одной сети не действует в другой, и это единственное правило, которое стоит запомнить без оговорок.

Вердикт

Путаница сетей — редкая ошибка с нулевой стоимостью предотвращения и полной стоимостью последствий. Один запрос идентификатора снимает её целиком, и этот запрос бесплатен. Из редакционной практики: читатели проверяют адрес посимвольно, доверяя контрольной сумме, и не проверяют сеть вовсе — хотя первая защита рассчитана на опечатку, а вторая отсутствует по умолчанию. Привязка идентификатора цепочки к подписи описана в спецификации EIP-155 на портале EIP, статус Final, дата создания 14 октября 2016 года.

Разборы по DeFi без обещаний доходности — в нашем Telegram-канале Cryptium.