NFT:价值互联网的HTML

BitXHub2021-03-12

导  读

这是一种合理的推测。

回顾信息互联网的几十年的发展历程,万维网(World Wide Web,WWW)是其中最为重要的进展之一。如今当我们提及信息互联网时,多指万维网;我们经常说的Web1.0、Web2.0、Web3.0,多指万维网。而万维网最重要的三项技术规范分别是:

• HTML(HyperText Markup Language):超文本标记语言

• URI(Uniform Resource Identifier):统一资源标志符

• HTTP(HyperText Transfer Protocol):超文本传输协议

在信息互联网中,超文本标记语言HTML用于将信息规范化地表示出来,统一资源标志符URI用于标识信息的名称和位置,超文本传输协议HTTP则用于传输信息

“价值互联网”是近几年新提出的用于区分传统“信息互联网”的一个词。

目前绝大多数提及“价值互联网”的地方都会提到区块链,且认为区块链会是“价值互联网”的基础。信息互联网传输信息,但是信息可能是虚假的、缺乏信用的,区块链有可能解决这个问题从而赋能价值的传输。

很自然地,我们会好奇在“价值互联网”中是否有类似HTML、URI、HTTP的技术?本文认为NFT会成为价值互联网中的HTML,起到将价值规范化地表示出来的作用。

NFT vs FT

如何来表示价值?价值,说通俗点就是资产。区块链里表示资产就是 Token,但是其实 Token 有2种:Fungible Token(同质化通证,FT) 和 Non-fungible Token(非同质化通证,NFT)。

其中FT最广泛的技术规范是 ERC-20,NFT最广泛的技术规范是ERC-721,基于这两种规范的 FT 和 NFT 主要有以下区别:

考虑物理世界中的资产,一个普通人会拥有的资产可能有:

• 实体资产:书籍、手机、衣服、鞋子、箱包、个人电脑、代步工具、居住场所...

• 虚拟资产:游戏道具、数字收藏品...

• 金融资产:股票、债券...

• ...

如果将这些资产在区块链上进行数字化表示,就有FT和NFT两种方式。可以将你拥有的某件衣服、某个游戏里的道具、某支股的股票,锚定到区块链上的一个 FT 或者 NFT。

基于上面FT和NFT的区别,我们发现NFT技术在实体资产的数字化上更有优势:

• 非同质化:你的电脑和其他人的电脑可能是用一个型号,但是它们的序列号不同,它们安装的软件不同,它们存储的文件也不同...

• 不可分割:你的书籍不可能是0.5本、你的手机也不可能是0.25只...

• 有外部信息关联方式:每个NFT有个属性可以与外部URI关联,这个URI可以链接到你的资产的一些详细信息,如生产厂商、生产日期、外观图片...

除了实体资产,虚拟资产用NFT来表示也更加方便,因为虚拟资产本身的形式就是数字化的,如一个游戏道具,可以通过URI关联到一个NFT。

当然,FT相比NFT也有优点,大部分金融资产更适合用 FT 的方式来表示,因为很多金融资产都是同质化的,如同一家公司的同类型股票,这1股和另1股是一样的。当然像保险单这样的因人而异的金融资产还是适合用NFT来表示。

总结来说,同质化的资产更适合用同质化通证(FT)来表示,非同质化的资产更适合非同质化通证(NFT)来表示。不过物理世界的资产其实本质上都是非同质化的。就算是流水线上生产出来的标准化产品,不同产品之间本来就是有细微差异的。而在产品发售由不同客户购买后,因为不同客户对产品不同的使用方式、使用强度,最后这些二手产品之间的非同质化程度会进一步增加。

虽然前面都在以一种竞争对比的口吻来看待NFT和FT,但其实两者其实是互补的,NFT可能会是价值互联网的 HTML,而FT可能会是价值互联网的 JSON/XML ... 

NFT的技术规范

NFT目前主要的技术规范是以太坊上的ERC-721和ERC-1155。

ERC-721是最初的NFT规范,但是其一个智能合约管理多种NFT比较麻烦,且不支持批量转账NFT。ERC-1155基于ERC-721做了不少改进,单个合约就可以管理 FT、NFT 或其他配置(例如 Semi-FT,半FT)的任意组合。不过目前ERC-721的使用还是相比ERC-1155更加广泛些。

ERC-721和ERC-1155都有基本的资产转账、资产授权、查询资产所属用户、查询用户所拥有资产的方法。

除此之外,ERC-721规范的NFT一般具有以下属性:

• tokenId:在合约内唯一的 NFT ID,在NFT的生命周期中不可改变(要实现全链唯一的必须用(contractAddr, tokenId)组成的元组)

• name:名称,类似于ERC-20的名称

 symbol:符号,类似于ERC-20的符号

• uri:指向外部信息的链接,一般是一个JSON,而在JSON中有进一步更加具体的信息

一个ERC-721规范的NFT示例:

{
  tokenId: 20210203
    name: nft_name
    symbol: NN
    uri: https://path/to/uri/
}

uri所指向的JSON文件的格式:

{
    "title": "Asset Metadata",
    "type": "object",
    "properties": {
        "name": {
            "type": "string",
            "description": "Identifies the asset to which this NFT represents"
        },
        "description": {
            "type": "string",
            "description": "Describes the asset to which this NFT represents"
        },
        "image": {
            "type": "string",
            "description": "A URI pointing to a resource with mime type image/* representing the asset to which this NFT represents. Consider making any images at a width between 320 and 1080 pixels and aspect ratio between 1.91:1 and 4:5 inclusive."
        }
    }
}

前面提到过,ERC-1155 改进了 ERC-721(ERC-721有的优点ERC-1155也都有),其改进点主要在于:

• 单个合约能同时管理 FT 和 NFT这主要通过tokenId来实现,该变量是一个uint256类型的变量,ERC-1155建议将这个256位的变量对半分,前128位作为base_token_id(可用于表示 NFT 的种类,如某个具体型号的手机),后128位作为index(可用于表示某种类下某个NFT的ID,如某个具体型号手机的序列号)

• 支持批量转账,可以一次性转账多个种类的 FT 或者 NFT。

• 对uri所链接到的外部JSON文档的格式做了一些小改动。

具体的ERC-721和ERC-1155规范建议查阅EIP文档。

NFT的应用场景

本文认为NFT作为价值互联网的HTML,其所能使用的应用场景是极其广泛的,用区块链作为解决方案的场景中2/3的场景都可以使用NFT来更加规范地实现。一切需要表示价值的场景都可以用到NFT。

前面我们将一个普通人所拥有的资产分为了实体资产、虚拟资产、金融资产三大类,我们也按照这个分类来看看NFT的应用场景。

▲ 实体经济

商品溯源:将商品映射到互联网中并包装成一个NFT,商品生产方即为NFT发行方,商品流通过程中按照实际情况对这个NFT进行操作就可以实现跟踪溯源。

知识产权:将知识产权映射到互联网中并包装成一个NFT,知识产权局即为NFT发行方,用户拥有这个NFT就意味着拥有这个知识产权。

证据存证:将证据电子化并包装成一个NFT,证据产生方即为NFT发行方,用户拥有这个NFT就意味着拥有这个证据。

电子票据:将票据电子化并包装成一个NFT,票据发行方即为NFT发行方,用户拥有这个NFT就意味着拥有这个票据。

电子证件:将证件电子化并包装成一个NFT,证件发行方即为NFT发行方,用户拥有这个NFT就意味着拥有这个证件。

除此之外,还有很多类似的区块链场景都可以用NFT来实现,因为NFT更加规范,所以这样的解决方案相比自己去重新定义一套数据规范而言成本更低。不过要注意的是,NFT是区块链技术在数字资产上的规范的一种,区块链技术本身无法解决的问题NFT也没办法解决。

▲ 虚拟及金融资产

NFT在虚拟资产上的应用极为广泛,目前已经成为区块链领域事实上的虚拟资产价值表示的标准。2017-2018年以太坊最热门的DApp加密猫(CryptoKitties)其每只猫背后就是用NFT进行表示的。

目前NFT在虚拟资产上的应用主要有以下几类:

  • 数字收藏品

– 比较有代表性的项目有:CryptoKitties、CryptoPunks、NBA Top Shot等。

– 其中NBA Top Shot是近期最热门的NFT项目。其为原加密猫团队与NBA合作推出的卡牌收集项目,其将NBA球星在场上打球的精彩时刻包装成了一个基于NFT的卡牌。NBA Top Shot在今年超过了CryptoKitties成为历史上交易量最大的NFT项目。

  • 游戏资产

– 比较有代表性的项目有:Gods Unchained、Axie Infinity、My Crypto Heroes等。

– Gods Unchained是一款卡牌游戏;Axie Infinity是一款虚拟宠物养成游戏;My Crypto Heroes是一款角色扮演类区块链游戏。

  • 虚拟世界

– 比较有代表性的项目有:Decentraland、The Sandbox等。

– 其中Decentraland是完全由NFT构建的虚拟世界,里面的土地、装备等等都是以NFT的形式。

  • 加密艺术品

– 比较有代表性的项目有:Async Art、 SuperRare等。

– 所谓加密艺术品是指艺术品的表现形式本身即为数字化的,如艺术画作等,然后包装成一个NFT从而成为加密资产。数字化使得艺术的表达形式更加丰富,一张画作可以是动态的甚至是可交互的,这是在物理世界无法做到的。

– 其中Async Art 是一个建立在以太坊上的可编程加密艺术平台;SuperRare是一个由区块链技术支持的艺术创作者和收藏者的社交网络平台。

  • 金融

– 比较有代表性的项目有:Aavegotchi、Yinsurance等。

– 其中Aavegotchi是一个融合了DeFi+NFT+游戏+DAO的Gamfi的项目;Yinsurance则使用了NFT来实现保险单。

  • 其他

– 比较有代表性的项目有:ENS等。

– 以太坊域名服务(Ethereum Name Service,简称 ENS)是一个基于以太坊区块链的分布式、开放和可扩展的命名系统,其将域名包装成了一个NFT。

NFT的未来

NFT的技术和应用场景以及生态是在不断发展的。

在ERC-721的规范提出后又涌现了很多新的NFT的规范,如本文提及到ERC-1155。除此之外,还有ERC-1523(保险单NFT)、ERC-998(可组合的NFT)、EIP-1948(可变信息的NFT)、EIP-2981(NFT版税)等。ERC-721和ERC-1155目前在EIP中的状态为final,而其他几个都为draft。当然这些都是以太坊上的NFT规范。

除了以太坊,其他区块链在NFT领域的作用不容忽视。WAX之前一直被称为“NFT之王”,目前NFT总交易前20的项目中,有8个是WAX上的。而目前历史交易总额最高的NBA Top Shot位于一条叫FLOW的区块链,FLOW链是由加密猫团队维护的。

除此之外,在波卡生态的Substrate也有专门的NFT Pallet可以让开发者更快速地开发使用NFT功能的平行链。目前波卡生态也有不少NFT项目都拿到了W3F Grant,如RareLink、Usetech、Perpetual Altruism Ltd、NFTStore、DNFT Protocol等。其中RareLink致力于动态NFT,通过预言机使得NFT对物理世界作出动态响应。

在应用场景上,2020年对NFT来说是加密艺术之年,疫情导致很多艺术家被困家中,在线上结合加密技术进行艺术品创作并出售成为了他们创收的新方式,于是加密艺术开始爆发,成为2020年NFT领域的主要增长引擎。

当然,2020年的DeFi也很“火”,可以说DeFi是“熊熊大火”,NFT是“星星之火”。

2021年,我们可以期待更多NFT的协议创新和应用创新出现。

总结

万维网使用HTML来规范地承载信息,价值互联网也需要一种类似的技术,NFT是目前为止最符合要求的技术,不过FT可以作为NFT的补充与NFT互补。

NFT的规范目前主要有以太坊上的ERC-721、ERC-1155等。NFT可以在实体经济、虚拟资产等领域的资产表示中大展身手,目前已经在多种区块链虚拟资产中已经应用非常广泛。NFT未来会不断发展,除了以太坊以外的其他区块链也大有机会。


作者简介

楼嵩

来自致力于「构建区块链互联网络,打通价值孤岛」的BitXHub团队

研究方向:Web3+