Смарт-контракт, размещенный в блокчейне, автоматически выполняется, как только все указанные условия контракта или соглашения выполняются, что исключает необходимость вмешательства посредника.
Условия договора написаны в машиночитаемом коде. Как только смарт-контракт будет завершен, он станет необратимым и юридически обязательным, что поднимает вопрос: возможно ли расторгнуть смарт-контракт? И что еще более важно, можно ли отменить смарт-контракты?
В этой статье обсуждается, можно ли отозвать смарт-контракты и, если возможно, как можно отозвать доступ смарт-контрактов к своим криптовалютным активам.
Что означает отмена смарт-контрактов?
Отзыв смарт-контракта обычно означает отключение или прекращение его функциональности в блокчейне. Например, отзыв может прекратить доступ к криптокошельку пользователя и возможность перемещать токены. Кроме того, отзыв смарт-контракта прекращает разрешение на просмотр баланса токенов пользователя или публичного адреса.
Почему смарт-контракты отменяются?
Смарт-контракт можно отозвать при различных обстоятельствах, например, если вы не собираетесь покупать, продавать или передавать актив или использовать смарт-контракт снова.
В других случаях злонамеренные разработчики встраивают бэкдоры в смарт-контракты, обеспечивая несанкционированный доступ к средствам.
Кто может изменить смарт-контракт?
Как и в любом контракте, как только стороны договорились об условиях контракта, они не подлежат изменению. Даже если бы стороны захотели, условия записаны в блокчейне, который не подлежит изменению. Это делает смарт-контракты неизменными.
Единственный способ «изменить» условия контракта — «обновить» контракт, то есть заменить базовый смарт-контракт децентрализованного приложения (DApp) на другой. В качестве альтернативы стороны могут выбрать обновляемый контракт с самого начала, что позволяет вносить изменения в смарт-контракт.
Кто контролирует смарт-контракт?
Никто не контролирует смарт-контракт после того, как код записан в блокчейн. Код будет выполнен, если или когда будет выполнено или проверено предопределенное условие или положение. Действие включает обновление блокчейна и отправку уведомлений. Только стороны, имеющие доступ к смарт-контракту, могут видеть детали транзакции.
Поскольку никто не имеет прямого контроля над контрактом, сторонам необходимо определить условия и описать их адекватно, без двусмысленности, чтобы гарантировать их выполнение. И это наводит на вопрос: можно ли заблокировать токены внутри смарт-контракта? Когда пользователь отправляет токены в смарт-контракт, никто не может торговать ими или выводить их, по сути, заблокировав их в нем.
Смарт-контракт выпустит токены только после определенного периода или выполнения определенных условий. Некоторые платформы даже позволяют настраивать блокировку токенов, когда пользователь указывает дату и время, когда токены могут стать доступными.
Что такое одобрения и разрешения токенов в смарт-контрактах?
Единственный способ защиты от эксплуатации смарт-контрактов — одобрять только необходимый вывод средств, избегать непроверенных платформ и отзывать одобрения и разрешения на использование токенов.
Но что такое одобрения и разрешения токенов? Смарт-контракты позволяют DApps автоматизировать перемещение токенов в кошельке, отсюда и одобрения и разрешения токенов. Таким образом, одобрения и разрешения токенов означают одобрение владельцем смарт-контракта на снятие токенов из кошелька для выполнения сделки. Пользователь может использовать несколько способов, чтобы отозвать доступ смарт-контракта к своим токенам:
Отмена смарт-контрактов через Token Block Explorer
Отдельные сети обычно имеют обозреватели блоков, такие как Polygonscan и Etherscan, которые содержат раздел одобрения, где пользователи могут использовать инструмент одобрения токенов для отзыва разрешений и одобрений.
Ниже приведены типичные шаги, выполняемые при использовании инструмента утверждения токенов. Обратите внимание, что отозвать подключенные смарт-контракты может только владелец адреса:
1. Перейдите на страницу утверждения токена.
2. Введите свой адрес в строку поиска и нажмите «Поиск».
3. Любой смарт-контракт, связанный с адресом, который может тратить средства от имени пользователя, появится в списке активов, который предоставляет дополнительную информацию, такую как квота токенов смарт-контракта, хэш транзакции и стандарты токенов.
4. Подключитесь к кошельку, нажав кнопку «Подключиться к Web3».
5. После подтверждения подключения выберите, какой контракт(ы) следует отозвать.
Как отозвать одобрение токенов и разрешение смарт-контрактов на Ethereum
Вот обычные шаги, предпринимаемые при отзыве смарт-контрактов в основной сети Ethereum:
Шаг 1: Отозвать инструменты доступа
Пользователи могут отслеживать и отзывать смарт-контракты, связанные с их адресами, используя несколько сторонних инструментов отзыва доступа. Подключитесь к любому из этих веб-сайтов, чтобы начать процесс:
approved.zone: Эфириум
Отменить: несколько сетей
EverRise: несколько сетей
Ethallowance: Эфириум
Unrekt: несколько сетей
Beefy.finance: BNB Smart Chain
Etherscan: Эфириум
Cointool: несколько сетей
Шаг 2: Подключите кошелек
После подключения к веб-сайту найдите и нажмите кнопку «подключить кошелек». При подключении веб-сайта к кошельку убедитесь, что они находятся в одной сети, так как инструменты отзыва доступа работают только в одной цепочке.
Например, при подключении к основной сети Ethereum невозможно отозвать смарт-контракт Polygon, поскольку поддерживаются и будут отображаться только смарт-контракты Ethereum.
Шаг 3: Выберите смарт-контракт
Инструмент смарт-контрактов отобразит все совместимые смарт-контракты, показывая их разрешения на доступ и лимиты расходов. Пользователи должны выбрать те, которые они хотят отозвать. Если не уверены, выберите все и предоставьте новые разрешения при следующем запуске каждого DApp.
Шаг 4: Отменить доступ
Нажмите кнопку «отозвать», оплатите транзакцию и подождите минуту или две, чтобы завершить транзакцию. Выйдите из системы и войдите снова на сайт, чтобы подтвердить, что отозванная транзакция прошла успешно (смарт-контракт не должен быть в списке).
Приведет ли отзыв доступа к токену к прекращению стратегий DeFi?
Нет. Пользователи сохранят свои позиции в стратегиях децентрализованного финансирования (DeFi), таких как пул, стейкинг и кредитование, что позволит им продолжать получать вознаграждения. Однако это может существенно повлиять на них, в зависимости от контекста и того, как структурирована стратегия.
В экосистемах DeFi пользователи часто предоставляют смарт-контрактам разрешение на доступ к своим токенам для различных функций, таких как торговля, кредитование или стейкинг. Если пользователь отзывает этот доступ, смарт-контракт больше не может перемещать или управлять токенами пользователя от его имени.
Это действие может нарушить текущие стратегии, которые полагаются на способность контракта взаимодействовать с токенами. Однако базовая стратегия DeFi не прекращается, а приостанавливается или становится неактивной до тех пор, пока доступ не будет предоставлен снова или стратегия не будет скорректирована.
Является ли отключение кошелька от проекта тем же, что и отзыв разрешения на использование средств?
Нет, это не одно и то же. Отключение кошелька от проекта только отменяет разрешения, которые позволяют другим пользователям просматривать балансы токенов, публичный адрес и прошлые действия, и останавливает инициирование транзакций. Однако, обратите внимание, что это не помешает выполнению транзакций.
С другой стороны, отзыв разрешения на использование средств означает отзыв разрешения DApp на доступ к содержимому кошелька и его перемещение.
