搭建基于以太坊的私有链的过程小记(1.Ubuntu环境下实现)

第一步:安装Ubuntu环境,这里一开始安装的是32位,在后面遇到很多问题,所以建议在64位Ubuntu下面进行搭建。

第二步:安装以太坊geth,geth就是go-ethereum,即以太坊协议在go语言下的具体落地实现,后期要进行深入开发需要对源码理解透彻,安装指令如下所示:

Ubuntu同学
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum
  安装完成后我们用geth help来测试安装是否成功。 geth help中有很多命令行选项 后面要具体了解。

第三步:这里目的是搭建私有链,如果不小心运行了geth指令,那就会加入到公有链中去,这时需要关闭终端,删除/home/xyy/.ethereum目录。 step1:首先是建立创世文件,创世区块是整个区块链的开端,这里新建了一个目录PrivateEtherNet,新建一个genesis.json文件

{
  "config":{
	"chainId":15,
	"homesteadBlock":0,
	"eip155Block":0,
	"eip158Block":0
  },
  "nonce": "0x0000000000000042",
  "timestamp": "0x00",
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "extraData": "0x00",
  "gasLimit": "0x80000000",
  "difficulty": "0x400",
  "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "coinbase": "0x3333333333333333333333333333333333333333",
  "alloc": {     }
}

这里对各参数定义做说明:

mixhash

与nonce配合用于挖矿,由上一个区块的一部分生成的hash。注意他和nonce的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validity, (44)章节所描述的条件。.

nonce

nonce就是一个64位随机数,用于挖矿,注意他和mixhash的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validity, (44)章节所描述的条件。

difficulty

设置当前区块的难度,如果难度过大,cpu挖矿就很难,这里设置较小难度

alloc

用来预置账号以及账号的以太币数量,因为私有链挖矿比较容易,所以我们不需要预置有币的账号,需要的时候自己创建即可以。

coinbase

矿工的账号,随便填

timestamp

设置创世块的时间戳

parentHash

上一个区块的hash值,因为是创世块,所以这个值是0

extraData

附加信息,随便填,可以填你的个性信息

gasLimit

该值设置对GAS的消耗总量限制,用来限制区块能包含的交易信息总和,因为我们是私有链,所以填最大。


step2:命令行进入genesis.json所在目录,输入以下命令

geth --datadir "./" init genesis.json

完成创世区块的创建,并多出了geth和keystore两个文件。

启动私有节点所需参数:

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

 返回Welcome to the Geth JavaScript console

 执行tail -f geth.log可以看到log记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值