公司内网或无对外网络,无法同步区块
降低测试时等待区块的时间
不想碰到testrpc各种雷
有别于PoW(Proof-of-Work)需要解数学难题来产生block,PoA是依靠预设好的Authority nodes,负责产生block。
可依照需求设定Authority node数量。
可指定产生block的时间,例如收到交易的5秒后产生block。
一般的Ethereum node也可以连接到PoA Chain,正常发起transactions,contracts等。
Parity钱包下载安装
设置chain spec
设置两个节点
设置账号(Account)
启动Authority node
连接两个节点
发送交易
分享给其他节点
Parity钱包下载安装https://parity.io
如官网所示,The fastest and most secure way of interacting with the Ethereum blockchain是最快最安全的钱包。
打开官网,我们看到有三种安装方式,第一种,直接下载安装,第二种,安装,第三种,安装。
在我们案例中,我们通过来进行安装。
1、Getting Homebrew
2、Adding Parity to your list of Homebrew 'kegs'
打开终端,输入下面的命令,按enter。
3、Installing Parity
稳定版
最新版
最新开发版
更新最新版本
and
4、查看安装版本
PoA chain需要设置一个创世区块。
设定成5秒产生一个区块。
设定的地方,目前先空著,后面创建之后再回来填入。
将上面的文件保存到桌面的一个文件中,保存为。
在我们这篇文章中,我们在同一台电脑设置两个节点,跟我们讲解以太坊私网建立 (2) - 同一台电脑/不同电脑运行多个节点时,如果在同一台电脑设置两个节点,需要将和设置为不同的值,否则就会发生冲突,POA chain中也是一样,需要将一些参数设置为不同的值。
:指定存储资料与账号的目录
:指定Parity的network port,可用来让其他node连接
:这是JSON RPC port,使用web3.js时会需要
:Parity提供的Web-based UI port
可以用下列指令启动。
除了打一长串的指令外,Parity也提供更为简洁的config档案设定方式,使用--config即可引用配置文件。
node0使用如下配置文件node0.toml:
使用如下配置文件:
我们总共需要设置三个账号,两个和一个账号。
第一步:首先启动:
打开网页http://localhost:8180,按照步骤创建一个用户账号。
新增,使用功能,为了示范一致性,我们使用当作。
到目前为止我们已经完成的账号设置。
Authority account:
User account:
第二步:设置的账号,启动。步骤相同,连接到http://localhost:8181,使用。
这样就完成了的账号设置。
Authority account:
第三步:将Authority account写入demo-spec.json文件
再将加入,並给一些,后续可以使用。
完成后的如下:
为了启动来产生区块,我们必须设定负责产生的,分別是和。
1、第一步,创建一个文件,写入与的,内容如下:
2、第二步,在node0.toml文件中加入[account]及[mining]设置,如下:
3、第三步,在node1.toml文件中加入[account]及[mining]设置,如下:
4、第四步,Step 4分別启动两个node
使用透过来测试。
1、第一步,Post下列JSON数据至http://localhost:8540以取得node0的enode资料
获取到的数据如下:
是的标识。下一步中我们将将它加入到中以实现两个节点之间的连接。
2、第二步,将node0的enode加入node1,Post下列JSONs数据至node1(http://localhost:8541 )
返回的数据如下,为true,说明连接成功:
再切换到的终端,会看到下面的数据:
如上图所示,表示连接成功。
在我们这个案例中,我们一个创建了三个账号,一个用户账号,两个账号,刚开始的时候我们为用户账号初始化了。如下图所示,账号与账号之间可以相互转账。
在开发时通常会将node跑在server上,让其他人可以通过连接上去使用,此时只要在文件里面加入设置即可。
假设为,将修改如下:
修改如下:
IBC商学院,技术+智慧 赢未来
IBC商学院作为全球区块链技术交流平台,拥有区块链领域的博士、专家的强大师资力量。在这里你可以得到区块链最新资讯,学习区块链知识、区块链技术编程以及区块链项目投资,财富建立于智慧之上!
领取专属 10元无门槛券
私享最新 技术干货