ERC-721 is de standaard voor non-fungible tokens op Ethereum en andere EVM-chains: elk token heeft een eigen ID en precies één eigenaar. Wallets, explorers en marktplaatsen gebruiken allemaal dezelfde interface, en daarom is een contract dat de standaard precies volgt meteen overal zichtbaar en verhandelbaar. Voor het grotere plaatje, zie wat is een NFT.
Wat de standaard regelt
- Eigendom:
ownerOfenbalanceOf, de basis voor elke weergave in wallets en marktplaatsen. - Transfers:
transferFromensafeTransferFrom. De veilige variant controleert of een ontvangend contract met NFT's overweg kan, zodat tokens niet voorgoed vastzitten in een contract dat ze niet kan verplaatsen. - Approvals: één adres goedkeuren voor één token, of een operator voor alle tokens, zo kunnen marktplaatsen namens u verkopen.
- Metadata:
tokenURIdie verwijst naar naam, beschrijving, afbeelding en eigenschappen, meestal opgeslagen op IPFS.
Extensies die wij implementeren
- ERC-2981 royalties: een standaardmanier om marktplaatsen te vertellen welke makersvergoeding geldt.
- Efficiënt minten in batches: implementaties in de stijl van ERC-721A, waarmee het minten van meerdere NFT's in één transactie veel goedkoper wordt.
- Niet-overdraagbare tokens (ERC-5192) voor certificaten, lidmaatschappen en diploma's.
- Enumeratie alleen als het echt nodig is, omdat on-chain enumeratie elke transfer duurder maakt. Off-chain indexeren is meestal beter.
Valkuilen
De callback bij een safe transfer geeft de controle aan het ontvangende contract, dus de state moet vóór die aanroep zijn bijgewerkt om reentrancy te voorkomen. Metadata op een gewone webserver kan verdwijnen of veranderen; pinnen op IPFS of volledig on-chain metadata voorkomt dat. En een mintfunctie zonder goede limieten en toegangscontrole is een open uitnodiging voor bots.
Veelgestelde vragen over ERC-721
ERC-721 of ERC-1155?
ERC-721 als elk item uniek is en u maximale compatibiliteit wilt. ERC-1155 als u veel exemplaren van hetzelfde item of veel itemtypes in één contract heeft.
Kan metadata na het minten nog veranderen?
Alleen als het contract dat toestaat, bijvoorbeeld voor een reveal of voor game-items die zich ontwikkelen. Veel collecties bevriezen de metadata na de reveal, zodat kopers weten dat die niet meer verandert.
Bouwen jullie ook de marktplaats?
Ja, zie NFT marketplace ontwikkeling.
Wie is eigenaar van de code?
Het eigendom van de broncode wordt contractueel vastgelegd, en de code kan volledig van u zijn, inclusief documentatie en tests.
Onderdeel van ons werk aan Ethereum-standaarden (EIP's en ERC's) en smart contract ontwikkeling.
Bouw uw NFT-contract
Vertel ons over uw collectie en hoe die gemint wordt. Wij bouwen een ERC-721-contract dat vanaf dag één overal werkt.