基于區(qū)塊鏈的差異性數(shù)字資產(chǎn)NFT介紹
去年 11 月,Crypokitties 的發(fā)布給加密貨幣的世界帶來了風(fēng)暴,有些加密貓的價格甚至漲到了 30 萬美元,以太坊網(wǎng)絡(luò)擁堵不堪,平均貢獻(xiàn)了當(dāng)時以太坊網(wǎng)絡(luò)30%的交易額。當(dāng) CryptokitTIes 的用戶活躍度和去年年底的高峰期相比急劇下降之時,市場上出現(xiàn)了很多數(shù)字加密收藏品的變種。數(shù)字加密收藏品增長的背后是不可替代代幣出現(xiàn)之后釋放出來的助力。
什么是NFT
NFT(Non-Fungible Token) 定義了一種生態(tài)中不可分割的、具有唯一性的代幣交互和流通的接口規(guī)范。
在區(qū)塊鏈上,數(shù)字加密貨幣分為原生幣和代幣兩大類。前者如Bitcoin、Qtum等,擁有自己的主鏈,使用鏈上的交易來維護(hù)賬本數(shù)據(jù);后者如BOT、INK等,依附于現(xiàn)有的區(qū)塊鏈,使用智能合約來進(jìn)行賬本的記錄。代幣之中又可分為同質(zhì)化和非同質(zhì)化兩種。
同質(zhì)化代幣,即FT(Fungible Token),以ERC20和QRC20為基本標(biāo)準(zhǔn),是互相可以替代、可接近無限拆分的token。而非同質(zhì)化代幣,即NFT,則是唯一的、不可拆分的token,如加密貓、token化的數(shù)字門票等。
FT的特性使其可以用來表示現(xiàn)實世界中各種具有可替代性的事物,如貨幣、積分、股票等。這些事物需要可以拆分,然后在用戶之間進(jìn)行交換。在區(qū)塊鏈上,F(xiàn)T被廣泛應(yīng)用于發(fā)行新的數(shù)字貨幣。這些數(shù)字貨幣通常與公司的股權(quán)或是產(chǎn)品的使用權(quán)限進(jìn)行掛鉤,吸引用戶的購買或炒作。
如今市場逐漸回歸理性,也使我們開始認(rèn)識到FT的局限性:現(xiàn)實生活中真正具有價值的事物是不可替代的,如一件商品、一份合同、一項資質(zhì)等,這些具有唯一性的資產(chǎn)是無法用FT進(jìn)行錨定的。
相較于FT,NFT 的關(guān)鍵創(chuàng)新之處在于提供了一種標(biāo)記原生數(shù)字資產(chǎn)所有權(quán)(即存在于數(shù)字世界,或發(fā)源于數(shù)字世界的資產(chǎn))的方法,且該所有權(quán)可以存在于中心化服務(wù)或中心化庫之外。NFT 的所有權(quán)并不阻止其他人視察它或閱讀它,NFT 并不是捕獲信息然后把它藏起來,只是捕捉信息然后發(fā)現(xiàn)該信息與鏈上所有其它信息的關(guān)系和價值。
同時,NFT由于其非同質(zhì)化、不可拆分的特性,使得它可以錨定現(xiàn)實世界中商品的概念,例如通證化的門票、一瓶珍貴的紅酒、獨特設(shè)計的珠寶等等。NFT 使我們能夠?qū)⑷我庥袃r值的事物通證化,并追溯該信息的所有權(quán),這樣就實現(xiàn)了信息與價值的交匯。
NFT的目前應(yīng)用場景
NTF是基于區(qū)塊鏈的差異性數(shù)字資產(chǎn),兼容NTF的區(qū)塊鏈就像一個能夠記錄任何商品的數(shù)據(jù)庫。NFT理論上可以將現(xiàn)實中具有非同質(zhì)化特性的事物都錨定起來,實現(xiàn)將現(xiàn)實世界通證化,形成一個價值互聯(lián)、信息互通的數(shù)字資產(chǎn)世界。
目前不可替代代幣的勢力可以分為四組:
不可替代代幣發(fā)布者
不可替代代幣市場
不可替代代幣基礎(chǔ)設(shè)施
針對不可替代代幣的各類資源
而落到具體的應(yīng)用場景中NFT分為以下幾種[1]:
收藏品
我們上面也提到過基于NFT設(shè)計的加密收藏品,那就是CryptoKitTIes,同時加密收藏品還有很多別的擴(kuò)展方向,比如藝術(shù)品收藏。我們可以將需要進(jìn)行存證的合同、版權(quán)、專利等信息,以NTF的形式保存在區(qū)塊鏈上,便于后續(xù)的更新、流轉(zhuǎn)、交易等。當(dāng)它的所有者想出售時,只需要簡單地出具這枚NFT的標(biāo)記信息來聲明作品的真實性和自己對該作品的所有權(quán)即可,同時這種認(rèn)證是數(shù)字化可溯源的,因為藝術(shù)資產(chǎn)的所有權(quán)記錄在區(qū)塊鏈上,在保證交易合法性的同時也可以防止藝術(shù)品的偽造和欺詐。
游戲道具
NFT也正在徹底改變游戲世界。通常,游戲中的角色會獲得類似武器、衣服、房產(chǎn)等可交易的物品,為每個物品都創(chuàng)建一個NFT可以使它們能夠與游戲中的積分代幣甚至現(xiàn)實世界的現(xiàn)金進(jìn)行交易,這就形成了虛擬商品的在線數(shù)字經(jīng)濟(jì)體系。這些NFT存儲在區(qū)塊鏈上,它們的信息、歸屬、以及所有交易記錄都將透明公開,且不可銷毀不可篡改。
電子門票
如果我有一張巨星演唱會的門票而你有一張籃球電子門票,它們是同樣類型的物品但是代表的價值卻完全不同。因具備不可篡改、可追溯特征,區(qū)塊鏈與存證有著天然的結(jié)合點,存證也因此成為區(qū)塊鏈應(yīng)用的典型場景之一。區(qū)塊鏈存證適用于所有需要進(jìn)行存證、核證、取證的業(yè)務(wù)場景,尤其是需要解決多方信任問題或獲取司法監(jiān)管許可的情況。同時門票數(shù)字化后的身份驗證還能防止假票和黃牛票,因此電子票務(wù)是NFT可以改造的一個行業(yè)。
身份認(rèn)證
我們可以將NFT應(yīng)用到身份認(rèn)證中來實現(xiàn)個人行為的全紀(jì)錄。比如,獲得一個不可交易的NFT來作為出生證明、護(hù)照和認(rèn)證個人駕照等等,盡管該NFT不可交易,但是通過權(quán)限控制可以實現(xiàn)身份的交互驗證。我們在招聘時可以驗證一個人的身份NFT來查詢其大學(xué)文憑,在看病時申請查看醫(yī)生的身份信息來認(rèn)證其資質(zhì)等。身份認(rèn)證將人token化,將所有屬性和行為歷史都記錄在案。
電子存證
使用NFT,將現(xiàn)實世界中的合同、文書等信息進(jìn)行鏈上去中心化存儲,防止偽造且便于追溯。同時,借助于電子簽名、證書等技術(shù),對文件的真實性和有效性進(jìn)行證明。電子存證可有效地實現(xiàn)知識產(chǎn)權(quán)、版權(quán)、著作權(quán)等價值的電子化,而NFT賦予的交易特性又可以使得這些價值直接在區(qū)塊鏈上進(jìn)行交易,方便了價值的流通。
NFT的實現(xiàn)
自從數(shù)字貨幣出現(xiàn)以來,將現(xiàn)實世界token化是整個行業(yè)一直在做的努力。2013 年風(fēng)靡一時的彩色幣是最早想要給數(shù)字資產(chǎn)賦予獨特特性的嘗試之一。彩色幣是比特幣的附加產(chǎn)物, 或者在大多數(shù)案例里,是比特幣可被分割的最小份額,也叫給satoshis「加了顏色」,以代表現(xiàn)實世界里的資產(chǎn),例如一筆房子、股票、債券、商品的交易。而合約幣則進(jìn)一步地允許用戶在區(qū)塊鏈基礎(chǔ)上創(chuàng)造他們自己的實際資產(chǎn)?;诓豢商娲鷰臢FT 標(biāo)準(zhǔn)的數(shù)字加密收藏品正是建立于這一基礎(chǔ)上,恰逢其時地繼續(xù)肩負(fù)彩色幣最初的使命,將現(xiàn)實資產(chǎn)與數(shù)字貨幣鏈接起來,NFT的實現(xiàn)也是現(xiàn)實世界token化的進(jìn)程之一。
ERC721標(biāo)準(zhǔn)
NFT的一個最受關(guān)注也是現(xiàn)今最流行、認(rèn)可度最高的實現(xiàn)即ERC721標(biāo)準(zhǔn)協(xié)議[2]。ERC721本身是一個EIP(Ethereum Improvement Proposals),是一個由開發(fā)人員提出的以太坊改進(jìn)方案,經(jīng)以太坊委員會通過后成為了ERC(Ethereum Request for Comment),即Ethereum意見征求稿中的一員。ERC721 官方簡介是:A standard interface for non-fungible tokens, also known as deeds,即NFT。
ERC721作為一個合約標(biāo)準(zhǔn),提供了在實現(xiàn)ERC721代幣時必須要遵守的協(xié)議,要求每個ERC721標(biāo)準(zhǔn)合約需要實現(xiàn)ERC721及ERC165接口,接口定義如下。除了標(biāo)準(zhǔn)接口之外,還有一些可擴(kuò)展接口,例如ERC721Metadata系列接口定義了ERC721的一些基本信息,ERC721Enumerable系列定義了枚舉接口,這些都在標(biāo)準(zhǔn)中有詳細(xì)說明,不再贅述。
上述的所有接口構(gòu)成了ERC721的完整標(biāo)準(zhǔn)接口和可擴(kuò)展接口。需要注意的是,真正使用ERC721的時候,必須其中實現(xiàn)一些額外的功能和接口,例如_mint鑄幣操作、_burn銷毀操作、addTokenTo為給定地址添加tokenId等,這些方法共同定義和實現(xiàn)了ERC721代幣協(xié)議,我們可以基于此將ERC271代幣應(yīng)用于很多場景中,通過繼承其主要token合約來開發(fā)遵循ERC721協(xié)議的代幣,并自由的添加相應(yīng)的業(yè)務(wù)邏輯來豐富應(yīng)用。
其他關(guān)于NFT的ERC標(biāo)準(zhǔn)
由于NFT的不可替代性和加密貓引發(fā)的數(shù)字收藏品的火爆,基于NFT的標(biāo)準(zhǔn)協(xié)議正在一步步地更新和迭代中。例如ERC875 [3]、ERC998 [4]等,雖然目前都在draft階段,但其提出的觀點是非常值得思考的。其中ERC875比較受到我們的關(guān)注,因為NFT本身是對商品的定義,而商品一個重要的屬性就是交易。ERC875正是在ERC721的基礎(chǔ)上加入了交易功能,允許用戶使用區(qū)塊鏈上的原生幣購買NFT資產(chǎn)。
這里我們簡單分析一下ERC875合約中trade交易實現(xiàn)流程:
在token擁有者owner在想要賣出token時(可一次賣出多個token),owner用自己的秘鑰簽名售賣總額、成交有效期限、售賣的tokenId列表和合約地址并公布;
買家在獲取到該簽名信息后,通過給定的一些APP幫助,從簽名恢復(fù)出tokenId列表和價格信息,以及代碼中的V、R、S簽名參數(shù),將tokenId索引、V、R、S作為trade輸入,與售賣總額相同價格的代幣(msg.value)共同構(gòu)造一筆交易發(fā)送到合約地址調(diào)用trade接口;
trade函數(shù)中調(diào)用encodeMessage函數(shù)將msg.value和tokenId列表等信息一同編碼為message,調(diào)用ecrecover函數(shù)驗證傳入的簽名信息V、R、S正確性,并求出賣家的地址;
將從賣家地址下登記的資產(chǎn)列表中找出本次售賣對應(yīng)的每件商品的TokenID,并轉(zhuǎn)移登記到買家地址下的資產(chǎn)列表中,買家成為這批物品的新主人,對于同一份售賣簽名信息,可以同時有多個買家,這時候遵循先買先得的原則。
總結(jié)
通過對NFT的調(diào)研和分析,我們看到了區(qū)塊鏈未來的一個發(fā)展方向,即用于標(biāo)記虛擬或現(xiàn)實世界中的商品,從而實現(xiàn)商品的信息記錄、流轉(zhuǎn)、交易、追溯等功能。這大大拓寬了區(qū)塊鏈的應(yīng)用前景,為區(qū)塊鏈技術(shù)走向大眾提供了基礎(chǔ)。