主页 > imtoken安卓版下载app > 以太坊搭建私有链
以太坊搭建私有链
一、说明
因为cpp版本的客户端资料较少,先用go语言版本的客户端建立私链:
下载 go-ethereum ( )
(
安装go语言: 1.先用apt安装默认的go,但此时版本较低;
2、下载最新的go源码,设置export GOROOT_BOOTSTRAP=/usr/lib/go
3.编译go源码;
4.将/usr/lib/go /usr/share/go /usr/bin/go和gofmt替换为最新的;
)
然后根据文档编译安装go-ethereum;
2.开始搭建
开始构建私有链:
1、准备创世块信息以太坊是一个私有链,创建一个json文件,genesisinfo.json,内容为:
{
“配置”:{
“链号”:10以太坊是一个私有链,
“家园块”:0,
“eip155块”:0,
“eip158块”:0
},
“分配”:{},
“币库”:“0x0000000000000000000000000000000000000000”,
“难度”:“0x02000000”,
“额外数据”:“”,
"gasLimit": "0x2fefd8",
“随机数”:“0x0000000000000042”,
“混合哈希”:“0x0000000000000000000000000000000000000000000000000000000000000000”,
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
“时间戳”:“0x00”
}
2. 创建数据存储地址并初始化创世块:
geth --datadir "数据存储地址" init genesisinfo.json
3.启动节点:
geth --identity "PICCetherum" --rpc --rpccorsdomain "*" --datadir "数据存储地址" --port "30303" --rpcapi "db,eth,net,web3" --networkid 95518 console
参数含义如下:
身份区块链的标记,随便填,用来标记当前网络的名称
init 指定创世块文件的位置并创建初始块
datadir 设置当前区块链网络数据存放位置
端口网络监听端口
rpc启动rpc通信,可以部署调试智能合约
rpcapi设置允许连接的rpc客户端,一般是db、eth、net、web3
networkid 设置当前区块链的网络ID,用于区分不同的网络,是一个数字
控制台启动命令行模式,可以在Geth中执行命令
4、启动成功后,进入命令行,主要有以下命令:
创建账户:personal.newAccount()
账户解锁(用于交易):personal.unlockAccount(account)
主账户:eth.coinbase
当前节点 url:admin.nodeInfo.enode
添加其他节点:admin.addPeer(其他节点的url)
显示所有同行:admin.Peers
显示账户的以太币:web3.fromWei(eth.getBalance(eth.coinbase), "ether")
开始挖矿:miner.start(线程数)
结束挖矿:miner.stop()
转账:eth.sendTransaction({from:account, to:receiving account, value:web3.toWei(amount,"ether")})
5. 账户建立后,其他节点也按照此步骤建立节点,然后将其他节点加入主节点,建立整个网络;