menu-icon
anue logo
鉅樂部鉅亨號鉅亨買幣
search icon
區塊鏈

Solidity極簡入門|第三十一講:ERC20

BlockBeats 律動財經 2022-10-18 22:00

cover image of news article
律動財經圖片

原文標題:《 Solidity 極簡入門:31. ERC20 》 

我在重新學 solidity,可以在最近的一個簡單的白講基礎上,也寫下今天的最新教程,供小大家使用(編程大另一個-另一個),每周更新 13。

所有代碼和教程開源在 github:github.com/AmazingAng/WTFSolidity

這樣,我們將介紹以太坊上的 ERC20 Token標準,並發行自己的測試 Token 。

ERC20

ERC20 是以太坊上的 Token 標準,來自 2015 年 11 月 V 神參與的 EIP20。它實現了 Token 流通的基本邏輯:

帳戶餘額

轉移

授權許可

Token 總流入

Token 任選資訊():名稱,代號,小數暴露 

IERC20

IERC20 是 ERC20 Token 標準的接口契約,規定了 ERC20 Token 需要實現的功能和事件。

事件

IERC20 定義了一個和 2 事件,分別在事件授權和授權時被釋放 TransferApproval



函數

IERC20 定義了 6 一個功能,提供了一個轉移 Token ,並獲得批准,以便其他鏈上的基本使用。

totalSupply() 返回 Token 總流入  



balanceOf() 返回帳戶餘額  





transfer() 轉移  





allowance() 返回授權額度  





approve() 授權  





transferFrom() 授權許可  





實現 ERC20

現在寫一個 ERC20,規定將我們 IERC20 簡單實現的功能。

狀態變量

我們需要通過狀態變量來記錄帳戶餘額,其中授權和金額為 Token 類型,自動生成 balanceOf 一個同名函數,實現規定的,和。。allowancetotalSupplypublicgetterIERC20balanceOf()allowance()totalSupply()namesymboldecimals



函數



構造函數:初始化 Token 名稱、代號。  





transfer() 函數 IERC20 中的 transfer 函數, Token 實現。調用方 amount 幣會增加 Token 數量,接收方此函數相應的狗改土,加入、分紅、抽獎等。  





approve() 函數:IERC20 的 approve 函數, Token 授權邏輯。被授權方 spender 可以控制授權方的 amount 數量的 Token 。  





transferFrom() 功能:IERC20 中的 transferFrom 函數,授權邏輯。被授權方將授權方實現 sender 的 amount 數量的 Token 授權給接收方 recipient。  





mint() 函數:鑄造 Token 函數,不在 IERC20 標準中。這裡為了方便,任何人都可以添加任意數量的 Token ,實際應用中會權限管理,只能 owner 鑄造 Token :  





burn() 函數: Token 函數,不在 IERC20 標準中。  





發行 ERC20 Token

標準 ERC20,在 ETH 鏈上發行現在是我們最簡單的 Token ,我們發行屬於我們的第一個 Token 。

在 Remix 上編譯 ERC20 好的合約中,在部署欄輸入構造函數的參數,name_並且 symbol_都設置好 WTF,然後點擊 transact 鍵進行部署。

部署合約

WTF 我們需要運行 mint() 函數來給自己鑄造一些 Token 。點開 Deployed Contract 中的契約 ERC20,在 mint 函數那一欄輸入並 100 點擊 mint,為自己創造一個這樣的代 100 幣 WTF。

鑄造 Token

利用我們 balanceOf() 函數來查詢帳戶餘額。輸入當前的帳戶,可以查看我們的餘額 100,成功。

餘額查詢



總結

在這一天講,我們學習了以太坊上的 ERC20 標準實現,發行了我們的測試 Token 。2015 年底提出的 ERC20 Token 標準極大地降低了以太坊上發行 Token 的門檻,並開啟了 ICO 在投資時,可以仔細閱讀項目的 Token 契約,有效避免貔貅,增加投資成功率。

原文連結

暢行幣圈交易全攻略,專家駐群實戰交流

▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!

前往鉅亨買幣找交易所優惠






Empty