ERC20學(xué)習(xí)筆記
ERC20是以太坊發(fā)行TOKEN的標(biāo)準(zhǔn)接口,根據(jù)eip-20-token-standard.md顯示,ERC20的第一行代碼是在2015-11-19產(chǎn)生。該標(biāo)準(zhǔn)也被認(rèn)為是智能合約的工業(yè)標(biāo)準(zhǔn),讓人們?cè)谝蕴话l(fā)行智能合約變得簡(jiǎn)單。根據(jù)簡(jiǎn)書(https://www.jianshu.com/p/a5158fbfaeb9)2018年01月16日的文章顯示以太坊上有24351個(gè)代幣的智能合約,而截至到今天(2018年2月13日)顯示當(dāng)前有37929個(gè)智能合約(https://etherscan.io/tokens),每天以500多個(gè)的增長(zhǎng)速度在快速增加。
ERC20標(biāo)準(zhǔn)有9個(gè)方法和2個(gè)事件組成,9個(gè)方法涉及到代幣標(biāo)識(shí)、發(fā)行、交易、余額查詢等幾類操作,具體方法如下:name方法獲得代幣的名字,symbol方法獲得代幣的符號(hào)、decimals設(shè)置代幣支持的小數(shù)點(diǎn)位數(shù)、totalSupply設(shè)置發(fā)行代幣的總量、balanceOf獲取某一地址代幣的余額、transfer將token轉(zhuǎn)給其他地址的人、approve批準(zhǔn)將自己的代幣轉(zhuǎn)給別人、allowance確定某一地址能提取token的個(gè)數(shù)。2個(gè)事件(Events)分別為Transfer事件和Approval事件。Transfer事件是將自己的token轉(zhuǎn)移給另外一個(gè)人時(shí),調(diào)用transfer方法的時(shí)候,觸發(fā)Transfer事件。Approval事件是在批準(zhǔn)另外一個(gè)張華將自己的token轉(zhuǎn)移出去時(shí),既調(diào)用approve函數(shù)成功時(shí),觸發(fā)Approval事件。
ERC20標(biāo)準(zhǔn)的建立極大的推動(dòng)了區(qū)塊鏈技術(shù)的發(fā)展,現(xiàn)在市面上也出現(xiàn)了一些可視化工具將發(fā)布智能合約變得更加簡(jiǎn)單。在鐘曉宏的簡(jiǎn)書(https://www.jianshu.com/p/e6ca8122a3a3)中有一篇文章中指導(dǎo)如何一步步發(fā)布自己的token,在這篇文章中通過MetaMask插件將相關(guān)工具將發(fā)布一個(gè)簡(jiǎn)單的智能合約變得更加簡(jiǎn)單,通過簡(jiǎn)單學(xué)習(xí)就可以實(shí)現(xiàn)人人都能發(fā)布自己的智能合約。
_________________________________________________________________________
參考:
1.https://github.com/ethereum/EIPs/commit/cea1db05a3444870132ec3cb7dd78a244cba1805#diff-c846f31381e26d8beeeae24afcdf4e3eL34
2. https://www.jianshu.com/p/a5158fbfaeb9
3. https://github.com/Giveth/minime/blob/master/contracts/MiniMeToken.sol#L501
4. http://themerkle.com/what-is-the-erc20-ethereum-token-standard/
5. https://github.com/ethereum/wiki/wiki/Standardized_Contract_APIs
6. https://www.jianshu.com/p/e6ca8122a3a3
想了解更多?現(xiàn)在就開始免費(fèi)體驗(yàn)