Golang与区块链

第一讲:初始go-ethereum - 基本操作

2018-11-27  本文已影响5人  老苗

一、目录

二、工具安装和使用

geth工具

作用:区块链的操作、账户的操作、转账、挖矿等

cd cmd/geth
go install

命令

初始化创始区块

第一步:新建genesis.json配置文件

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

第二步

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

启用私有链

geth \
  --datadir "./datachain" \
  --nodiscover \
  console 2>>eth_output.log

账户查看创建

查看

> web3.eth.accounts

创建

> web3.personal.newAccount("miao")

获取特定用户钱包地址

> acc0 = web3.eth.accounts[0]

挖矿

开始

> miner.start(1)

停止

> miner.stop()

钱包

余额查看

web3.eth.getBalance("0xbe323cc4fde114269a9513a27d3e985f82b9e25d")

转账

对账户进行转账时,首页进行账户解锁

账户解锁

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

开始转账

eth.sendTransaction({from:eth.accounts[0], to:eth.accounts[1], value: web3.toWei(3, "ether")})

转账完成后,eth.getBalance(eth.accounts[1])查询余额,发现余额没有增加。

原因:需要开始挖矿才能完成交易miner.start(1)

上一篇 下一篇

猜你喜欢

热点阅读