什么是ERC20標準
目前,談論到最常見、使用最廣泛的Token標準,ERC20標準可謂是當仁不讓。那什么是ERC20標準呢?還有什么其他標準嗎?
ERC(Etherum Request for Comments)表示以太坊開發(fā)者提交的協(xié)議提案,而20表示的是議案的編號。
ERC20表示的是一個合約接口標準,設計初衷是為以太坊中的Token合約提供一套常見的功能和接口,任何基于ERC20標準的Token都能立即兼容以太坊錢包,同時支持共享和交換。
ERC20誕生于2015年,到2017年9月被正式標準化,ERC20標準定義了Token的名字、符號、小數(shù)點后的位數(shù)、發(fā)行總量、轉(zhuǎn)移方式以及Owner賬戶余額等內(nèi)容。
截至到2019年3月初,在以太坊中基于ERC20發(fā)行的合約數(shù)量已超過十七萬。
基于ERC20發(fā)行的Token具有可替代性,故無法做到唯一性,只能用來代表可以替代的事物,比如證券,積分等,而不能代表具有唯一屬性的權(quán)益,比如任何一個物理商品,各種IP等。
與ERC20不同的是,基于ERC721發(fā)行的Token是獨一無二的。據(jù)以太坊區(qū)塊瀏覽器顯示,截至到2019年3月初,基于ERC721發(fā)行的合約數(shù)量已經(jīng)逾千。
以太坊上的加密貓游戲(CryptoKitties)中的貓就是基于ERC721發(fā)行的。在這游戲里,每只貓的“基因”都不一樣,每只貓都具有唯一獨特的編號,這大大提高了收藏價值,像古董一樣,因為稀有而珍貴。
ERC20標準是最早發(fā)布的Token標準,隨著時間的推移,一些缺陷和漏洞逐漸暴露,比如用戶不小心將基于ERC20生成的Token發(fā)送到一個智能合約的地址時,該交易無法回滾。
為了解決這個問題,社區(qū)成員提出了ERC223標準。ERC223會檢查目的地址是賬戶地址還是合約地址,若為合約地址,則返回錯誤,并調(diào)用相應的函數(shù)轉(zhuǎn)回Token。
市場日益激烈的競爭和用戶日趨全面的需求進一步促進了Token標準的發(fā)展,一時之間,出現(xiàn)了很多比ERC20更成熟的標準。
號稱“新版ERC20”的ERC827,該標準不僅兼容ERC20,還允許第三方在不需要訪問私鑰的前提下進行交易的驗證;ERC884除了實現(xiàn)ERC20的功能,還要求對持有者進行識別并將其列入白名單作為Token的組成部分。