| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 区块链 -> 解读NFT协议:ERC 721&ERC 1155 -> 正文阅读 |
|
[区块链]解读NFT协议:ERC 721&ERC 1155 |
什么是ERC ERC是Ethereum Request for Comments(以太坊征求意见提案)的缩写,代表以太坊已正式化的提案,它是由EIP(Ethereum Improvement Proposals以太坊升级提案)经过以太坊开发团队各种审议和测试后通过的一种提案,即对有用提案进行标准化,从而实现对开发者提供模版帮助以及标准限制。而其后的20\721\1155则代表提案号,ERC-20则代表第20号提案,其它提案号亦然。 ? 什么是ERC 721 在了解ERC 721前,先简单的了解什么是ERC-20和同质化代币,ERC-20是个以太坊协议,基于ERC-20标准开发的代币合约被统称为"同质化代币(Fungible token,缩写为FT)",其主要特征是可拆分、可交换,为了帮助理解,你可以把人民币理解成同质化代币,因为人民币符合可拆分、可替换的特征,例如100元钱,可以继续拆分成2个50元,或者4个25元等等,你也可以拿你的100元和我的100元交换。 任何事物都有它的作用和局限性,ERC 720的作用就是为同质化代币而生,而随着业务场景的丰富,ERC 720自身的特点不能够再满足新的业务场景,这里的新业务场景就是我们今天说的NFT,与之对应的协议被称为ERC-721,这一概念的传播或诞生主要来自于一款以太坊游戏-CryptoKitties,这款游戏的主角是猫,猫是这个游戏的资产,如何表现这个资产呢?当然不能用ERC-720协议来表示,因为每只猫都是唯一的,而且猫也不能再分解成更小的猫,猫就是猫,它是完整的,不能再拆分,不像100元钱,可以继续拆分成2个50元,或者4个25元等等。为了表示这种特点的资产,诞生了ERC-721协议。 ? 基于ERC-721标准开发的代币合约被统称为"非同质化代币(Non-Fungible Tokens,缩写为NFT)",ERC-721代币相较于ERC-20代币最大的区别就是不可分割性和唯一性,其Token的最小单位为1,且每个Token都是唯一的(ERC 720代币合约,同一个合约下的token规格属性都是一样)。 ERC-721代表了对资产的所有权,现在我们说NFT,可以分为广义和狭义,广义上指资产的所有权,狭义上指非同质化代币。NFT把区块链拉到了一个更高阶的层次,带来了新的应用价值,某种程度上,我们可以把现实生活中的任何物品都映射到区块链上,对应一个NFT,一幅画、一首音乐、一栋房子、一辆车等等,这就是大家说的万物均可NFT。 ERC 721和ERC 720的区别 Fungible 和 Non Fungible 代币之间存在一些主要区别。这些可以列举如下: 1) 可互换: Fungible 代币可以兑换成同类型的其他代币,而 Non Fungible 代币不能被替换。 2) 统一:所有 Fungible 代币在规格上都是相同的。然而,每个不可替代的代币都是独一无二且不同的。 3) 可分割: Fungible 代币可以分割成更小的单元,而 Non Fungible 代币不能被分割。 4) ERC 标准: Fungible 代币是 ERC-20 标准,而 Non Fungible 代币是 ERC-721 标准。 ? 什么是ERC 1155,和ERC 721的区别 前面说了任何事物都有自身的作用和局限性,ERC 721同样如此,随着业务场景的丰富,ERC 721不能或者说不是很合适去支撑新的业务场景,例如一个链游中,有稀有的道具,例如一把叫做倚天剑的剑,整个游戏中只有一把,另外还有普通的道具,例如玄铁剑,游戏中有1000把,如果用ERC 721来铸造,需要铸造1000次,每一次都要付出对应的费用,虽然你可以写一个自动程序帮你完成,但还是省不了对应的铸造成本(时间+费用)。于是ERC 1155诞生了,它是ERC721的升级版,由ENJIN公司创建,这是一个从事区块链游戏基础设施的公司,所以你可以理解为ERC 1155是因为满足游戏场景而诞生的。 “部署一次智能合约,可以铸造出无限数量通用和专用代币”,ENJIN官网的这句话对ERC 1155的描述是非常的贴切。这句话包含了3点重要信息,这3点也是ERC 1155的主要特点: 1)一次部署,可以铸造无限类型的代币(ERC 721需要为每种新类型token部署新的,比如你如果部署了一个猫类的智能合约生产各种猫,假如下次需要再生产狗,则需要部署一个狗类的智能合约) 2)通用代币(ERC 721只支持非同质化代币,ERC 1155额外支持同质化代币) 除了上面的特点,ERC 1155还有以下特点: 3)一次生成多个代币(ERC 721一次只能生成一个,参考上面所铸造1000把玄铁剑的例子) 4)批量转移代币(ERC 721一次仅支持转移一个代币) 5)FT和NFT互转,通过使用ERC 1155协议智能合约铸造的FT或NFT可以互相转换,例如可以将同质化代币转化为NFT,反之亦然。 6)更低的铸造成本,这一点对以太坊生态上的NFT产品尤为突出。 ? ERC 1155应用场景 ERC 1155相比ERC 721,虽然有比较明显的优势,但是目前主要应用场景还是在游戏领域,同时,ENJIN在设计之初,就将该协议和平台平台本身进行了绑定,例如在token销毁层面,需要用到平台自身的token。这一设计带来了一定的争议。除了游戏领域之外,知名NFT平台The Sandbox也在产品上新增了对该协议的支持,而且去除了对ENJ TOKEN的依赖。 根据The Sandbox描述,其主要利用ERC 1155的“代币互转”,即可以将ERC 1155创造的同质化代币转化为NFT,这个特性有许多有趣的应用领域,举个例子,创作者创造一系列收藏品后,它可以选择将其转化为NFT并出售,或者在他人购买时自动生成一个NFT。上述过程将会在智能合约这一去信任环境下进行,实现流程的自动化,同时也能反过来证明买方是第一个获得该收藏品的人(通过区块链的时间戳特性)。 对The Sandbox而言,除了上述特点,采用ERC-1155的另一个重要原因是,其可以让Gas消耗更少,还能保证用户真正拥有物品的所有权。许多区块链游戏只为用户提供了“数字上”的所有权,以此来节省Gas费用(即不令用户物品所有权信息上链),但在The Sandbox中,智能合约将会储存物品的Hash值——物品的信息以及所有权将会通过IPFS来进行保存,这会返回一个独特的Hash值。让用户获得某个物品/资产的数据所有权证明,并且不只有链上信息这一表现形式,还可通过图形化等方式来展示所有权。 除了The Sandbox,知名NFT交易平台OpenSea也支持该协议 ? 总结:关于上述在The Sandbox中的场景,以及ERC 1155的具体使用场景、落地产品;本身特点带来的价值还需要进一步深入了解。期待跟各位一起交流。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 20:40:39- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |