如何使用 Geth 创世块中的 alloc 进行初始值授权

本问题在 如何使用 genesis.json 文件初始化账户, 并且在挖矿之前授予一些币 上面进行了解答, 选择下面的成功方案进行记录:

创建新的账户/使用原有账户, 添加到区块之中

1. 首先删除原有账户和区块链信息

1
rm -rf datadir && mkdir datadir

2. 获得 geth 账户

初始化一些账户

1
2
geth --datadir=./datadir --password ./password.txt account new > account${RANDOM}.txt
geth --datadir=./datadir --password ./password.txt account new > account${RANDOM}.txt

使用原有 private key 账户

1
geth account import ./keyfile --datadir=./datadir --password ./password.txt >> account${RANDOM}.txt

3. 将创建好的账户(account${RANDOM} 之中内容)添加到创世快的 alloc 下, 其中账户名前要增加 ‘0x’:

1
alloc: {'0x 账户名': {"balance": "0xabc * E18"}}

4. 使用创世块配置文件初始化区块链

geth init genisis.json --datadir ./datadir

参考文档: https://github.com/ethereum/go-ethereum/issues/14831 中的 carchrae 仁兄的回答.

一键管理脚本

ethereum-privatechain-generator-script

Donate - Support to make this site better.
捐助 - 支持我让我做得更好.