ERC-721: различия между версиями
| [досмотренная версия] | [досмотренная версия] |
Нет описания правки |
|||
| (не показаны 3 промежуточные версии этого же участника) | |||
| Строка 6: | Строка 6: | ||
}} | }} | ||
[[Файл:ERC-721-00.png|400px|thumb|right]] | [[Файл:ERC-721-00.png|400px|thumb|right]] | ||
'''ERC-721''' ({{lang-en|Ethereum Request for Comments}}, «Запрос комментариев Ethereum» #721) — [[стандарты NFT|стандарт]] [[смарт-контракт NFT|смарт-контрактов]] в [[блокчейн]]е [[Ethereum]], предназначенный для создания [[невзаимозаменяемый токен|невзаимозаменяемых токенов]] ([[NFT]]). Данный стандарт создан Уильямом Энтрикеном, Дитером Ширли, Джейкобом Эвансом и Настасьей Сакс в 2018 году, чтобы преодолеть ограничения интерфейса [[ERC-20]], облегчить создание [[NFT]] и обеспечить безопасную передачу этих уникальных активов и владение ими. | [[Файл:ERC-721-01.png|400px|thumb|right|Пример кода смарт-контракта NFT стандарта ERC-721 на основе библиотеки OpenZeppelin.]] | ||
'''ERC-721''' ({{lang-en|Ethereum Request for Comments}}, «Запрос комментариев Ethereum» #721) — [[стандарты NFT|стандарт]] [[смарт-контракт NFT|смарт-контрактов]] в [[блокчейн]]е [[Ethereum]], предназначенный для создания [[невзаимозаменяемый токен|невзаимозаменяемых токенов]] ([[NFT]]). Данный стандарт создан Уильямом Энтрикеном, Дитером Ширли, Джейкобом Эвансом и Настасьей Сакс в 2018 году, чтобы преодолеть ограничения интерфейса [[ERC-20]], облегчить создание [[NFT]] и обеспечить безопасную передачу этих уникальных активов и владение ими. | |||
== Особенности ERC-721 == | |||
В отличие от более общего протокола ERC-20, ERC-721 содержит набор инструкций по созданию '''уникальных токенов'''. Стандарт предусматривает, что созданные на нём [[цифровые активы]] существуют в единичном экземпляре и не могут быть обменены один к одному (как обычные [[токен]]ы или [[монета|монеты]]), поскольку обладают неповторимыми свойствами и могут быть привязаны к конкретному собственнику. | В отличие от более общего протокола ERC-20, ERC-721 содержит набор инструкций по созданию '''уникальных токенов'''. Стандарт предусматривает, что созданные на нём [[цифровые активы]] существуют в единичном экземпляре и не могут быть обменены один к одному (как обычные [[токен]]ы или [[монета|монеты]]), поскольку обладают неповторимыми свойствами и могут быть привязаны к конкретному собственнику. | ||
В контексте [[Web3]] ERC-721 предоставляет платформу для создания [[dApps|децентрализованных приложений]], которые используют NFT для различных целей, от виртуальных миров до платформ децентрализованных финансов ([[DeFi]]). | В контексте [[Web3]] ERC-721 предоставляет платформу для создания [[dApps|децентрализованных приложений]], которые используют NFT для различных целей, от виртуальных миров до платформ децентрализованных финансов ([[DeFi]]). | ||
Стандарт ERC-721 написан на языке [[Solidity]] и состоит из набора функций, которые разработчики могут реализовать в своих [[смарт-контракт]]ах для создания токенов с уникальными [[метаданные|метаданными]], что делает их отличимыми друг от друга. | Стандарт ERC-721 написан на языке [[Solidity]] и состоит из набора функций, которые разработчики могут реализовать в своих [[смарт-контракт]]ах для создания токенов с уникальными [[метаданные|метаданными]], что делает их отличимыми друг от друга. | ||
На [[блокчейн Decimal|блокчейне Decimal]] реализована собственная продвинутая версия этого стандарта — '''[[DRC-721]]''', обладающая более расширенным функционалом. | |||
== Характеристики токенов ERC-721 == | == Характеристики токенов ERC-721 == | ||
* '''Имя токена.''' Каждый токен ERC-721 имеет поле имени, которое указывает имя токена для внешних приложений или контрактов. | * '''Имя токена.''' Каждый токен ERC-721 имеет поле имени, которое указывает имя токена для внешних приложений или контрактов. | ||
* '''Право собственности.''' Шаблон токена имеет поле функций, которое определяет право собственности на базовый токен и дает указания о том, как передать это право собственности. | * '''Право собственности.''' Шаблон токена имеет поле функций, которое определяет право собственности на базовый токен и дает указания о том, как передать это право собственности. | ||
| Строка 32: | Строка 32: | ||
* <code>getApproved</code> — возвращает адрес, по которому разрешено передавать токен владельцам. Возвращает 0, если адрес не задан. | * <code>getApproved</code> — возвращает адрес, по которому разрешено передавать токен владельцам. Возвращает 0, если адрес не задан. | ||
* <code>isApprovedForAll</code> — возвращает true, если данный оператор (любой адрес) одобрен владельцем. | * <code>isApprovedForAll</code> — возвращает true, если данный оператор (любой адрес) одобрен владельцем. | ||
== См. также == | == См. также == | ||
* [[Стандарты NFT]] | * [[Стандарты NFT]] | ||
* [[ERC-1155]] | * [[ERC-1155]] | ||
* [[ERC-998]] | |||
[[Категория:Стандарты NFT]] | [[Категория:Стандарты NFT]] | ||
Текущая версия от 18:02, 10 июля 2024


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