如何創建您自己的加密貨幣 - 使用ERC-20的示例

新手9/29/2024, 8:29:01 AM
隨著區塊鏈技術和加密貨幣的快速發展,許多人想學習如何發行自己的加密貨幣。本教程旨在為初學者提供在乙太坊測試網路上創建和發行自己的 ERC20 代幣的簡單指南。我們將首先解釋什麼是ERC20代幣,討論其標準和重要性,然後引導讀者完成發行過程的每個步驟。關鍵步驟包括設置 Web3 錢包、獲取測試 ETH、編寫智慧合約和部署它們。通過利用 OpenZeppelin 庫,我們將展示如何安全高效地創建符合 ERC20 標準的代幣。本教程不僅幫助讀者掌握加密貨幣的技術方面,還提供實踐經驗,為更深入地探索區塊鏈世界奠定基礎。無論您是對區塊鏈技術感到好奇的初學者,還是希望瞭解加密貨幣發行過程的開發人員,本教程都將提供 ess

區塊鏈行業在區塊鏈、比特幣、以太坊、加密貨幣和ICO等領域的持續發展中獲得了相當大的關注。這促使我撰寫了這篇教程,這是一系列教程的第一篇,旨在幫助個人了解如何使用區塊鏈技術和加密貨幣來創建有影響力的應用程式。

在本教程中,我旨在從設置您的帳戶到使用單一智能合約在以太坊測試網絡上發行您的第一個代幣的整個過程中指導您。Metamask. 該代幣將在以太坊測試網上作為標準的ERC20代幣運作,配備了核心功能,可作為更複雜應用的多功能基礎,超越了簡單的轉移功能。

開始之前

在您創建自己的ERC20代幣之前,您需要準備以下材料:

  1. 一個Web3錢包(例如MetaMask、Phantom或與WalletConnect兼容的任何錢包)
  2. 測試以太幣(您可以從以太坊Sepolia水龍頭)-請注意,此步驟需要支付燃料費用
  3. 一個網頁瀏覽器(建議使用Chrome)

ERC20代幣是什麼?

ERC代表以太坊請求評論,20是提案識別號。ERC-20的目的是增強以太坊網絡。它是最重要的ERC標準之一,已成為通過智能合約在以太坊區塊鏈上創建代幣的技術框架。ERC-20概述了所有基於以太坊的代幣必須遵守的一套規則,將其定義為可以被發送和接收、具有價值、在以太坊區塊鏈上運作並且在交易中產生燃氣費的區塊鏈資產。

2015年,德國開發人員Fabian Vogelsteller在Ethereum的GitHub頁面上發表了評論,標誌著他的第20條評論,他在其中首次提到了ERC-20。隨著Ethereum的快速擴張,ERC-20被引入作為網絡可擴展性挑戰的解決方案。

對 ERC-20 作為以太坊改進提案(EIP-20)的正式認可和採納是由 Vogelsteller 和以太坊共同創始人 Vitalik Buterin 共同撰寫於 2017 年底完成的。

在ERC-20標準出現之前,代幣創建者必須從頭開始,導致不同代幣之間存在不一致性。由於缺乏標準化結構,開發人員需要充分了解其他代幣的智能合約代碼,這使得錢包和交易所需要審查每個代幣的代碼以提供支持變得更加複雜。將新代幣添加到應用程序變成了一項複雜的任務。

隨著ERC-20標準的引入,其標準化功能、互通性和可轉移性使錢包和交易所能夠輕鬆集成多個代幣並促進它們之間的交易。ERC-20代幣中使用的智能合約可以自動執行和強制執行複雜的金融交易,這對於DeFi平台至關重要。在這些平台上,代幣可以代表各種金融工具,如貸款或流動性池中的股份。

ERC-20標準指定智能合約必須實現六個必要和三個可選的功能。

這裡是所需功能及其描述:

  • totalSupply: 一種定義代幣總供應量的方法;如果達到此限制,智能合約將不會創建新的代幣。
  • balanceOf: 一種方法,用於返回特定錢包地址持有的代幣數量。
  • 轉賬:從總供應中扣除指定數量的代幣並分配給用戶的方法。
  • transferFrom: 一種在使用者之間轉移代幣的替代方法。
  • approve: 一種檢查智能合約是否允許將一定數量的代幣分配給用戶的方法,考慮總供應量。
  • 責任:類似於approve方法,但檢查一個用戶是否有足夠的餘額將特定數量的代幣發送給另一個用戶。

除了之前提到的基本功能之外,還有一些額外的可選功能,可以提高代幣的可用性:

  • 名稱:返回代幣名稱的方法。
  • symbol: 返回代幣符號的方法。
  • 小數位: 一種指示代幣小數位數的方法。這定義了代幣的最小單位。例如,如果一個ERC-20代幣的小數位值為6,這意味著該代幣可被分成六個小數位。

如果您熟悉面向對象的編程,您可以將 ERC-20 想象成一個介面。要使您的代幣成為 ERC-20 代幣,您必須實現 ERC-20 介面,這需要您包括這六個基本功能。基本上,ERC-20 介面充當模板,任何旨在被歸類為 ERC-20 代幣的合約都必須使用此模板設計和實現其功能。

開始創建您自己的以太坊代幣標準

獲取測試 ETH

要在以太坊Sepolia測試網絡上部署您的合約,您需要安裝MetaMask使用瀏覽器擴展或其他 Web3 錢包(如 Phantom 或任何與 WalletConnect 兼容的錢包)來設置您的錢包。設置完錢包後,您需要獲取一些測試 ETH。您可以從中獲取此類 ETH。以太坊 Sepolia 水龍頭Gate,這是專為以太坊Sepolia測試網絡設計的。 獲取測試ETH很簡單:只需訪問faucet網站,連接您的錢包地址或輸入您的地址,然後按照說明進行操作。 您還可以分享推文以獲得額外獎勵,或者選擇“不用了,直接給我0.05 ETH”的選項來直接獲取您的測試ETH。 但是,請記住您的以太坊主網帳戶至少需要有0.001 ETH才能使用QuickNode測試幣faucet。

撰寫智能合約

目前有許多符合以太坊區塊鏈上運行的ERC20標準的代幣,由各種不同的團隊開發。這些實現有所不同;有些專注於降低 gas 成本,而其他則優先考慮增強安全性。為了創建強大且安全的代幣,許多開發人員選擇使用 OpenZeppelin 的ERC20代幣標準。OpenZeppelin 是一個經過全面測試和社區審查的可重用智能合約庫,其中包括可靠且安全的ERC20代幣框架。它確保代幣開發合規且安全,使其成為今天許多代幣開發人員的首選。

為了方便和安全起見,我們將使用OpenZeppelin 以太坊代幣標準在這個指南中,我們使用合約來創建我們的代幣。使用OpenZeppelin,我們不需要編寫整個ERC-20接口; 我們只需導入庫合約並使用其功能。在這個例子中,我們將發行100萬個名為MNT的ERC-20代幣。

接下來,前往以太坊RemixIDE(以太坊的集成開發環境,支援Solidity編程語言)並創建一個新的Solidity文件,例如- MyNewToken.sol。

  1. 在以太坊Remix IDE中創建新文件

請將以下代碼粘貼到您的新Solidity腳本中:

// SPDX-License-Identifier: MIT pragma solidity ^0.8.20;

import “@openzeppelin/contracts/token/ERC20/ERC20.sol”;

合約 MyNewToken 是 ERC20 { 構造函數() ERC20(“MyNewToken”,“MNT”){ _mint(msg.sender, 1000000 (10 *uint256(decimals())); } }

  1. 複製並粘貼上述代碼以進行代幣發行智能合約。

這是代碼的功能:

SPDX-License-Identifier 註釋指示合約發布的許可證。

Pragma指令指定將使用的編譯器版本。

ERC20合約是從OpenZeppelin導入的,作為您的代幣的基礎。

MyNewToken是您的合約名稱,它繼承自ERC20合約。

構造函數使用名稱(“MyNewToken”)和符號(“MNT”)初始化您的代幣。

構造函數內的_mint函數創建了代幣的初始供應量。在這種情況下,會鑄造100萬個代幣並分配給部署合約的地址。代幣的總數根據小數位的值進行調整,在OpenZeppelin實現中默認為18。

因為我們從OpenZeppelin導入了ERC20智能合約,而MyNewToken合約繼承自它,所以不需要自己定義所有的函數。在MyNewToken合約中包含了ERC20合約中定義的所有函數。如果您想看到完整的ERC-20代碼的更詳細版本,可以參考這個檔案.

現在,花一些時間根據您的需求自定義智能合約。您還可以通過修改此部分來更改令牌名稱和符號:ERC20(“MyNewToken”,“MNT”)。

部署智能合約

一旦您定制了您的智能合約,下一步就是編譯它。

步驟1: 點擊Solidity編譯器按鈕。檢查編譯器版本,確保選擇了正確的合約。由於您的智能合約包括行pragma solidity ^0.8.20; 編譯器版本應至少為0.8.20。接下來,點擊編譯MyNewToken.sol按鈕。如果一切正常,您將在編譯按鈕上看到一個綠色的勾號。

  1. 編譯智能合約

  1. 編譯成功(綠色勾勾)

第2步:導Gate到部署&運行交易選項卡。在環境部分下,選擇注入提供者選項進行部署。在繼續之前,請確保您的MetaMask設置為Sepolia測試網絡,並且已選擇MyNewToken合約進行部署。最後,點擊部署按鈕部署您的合約。

  1. 選擇注入提供者作為您的本地Web3(MetaMask)錢包

  1. 連接您的Web3錢包

  1. 確認合約部署並選擇網絡(這是測試網絡)

如果您不確定如何切換網路,請打開小狐狸錢包擴展,按兩下左上角的網路選擇器,然後選擇 Sepolia。如果它不可見,請確保已啟用「顯示測試網路」選項。有關將 QuickNode RPC URL 新增到 MetaMask 的說明,請查看QuickNode 指南.

注意:您需要支付 GAS 費用來兌換測試 ETH。

步驟3:在MetaMask中確認交易:

恭喜!您的代幣合約已成功部署在以太坊Sepolia測試網絡上,您正式擁有您的第一個代幣!

作者: Deniz
譯者: Paine
審校: KOWEI、Edward、Elisa
譯文審校: Ashely
* 投資有風險,入市須謹慎。本文不作為 Gate.io 提供的投資理財建議或其他任何類型的建議。
* 在未提及 Gate.io 的情況下,複製、傳播或抄襲本文將違反《版權法》,Gate.io 有權追究其法律責任。

如何創建您自己的加密貨幣 - 使用ERC-20的示例

新手9/29/2024, 8:29:01 AM
隨著區塊鏈技術和加密貨幣的快速發展,許多人想學習如何發行自己的加密貨幣。本教程旨在為初學者提供在乙太坊測試網路上創建和發行自己的 ERC20 代幣的簡單指南。我們將首先解釋什麼是ERC20代幣,討論其標準和重要性,然後引導讀者完成發行過程的每個步驟。關鍵步驟包括設置 Web3 錢包、獲取測試 ETH、編寫智慧合約和部署它們。通過利用 OpenZeppelin 庫,我們將展示如何安全高效地創建符合 ERC20 標準的代幣。本教程不僅幫助讀者掌握加密貨幣的技術方面,還提供實踐經驗,為更深入地探索區塊鏈世界奠定基礎。無論您是對區塊鏈技術感到好奇的初學者,還是希望瞭解加密貨幣發行過程的開發人員,本教程都將提供 ess

區塊鏈行業在區塊鏈、比特幣、以太坊、加密貨幣和ICO等領域的持續發展中獲得了相當大的關注。這促使我撰寫了這篇教程,這是一系列教程的第一篇,旨在幫助個人了解如何使用區塊鏈技術和加密貨幣來創建有影響力的應用程式。

在本教程中,我旨在從設置您的帳戶到使用單一智能合約在以太坊測試網絡上發行您的第一個代幣的整個過程中指導您。Metamask. 該代幣將在以太坊測試網上作為標準的ERC20代幣運作,配備了核心功能,可作為更複雜應用的多功能基礎,超越了簡單的轉移功能。

開始之前

在您創建自己的ERC20代幣之前,您需要準備以下材料:

  1. 一個Web3錢包(例如MetaMask、Phantom或與WalletConnect兼容的任何錢包)
  2. 測試以太幣(您可以從以太坊Sepolia水龍頭)-請注意,此步驟需要支付燃料費用
  3. 一個網頁瀏覽器(建議使用Chrome)

ERC20代幣是什麼?

ERC代表以太坊請求評論,20是提案識別號。ERC-20的目的是增強以太坊網絡。它是最重要的ERC標準之一,已成為通過智能合約在以太坊區塊鏈上創建代幣的技術框架。ERC-20概述了所有基於以太坊的代幣必須遵守的一套規則,將其定義為可以被發送和接收、具有價值、在以太坊區塊鏈上運作並且在交易中產生燃氣費的區塊鏈資產。

2015年,德國開發人員Fabian Vogelsteller在Ethereum的GitHub頁面上發表了評論,標誌著他的第20條評論,他在其中首次提到了ERC-20。隨著Ethereum的快速擴張,ERC-20被引入作為網絡可擴展性挑戰的解決方案。

對 ERC-20 作為以太坊改進提案(EIP-20)的正式認可和採納是由 Vogelsteller 和以太坊共同創始人 Vitalik Buterin 共同撰寫於 2017 年底完成的。

在ERC-20標準出現之前,代幣創建者必須從頭開始,導致不同代幣之間存在不一致性。由於缺乏標準化結構,開發人員需要充分了解其他代幣的智能合約代碼,這使得錢包和交易所需要審查每個代幣的代碼以提供支持變得更加複雜。將新代幣添加到應用程序變成了一項複雜的任務。

隨著ERC-20標準的引入,其標準化功能、互通性和可轉移性使錢包和交易所能夠輕鬆集成多個代幣並促進它們之間的交易。ERC-20代幣中使用的智能合約可以自動執行和強制執行複雜的金融交易,這對於DeFi平台至關重要。在這些平台上,代幣可以代表各種金融工具,如貸款或流動性池中的股份。

ERC-20標準指定智能合約必須實現六個必要和三個可選的功能。

這裡是所需功能及其描述:

  • totalSupply: 一種定義代幣總供應量的方法;如果達到此限制,智能合約將不會創建新的代幣。
  • balanceOf: 一種方法,用於返回特定錢包地址持有的代幣數量。
  • 轉賬:從總供應中扣除指定數量的代幣並分配給用戶的方法。
  • transferFrom: 一種在使用者之間轉移代幣的替代方法。
  • approve: 一種檢查智能合約是否允許將一定數量的代幣分配給用戶的方法,考慮總供應量。
  • 責任:類似於approve方法,但檢查一個用戶是否有足夠的餘額將特定數量的代幣發送給另一個用戶。

除了之前提到的基本功能之外,還有一些額外的可選功能,可以提高代幣的可用性:

  • 名稱:返回代幣名稱的方法。
  • symbol: 返回代幣符號的方法。
  • 小數位: 一種指示代幣小數位數的方法。這定義了代幣的最小單位。例如,如果一個ERC-20代幣的小數位值為6,這意味著該代幣可被分成六個小數位。

如果您熟悉面向對象的編程,您可以將 ERC-20 想象成一個介面。要使您的代幣成為 ERC-20 代幣,您必須實現 ERC-20 介面,這需要您包括這六個基本功能。基本上,ERC-20 介面充當模板,任何旨在被歸類為 ERC-20 代幣的合約都必須使用此模板設計和實現其功能。

開始創建您自己的以太坊代幣標準

獲取測試 ETH

要在以太坊Sepolia測試網絡上部署您的合約,您需要安裝MetaMask使用瀏覽器擴展或其他 Web3 錢包(如 Phantom 或任何與 WalletConnect 兼容的錢包)來設置您的錢包。設置完錢包後,您需要獲取一些測試 ETH。您可以從中獲取此類 ETH。以太坊 Sepolia 水龍頭Gate,這是專為以太坊Sepolia測試網絡設計的。 獲取測試ETH很簡單:只需訪問faucet網站,連接您的錢包地址或輸入您的地址,然後按照說明進行操作。 您還可以分享推文以獲得額外獎勵,或者選擇“不用了,直接給我0.05 ETH”的選項來直接獲取您的測試ETH。 但是,請記住您的以太坊主網帳戶至少需要有0.001 ETH才能使用QuickNode測試幣faucet。

撰寫智能合約

目前有許多符合以太坊區塊鏈上運行的ERC20標準的代幣,由各種不同的團隊開發。這些實現有所不同;有些專注於降低 gas 成本,而其他則優先考慮增強安全性。為了創建強大且安全的代幣,許多開發人員選擇使用 OpenZeppelin 的ERC20代幣標準。OpenZeppelin 是一個經過全面測試和社區審查的可重用智能合約庫,其中包括可靠且安全的ERC20代幣框架。它確保代幣開發合規且安全,使其成為今天許多代幣開發人員的首選。

為了方便和安全起見,我們將使用OpenZeppelin 以太坊代幣標準在這個指南中,我們使用合約來創建我們的代幣。使用OpenZeppelin,我們不需要編寫整個ERC-20接口; 我們只需導入庫合約並使用其功能。在這個例子中,我們將發行100萬個名為MNT的ERC-20代幣。

接下來,前往以太坊RemixIDE(以太坊的集成開發環境,支援Solidity編程語言)並創建一個新的Solidity文件,例如- MyNewToken.sol。

  1. 在以太坊Remix IDE中創建新文件

請將以下代碼粘貼到您的新Solidity腳本中:

// SPDX-License-Identifier: MIT pragma solidity ^0.8.20;

import “@openzeppelin/contracts/token/ERC20/ERC20.sol”;

合約 MyNewToken 是 ERC20 { 構造函數() ERC20(“MyNewToken”,“MNT”){ _mint(msg.sender, 1000000 (10 *uint256(decimals())); } }

  1. 複製並粘貼上述代碼以進行代幣發行智能合約。

這是代碼的功能:

SPDX-License-Identifier 註釋指示合約發布的許可證。

Pragma指令指定將使用的編譯器版本。

ERC20合約是從OpenZeppelin導入的,作為您的代幣的基礎。

MyNewToken是您的合約名稱,它繼承自ERC20合約。

構造函數使用名稱(“MyNewToken”)和符號(“MNT”)初始化您的代幣。

構造函數內的_mint函數創建了代幣的初始供應量。在這種情況下,會鑄造100萬個代幣並分配給部署合約的地址。代幣的總數根據小數位的值進行調整,在OpenZeppelin實現中默認為18。

因為我們從OpenZeppelin導入了ERC20智能合約,而MyNewToken合約繼承自它,所以不需要自己定義所有的函數。在MyNewToken合約中包含了ERC20合約中定義的所有函數。如果您想看到完整的ERC-20代碼的更詳細版本,可以參考這個檔案.

現在,花一些時間根據您的需求自定義智能合約。您還可以通過修改此部分來更改令牌名稱和符號:ERC20(“MyNewToken”,“MNT”)。

部署智能合約

一旦您定制了您的智能合約,下一步就是編譯它。

步驟1: 點擊Solidity編譯器按鈕。檢查編譯器版本,確保選擇了正確的合約。由於您的智能合約包括行pragma solidity ^0.8.20; 編譯器版本應至少為0.8.20。接下來,點擊編譯MyNewToken.sol按鈕。如果一切正常,您將在編譯按鈕上看到一個綠色的勾號。

  1. 編譯智能合約

  1. 編譯成功(綠色勾勾)

第2步:導Gate到部署&運行交易選項卡。在環境部分下,選擇注入提供者選項進行部署。在繼續之前,請確保您的MetaMask設置為Sepolia測試網絡,並且已選擇MyNewToken合約進行部署。最後,點擊部署按鈕部署您的合約。

  1. 選擇注入提供者作為您的本地Web3(MetaMask)錢包

  1. 連接您的Web3錢包

  1. 確認合約部署並選擇網絡(這是測試網絡)

如果您不確定如何切換網路,請打開小狐狸錢包擴展,按兩下左上角的網路選擇器,然後選擇 Sepolia。如果它不可見,請確保已啟用「顯示測試網路」選項。有關將 QuickNode RPC URL 新增到 MetaMask 的說明,請查看QuickNode 指南.

注意:您需要支付 GAS 費用來兌換測試 ETH。

步驟3:在MetaMask中確認交易:

恭喜!您的代幣合約已成功部署在以太坊Sepolia測試網絡上,您正式擁有您的第一個代幣!

作者: Deniz
譯者: Paine
審校: KOWEI、Edward、Elisa
譯文審校: Ashely
* 投資有風險,入市須謹慎。本文不作為 Gate.io 提供的投資理財建議或其他任何類型的建議。
* 在未提及 Gate.io 的情況下,複製、傳播或抄襲本文將違反《版權法》,Gate.io 有權追究其法律責任。
即刻開始交易
註冊並交易即可獲得
$100
和價值
$5500
理財體驗金獎勵!