区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链

1.     Geth的搭建私有链

搭建私有链首先需要配置一个创业区块。下图是创世区块genesis.json

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第1张图片

Config:config必不可少,否则创建不成功。ChildId不能为0。

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

Coinbase:矿工的账号,私有链随便填;公有链可以填自己的账号。

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

ExtraData:附加信息,随便填,可以填自己的个性信息。

GasLimit:该值设置对GAS的消耗总量限制,用来限制区块能包含的交易信息总和。

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

Timestamp:设置创世块的时间戳

Nonce和MixHash:MixHash是一个Hash值,当与nonce组合时,证明此区块已经执行了足够的计算。

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第2张图片

创建私有链:

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第3张图片

注意要在genesis.json所在目录下,或者加路径名。

打开私有链:--nodiscover防止私有连连接到公有链上。Console以控制台的方式启动。

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第4张图片

创建账户:

查看账户:

查看第一个账户余额:

设置挖矿账户,默认是accounts[0]:

查看挖矿账户:挖矿账户变为accounts[1]

开始挖矿:参数是线程数

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第5张图片

停止挖矿:

查看账户以太币:1eth = 1000 * 1000 * 1000* 1000 * 1000* 1000 Wei = 1000 ^ 6 Wei


转账:先解锁送钱者账户

转帐请求提交到交易池


查看交易池

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第6张图片

通过挖矿打包转账请求。txs表示交易池记录数。1>0表示转账成功,转账记录已写入区块链。

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第7张图片

收钱者得到相应金额。送钱者,除了减少转账金额还有小部分交易费。

查看交易记录:以下是另一个交易记录,

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第8张图片

查看当前区块数:

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第9张图片

节点信息:

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第10张图片

节点组网:两个节点要想联通,必须保证网络是相通的,并且要指定相同的networkid。

Node3:

Node2:

Node2,enode:

Node3添加node2节点:

Node3交易请求,node2可以打包:

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第11张图片

区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链_第12张图片

打开rpc为remix ide连接本地私有链做准备:

--rpc 启动HTTP-RPC服务(基于HTTP的)

--ipcdiscover 关闭进程间通信

--rpcapi 远程可调用的功能,默认web3,net,eth。4.24版本必须添加personal,否则remix无法读取本地账户列表;4.24版本testrpc也是无法读取用户列表。

--rpccorsdomain 指定一个可以接收请求来源的以逗号间隔的域名列表(浏览器访问的话,要强制指定该选项)

--rpcaddr  HTTP-RPC服务器监听地址(default: "localhost")


你可能感兴趣的:(区块链入门三部曲(二) (最全最详细 )以太坊Geth搭建私有链)