以太坊 私有链搭建 Geth+Mist钱包

1. eth、mist 客户端下载

geth客户端: https://geth.ethereum.org/downloads/
mist客户端: https://github.com/ethereum/mist/releases

2.创建以太坊初始区块文件 genesis.json

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

关键字段解释:

chainId : 以太坊区块链网络Id,ethereum主链是1,私有链只用不要与主链冲突即可。
alloc : 预留账户
Coinbase: 旷工账户
Difficulty: 挖矿难度,0x400,这个是简单
extraData:备注信息
Timestamp : 时间戳

3.初始化区块节点

geth --datadir  data0  init  genesis.json

4.启动geth客户端节点

geth --identity "Node1" --datadir "data0" --rpc --rpcapi "db,eth,net,web3" --rpcaddr "127.0.0.1" --rpcport "8545" --port "30304" --networkid "11" console

关键字段解释

--datadir : 指定节点存在位置,“data0”
--rpc : 启用http-rpc服务器
--rpcapi : 基于http-rpc提供的api接口。eth,net,web3,db
--rpcaddr : http-rpc服务器接口地址:默认“127.0.0.1”
 --rpcport : http-rpc 端口(多节点时,不要重复)
--port : 节点端口号(多节点时,不要重复)
--networkid : 网络标识符 随便指定一个id(确保多节点是统一网络,保持一致)

5.geth常用命令

  • 创建账号 "123"表示你要创建的账号密码

personal.newAccount("123")

  • 获取账户

eth.accounts

  • 解锁账户

personal.unlockAccount(eth.accounts[0], "123")

  • 查看主节点账户

eth.coinbase

  • 查看账户余额

eth.getBalance(eth.accounts[0])

  • 启动挖矿

miner.start()

  • 停止挖矿

miner.stop()

6.配置多节点服务

  • 重新初始化一个新的节点 注意: “data1”作为新节点的存储目录

geth --datadir data1 init genesis.json

  • 启动新节点

geth --identity "Node2" --datadir "data1" --rpc --rpcapi "db,eth,net,web3" --rpcaddr "127.0.0.1" --rpcport "8546" --port "30305" --networkid "11" console

  • 产看节点信息:
admin.nodeInfo.enode
  • 主节点添加新节点
admin.addpeer("enode://xxxxxxxx节点信息"

......mist钱包后期更新

你可能感兴趣的:(以太坊 私有链搭建 Geth+Mist钱包)