通過METAMASK除錯和釋出智慧合約指南》
轉載一篇釋出智慧合約的指南原地址http://www.sohu.com/a/209216399_783969
本文主要是針對有興趣進行以太坊智慧合約開發的技術愛好者,進行開發除錯工具使用方面的指導。
1.安裝METAMASK
MetaMask 是一款瀏覽器外掛錢包,不需下載安裝客戶端,只需新增至瀏覽器擴充套件程式即可使用,非常方便,並且可以很方便的除錯和測試以太坊的智慧合約。
1.1首先安裝Google Chrome瀏覽器
Google Chrome是一款由Google公司開發的網頁瀏覽器,該瀏覽器基於其他開源軟體撰寫,包括WebKit,目標是提升穩定性、速度和安全性,並創造出簡單且有效率的使用者介面。
MetaMask是Chrome瀏覽器上的一種外掛,所以必須先安裝Chrome瀏覽器。直接在百度瀏覽器中搜尋,可以直接進行下載。
1.2 安裝Chrome的METAMASK外掛
這裡先需要提醒下,MetaMask目前必須在Chrome瀏覽器的線上應用商店進行線上下載和安裝,因為網路原因你需要使用VPN才能下載安裝。
輸入MetaMask官網地址,https://metamask.io/,在官網主頁參考下圖指引通過Chrome應用商店來安裝該外掛。
安裝完畢後,在瀏覽器上會顯示該外掛的小圖示,點選下圖中“小狐狸”圖示,會出現MetaMask的主操作介面。
首先是提示介面,可以忽略,點選“Accept”,進入下一步,下一步也是宣告,需要拉倒低才能點選“Accept”。
然後會看到此介面,請輸入賬號密碼一定不能忘記(也可以匯入先去已有的Metamask賬號):
在建立賬號的時候為了防止賬號密碼丟失,這裡提供的找回的助記詞功能,拷貝恢復賬號的安全碼,一共是12個單詞,切記,這一步很重要,一定要把這安全碼記錄下來方便恢復賬號。
然後系統會生成一個以太坊的賬號,你可以進行以他操作:
-
可以很方便的檢視錢包地址
-
將地址轉換為二維碼
-
買入以太幣
-
傳送以太幣
1.3 配置MetaMask
MetaMask預設連線的是以太坊的Main Ethereum Network,為了方便我們測試智慧合約,需要切換到Ropsten Test Network。
1.4 在測試網路中獲取以太幣
在測試網路中獲取以太幣不需要付費,直接點選“BUY”,進入獲取測試網路以太幣介面,點選“ROPSTEN TEST FAUCET”,進入挖礦介面,每次最多挖去13個測試網路以太幣。
2.智慧合約釋出
2.1獲取HPB智慧合約原始碼
本章節的智慧合約釋出除錯主要以釋出在以太坊的HPB智慧合約作為測試和除錯的物件。
HPB的智慧合約原始碼已提交到etherscan.io,並認證通過,大家可以從以下地址獲取:
https://etherscan.io/address/0x38c6A68304cdEfb9BEc48BbFaABA5C5B47818bb2#code
2.2線上智慧合約編譯器
通過MetaMask來發布校驗程式碼,需要結合一款Solidity線上編譯器,可以很方便的對智慧合約的程式碼進行除錯。
請在網頁中輸入線上Solidity的編輯器地址,直接在網頁中開啟:https://ethereum.github.io/browser-solidity/
2.3 編譯智慧合約
把從etherscan.io下載的HPB智慧合約原始碼黏貼到編輯器中。HPB的原始碼技術愛好者可以自己分析理解下,這裡為了後續能在MetaMask中進行除錯測試和檢查釋出結果,這裡需要對程式碼進行校驗和編譯。
請先在Chrome中登入MetaMask賬號,在下圖介面上選擇“run”按鈕,系統會自動把MetaMask中你的ETH賬號同步到下圖中的“Account”選項中,其他屬性不用修改。
注意在下圖中,選擇智慧合約的名稱,名稱和原始碼中的名稱保持一致:
在Create按鈕旁邊的輸入框輸入構造引數,此引數是接受ETH轉賬地址的賬號
例如本文中ETH測試網路中的賬號:“0x2F89c15a7e52b00084e01Cc957C656fc53ceAc11”,注意一定要帶有雙引號。
同時請選擇編譯版本,和智慧合約程式碼中指定的版本保持一致,同時後釋出成功後也需要校驗也需要選擇和釋出時候一致的編譯版本。
2.4 釋出智慧合約
提示:釋出智慧合約的時候必須指定一個以太坊的賬號進行釋出。
校驗完畢後點“Create”,線上編譯器會自動的進行程式碼校驗,如果校驗通過會彈出MetaMask對話方塊。本文是通過建立的賬戶Account1來提交建立的合約。
2.5檢視智慧合約產生的代幣
智慧合約釋出成功後,會自動生成代幣,HPB的代幣總量是1億枚。
2.6 檢視建立智慧合約交易
點選metamask檢視最新的一筆釋出智慧合約的交易,點選跳轉到網頁顯示詳情。
通過下圖可以找到智慧合約的地址,以及ABI字串,請複製ABI字串後續校驗智慧合約的時候需要使用。
提示:注意ABI字串是通用的擷取規範是在下圖中的“0029”數字之後。
2.7 校驗已釋出的智慧合約
點選下圖中的智慧合約地址連結,進入智慧合約詳情頁面。
跳轉到此頁面後,點選下圖中的“Verify And Publish”,進入驗證頁面。
進入驗證頁面後,請注意一下幾點:
-
Contract Name 務必保持和原始碼中的Contract Name保持一致。
-
Compiler選擇的版本號務必和在MetaMask釋出的版本保持一致。、
-
Optimization 請選擇Disabled
還是在本頁面,找到下圖輸入項,然後輸入本次釋出智慧合約生成的ABI字串,點選“Verify And Publish”驗證智慧合約。
釋出過程如果沒出現報錯提示,會顯示下列資訊,表示驗證通過。
2.8檢視校驗通過的智慧合約
校驗通過後,可以在以太坊測試網路上檢視校驗通過智慧合約詳情。
測試網查詢地址:https://ropsten.etherscan.io
可以很清晰的看到智慧合約的相關屬性,輸入輸出項。
相關文章
- 通過METAMASK除錯和釋出智慧合約指南除錯
- 通過Mist部署智慧合約
- NEO智慧合約除錯流程說明除錯
- mist連線私有網路除錯智慧合約除錯
- 在 NEO 上使用智慧合約釋出 NFT
- Alphabet 將通過 AI 主導智慧城市合約AlphabetAI
- 五一勞動節,講講NEO智慧合約的除錯除錯
- remix合約除錯設定pinfoREM除錯
- 第九課 如何除錯以太坊官網的智慧合約眾籌案例除錯
- nodejs除錯指南NodeJS除錯
- 使用者通過智慧合約向ADAMoracle發起資料請求Oracle
- 首汽約車與AWS聯合釋出的智慧語音方案為智慧出行提速
- 在 NEO 上釋出代幣合約
- 在業務過程中使用區塊鏈和智慧合約區塊鏈
- 【Camera專題】Qcom-高通OTP完全除錯指南-上除錯
- 記一次https通訊除錯過程HTTP除錯
- windows上通過IDA遠端除錯linux程式Windows除錯Linux
- Electron 應用除錯指南除錯
- Node.js除錯指南Node.js除錯
- 通過單步除錯的方式學習 Angular 中 TView 和 LView 的概念除錯AngularView
- 智慧合約從入門到精通:智慧合約的前世今生
- 編寫智慧合約
- iOS 部署智慧合約iOS
- Python除錯終極指南 - martinheinzPython除錯
- 智慧合約語言 Solidity 教程系列9 - 錯誤處理Solid
- Undo 釋出用於 Linux 除錯的 Live Recorder 5.0Linux除錯
- 讓你釋出的nuget包支援原始碼除錯原始碼除錯
- 【譯】通過例子解釋 Debounce 和 Throttle
- 使用Remix編譯和部署以太坊智慧合約REM編譯
- sCrypt 合約開發除錯技巧: 定位及解決 checkSig / checkPreimage 異常除錯
- Dapp 合約代幣系統開發智慧合約APP
- Bytom猜謎合約使用指南
- 智慧合約從入門到精通:智慧合約的應用場景
- PHPMQTT v1.4.1 版本釋出,新增協議除錯工具PHPMQQT協議除錯
- k8s 通過helm釋出應用K8S
- NASM 與 GDB 簡易除錯指南ASM除錯
- Node除錯指南-記憶體篇除錯記憶體
- 什麼是智慧合約?