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