前天(2022 年 9 月 5 日),ERC-3525 半匀质化通证标准正式通过。这两天被问到最多的问题之一,就是 ERC-3525 与 ERC-1155 到底有何区别。我想这个问题以后一定会被一再问起,不如写一篇文章直截了当的解释一下。

先说结论。大多数情况下你可以直接选择 ERC-3525,它会给你足够的灵活性和可扩展性。少数情况下 ERC-1155 可能是更加简单的选择。

具体地说,ERC-1155 和 ERC-3525 是为不同场景设计的,但在实际应用中确实具有一定的竞争性。总的来说,ERC-1155 更简单,ERC-3525 更灵活。

那么在实践中怎么选择呢?凡是 ERC-1155 能做的事情,ERC-3525 都可以实现,而且更具灵活性。所以,如果你非常确定 ERC-1155 就能够满足你的需求,而且你的需求以后也绝不会变化或者扩展,那么就可以选择 ERC-1155,这会简化你的实现。反之,如果你没有把握,或者觉得以后还可能会提出进一步的需求或者改进,那么选择 ERC-3525 是绝不会后悔的。

为什么这么说?

半匀质化通证标准 VS 多通证标准

ERC-1155 是一个多通证(multi token)标准。根据其实质,我们更愿意称它为多实例 NFT (multi-instance NFT)标准。它适合于一个相对狭窄的应用场景,就是同一个 NFT 有多个一模一样的实例。注意是一模一样,这些实例彼此之间必须完全相同,不能有一丝一毫的不同。

ERC-3525 是半匀质化通证(semi-fungible token)标准,这是一个通用标准,适用面非常广阔。它可以把多个相似但并不相同的通证识别为“同类”,然后允许同类之间进行相互转账等特殊操作。从效果上,相当于同类之间可以进行合并、拆分、碎片化等数学操作。

两者的差别主要就是在对于“同类”的界定上。

ERC-1155 认为同类对象必须得完全相同,有丝毫不同也不是同类。

ERC-3525 认为同类对象可以求同存异、和而不同,彼此的关键性质相同,但非关键的性质允许存在差异。

说白了,两个标准各自的设计选择,主要就是源于这个基本理念的差异。哪一个更灵活,更符合实际情况,哪一个能够适应更多的应用场景,大家可以自己去判断。

ERC-3525,半匀质化在应用中的优势

我举一个例子。这并不是 ERC-3525 的典型应用场景,但是却能够特别直观的帮助大家理解上面所说的差别。

比如电子书场景。艺术品 NFT 当然每一个都是独一无二的,用 ERC-721 就好了。但电子书,一本电子书是可以有多份正版拷贝的。这个场景用 ERC-1155 合适,还是 ERC-3525 合适呢?

如果你使用 ERC-1155 发行 100 本电子书,那么这 100 本电子书拷贝必须完全一样,在未来的整个生命周期也必须完全一样,不能够有任何不同。

但如果有一天,你突然发现其中有一本拷贝的买家是马一龙,使得这本书与其他的 99 本不同了,有没有什么办法把这本书单独拎出来搞成一个“马一龙珍藏善本”呢?

不行。在 ERC-1155 里,马一龙与另外 99 个买家共享同一本书,他只是拿到了 100 张一模一样的阅览证的其中之一而已。

为什么?请记住我刚才所说的,ERC-1155 认为同类必须完全相同,你马一龙这一本,跟马一琍的那一本完全相同,没有任何办法加以区分。

但如果你听了我建议,从一开始用的就是 ERC-3525,那么恭喜你,马一龙珍藏版就可以变得与其他 99 本不同。马一龙可以给它盖上自己的藏书章,写一个跋,借给自己的朋友 Peter Thiel 和 Larry Page 开开光。这样一来,这本书就变得独一无二了。

为什么 ERC-3525 支持这种操作?刚才说了,ERC-3525 认为,这本书与其他 99 本是同类,但是可以有差异。同类意味着,它们都是同一个标题、同一个作者、同一时间、同一版次发行的。只要这几个关键特征一样,这 100 本书就是同类。但是,君子和而不同,虽然咱们是同类,但是我这本书还是可以有自己的特色的,比如马一龙的藏书章,比如乾隆皇帝非常差劲的御笔题跋。为什么?因为藏书章和题跋不属于关键特征,因此不影响类别判定。

在内部,ERC-3525 通过一个叫做 SLOT 的机制来给通证分类。一个 SLOT 就是一个关键属性集合。两个通证,只要它们具有相同的 SLOT,也就是说,它们的关键属性完全一样,那么就被视为同类。同类之间可以你侬我侬,亲密接触。但即使我跟你是同类,咱俩的非关键属性,还是可以有所不同的。

为什么我们叫 ERC-3525 “半匀质化通证(SFT)”标准?就是因为,同一个 SLOT 的各个 SFT 是 fungible 的,像 ERC-20 一样;而不同 SLOT 的各个 SFT 彼此相异,像 ERC-721 一样。与同类匀质,而与非同类异质,所谓“半”者,就是这个意思。

那么这是不是说 ERC-1155 就完全被 ERC-3525 给覆盖了呢?也不是这样的。在某些场景里,你明确知道在整个生命周期中,一个 NFT 的多个实例就是生死与共,绝对不会彼此有所不同,那么你还是可以使用 ERC-1155 的,因为 ERC-1155 复杂度低一些,更简单。

ERC-1155 的典型场景就是游戏装备。比如一种激光剑,一共有 10 把,一模一样,从游戏上线到最后一个副本都删档了都一模一样,那么就适合用 ERC-1155。

但如果你想让每一把激光剑都有一个威力值,而且一把激光剑镶上紫钻以后威力值倍增,那就还是老老实实使用 ERC-3525 好了。

当然,ERC-3525 最适合的场景还是表达票据或者真实世界资产,比如带积分的会员卡、承兑汇票、债券、期权、期货、基金、资产支持票据、土地权证等。Solv Protocol 最初的目标是做这个。我们一开始就研究过 ERC-1155,确实不适合,才会绕一个大弯花了 23 个月打造 ERC-3525 SFT 标准。总而言之,ERC-3525 不是为了跟 ERC-1155 竞争而设计的,它们是面向不同的应用场景,但设计出来以后,确实在很多场景下对 ERC-1155 形成了竞争关系,这一点我们也不回避。

直截了当地解释 ERC-3525 与 ERC-1155 的差别相关推荐

  1. 企业上软件,选择ERP还是ERC

    企业上软件,选择ERP还是ERC ERP与ERC是目前市面上管理软件的两大分类,ERP的代表软件厂商有用友.金蝶.管家婆.SAP.速达等,ERC的代表软件厂商是商翼.那么企业上软件是选择ERP还是ER ...

  2. pca百分比取多少比较好_主成分分析(PCA)的详细解释

    原作者:Zakaria Jaadi 翻译:钟胜杰 这篇文章的目的是提供主成分分析的完整同时比较简化的解释,特别是逐步回答它是如何工作的,这样每个人都可以理解它并利用它,而不必具有很高的数学水平. PC ...

  3. 一套完整的硬件电路设计该怎么做?

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  4. 外显子和基因组基本概念(二)

    上接:外显子和基因组基本概念(一) (补)细胞周期(Cell cycle):含间期(Interphase)与分裂期(即M期:Mitosis有丝分裂:Meiosis减数分裂)两个阶段. 间期分为:DNA ...

  5. 一套完整的硬件电路设计该怎么做

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  6. 经验分享:一套完整的硬件电路设计该怎么做?

    在学习电路设计的时候,不知道你是否有这样的困扰:明明自己学了很多硬件电路理论,也做过了一些基础操作实践,但还是无法设计出自己理想的电路.归根结底,我们缺少的是硬件电路设计的思路,以及项目实战经验. 设 ...

  7. 手把手硬件电路详细设计过程

    献给那些刚开始或即将开始设计硬件电路的人. 时光飞逝,离俺最初画第一块电路已有3年.刚刚开始接触电路板的时候,与你一样,俺充满了疑惑同时又带着些兴奋.在网上许多关于硬件电路的经验.知识让人目不暇接.像 ...

  8. 硬件电路设计(转载)

    献给那些刚开始或即将开始设计硬件电路的人. 时光飞逝,离俺最初画第一块电路已有3年.刚刚开始接触电路板的时候,与你一样,俺充满了疑惑同时又带着些兴奋.在网上许多关于硬件电路的经验.知识让人目不暇接.像 ...

  9. Conflux 树图区块链 “数字藏品 合约标准和编写规范

    Conflux 树图链欣欣向荣,尤其是"数字藏品"等相关应用,如雨后春笋般涌现.但是随之而来的是良莠不齐的合约质量和标准兼容度. "数字藏品"是在区块链上发行的 ...

最新文章

  1. J2SE学习标准篇(转载)
  2. (chap4 IP协议) IP协议
  3. 显示Intent和隐式Intent
  4. QT的QSortFilterProxyModel类的使用
  5. 糟糕!复工后,最让人担心的问题又又又来了!
  6. kafka 的pom文件_Flink 消费 Kafka 数据
  7. 人品计算器demo,Intent传值Android
  8. JavaScript 关灯游戏
  9. 中国“古诗词”数据库还有可用的API
  10. 企业CDN缓存 varnish--varnish的基本搭建(1)
  11. Socket基础八:网络IO模型的应用
  12. Pycharm以及cmd调用Anaconda已配置环境的方法
  13. win2012 r2 iis php,Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建wordpress博客教程
  14. 【工具】小巧好用的屏幕截图工具——ScrToPic
  15. 速卖通新手玩家到底应该怎样使用直通车?它又能给商家带来什么?
  16. 如何让百度搜索收录自己的Hexo博客文章
  17. linux开发板led怎么亮,飞凌OK6410开发板(裸板) 第一个点亮LED灯程序
  18. win10下java环境变量设置 不要再错啦
  19. 《设计模式之禅》第二版 学习之六大设计原则(二)
  20. 九个特别的工作网站,开发人员的工具箱,可以拥有很多的使用资源,节省大量的时间,并提升工作效率

热门文章

  1. 合并多个excel文件数据
  2. 安装Rstudio Desktop和Rstudio Server免费版本
  3. rstudio查询命令_R语言和RStudio的一些用法,常用命令等
  4. JavaScript实战——打气球游戏
  5. 终于把泰山OFFICE的MAC本地库问题都解决了
  6. 最新资讯:iPhone 11显示模块更换计划,用于解决触摸问题
  7. 考研政治——马克思三大定律之否定之否定
  8. 宁可编译和链接时出错,也不要运行时出错
  9. Java程序在结构上的特点_下面关于JavaApplication程序结构特点描述中,错误的是()...
  10. 电脑变卡DOS解决方案