2021年对于币圈来讲注定是一个值得被载入史册的一年,后疫情时代各国政府为应对经济衰退而出台的一系列宏观调控政策使得数字经济突飞猛进,在货币宽松政策下大量的资金涌入币圈,从比特币到以太坊到宠物币,从DeFi到NFT到metaverse,一个个新的IP被点燃,市场热情高涨,信心爆棚。区块链的发展站上了崭新的高度,群星荟萃之间,NFT当属那颗最闪亮的星。科技赋能业务,技术赋能艺术。Uniswap一双袜子卖16万美元,推特创始人五个单词拍出250万美元,加密艺术家Beeple在佳士得的NFT拍卖作品获得975万美元出价……一夜之间,NFT火爆全网。NFT,这个脱胎于区块链的技术,因其所具有的非同质化特点可以广泛地应用在通证经济之中,在新的历史起点下,将推动知识产权保护,加速资产流通性,重塑资产数字化,重新构建数字艺术体系。“万物皆可NFT”的时代仿佛已经到来。
但是,新事物的产生和发展不是一帆风顺的,而是前进性和曲折性的辩证统一。NFT也是如此,从标准的确立到走向市场,是一个充满矛盾的过程。NFT背后的中心化安全问题一直没有很好的解决方法:如何确定从链上token到链下资产的绑定关系,以及如何保证链下资产的不可篡改性等问题一直为人们所关注。在本文中,我们就来探讨一下这些NFT背后的中心化安全问题。
NFT是什么
Anon-fungibletoken(NFT)isaunitofdatastoredonadigitalledger,calledablockchain,thatcertifiesadigitalassettobeuniqueandthereforenotinterchangeable.?NFTscanbeusedtorepresentitemssuchasphotos,videos,audio,andothertypesofdigitalfiles.Accesstoanycopyoftheoriginalfile,however,isnotrestrictedtothebuyeroftheNFT.Whilecopiesofthesedigitalitemsareavailableforanyonetoobtain,NFTsaretrackedonblockchainstoprovidetheownerwithaproofofownershipthatisseparatefromcopyright.
根据上述来自于维基百科的定义:NFT是一种被称为区块链上的数据单位,每个代币可以代表一个独特的数码资料。由于其不能互换,非同质化代币可以代表数位文件,如画作、声音、影片、游戏中的项目或其他形式的创意作品。同质化代币,即FT,互相可以替代、可接近无限拆分的token。例如,你手里有一个比特币与我手里的一个比特币,本质上没有任何区别,这就是同质化,就是同质化币。而非同质化代币,即NFT,则是唯一的、不可拆分的token,如加密猫、token化的数字门票等。也就相当于带有编号的人民币,这个世界上不会有两张编号一样的人民币,不会有两只一样的猫,也不会有两个完全一样的NFT。
浙江大学蔡亮:区块链价值绝不仅仅是技术层面创新和颠覆:10月13日,在第三届数字中国建设峰会上,浙江大学区块链研究中心常务副主任蔡亮表示,区块链技术可以就构建资产互联、价值互联和信任互联,区块链价值绝不仅仅是技术层面创新和颠覆,分布式的信任机制一定会带来组织管理模式的创新。(人民网)[2020/10/14]
图一、FT和NFT
关于NFT,简单来说就是区块链上资产所有权的通证化。以购买一件艺术品为例,当收藏家购买一件艺术品时,他们会签署一份转让所有权的合同,然后收到一份真品证明,以证明他们拥有这件原作。NFT就是以类似的方式运作,在区块链中创建一个不可复制的数字令牌(因此是“非同质化”),并将自动跟踪底层文件的整个所有权历史和销售价格。任何NFT资产的潜在买家都将确切地看到它是在什么时候创建,什么时候被购买和出售,价格多少以及由谁创建。因此,不仅产生正式所有权的整个过程是去中心化的,所有的交易历史也是透明的,这使估值过程变得更为顺畅。并且从数字商品到物理资产的债权都可以用NFT表示。在未来几年,我们将看到NFT在一些全新的应用场景中使用,而它们都只有在区块链上才能实现。
从技术角度来说,NFT是一个通证的概念,它规定了每一个token都有一个id,因此每个token都是独一无二的,并且token信息是保存在区块链上的,因此可以保证其唯一性、公开性、不可篡改性、安全性。NFT可以起"数字证书"的作用,每一个token对应一份特定资产。除此以外,每一个token还是不可分割的。NFT在通证经济中有着广阔的应用前景,目前来讲,NFT主要被应用于游戏以及数字艺术品领域。以太坊ERC-721协议就是NFT的一种实现标准。
ERC-721协议规定了3种event和9种function用来实现token的转移、授权等操作以及对操作的记录。我们注意到,几乎所有的函数中都有一个叫做_tokenId的参数,该参数即为NFTtoken中用于标识每个token唯一确定的“身份证”。
注意:每个token有且仅有一个id,这也是保证NTF每个token都不一样的唯一凭证。
不同种类的NFT有着不同的实现方式,从NFT与链下世界的信息交互类型可以将NFT分为无绑定型NFT和有绑定型NFT:
声音 | XT联合创始人Weber WOO:泡沫是技术发展的先驱:1月11日,在区块链研习社全国行方舟计划武汉站暨三周年庆典上,在“区块链底层技术创新与虚拟经济”的圆桌论坛上。社交化交易平台XT.com联合创始人Weber WOO表示,投机不一定是好事,但投机在行业发展初期,一定是有非常大的促进作用,没有搏击机会的话,很多人可能不会进入这个行业。股票最初发明地荷兰、互联网泡沫以及区块链行业的泡沫,很多泡沫都是技术发展的先驱,都为技术发展做出了贡献。
从整个区块链行业看,区块链行业市值2000亿美金,比特币占到差不多70%,所以剩下的里面会有非常大的机会,而且区块链是一个全球化的行业,能把业务触达世界范围内很多地方,这也是区块链的魅力所在。[2020/1/11]
注:这里的”绑定“指的是链上的NFTtoken与链下资产的绑定关系。
图二、NFT分类
首先是无绑定型NFT,如图三所示,这一类NFT指的是token的所有信息只存在于链上,没有其他的链下资产和链上的token所关联,例如CryptoKitties,该NFT是一个基于以太坊平台运行的、聚众云吸猫的游戏。用户在游戏中可以养大、买卖并繁育“电子宠物”小猫,每只小猫对应一个NTFtoken,因此每一只猫都是独一无二的。而且每一只猫的所有信息都记载在合约中,因此不需要、也没有链下额外的空间去记载猫的信息。
图三、无绑定型NFT
最近火爆全网的Loot也是以太坊链上的一个无绑定型NFT,Opensea上介绍Loot说:
Loot?is?randomized?adventurer?gear?generated?and?stored?on?chain.?Stats,?images,?and?other?functionality?are?intentionally?omitted?for?others?to?interpret.?Feel?free?to?use?Loot?in?any?way?you?want.
也就是说,LootNFT是随机生成的冒险者装备,并存储在区块链上。统计数字、图像和其他功能被有意省略,供他人解释。通俗一点,Loot是一种黑色背景,只包含文本的链上NFT,任何人都可以参与铸造,将会随机获得一组奇幻冒险家装备,当然是以文本的形式,这些装备具有随机分布的稀缺特征。每个Loot都包含8种装备,因此有8行字,每一行代表着一种装备。总体来说,Loot是一种仅包含文本信息的链上NFT,是的,它只是text文字!
声音 | 浪潮集团执行总裁:区块链既是技术革命 也是生产关系模式变革:12月2日,浪潮集团执行总裁王兴山在接受采访时表示,区块链既是技术革命,也是生产关系模式变革。区块链可构筑安全可信的数字治理与监管服务体系,将物理世界信任关系在虚拟世界重构,加固大数据并支撑AI创新,是以科技创新驱动制度和产业创新的重要技术。随着应用的深入,区块链将在产业链格局重塑以及数字经济与实体经济的融合方面产生较大影响。(中国新闻网)[2019/12/3]
如图四所示,从Opensea上可以看到tokenID为2790的LootNFTtoken的售价为9ETH。
图四、LootNFTtoken信息
其所代表的信息在etherscan上通过合约提供的以下接口可以查看到。
图五、Loot合约接口
由于LootNFT的所有信息都放在了以太坊链上的Loot合约里,因此,Loot是一个无绑定型NFT,其所有的信息都放在链上。
其次是有绑定型NFT,这类NFT的特点是每一个token都和链下的某个资产有着一一对应的关系,从某种角度来讲,这种token可以视为链下资产的”证书“。因此这类NFT多用于艺术品的交易等工作。
如图六所示,这一类的NFT和上面的NFT不同,这种NFT合约内部还存储了和每一个token一一对应的一个外部链接,因此在这种NFT中,一个token的信息不仅仅保存在链上,还有一部分是保存在链下的,因此,对于这种NFT,合约中会保存token对应的外部URI信息。
声音 | 杨东:区块链经济是技术依托下众筹的新形态 而名不副实的“Token”并没有体现这种价值导向:据金融时报报道,中国人民大学大数据区块链与监管科技实验室主任杨东称,区块链经济是技术依托下众筹的新形态,维持这种经济形态才是区块链的真正价值。而名不副实的“Token”并没有体现这种价值导向,反而促生了追求炒作、已经产生极大泡沫的数字货币市场。“Token”这种名不副实的情况在中文语境下被翻译成“代币”后进一步增强,产生了更加恶劣的错误引导,滋生了各种“币”“空气币”。错误理念引导下以炒作套现为主要目标的数字代币市场是不可持续的。[2019/6/13]
图六、有绑定型NFT
如果合约中所记载的外部链接中没有再额外指向其他地方的链接,即一个外部链接中包含全部描述对应token的信息,那么这种token叫做单级绑定NFT,如图六所示。如果合约中所记载的外部链接中还有指向其他地方的外部链接,即多个外部链接嵌套循环,那么对于这种token叫做多级绑定NFT。如图七所示。如果外部链接的嵌套层数是n,我们就叫n级绑定NFT,区块链层处于第0级。
图七、多级绑定NFT
NFT的中心化安全问题
前文我们讲过,得益于区块链技术的去中心化和不可篡改等特性,NFT中每一个token的安全性是可以保证的,即合约中token本身的内容的唯一性,合法性,所属权是不可篡改的。但是在有绑定型NFT合约中不仅仅保存了token本身的内容,如图六所示的NFT合约,这种NFT合约中还保存了和token对应的外部URI的信息,外部URI指向的是token所对应的链下信息。而这种链上和链下交互的机制中就存在我们开头所讲的中心化安全问题。
虽然合约内部的tokenid、externalURI本身的内容是不可篡改的,但是URI所指向的外部页面中的内容却是可以修改的。如图八所示,如果有人修改了外部链接中的内容,仅仅通过链上数据是无法检测到的,在这种情况下,你的NFT资产随时可能被别人掉包。也就是说对于上图六、图七所示的有绑定型NFT合约来讲,是无法保证链上数据和链下资产的一致性的。这就是NFT中如何保证链下资产不可篡改性的中心化安全问题。
图八、对有绑定型NFT的篡改
金色财经独家消息 王彬生谈《人民日报·三问区块链(经济热点)》:区块链引发的变革本质不是技术问题:金色财经独家消息,王彬生教授针对《人民日报·三问区块链(经济热点)》做出回应,王教授表示:“区块链引发的变革本质不是技术问题,今天计算机专家看比特币以太坊会感觉高深吗?区块链技术的关键是信息的传递成本越来越低,未来边际成本接近零,每个人都可以发布信息每个人都可以记录信息,这才是是区块链引发变革的本质。很多人将区块链理解成高深的技术问题,期待杀手级应用,这个方向是错误的,引起社会变革的技术必须足够简单,茅台要是发token,9000亿市值的股票可能不再存在,把买茅台酒的消费行为和股票的金融行为融合了,这还不是杀手级应用吗?”[2018/2/26]
有绑定型NFT分为2种:弱绑定型NFT和强绑定型NFT
弱绑定型NFT即为上述所说:无法保证链上数据和链下资产一致性的NFT,例如图六、图七所示的即为弱绑定型NFT。
强绑定型NFT指的是可以保证链上数据和链下资产的一致性的NFT,也就是说存在某种机制,使得token所对应的链下资产无法被篡改,或者对篡改操作可以溯源的NFT。显然,强绑定型NFT更加安全、可靠,也更符合区块链“去中心化”的设计理念。
为了更好地了解当前的NFT生态,我们选取了截止到9月11号为止以太坊上历史交易量最多的10个符合ERC-721标准的NFT合约来进行分析。遗憾的是,目前大部分有绑定型NFT都是弱绑定的:10个NFT合约中,除了3个无绑定型NFT,其余的7个有绑定型NFT中有6个都是弱绑定的。
案例分析:ArtBlocks
ArtBlocks在上述6个头部弱绑定NFT中比较活跃且较具代表性,以下我们就以ArtBlocks作为案例分析的目标NFT。
ArtBlocks是一个专注于策划可编程生成艺术作品的平台。这些作品通常使用p5.js进行编程,p5.js是一个允许创造性编码的JavaScript库,脚本存储在链上。当铸造新艺术品时,会使用脚本随机生成一个独特的“种子”,从而生成独特的艺术品。据Opensea显示:截止到9月16号为止,ArtBlocks是七天之内成交量最大,历史上成交总金额第二大的NFT。
图九、Opensea平台上NFT7天成交量排名
如图十所示,从Opensea上可以看到tokenID为95000658的ArtBlocksNFTtoken的竞价高达398.5ETH。
图十、天价ArtBlocksNFTtoken
那么这个token背后所代表的是什么呢,我们在etherscan上通过合约接口去查看这个token的信息得到对应的URI为:https://api.artblocks.io/token/95000658。
图十一、ArtBlocks合约接口
如图十二所示,这个外部链接的内容为一个json格式的文件,其定义了艺术品相关的信息,在这个json文件中,给出了指向图片艺术品的URI。我们注意到无论是链上保存的tokenURI还是链下保存的imageURI,这些URI都指向的是ArtBlocks这个项目方私有的站点,并且没有校验机制。简而言之,如果项目方私下更改URI内的内容,那么用户的NFT收藏品就会被掉包。显而易见,作为一个多级弱绑定型NFT,ArtBlocks是存在中心化安全隐患的。
图十二、Art?BlocksNFTtoken的链下信息
此外,我们之前也提到过在弱绑定的NFT中,如果有人获得了你的token所对应的外部链接的控制权,那么他就可以修改这个链接内的内容,从而可以在神不知鬼不觉的情况下掉包你的NFTtoken。虽然弱绑定的NFT从某些方面可以省去一些成本、提高开发效率等,但是这些是以牺牲NFT的安全性为前提的。
区块链的初衷之一便是去中心化加上密码学机制所带来的安全性和不可篡改性。如果说我们抛弃了这些特性,那么存在于区块链之上的NFT又和传统的证书方式有何异处呢?
可以做得更好
目前多数有绑定型的NFT都是弱绑定型NFT,无法有效地保证链上的token和链下的数据完全一致。而强绑定型NFT,采取了特殊的方法来保证token链上链下信息的一致性。强绑定型NFT主要有以下两种实现方法:
第一种是通过以IPFS为代表的基于区块链、分布式网络存储实现强绑定机制的NFT:
图十三、IPFS强绑定型NFT
这种方式通过将文件存放在不可篡改的区块链或者分布式网络存储系统上来保证链上信息和链下信息的一致性,例如IPFS或者是Arweave,由于其文件系统的技术特点可以保证文件一旦上传便不可篡改,因此token信息的一致性不会被破坏。如图十三所示即为使用IPFS的NFT:这种NFT合约中存储了每个token对应的外部IPFSURI地址,由于IPFS文件系统是分布式、点到点、且不可篡改的文件系统,文件一旦上传到IPFS网络中就不可再更改,因此每个token所对应的链下信息也是不可更改的。RARINFT就采取了这种方式。
采用以IPFS为代表的基于区块链、分布式网络存储实现强绑定机制的NFT合约的优点是合约中只需要记载token对应的URI信息,节省了链上存储空间。缺点是区块链或者分布式网络存储系统使用起来比较麻烦,对于普通用户不友好,使用成本较高。
第二种是通过哈希指针实现强绑定机制的NFT:
哈希指针,英文为“HashPointers”,就是一个指向数据存储位置,以及该存储位置里面的数据的哈希值的指针。一个普通的指针可以告诉你数据存储的位置,而哈希指针不但可以告诉你数据存储的位置,还可以给你一种方式,让你验证数据没有被篡改过。
图十四、哈希指针强绑定型NFT
如图十四所示,在使用哈希指针实现强绑定的NFT中,链上合约内部存储了第一层外部链接的哈希指针,第一层外部链接内保存了第二层外部链接的哈希指针......每一级的存储系统都保存了指向下一级的哈希指针,在这种机制下,如果某一层的内容被篡改了,那么一定可以被追查到被篡改的地方。
采用哈希指针方式的强绑定型NFT合约的优点是易于使用,外部文件的存储不仅仅局限于区块链或者分布式网络存储系统,还可以使用http、https等万维网协议。缺点是在每一级的存储结构中都要存储下一级链接的哈希指针,较为浪费空间,尤其在寸土寸金的区块链上,多存一部分的内容的开销不容小觑。
从安全角度来讲,我们建议NFT合约的设计规范应符合以下条件之一:
1.采用非绑定式NFT,即全部数据都放在链上
2.采用类似基于IPFS机制实现的的强绑定NFT
3.采用基于哈希指针实现的强绑定NFT
总结
本文分析了以太坊上的交易量最多的10个NFT合约,这其中大多数合约都是弱绑定型NFT合约,弱绑定合约存在不容忽视的中心化安全问题,从某种程度上讲,弱绑定型合约就像是一个披着区块链外皮的中心化证书系统,而中心化的权力机构拥有对NTF的绝对控制权,在这种情况下,你口袋中的NFT不是属于你自己的,只是别人暂时赋予你它的使用权限,而且随时可收回,这在去中心化的世界中不可不谓是一种倒行逆施。
安全工作无小事,天堂地狱一念间。在去中心化的世界中技术应该帮助建立起一个公平公正的框架,而不是那种披着去中心化外皮的传统中心化体系。目前,NFT的发展方兴未艾,一系列的标准有待确立,旧的世界需要被打破,新的秩序急需建立。我们有理由相信,一个真正的去中心化的NFT世界终会到来。
附录
本文所分析的10个以太坊上的NFT合约
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。