一、使用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、助记词...相关推荐

  1. 助记词创建以太坊钱包源码_墨客科普 | MOAC区块链钱包账号管理

    本文简单描述钱包账号管理的一些方法. 一.术语 1.1 gas,Gas Limit和Gas Price 在墨客区块链上,发送代币或调用智能合约.执行写入操作,需要支付矿工计算费用,计费是按照Gas计算 ...

  2. 测速源码_物联网之智能平衡车开发实战项目(附源码)

    自从上次分享了"适合练手的10个前端实战项目(附源码)"之后,很多小伙伴就私信问有没有物联网相关的实战项目教程,那么今天就给大家分享一个物联网工作初期经常接触的项目:智能平衡车开发 ...

  3. 生鲜配送小程序源码_生鲜配送小程序系统功能开发介绍(附带源码)

    生鲜配送系统开发找吴经理189微4800电*2702,生鲜配送软件开发,生鲜配送APP开发,生鲜配送模式开发,生鲜配送平台开发,生鲜配送小程序开发,生鲜配送源码开发,生鲜配送管理系统开发,生鲜配送管理 ...

  4. 区块链app源码_区块链app商城系统开发适用于哪些企业

    区块链商城系统开发,区块链技术让人们对于软件应用开发有了全新的想象,现在也有越来越多的企业开始布局区块链业务,区块链应用开渐渐成为市场应用的宠儿,随着区块链技术的不断发展,未来也会有越来越多的区块链应 ...

  5. echarts python源码_基于Echarts的微代码开发平台SmartChart, 免费开源使用

    A platform that Connect Data to Echarts. 简介 SmartChart基于Echarts/Django的微代码开发平台,适用于任何WEB项目 简单, 敏捷, 高效 ...

  6. 以太坊控制台源码分析

    最近有网友提到以太坊控制台的代码看不太明白,抽了点时间整理了一下. 当我们通过geth console或者geth attach与节点交互的时候,输入的命令是如何被处理的呢?看下面这张流程图就明白了: ...

  7. 以太坊EVM源码注释之执行流程

    以太坊EVM源码分析之执行流程 业务流程概述 EVM是用来执行智能合约的.输入一笔交易,内部会将之转换成一个Message对象,传入 EVM 执行.在合约中,msg 全局变量记录了附带当前合约的交易的 ...

  8. 以太坊EVM源码注释之数据结构

    以太坊EVM源码分析之数据结构 EVM代码整体结构 EVM相关的源码目录结构: ~/go-ethereum-master/core/vm# tree . ├── analysis.go // 分析合约 ...

  9. 以太坊EVM源码注释之State

    以太坊EVM源码注释之State Ethereum State EVM在给定的状态下使用提供的上下文(Context)运行合约,计算有效的状态转换(智能合约代码执行的结果)来更新以太坊状态(Ether ...

最新文章

  1. Go 知识点(13) — 如何判断变量类型
  2. Python a,b = b,a 是怎么赋值的
  3. 原阿里中供梁法锋:O2O产品的地推管理 | SHARE 2015产品经理O2O论坛实录
  4. VSCode开发.NETCore项目入门(1)设置中文语言环境
  5. java从字符串中提取数字的简单实例
  6. 【密码学 | CTF】培根密码
  7. Speedoffice(ppt)中如何插入表格
  8. Sitemesh小记
  9. PHP修改后缀名绕过
  10. PostgreSQL SQL 语言:全文搜索
  11. HTML5 之 Figure Figcaption 标签
  12. ftp服务器上文件移动失败(ftpClient.rename返回false)
  13. 29-折半查找法的使用
  14. 外贸新手如何利用领英寻找你的潜在客户(建议收藏)
  15. 2011年最值得阅读的财富故事,蒋百荣论商经小赢在智大赢在德
  16. tableau通过集动作改变突出显示
  17. 深入探索编译插桩技术(四、ASM 探秘,android中文api文档
  18. 记一次某应用虚拟化系统远程代码执行
  19. Networkers 2009系列之一:通过PfR实现负载均衡
  20. css文字怎么居中,css文字居中怎么打

热门文章

  1. MySQL常用监控指标及监控方法
  2. 欧美国家ADS-B设备装配进展
  3. 桩机行进竣工图视频教程
  4. PAT A1044 火星数字【c语言/测试点2/测试点4】
  5. UVALive 5871 Arnooks's Defensive Line (cdq分治)
  6. android地图旋转监听,android 百度地图  监听事件
  7. foxmail 添加 gmail账号的 具体设置参数
  8. Python re 正则:抓取网页上电驴/磁力/迅雷链接
  9. vert.x+java入门_vertx从入门到精通
  10. PMAC应用五-运动学