ERC-721是什么?以太坊上的非同质化代币标准
2024-02-27分类:NFT 阅读()
在区块链领域,代币是一种重要的概念,它可以代表一种数字资产或权利,可以在区块链网络上进行发行、流通和交易。代币的种类繁多,但根据其可替代性,可以分为两大类:同质化代币(Fungible Token,FT)和非同质化代币(Non-Fungible Token,NFT)。
同质化代币是指每个代币都是相同的,没有区别,可以互相替换的代币。例如,比特币、以太坊等加密货币,以及美元、人民币等法定货币,都是同质化代币。同质化代币的特点是,它们只有数量的差别,没有质量的差别,它们的价值是统一的,不受个别代币的影响。
非同质化代币是指每个代币都是独一无二的,有自己的特征和属性,不能互相替换的代币。例如,加密猫、加密艺术品、加密域名等数字收藏品,以及房产、汽车、证书等实物资产,都是非同质化代币。非同质化代币的特点是,它们不仅有数量的差别,还有质量的差别,它们的价值是不同的,受个别代币的影响。
在以太坊平台上,代币的发行和管理都需要遵循一定的标准,以保证其与其他代币和智能合约的兼容性和互操作性。对于同质化代币,最常用的标准是 ERC-20,它定义了一套代币的基本功能和接口,例如代币的名称、符号、总量、余额、转账、授权等。对于非同质化代币,最常用的标准是 ERC-721,它定义了一套非同质化代币的基本功能和接口,例如代币的所有者、授权、安全转移、元数据等。
ERC-721(Ethereum Request for Comments 721)是由 William Entriken、Dieter Shirley、Jacob Evans、Nastassia Sachs 在 2018 年 1 月提出的一份以太坊改进提案(EIP),它是一个在智能合约中实现非同质化代币 API 的标准。它提供了一些功能,例如将代币从一个账户转移到另一个账户,获取账户的当前代币余额,获取代币的所有者,以及整个网络的可用代币总供应量。除此之外,它还具有其他功能,例如批准账户中一定数量的代币可以被第三方账户转移。如果一个智能合约实现了以下方法和事件,它就可以被称为一个 ERC-721 非同质化代币合约,一旦部署,它就会负责跟踪在以太坊上创建的非同质化代币。
方法:
1. function balanceOf(address _owner) external view returns (uint256); // 获取某个账户拥有的代币数量
2. function ownerOf(uint256 _tokenId) external view returns (address); // 获取某个代币的所有者
3. function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable; // 安全地将代币从一个账户转移到另一个账户,同时传递一些额外的数据
4. function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; // 安全地将代币从一个账户转移到另一个账户
5. function transferFrom(address _from, address _to, uint256 _tokenId) external payable; // 将代币从一个账户转移到另一个账户
6. function approve(address _approved, uint256 _tokenId) external payable; // 授权某个账户可以转移某个代币
7. function setApprovalForAll(address _operator, bool _approved) external; // 授权某个账户可以转移所有代币
8. function getApproved(uint256 _tokenId) external view returns (address); // 获取某个代币的授权账户
9. function isApprovedForAll(address _owner, address _operator) external view returns (bool); // 获取某个账户是否被授权可以转移所有代币
事件:
1. event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); // 代币转移事件
2. event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); // 代币授权事件
3. event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); // 全部代币授权事件
ERC-721 的意义和价值在于,它为非同质化代币提供了一个通用的标准,使得不同的非同质化代币可以在以太坊平台上进行互通和交易,也使得开发者可以更容易地创建和管理非同质化代币。非同质化代币的应用场景非常广泛,例如数字收藏品、游戏道具、数字艺术品、数字身份、数字证书、实物资产等,它们都可以通过 ERC-721 标准来实现其唯一性、稀缺性、可验证性和可交易性。
Tags:
标签云
-
Binance OKx 虚拟货币交易所 USDT 模因币 BRC20 TRC20 Staking 虚拟货币 ARB Sol gamefi 小狐狸钱包 DAO web3.0 流动性挖矿 什么是DeFi ICO 什么是NFT 什么是稳定币 SHIB 虚拟货币钱包 加密货币交易所 加密货币 什么是加密货币 GST 资金费率 MAX 区块链技术 区块链投资 区块链是什么 Coinw BingX Gate.io Bitfinex MEXC BITGET BitMEX Kucoin pionex Bybit BitMart KYC 网格交易 LTC Litecoin PI 什么是狗狗币 LUNA USDC