智能合约 之 ERC-721

ERC-721(Non-Fungible Token,NFT)标准

ERC-721是以太坊区块链上的一种代币标准,它定义了一种非同质化代币(Non-Fungible Token,NFT)的标准。NFT是一种加密数字资产,每个代币都具有独特的属性,使其在区块链上不可互换。ERC-721标准的提出为数字艺术品、游戏物品、房地产和其他实物资产数字化所有权提供了基础

基本原理

ERC-721标准建立在以太坊智能合约技术之上,它定义了一组规则,以确保非同质化代币的发行、传输和交易的一致性和互操作性。与传统的代币标准(如ERC-20)不同,ERC-721代币具有独一无二的标识符和属性,因此每个代币都是独特的

ERC-20属于同质化代币,比如 你的 1 USDT 和 `我的 1 USDT`` 本质上是一样的价值

应用场景

  1. 数字艺术品: 艺术家可以将其作品转换为ERC-721代币,并通过智能合约确保其数字版权。
  2. 游戏物品: 游戏开发者可以使用ERC-721创建游戏中的唯一道具、角色或地图,玩家可以拥有、交易或出售这些物品。比如:加密猫
  3. 房地产和虚拟现实: 开发者可以利用ERC-721创建虚拟地产,如数字土地或建筑,从而在虚拟现实世界中实现所有权和交易。

目前来看,游戏物品是最有发展潜力的。数字艺术品房地产和虚拟现实一般需要公证机构的参与,所以有其局限性。

定义的规则

python 复制代码
    function balanceOf(address _owner) external view returns (uint256); // 拥有几个NFT
    function ownerOf(uint256 _tokenId) external view returns (address); // 谁拥有当前NFT(_tokenId)
    function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable; // 转移NFT
    function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; // 转移NFT
    function transferFrom(address _from, address _to, uint256 _tokenId) external payable; // 转移NFT
    function approve(address _approved, uint256 _tokenId) external payable; // 将自己的NFT授权给_approved,其可以执行转移操作
    function setApprovalForAll(address _operator, bool _approved) external; // 授权_approved可以转移自己所有此合约的NFT
    function getApproved(uint256 _tokenId) external view returns (address); // 检查某个NFT的转移权限
    function isApprovedForAll(address _owner, address _operator) external view returns (bool); // 检查_operator是否有_owner的NFT的转移权限

关注我,一起进入Web3的世界

相关推荐
Biteagle14 小时前
P2TR :比特币的「终极脚本方案」与比特鹰的技术解析
区块链
大千AI助手15 小时前
程序合约:形式化验证中的规范与实现框架
分布式·区块链·软件开发·形式化验证·大千ai助手·程序合约·contracts
旺仔Sec20 小时前
2025年安徽省职业院校技能大赛(高职组)区块链技术应用赛项样题任务书
区块链·智能合约
旺仔Sec20 小时前
2025年安徽省职业院校技能大赛(中职组)区块链技术应用与维护赛项样题
区块链·智能合约
飞凌嵌入式21 小时前
AIoT出海背景下,嵌入式主控的国际认证之路与价值思考
大数据·人工智能·嵌入式硬件·区块链·嵌入式
币小路1 天前
WOG如何重塑可信数字金融新范式
区块链
前进的李工2 天前
零知识证明:不泄露秘密也能自证
人工智能·web安全·区块链·零知识证明
焦点链创研究所2 天前
以太坊基金会:以太坊状态演进路径与未来挑战
区块链
hengcaib2 天前
赵良波:打造生鲜配送行业标杆,引领“新鲜、优质、安全”新风尚
大数据·区块链
CryptoRzz2 天前
日本股票 API 对接实战指南(实时行情与 IPO 专题)
java·开发语言·python·区块链·maven