以太坊genesisjson
❶ 如何创建私链
创建创世配置文件:
首先需要创建一个“创世”json配置文件,此文件描述了创世区块的一些参数。下面就是文件中的内容:
{
"coinbase": "",
"config": {
"homesteadBlock": 5
},
"difficulty": "0x20000",
"extraData": "0x",
"gasLimit": "0x2FEFD8",
"mixhash": "",
"nonce": "0x0",
"parentHash": "000000000000000000000000",
"timestamp": "0x00",
"alloc": {
"":
{
"balance":""
}
}
}12345678910111213141516171819
将上面这段代码复制到一个文本文件里并起名为genesis.json
创世!:
为了不和主链的数据冲突,这里建议建立自己的私链数据文件夹。在我的电脑上在E盘建了一个EthDBSpace作为以太坊实验工作区,并在里面创建了一个PrivChain文件夹作为我的第一个私链的数据存放文件夹
这里为了方便管理将genesis.json放在了EthDBSpace文件夹下
打开Windows命令行
键入如下命令
geth --datadir "E:\EthDBSpace\PrivChain" init "E:\EthDBSpace\genesis.json"1
–datadir 选项用来指定我们私链的数据目录。在我的电脑上是E:\EthDBSpace\PrivChain
init 命令为创世命令,后面紧跟着我们的创世配置文件路径。
点击回车后执行结果如下
此时创世完成!
创建账户:
为了在私链上做实验,我们还需要在私链上建立自己的账户
Windows命令行键入
geth --datadir "E:\EthDBSpace\PrivChain" console1
我们由于已经创世成功所以第二次进入客户端时我们不用再次指定genesis.json文件路径,而是直接–datadir 指明私链数据路径即可。
console命令用来开启geth的命令行。
点击回车后,客户端会先经过一阵初始化。在命令提示符出现后,说明已经进入geth console
在geth命令行中键入
personal.newAccount('Your Password')1
personal.newAccount 函数用来创建账户,其中参数为账户密码
点击回车后会出现
账户创建成功后会在命令下方以绿色字符列明创建账户的地址,也即账户的公钥
我们可以先查下账户余额,在geth命令行中键入:
my=eth.accounts[0]
eth.getBalance(my)12
my=eth.accounts[0],此句的目的是将我们刚创建的账户地址赋值给my变量。这样可以简化后续账户地址输入。其中eth.accounts记录了本机上所有账户地址。由于我们第一次创建账户,所以目前电脑上只有一个账户。所以这里我们用eth.accounts[0]提取第一个账户地址。eth.getBalance函数用来获得账户余额,参数填入账户地址。这里的my变量记录的就是第一个账户的地址。
希望我的回答可以帮到您哦