ERC-721
ERC-721 to standard reprezentujący niewymienne tokeny (NFT) na blockchainie Ethereum, definiujący sposób tworzenia, zarządzania i handlu unikalnymi aktywami cyfrowymi.
ERC-721 to kluczowy standard w ekosystemie Ethereum, stanowiący wzorzec dla NFT. Umożliwia tworzenie unikalnych aktywów cyfrowych, z których każdy ma swój własny, odrębny identyfikator, przechowywany na blockchainie. Standard ten określa funkcje i zdarzenia, które musi zaimplementować kontrakt NFT, takie jak transferFrom, balanceOf i ownerOf, umożliwiając interoperacyjność między różnymi projektami NFT i platformami handlowymi.
W przeciwieństwie do tokenów ERC-20, które są zamienne (wymienne), tokeny ERC-721 są niewymienne, co oznacza, że każdy token jest unikalny i ma swoją własną, specyficzną wartość lub atrybuty. Ta unikalność sprawia, że NFT nadają się do reprezentowania takich przedmiotów, jak sztuka cyfrowa, przedmioty kolekcjonerskie, wirtualne nieruchomości i przedmioty w grach. Standard ERC-721 zapewnia, że te aktywa mogą być weryfikowalnie posiadane i przenoszone na blockchainie Ethereum.
graph LR
Center["ERC-721"]:::main
Pre_erc_20["erc-20"]:::pre --> Center
click Pre_erc_20 "/terms/erc-20"
Pre_smart_contract["smart-contract"]:::pre --> Center
click Pre_smart_contract "/terms/smart-contract"
Center --> Child_nft["nft"]:::child
click Child_nft "/terms/nft"
Center --> Child_metadata["metadata"]:::child
click Child_metadata "/terms/metadata"
Center --> Child_soulbound_token["soulbound-token"]:::child
click Child_soulbound_token "/terms/soulbound-token"
Rel_erc_1155["erc-1155"]:::related -.-> Center
click Rel_erc_1155 "/terms/erc-1155"
Rel_ipfs["ipfs"]:::related -.-> Center
click Rel_ipfs "/terms/ipfs"
Rel_erc_20["erc-20"]:::related -.-> Center
click Rel_erc_20 "/terms/erc-20"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Sprawdzenie wiedzy
🧒 Wyjaśnij jak 5-latkowi
Imagine ERC-721 as a digital certificate of ownership for unique items, like a one-of-a-kind [trading](/pl/terms/trading) card or a specific piece of digital art. Each card or artwork has its own special number, and the [blockchain](/pl/terms/blockchain) keeps track of who owns which specific item.
🤓 Expert Deep Dive
ERC-721 (EIP-207) establishes a standard for non-fungible tokens, enabling the representation of unique digital assets on Ethereum. Its core innovation lies in the tokenId mechanism, which allows for granular tracking and ownership of individual assets within a single smart contract. The ownerOf function provides direct retrieval of an asset's proprietor, while transferFrom and the more secure safeTransferFrom facilitate provenance tracking. The safeTransferFrom function incorporates checks to ensure the receiving address is capable of handling ERC-721 tokens, typically by verifying adherence to the ERC-721 or ERC-1155 standards via onERC721Received callbacks. This prevents tokens from being sent to incompatible contracts, thereby avoiding 'black holes'. The approve and isApprovedForAll functions enable delegated management, crucial for marketplaces and secondary sale mechanisms. Architectural trade-offs include increased gas costs per token compared to ERC-20 due to the need to store and manage individual tokenId ownership mappings. Furthermore, the immutability of tokenId assignments means that once a token is minted, its identifier cannot be changed, necessitating careful planning during contract deployment.