🍁 金秋送福,大獎轉不停!Gate 廣場第 1️⃣ 3️⃣ 期秋季成長值抽獎大狂歡開啓!
總獎池超 $15,000+,iPhone 17 Pro Max、Gate 精美週邊、大額合約體驗券等你來抽!
立即抽獎 👉 https://www.gate.com/activities/pointprize/?now_period=13&refUid=13129053
💡 如何攢成長值,解鎖更多抽獎機會?
1️⃣ 進入【廣場】,點頭像旁標識進入【社區中心】
2️⃣ 完成發帖、評論、點讚、社群發言等日常任務,成長值拿不停
100% 必中,手氣再差也不虧,手氣爆棚就能抱走大獎,趕緊試試手氣!
詳情: https://www.gate.com/announcements/article/47381
#成长值抽奖赢iPhone17和精美周边# #BONK# #BTC# #ETH# #GT#
ERC-20代幣深入解析
前言
以太坊作為一個去中心化應用程序(DApp)的開源平台,於2014年由Vitalik Buterin創立。Buterin建立這條全新區塊鏈的動機,很大程度上是因為比特幣協議缺乏足夠的靈活性。
自問世以來,以太坊區塊鏈吸引了眾多開發者、企業和創業者,催生了一個新興產業,讓用戶能夠部署智能合約和分散式應用程序。
本文將深入探討ERC-20標準,這是一個創建代幣的關鍵框架。儘管僅適用於以太坊網絡,但它啟發了其他區塊鏈標準的誕生,如Gate鏈的GEP-2。
ERC-20標準解析
在以太坊生態中,ERC代表"以太坊註釋請求"(Ethereum Request for Comments)。這些技術文檔概述了以太坊的編程規範。需要注意的是,ERC不同於以太坊改進提案(EIP),後者類似於比特幣的BIP,主要涉及協議本身的改進建議。ERC的目標是在應用程序與合約之間建立便於互操作的協議。
ERC-20由Vitalik Buterin和Fabian Vogelsteller於2015年共同制定,為基於以太坊的代幣提供了一種相對簡單的標準格式。遵循這一規範,開發者無需重新設計,可以直接在現有行業基礎上進行構建。
一旦創建了新的ERC-20代幣,它們就能與支持ERC-20標準的各種服務和軟件(如軟體錢包、硬體錢包和交易平台等)自動實現互操作。
值得一提的是,ERC-20標準現已演變為EIP(特別是EIP-20)。儘管距離最初廣為流傳的提案已經過去多年,而且此後又經過了幾年的發展,"ERC-20"這個名稱仍然被廣泛使用。
以太坊代幣概覽
與ETH(以太坊的原生加密貨幣)不同,ERC-20代幣並不直接存儲在賬戶中,而是僅存在於合約內部,如同一個獨立的數據庫。它定義了代幣的規則(如名稱、符號、可分割性),並維護了一個映射用戶餘額的以太坊地址列表。
要轉移代幣,用戶需要向智能合約發送交易,要求合約將部分餘額重新分配。舉例來說,如果Alice想給Bob發送5,000個Gate學院代幣(GateAcademyTokens),她會在相應的智能合約中調用函數來執行這一指令。
她的調用指令包含在一筆看似普通的以太坊交易中,該交易向代幣合約支付了0個ETH。這個調用包含在交易的其他欄位中,指明了Alice的意圖——在這個例子中,她希望將代幣轉給Bob。
即使不發送以太幣,Alice仍需支付一定的費用,以確保交易被納入區塊。如果沒有ETH,她應該在轉移代幣前先儲值一些ETH。
以下是Etherscan上的一個實際案例:某用戶調用了一個BUSD合約。可以看到代幣已經轉移,並支付了手續費,儘管價值欄顯示發送了0個ETH。
接下來,我們將深入探討典型ERC-20合約的結構。
ERC-20代幣的創建過程
根據ERC-20標準,您的合約必須實現六個必要函數:totalSupply、balanceOf、transfer、transferFrom、approve和allowance。此外,還可以定義一些可選函數,如name、symbol和decimal。這些函數的名稱基本上能反映其功能,不過即使不太理解也不用擔心,我們會在後續內容中逐一解釋。
以下是使用以太坊專用的Solidity語言呈現的函數。
totalSupply函數解析