天天看点

以太坊私有链创建账户与多节点挖矿

上文讲到怎么搭建以太坊私有链以及初始化、启动,本文记录下创建账户与多节点挖矿的过程

一、创建账户

以太坊私有链创建账户与多节点挖矿

可能有人会疑问,以太坊的账户不都是公私钥么,创建账户时输入的密码是做什么的。确实每个账户都由一公私钥组成的,上面生成的账户地址是由公钥衍生而来,取公钥的最后20个字节,公私钥都在keystore的json文件里面,而里面最关键的私钥就是用我们创建账户时输入的密码加密生成的。

上面的操作可以看到生成了两个账户,在上文中说过的data目录中会出现keystore目录,里面即为我们刚才创建的两个账户,文件名即为账户地址

以太坊私有链创建账户与多节点挖矿

二、挖矿

创建完账户,每个账户里面都没有eth,所以需要开启挖矿

我这边执行完miner.start()后是直接返回的null,这里我查了下,有的说是没有执行miner.setEtherbase(eth.accounts[0])设置账户,正常默认就是第一个账户,而且我执行了这个也还是null。也还有人说是节点误报,miner.start()命令已经执行成功,只不过节点返回null。我试了下eth.blockNumber查看区块高度,确实是增加了,说明我的符合这种情况,开启挖矿时,通过tail -f geth.log命令查看上文中的日志文件,能看到正在挖矿的

以太坊私有链创建账户与多节点挖矿

 随后查看第一个账户余额

发现了好多零,此时不能被这个数字吓到,这里默认显示的以 wei 为单位的,而 1 ether = 10^18 wei,所以我们转换一下单位

其实就是828个ether

至于上面的返回null的问题,很多人说是geth版本更新后 --dev模式下新增了参数问题,需要在启动时在后面添加–dev.period 1  具体的我就没试了,反正是为了自己测试用账户有币就行了

结束挖矿使用miner.stop()