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

Адрес получателя предмета — это либо кошелёк под управлением ключа, либо контракт с кодом, и во втором случае приём предмета зависит от наличия в этом коде обработчика, предусмотренного стандартом.

Что происходит с сегментом сейчас

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

Нормативная рамка здесь строгая, и формулировка в тексте EIP-721 вынесена заглавными буквами: «THE CALLER IS RESPONSIBLE TO CONFIRM THAT _to IS CAPABLE OF RECEIVING NFTS OR ELSE THEY MAY BE PERMANENTLY LOST». Сверено по первоисточнику на eips.ethereum.org 17 октября 2026 года. Предупреждение адресовано отправителю. Сеть за вас получателя не проверит.

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

Как перевести предмет между кошельками и сверить адрес получателя

Безопасный перевод проверяет получателя сам. По EIP-721 функция убеждается, что по адресу есть код, вызывает onERC721Received и отклоняет операцию, если возврат не совпал с ожидаемым: «Return of other than the magic value MUST result in the transaction being reverted». У ERC-1155 требование жёстче — спецификация предписывает откат, если получатель-контракт не реализует нужные функции интерфейса, а ожидаемые значения названы прямо: 0xf23a6e61 и 0xbc197c81 для перевода пачкой.

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

Тип адреса Безопасный перевод Небезопасный перевод
Кошелёк под ключом Проходит Проходит
Контракт с обработчиком Проходит Проходит
Контракт без обработчика Отклонён, предмет у вас Предмет потерян
Контракт под другой стандарт Отклонён или принят вслепую Предмет потерян
Адрес с опечаткой Проходит в пустоту Проходит в пустоту

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

Поддержка одного стандарта не означает поддержки второго. Сейф, рассчитанный на предметы по ERC-721, способен отклонить предмет по ERC-1155 или принять его, не умея вернуть. Уточняйте стандарт предмета и стандарт получателя по отдельности.

Издержки: комиссии, роялти, газ

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

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

Разложить расходы по слагаемым помогает отдельный разбор о том, как перевести предмет между кошельками и понять структуру комиссий, а сборы при операциях через площадку описаны в тексте про комиссии площадки.

Пошаговый сценарий

  1. Получите адрес от получателя текстом и откройте его в обозревателе блоков той же сети, где находится предмет.
  2. Посмотрите, есть ли по адресу код: страница контракта и страница кошелька в обозревателе выглядят по-разному.
  3. Если по адресу контракт, найдите в его интерфейсах обработчик приёма для нужного стандарта — ERC-721 или ERC-1155.
  4. Отправьте пробно минимальную сумму монеты сети и дождитесь зачисления: это подтверждает, что адрес существует и доступен.
  5. Подпишите перевод безопасной функцией и проверьте в данных транзакции, что метод назван именно так.
  6. Сверьте владельца номера через ownerOf и сохраните хеш операции рядом с номером предмета.
Схема из шести шагов: получить адрес текстом, проверить наличие кода, найти обработчик приёма, отправить пробную сумму, подписать безопасный перевод, сверить владельца и сохранить хеш
Схема из шести шагов: получить адрес текстом, проверить наличие кода, найти обработчик приёма, отправить пробную сумму, подписать безопасный перевод, сверить владельца и сохранить хеш

Риски и мошеннические схемы сегмента

Отравление истории — схема, рассчитанная на копирование из списка операций. В историю адреса подбрасывают перевод с адреса-двойника, у которого совпадают первые и последние знаки, и владелец, копируя получателя из прошлой операции, берёт подделку. Для делимого токена ошибка стоит части суммы. Для предмета — всего предмета, потому что второй доли у него нет.

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

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

Итог

  • Адрес получен текстом, а не скопирован из истории операций.
  • Проверено, есть ли по адресу код.
  • Для контракта найден обработчик приёма нужного стандарта.
  • Пробная сумма монеты сети дошла.
  • В данных транзакции назван безопасный метод перевода.
  • Хеш операции сохранён рядом с номером предмета.

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

Как проверить адрес, если получатель — контракт?

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

Помогает ли пробный перевод мелкой суммы?

Частично. Пробный перевод подтверждает, что адрес существует и доступен получателю, но не говорит, принимает ли он предметы: монета сети и предмет обрабатываются по-разному. Для полной проверки нужен либо просмотр кода, либо перевод ненужного предмета того же стандарта.

Можно ли вернуть предмет, отправленный не туда?

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

Чем сверка адреса для предмета отличается от сверки при переводе монет?

Добавляется проверка кода получателя. При переводе монет достаточно убедиться в правильности строки, а предмет требует ответа на вопрос, умеет ли адрес его принимать. Плюс отсутствует возможность разделить перевод: сумму отправляют частями, а предмет уходит целиком и один раз.

Материалы по теме

Требования к проверке получателя приводятся по тексту спецификации EIP-721 и текста EIP-1155. Сверка выполнена 17 октября 2026 года.

Вердикт

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

Разборы операций с предметами и предупреждения о свежих схемах выходят в Telegram-канале Cryptium.