ERC-721
ERC-721 (англ.Ethereum Request for Comments, «Запрос комментариев Ethereum» #721) — стандарт смарт-контрактов в блокчейне Ethereum, предназначенный для создания невзаимозаменяемых токенов (NFT). Данный стандарт создан Уильямом Энтрикеном, Дитером Ширли, Джейкобом Эвансом и Настасьей Сакс в 2018 году, чтобы преодолеть ограничения интерфейса ERC-20, облегчить создание NFT и обеспечить безопасную передачу этих уникальных активов и владение ими.
В отличие от более общего протокола ERC-20, ERC-721 содержит набор инструкций по созданию уникальных токенов. Стандарт предусматривает, что созданные на нём цифровые активы существуют в единичном экземпляре и не могут быть обменены один к одному (как обычные токены или монеты), поскольку обладают неповторимыми свойствами и могут быть привязаны к конкретному собственнику.
В контексте Web3 ERC-721 предоставляет платформу для создания децентрализованных приложений, которые используют NFT для различных целей, от виртуальных миров до платформ децентрализованных финансов (DeFi).
Как работает стандарт ERC-721
Стандарт ERC-721 написан на языке Solidity и состоит из набора функций, которые разработчики могут реализовать в своих смарт-контрактах для создания токенов с уникальными метаданными, что делает их отличимыми друг от друга.
Смарт-контракт ERC-721 ведёт учёт владения токеном, обеспечивает безопасную передачу токена от пользователя к пользователю, отслеживает общий объём обеспечения токена и баланс токенов, принадлежащих отдельным адресам.
Характеристики токенов ERC-721
- Имя токена. Каждый токен ERC-721 имеет поле имени, которое указывает имя токена для внешних приложений или контрактов.
- Право собственности. Шаблон токена имеет поле функций, которое определяет право собственности на базовый токен и дает указания о том, как передать это право собственности.
- Отслеживание токенов. Шаблон токена имеет поле «tokenOfOwnerByIndex», которое позволяет разработчикам отслеживать токены с помощью уникального идентификатора.
Функции смарт-контракта ERC-721
balanceOf
— возвращает баланс адреса.ownerOf
— возвращает адрес владельца токена.safeTransferFrom
— отвечает за перенос токена с одного адреса на другой с проверками, чтобы убедиться, что получатель может принять токен, и тот не сгорит или не потеряется.transferFrom
— перевод токена с одного адреса на другой (нерекомендуемая функция). Функция отвечает за указание правильного адреса получателя.approve
— одобрить любой другой адрес для отправки транзакции со счета владельца токена на любой другой аккаунт.setApprovalForAll
— разрешить или запретить любому адресу (в основном кошелькам и биржам) отправлять все токены с адреса владельца на любой другой адрес.getApproved
— возвращает адрес, по которому разрешено передавать токен владельцам. Возвращает 0, если адрес не задан.isApprovedForAll
— возвращает true, если данный оператор (любой адрес) одобрен владельцем.
Преимущества ERC-721 для NFT
Стандарт токенов ERC-721 предлагает ряд преимуществ для работы с NFT:
- Владение. Протокол позволяет пользователям безопасно владеть уникальными цифровыми активами, передавать их и управлять ими с прозрачными и поддающимися проверке записями о владении.
- Совместимость. NFT могут легко взаимодействовать с различными торговыми площадками, кошельками и dApps в сети Ethereum и совместимых с ней блокчейнах, повышая их полезность и доступность.
- Редкость и уникальность. В отличие от взаимозаменяемых токенов, NFT ERC-721 представляют собой отдельные предметы с уникальными свойствами, что делает их ценными как для коллекционеров, так и для создателей.
- Программируемость. Протокол ERC-721 позволяет создателям встраивать дополнительные функциональные возможности в свои NFT, такие как гонорары исполнителям, внутриигровые утилиты или динамично изменяющиеся атрибуты.
- Дефицит цифровых данных. При ограниченном предложении и прозрачном происхождении NFT ERC-721 создают дефицит цифровых данных, что может способствовать их долгосрочной ценности.
- Права интеллектуальной собственности. Протокол позволяет защитить интеллектуальную собственность, предоставляя художникам и создателям неизменяемые записи их работ, а также средства отслеживания использования и перепродажи.
- Долевое владение. NFT, построенные на стандарте ERC-721, могут быть разделены на более мелкие торгуемые доли, что позволяет более широкой аудитории инвестировать в данный актив.
- Кроссплатформенная совместимость. Протокол позволяет использовать NFT на различных платформах и в приложениях, расширяя их потенциальные варианты использования.
Создание ERC-721 NFT на DecimalChain
В блокчейн Decimal интегрирован thirdweb Explore — библиотека готовых проверенных смарт-контрактов с открытым исходным кодом для различных вариантов использования, с расширениями и функциями, которые позволяют за считанные минуты создать собственный NFT для использования в играх и бизнес-проектах, управления сообществом или решения множества других задач.
Спектр применения NFT ERC-721 в экосистеме Decimal необычайно широк. Вы можете:
- делегировать свои NFT и получать токены ERC-20 в качестве вознаграждения за стейкинг;
- создать бесплатную или платную программу членства для вашего сообщества или экосистемы;
- генерировать постоянный доход от NFT-подписки;
- оформить свои авторские работы в виде NFT, а затем продавать их на торговой площадке;
- создать личную или общественную коллекцию NFT, которую можно монетизировать различными способами,
- и т. д.