windows搭建以太坊私有链

1、下载以太坊客户端( 我用的是1.4.11版本  https://github.com/ethereum/go-ethereum/releases/tag/v1.4.11
将geth客户端的压缩包解压,得到geth.exe放置在任意位置,注意,文件路径中不能出现中文。
2、在以太坊客户端安装文件的位置,创建创始快的初始化文件genesis.json,内容如下:
{
"nonce":"0x0000000000000042",
"mixhash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"difficulty": "0x4000",
"alloc": {},
"coinbase":"0x0000000000000000000000000000000000000000",
"timestamp": "0x00",
"parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "PICC GenesisBlock",
"gasLimit":"0xffffffff"
}
参数
描述
nonce
nonce就是一个64位随机数,用于挖矿,注意他和nonce的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validity, (44)章节所描述的条件。
mixhash
与nonce配合用于挖矿,由上一个区块的一部分生成的hash。注意他和nonce的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validity, (44)章节所描述的条件。
difficulty
设置当前区块的难度,如果难度过大,cpu挖矿就很难,这里设置较小难度
alloc
用来预置账号以及账号的以太币数量,因为私有链挖矿比较容易,所以我们不需要预置有币的账号,需要的时候自己创建即可以。
coinbase
矿工的账号,随便填
timestamp
设置创世块的时间戳
parentHash
上一个区块的hash值,因为是创世块,所以这个值是0
extraData
附加信息,随便填,可以填你的个性信息
gasLimit
该值设置对GAS的消耗总量限制,用来限制区块能包含的交易信息总和,因为我们是私有链,所以填最大。
里面各个键值对代表什么,我现在还搞不明白,等以后弄明白了,再做注释吧。
3、初始化创始块
geth --datadir "%cd%\chain" init genesis.json
%cd%代表当前目录
不需要一定在geth安装目录下初始化创始块,在其他文件夹下也可以(genesis.json可以随便放在一个位置),比如:
D:\blockchain\geth.exe --datadir "%cd%\chain" init genesis.json文件的全路径
4、打开geth控制台
geth -datadir "%cd%\chain" console
多参数写法
geth --identity "HDetherum" --rpc --rpccorsdomain "*" --datadir "%cd%\chain" --port "30303"  --rpcapi "db,eth,net,web3" --networkid 95520 -nodiscover --verbosity=5 console 2>>hdchain.log
参数
描述
identity
区块链的标示,随便填写,用于标示目前网络的名字
init
指定创世块文件的位置,并创建初始块
datadir
设置当前区块链网络数据存放的位置
port
网络监听端口
rpc
启动rpc通信,可以进行智能合约的部署和调试
rpcapi
设置允许连接的rpc的客户端,一般为db,eth,net,web3
networkid
设置当前区块链的网络ID,用于区分不同的网络,是一个数字
console
启动命令行模式,可以在Geth中执行命令
nodiscover
禁止被网络中其它节点发现,需要手动添加该节点到网络
verbosity
打印详细的日志信息
5、创建账号
personal.newAccount(),会提示输入密码,输入1234
6、下载打开以太坊图形化钱包( 我用的0.8.1版本  https://github.com/ethereum/mist/releases/tag/0.8.1 ),解压以太坊钱包到任意目录,运行Ethereum-Wallet.exe

你可能感兴趣的:(以太坊)