如今許多人都在炒區(qū)塊鏈,除了以太貓以外,還有以下幾款游戲估計會成為
區(qū)塊鏈殺手級應(yīng)用。
這一陣,Ethereum網(wǎng)絡(luò)突然變的特別擁堵,原因是興起了一款以太坊養(yǎng)貓的Dapp
游戲:超級可愛的貓形象,再加上配種,繁殖和拍賣等豐富的玩法,風(fēng)靡了幣?
圈; 一時間幣圈大大小小的人都在擼貓,以太坊網(wǎng)絡(luò)不堪負(fù)荷;后續(xù)又出款了
很多的類似的游戲,網(wǎng)易招財貓、百度萊茨狗和加密魚等等,不過玩法套路都是
差不多。
這款游戲的核心是以太坊的智能合約,也是第一款基于智能合約的游戲,同時一
種新的Token協(xié)議ERC721也進(jìn)入了幣圈群眾的視野。
以太坊養(yǎng)貓的核心是智能合約,ERC是以太坊代幣標(biāo)準(zhǔn)的縮寫。
常見ERC標(biāo)準(zhǔn)有ERC20、 ERC721和ERC825:
ERC20是標(biāo)準(zhǔn)Token接口,這個規(guī)定了Token的基本功能, 方便第三
方使用;在一些開源組織的工作推動下,ERC20的標(biāo)準(zhǔn)已經(jīng)簡單到能5分
鐘發(fā)行一個ERC20的Token;
ERC721是針對不可置換Token的智能合約標(biāo)準(zhǔn)接口,(non-fungile
tokens)不可置換Token簡稱NFTs,操作標(biāo)準(zhǔn)API的實現(xiàn)方法;以太坊養(yǎng)
貓中的貓都是ERC721的Token,每只貓都是擁有不一樣基因的貓, 歸根到
底也就是擁有不一樣屬性的Token,貓的編號其實也就是Token的編號,
貓的基因也就是Token的屬性;擼貓歸根到底其實是改變ERC721標(biāo)準(zhǔn)下
的Token屬性,從而達(dá)到每個貓都具有不一樣的基因。
下面這張有美國第三十九任總統(tǒng)詹姆斯·厄爾·卡特簽名的1美元鈔票是非標(biāo)通
證ERC-721還是標(biāo)準(zhǔn)通證ERC-20?
這是一個從標(biāo)準(zhǔn)轉(zhuǎn)變?yōu)榉菢?biāo)準(zhǔn)通證的經(jīng)典例子:一個ERC-20的標(biāo)準(zhǔn)通證,經(jīng)過總
統(tǒng)簽名后它成了獨一無二具備收藏屬性的ERC-721的非標(biāo)準(zhǔn)通證。
1.ERC721 是什么?
和 ERC20 一樣,ERC721 也是一個由以太坊提出的標(biāo)準(zhǔn),但相對于 ERC20,
ERC721還很年輕;ERC721 是由加密貓背后的公司Axiom Zen的技術(shù)總監(jiān) Dieter
Shirley 在 2017年9月提出:
ERC721簡要解釋是“Non-Fungible Tokens”,翻譯為非互換性資產(chǎn),不可
替、非同質(zhì)的Token;英文簡寫為”NFTS”,簡單理解為每個Token都是獨一
無二的。ERC 721標(biāo)準(zhǔn)下每份資產(chǎn)都擁有一個uint 256類型的獨立編號。
數(shù)字加密貨幣大致可以分為
?
兩大類:
前者如比特幣(Bitcoin ,BTC)、以太坊等,擁有自己的區(qū)塊鏈;后者如泰達(dá)
幣(Tether ,USDT)、波場幣(Tron ,TRX)等,依附于現(xiàn)有的區(qū)塊鏈。
市場上流通的基于以太坊的代幣大都遵從ERC 20標(biāo)準(zhǔn);與ERC 20標(biāo)準(zhǔn)不同的是,
ERC 721標(biāo)準(zhǔn)可以衡量不可替代物品的價值,表明物品的歸屬權(quán),用于管理
NFTS。
2.ERC-721定義的一種Ethereum接口規(guī)范
在技術(shù)上ERC721定義了一種Ethereum生態(tài)中不可分割的、具有唯一性的token交
互、流通的接口規(guī)范,該規(guī)范本質(zhì)上是Ethereum上的智能合約,依托于EVM運
行,具有以下特性:
在該合約范圍內(nèi),唯一的token_id;
1. token_id只能被一個owner(i.e. eth address) 所擁有。
2. 一個owner可以擁有多個NFTs,它的balance只記數(shù)量;有另外的存儲
列表記錄token_id – owner_addr的對應(yīng)關(guān)系。
3. NFT有approve, transfer, takeOwnerShip等接口方法適于流通的功
能;即所屬權(quán)轉(zhuǎn)移,這些方法是在ERC721標(biāo)準(zhǔn)中定義的。
4. 定義一個multiaddr型式的復(fù)合地址來索引該token對應(yīng)的元數(shù)據(jù)(名
稱、圖片、各種信息);通過tokenMetadata方法,獲取這個
multiaddr (形如url的字符串),來獲取token元數(shù)據(jù)。
5. ERC721與ERC20的token有兼容的地方,即token name, token
symbol;這是便于ERC20的錢包可以顯示ERC721的token。
6. ERC-721在我們的生活中有廣泛的應(yīng)用場景。
如好友送你的生日禮物、自己領(lǐng)養(yǎng)的小狗、偶像的簽名專輯等。
目前,ERC721的典型用例有以太貓,以太貓(Cryptokitties)帶火了ERC-721
token合約, 12月流行的以太貓竟然造成了以太坊的擁堵。ERC721以外的特性:
固定時間產(chǎn)生一只創(chuàng)世貓,兩貓可以交配,根據(jù)定義的基因數(shù)據(jù)、遺傳算法獲取
后代貓的特性基因。
另一款Decentraland也是一游戲,通過在虛擬的領(lǐng)地設(shè)計、建設(shè),創(chuàng)造特殊性的
領(lǐng)地,然后通過交易提現(xiàn)價值;ERC721以外的特性:可以自己搭配,感覺類似于
自己創(chuàng)造“基因”,支持3D展示。
Cryptokitties是由在溫哥華和舊金山的一個叫Axiom Zen設(shè)計工作室所打造的一
款基于以太坊的DAPP虛擬養(yǎng)貓游戲,于2017年11月28日登錄以太坊區(qū)塊鏈。
該工作室背后的技術(shù)總監(jiān)是Dieter Shirley,正是提出ERC 721標(biāo)準(zhǔn)的人,因此
Cryptokitties也是首個實現(xiàn)了 ERC 721 標(biāo)準(zhǔn)的DAPP,成為了 ERC 721 標(biāo)準(zhǔn)的
代言人。
Cryptokitties包括了貓的生育、收集、購買、銷售等,可以通過以太坊交易或
繁殖獲得一只貓,每一只貓都是以太坊上的一個數(shù)字資產(chǎn),就好像比特幣是比特
幣區(qū)塊鏈上的一個數(shù)字資產(chǎn)一樣,沒有區(qū)別。
此外,每一只貓,都對應(yīng)著一個以太坊上的一個智能合約,每一次繁殖、每一個
禮物、每一次買賣,都是一個智能合約。可以說,加密貓完美、簡單的詮釋了數(shù)
字資產(chǎn)和智能合約,每只貓都是完全個人擁有,沒法復(fù)制,沒法帶走,沒法銷
毀。
以太坊養(yǎng)貓的Dapp游戲的核心:“是第一款基于一種新的Token協(xié)議,ERC721以
太坊智能合約產(chǎn)生的區(qū)塊鏈應(yīng)用”。
在github 里cryptokitties-bounty程序代碼提到,用 ERC-721 token 合約來
定義每只以太貓:
以太貓是非同質(zhì)代幣,不可分割且獨一無二。
1.ERC20和ERC721的對比:
2.ERC20和ERC721的區(qū)別:
ERC20 可以方便開發(fā)者為自己的產(chǎn)品構(gòu)建金融功能,但不同用戶錢包中的 ERC20
代幣,只有數(shù)量的不同,代幣之間是沒有任何區(qū)別的。
正如在現(xiàn)實生活中,我們和馬云用的都是一樣的人民幣,不同的只是金額和一般
沒人關(guān)心的紙幣序號,ERC20 標(biāo)準(zhǔn)并不關(guān)心代幣之間的區(qū)別,只關(guān)心用戶賬號中
的余額。因此 ERC20 代幣也被稱作“可替換代幣”,適用于體現(xiàn)可替換資源的
價值,例如網(wǎng)站的積分、優(yōu)惠券等。
但 ERC20 將以太坊限制在了可替換資源的范疇中,我們使用這些可替代資源
時,不關(guān)心這些資源從哪里來的,最后到哪里去;除此之外,我們還有很多不可
替換的資源,比如偶像簽名的專輯、好基友送你的稀有飾品,蘋果一代原型機
等。
人類會因為不同的原因給物品賦予額外的無法替代的價值,這些價值是 ERC20
代幣無法體現(xiàn)的。
為了衡量這些無法替代物品的價值,表明物品的歸屬權(quán),開發(fā)者們制定了
ERC721 標(biāo)準(zhǔn),用于發(fā)行不可替代代幣(non-fungible token,NFT)。
“以太貓”為例:每只以太貓擁有獨一無二的基因,每只小貓和繁衍的后代也都
是獨一無二的;從原理上來看,每只以太貓在區(qū)塊鏈平臺上都是一條獨一無二的
代碼,因此沒有兩只外表和特性完全相同的小貓;像以太貓這樣的不可替代代
幣,會具有某種獨特的收藏價值,正如加密貓官網(wǎng)所說:
“加密貓不是一個加密貨幣,它們是加密收藏品”。
總之,ERC721的Token具有收藏價值的屬性;ERC20是標(biāo)準(zhǔn)Token接口,ERC20的
Token可以無限細(xì)分為10^18份,而ERC721的Token最小的單位為1,無法再分割。
這么說吧:
ERC20代幣是加密貨幣,可被類比是美元或英鎊;
ERC721代幣是加密收藏品,可被類比為棒球卡或名家字畫。
3.ERC20和ERC721的未來
以太坊的 ERC20 標(biāo)準(zhǔn),讓開發(fā)者能夠發(fā)行自己應(yīng)用中的專屬代幣,方便用戶使
用應(yīng)用中的服務(wù);ERC721 標(biāo)準(zhǔn),則會把以太坊帶入加密收藏品的世界,虛擬物
品如加密貓、游戲裝備等,會和真實世界的收藏品一樣具有可觀的收藏價值.
而更大的想象空間,是在產(chǎn)權(quán)領(lǐng)域,像 Decentraland 這樣的以太坊應(yīng)用,已經(jīng)
開始構(gòu)建虛擬世界生活圈,讓人們能夠互相交換“非替代資產(chǎn)”;還有越來越多
的創(chuàng)業(yè)公司,在努力嘗試使用 ERC721 代幣確定現(xiàn)實生活中的房屋、土地、股票
債券等所有權(quán),利用 ERC721 完成對這些資產(chǎn)的追蹤、交易、審計,最終形成一
個靈活可信的產(chǎn)權(quán)市場。
ERC721 標(biāo)準(zhǔn)還在快速迭代中,最近就有開發(fā)者提議將 ERC721 中代幣(token)
用其他術(shù)語如“契約(deed)”進(jìn)行表述,以強調(diào)該標(biāo)準(zhǔn)主要改進(jìn)所有權(quán)問題;
圍繞 ERC721 的生態(tài)環(huán)境也在快速完善,很多智能合約第三方如 OpenZeppelin
也提供了對 ERC721的支持,讓開發(fā)者可以輕松地在自己的產(chǎn)品中添加不可替換
代幣;來自 0x 交易所的工程師已經(jīng)計劃支持 ERC721 代幣,這樣ERC721 代幣
將能夠和 ERC20 自由無縫互換。
以太貓是 ERC721 標(biāo)準(zhǔn)的第一次應(yīng)用,它的火爆顯示了人們對于虛擬收藏品的認(rèn)
可,以太貓因此也成為了 ERC721 標(biāo)準(zhǔn)的代言人。當(dāng)以太坊平臺應(yīng)用通過
ERC721 標(biāo)準(zhǔn)殺入產(chǎn)權(quán)市場時,恐怕傳統(tǒng)產(chǎn)權(quán)市場的玩家不會想到他們是被一只
以太貓吃掉。
開宗明義,將物理和虛擬世界資產(chǎn)映射到區(qū)塊鏈?zhǔn)澜绲?、基于類ERC-721標(biāo)準(zhǔn)的
應(yīng)用和基礎(chǔ)協(xié)議將會是next big thing。
1.以太坊平臺新的殺手級應(yīng)用
從 ERC721 標(biāo)準(zhǔn)草案中可以看到,兼容 ERC20 的方法有 4 個:name,
symbol,totalSupply,balanceOf;添加的新方法為:ownerOf,
takeOwnership;ERC721 還重寫了 approve 和 transfer,這些改進(jìn)讓智能合約
支持記錄及移交代幣所有權(quán)。
記錄所有權(quán)其實很簡單,在 ERC20 中我們只需要知道一個賬戶地址上有多少幣
就行了。在 ERC721 中我們還需要再單獨記錄每個代幣的 id;移交所有權(quán)和
ERC20 中交易代幣過程類似,可以由一個用戶發(fā)起移交(對應(yīng)方法為
approve),另一個用戶接受移交(對應(yīng)方法為 takeOwnership),也可以直接用
transfer 方法移交。
這些看似簡單地修改,極有可能帶來以太坊平臺新的殺手級應(yīng)用。
2.按照ERC721開發(fā)的以太貓,這個區(qū)塊鏈游戲非“去中心化”
以太貓應(yīng)該是以太坊迄今為止最成熟,最成功的Dapp,它的開發(fā)者在 ERC20 代
幣的基礎(chǔ)上,實現(xiàn)了 ERC721 標(biāo)準(zhǔn),通過智能合約記錄一個代幣的所有權(quán),然后
在新的不可置換代幣基礎(chǔ)上,添加貓的毛色、眼色、斑紋等屬性,最后將加密貓
顯示在網(wǎng)頁上。它在很短的時間內(nèi)造成了以太坊的交易擁堵,單個貓咪的成交價
格飆升到了80萬人民幣。
這個加密貓的Dapp不是我們一般了解的通過以太坊ERC20開發(fā)的,而是按照
ERC721開發(fā)的以太貓的程序代碼大約兩千行,其中設(shè)計了三個關(guān)鍵角色CEO、
COO、CFO,他們擁有對程序生殺予奪的權(quán)利,可以隨時暫停整個合約。