区块链学习--win10下构建以太坊私链

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了区块链学习--win10下构建以太坊私链相关的知识,希望对你有一定的参考价值。

构建以太坊私链
1、环境是win10,下载对应的最新版本Ethereum-Wallet-win64-0-10-0.zip
https://github.com/ethereum/mist/releases

2、解压到指定目录即可,运行Ethereum-Wallet初始化数据,私链搭建无需同步

3、初始化的相关数据,如用户为:administrator,则在系统生成目录:C:\Users\administror\AppData\Roaming\Ethereum Wallet
C:\Users\heheiscool\AppData\Roaming\Ethereum
两个文件

4、找到geth.exe命令,在此C:\Users\administrator\AppData\Roaming\Ethereum Wallet\binaries\Geth\unpacked 目录下

5、 配置自己的创世块是为了区分公有链,在上面4的目录下新建创始区块文件genesis.json,同一个网络节点群中创始区块必须相同,否则无法联通:

{
"config": {
"chainId": 10,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
},
"alloc" : {},
"coinbase" : "0x0000000000000000000000000000000000000000",
"difficulty" : "0x02000000",
"extraData" : "",
"gasLimit" : "0x2fefd8",
"nonce" : "0x0000000000000042",
"mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp" : "0x00"

}

各参数指标如下:

mixhash 与nonce配合用于挖矿,由上一个区块的一部分生成的hash。这里是初始区块
nonce nonce就是一个64位随机数,用于挖矿
difficulty 设置当前区块的难度,如果难度过大,cpu挖矿就很难,这里设置较小难度
alloc 用来预置账号以及账号的以太币数量,因为私有链挖矿比较容易,所以我们不需要预置有币的账号,需要的时候自己创建即可以。
coinbase 矿工的账号,任定义
timestamp 设置创世块的时间戳
parentHash 上一个区块的hash值,因为是创世块,所以这个值是0
extraData 附加信息,随便填,可以填你的个性信息
gasLimit 该值设置对GAS的消耗总量限制,用来限制区块能包含的交易信息总和,因为我们是私有链,所以填最大。

6、在4中目录下运行命令:

geth --datadir "C:\Users\administrator\AppData\Roaming\Ethereum\dev" init genesis.json

从而创建目录并存储创世区块数据。

启动运行私链,命令行输入:geth --identity "mydev" --datadir "C:\Users\heheiscool\AppData\Roaming\Ethereum\dev" --networkid 1111 --rpc --rpcapi "admin,personal,db,eth,net,web3" --nodiscover --rpccorsdomain "*" console

identity 区块链的标示,随便填写,用于标示目前网络的名字
init 指定创世块文件的位置,并创建初始块
datadir 设置当前区块链网络数据存放的位置
port 网络监听端口
rpc 启动rpc通信,可以进行智能合约的部署和调试
rpcapi 设置允许连接的rpc的客户端,一般为db,eth,net,web3
networkid 设置当前区块链的网络ID,用于区分不同的网络,是一个数字
console 启动命令行模式,可以在Geth中执行命令

技术分享图片

回车后可以在控制台中输入相关命令,如:personal.newAccount()创建第一个钱包账户
技术分享图片

7、启动Ethereum Wallet钱包,右上角显示“PRIVATE-NET”,说明私链启动成功
技术分享图片

打开钱包后会显示6中创建的账户
技术分享图片

以上是关于区块链学习--win10下构建以太坊私链的主要内容,如果未能解决你的问题,请参考以下文章

以太坊私链账户下智能合约的部署与调用——使用RemixGolangGeth

问题以太坊私链连接钱包报错解决汇总

Docker 搭建以太坊私有链

docker 部署以太坊私链v1.10.5

docker 部署以太坊私链v1.10.16版本

尚硅谷以太坊区块链学习