助记词创建以太坊钱包源码_技术指南 | 以太坊钱包开发:生成账户地址、私钥、keystore、助记词...
一、使用web3連接到以太坊網絡(測試網、主網)
1. 什么是web3
web3是以太坊官方開提供的一個連接以太坊區塊鏈的模塊,允許您使用HTTP或IPC與本地或遠程以太坊節點進行交互,它包含以太坊生態系統的幾乎所有功能。web3模塊主要連接以太坊暴露出來的RPC層。開發者利用web3連接RPC層,可以連接任何暴露了RPC接口的節點,從而與區塊鏈交互。web3是一個集合庫,支持多種開發語言使用wbe3,其中的JavaScript API叫做web3.js、另外還有web3.py、web3j,web3.js將是我們錢包開發項目的重點。
web3.eth:用于與以太坊區塊鏈和智能合約之間的交互。web3.utils:包含一些輔助方法。
web3.shh:用于協議進行通信的P2P和廣播。
web3.bzz:用于與群網絡交互的Bzz模塊。
github地址:web3.js
web3.js開發文檔::web3.js
2. 實例化web3對象
web3要與以坊節點進行交互,需要創建一個web3對象,下面看看如何創建。
根據API可知需要指定節點地址,我們將ws://some.local-or-remote.node:8546
換成其它連接到以太坊網絡的節點的地址,以此來確定連接的以太坊的網絡。那么連接到以太坊網絡的節點的地址是多少呢?這里我們需要使用到infura。
3. 獲取連接到以太坊網絡的節點地址
infura提供公開的 Ethereum主網和測試網絡節點,到infura.io網站注冊后即可獲取各個網絡的地址。請按照如下步驟獲取地址。
第一步:打開 infura網站地址:https://infura.io/dashboard,使用郵箱注冊后登陸如下所示:
第二步:點擊上圖標記的“create new project”按鈕創建一個新項目。然后彈出如下彈框,在輸入框輸入項目名,如”MyEtherWallet“,然后點擊“create project”按鈕創建。
第三步:然后會顯示如下界面,點擊下圖中的選擇框,可以看到提供主網、Kovan測試網絡、Ropsten測試網絡、Rinkeby測試網絡的節點地址。
第四步:選擇Kovan測試網絡,然后復制地址,將獲取到類似這樣的地址:
https://kovan.infura.io/v3/d93f......cd67,如下。
4. 連接到以太坊Kovan測試網絡
現在將復制的地址替換掉實例化web對象的地址,如下
連接到以太坊主網與Kovan測試網絡一樣的,只需復制主網節點的地址去實例化web3即可。由于在主網上交易需要花費gas,因此我們基于Kovan測試網絡進行開發,后續開發完成后可再切換到主網。在我們開發的項目源碼中,我將獲取web3實例的代碼封裝到了myUtils.js文件的getweb3()方法中,用于整個項目統一調用。
二、獲取地址、私鑰、keystore、助記詞
1. 使用web3創建賬號
創建賬號需要使用web3.js的如下API
API
web3.eth.accounts.create([entropy]);
2. router.js
將創建賬戶的頁面與表單提交的接口綁定到路由。
版權聲明:博客中的文章版權歸博主所有,未經授權禁止轉載,轉載請聯系作者(微信:lixu1770105)取得同意并注明出處。
本文地址:?https://chaindesk.cn/witbook/1/12
愿碼(ChianDesk.CN)——連接每個程序員的故事
技術提升、快速轉型請關注微信公眾號:愿碼
總結
以上是生活随笔為你收集整理的助记词创建以太坊钱包源码_技术指南 | 以太坊钱包开发:生成账户地址、私钥、keystore、助记词...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 伺服电机配减速机怎么选型?
- 下一篇: 物联网对网页设计与开发的影响