kharukaのブログ~お金と技術とキャリア~

Edu Fin~金融×教育~若いうちからお金について学ぶってだいじ!学んだテクノロジーはみんなの財産。過去、現在、将来の人生についてのブログ

はじめての Ethereum Part2 プライベートネットワークへの接続編(2019年2月16日執筆)

エンジニアスクールFLOC

▼前回の記事はこちらです。

はじめての Ethereum Part1 ノード構築編(2019年2月16日執筆) - kharukaのブログ~お金と技術とキャリア~

環境情報

OS

OS バージョン 備考
macOS Mojava 10.14.2 ホストOS
Oracle VM VirtualBox 5.2.26
Ubuntu 16.04.4LTS ゲストOS

環境構築

▼環境構築の仕方はこちらなどをご参考に。

はじめてのCounterpartyノード構築Part1(2018年9月29日更新) - kharukaのブログ~お金と技術とキャリア~

プライベートネットワークへの接続

インタラクティブJavaScript環境を起動

geth-linux-amd64-1.8.22-7fa3509e/geth --networkid 5 --nodiscover --rpc --datadir /home/ubuntu/geth-linux-amd64-1.8.22-7fa3509e/private_network/ console

アカウント作成

> personal.newAccount("password1")
"0x39068ec02085a3a9a97931ac8501a890b427f6bf"
> personal.newAccount("password2")
"0x33f463c3cd0c8c1121fc6465fc73d4aa593d1b04"

"password1"と"password2"はether送金をする(Unlock accountする)ために必要なPassphraseです。

厳重に保管しましょう!

アカウント確認

> eth.accounts
["0x39068ec02085a3a9a97931ac8501a890b427f6bf", "0x33f463c3cd0c8c1121fc6465fc73d4aa593d1b04"]

残高確認

> eth.getBalance(eth.accounts[0])
0
> eth.getBalance(eth.accounts[1])
0

coinbase確認

> eth.coinbase
INFO [02-14|19:03:10.436] Etherbase automatically configured       address=0x39068ec02085A3A9a97931AC8501A890b427f6bf
"0x39068ec02085a3a9a97931ac8501a890b427f6bf"

mining開始

> miner.start()
INFO [02-14|17:20:17.507] Updated mining threads                   threads=4
INFO [02-14|17:20:17.507] Transaction pool price threshold updated price=1000000000
null
> INFO [02-14|17:20:17.508] Commit new mining work                   number=1 sealhash=a4565a…653fea uncles=0 txs=0 gas=0 fees=0 elapsed=154.143μs
INFO [02-14|17:20:18.725] Generating DAG in progress               epoch=0 percentage=0 elapsed=492.410ms
INFO [02-14|17:20:19.215] Generating DAG in progress               epoch=0 percentage=1 elapsed=982.368ms
INFO [02-14|17:20:19.709] Generating DAG in progress               epoch=0 percentage=2 elapsed=1.475s
...
INFO [02-14|17:21:08.497] Generated ethash verification cache      epoch=0 elapsed=50.264s
INFO [02-14|17:21:08.622] Successfully sealed new block            number=1 sealhash=a4565a…653fea hash=5fb689…04291b elapsed=51.114s
INFO [02-14|17:21:08.622] ? ・ined potential block                  number=1 hash=5fb689…04291b
INFO [02-14|17:21:08.623] Commit new mining work                   number=2 sealhash=a6501c…ddd26e uncles=0 txs=0 gas=0 fees=0 elapsed=140.476μs
INFO [02-14|17:21:08.779] Successfully sealed new block            number=2 sealhash=a6501c…ddd26e hash=79d3df…d28119 elapsed=156.247ms
INFO [02-14|17:21:08.779] ? ・ined potential block                  number=2 hash=79d3df…d28119
INFO [02-14|17:21:08.779] Commit new mining work                   number=3 sealhash=594ea0…1c2ef3 uncles=0 txs=0 gas=0 fees=0 elapsed=171.476μs
INFO [02-14|17:21:09.333] Successfully sealed new block            number=3 sealhash=594ea0…1c2ef3 hash=02ab0d…163ce6 elapsed=553.675ms
INFO [02-14|17:21:09.333] ? ・ined potential block                  number=3 hash=02ab0d…163ce6
INFO [02-14|17:21:09.333] Commit new mining work                   number=4 sealhash=54063b…0b3255 uncles=0 txs=0 gas=0 fees=0 elapsed=135.074μs
INFO [02-14|17:21:09.589] Successfully sealed new block            number=4 sealhash=54063b…0b3255 hash=0fb1a6…74768c elapsed=256.164ms
INFO [02-14|17:21:09.589] ? ・ined potential block                  number=4 hash=0fb1a6…74768c
INFO [02-14|17:21:09.589] Mining too far in the future             wait=2s
INFO [02-14|17:21:09.978] Generating DAG in progress               epoch=1 percentage=0  elapsed=642.498ms
INFO [02-14|17:21:10.476] Generating DAG in progress               epoch=1 percentage=1  elapsed=1.140s
INFO [02-14|17:21:10.976] Generating DAG in progress               epoch=1 percentage=2  elapsed=1.640s
...

console起動

別コンソールを立ち上げられる様に、rpcの設定をしてコンソール起動します。

ubuntu@bctest2:~$ geth-linux-amd64-1.8.22-7fa3509e/geth attach rpc:http://127.0.0.1:8545 console
Welcome to the Geth JavaScript console!

instance: Geth/v1.8.22-stable-7fa3509e/linux-amd64/go1.11.5
coinbase: 0x39068ec02085a3a9a97931ac8501a890b427f6bf
at block: 67 (Thu, 14 Feb 2019 19:04:50 JST)
 modules: eth:1.0 net:1.0 rpc:1.0 web3:1.0

>

hash rate確認

別コンソールを立ち上げて実行すると便利です。

> eth.hashrate
187830

ブロック数確認

> eth.blockNumber
2223

ether残高確認

> eth.getBalance(eth.accounts[0])
9.995e+21

これはwei(単位)残高を表示しています。

{ \displaystyle 1ether = 10^{18} wei }

です。

ether残高を表示したい場合は以下のコマンドを実行します。

> web3.fromWei(eth.getBalance(eth.accounts[0]), "ether")

10375

mining終了

miningを終了する場合は以下コマンドを実行します。

> miner.stop()
null
> eth.mining
false

eth.miningtrueであれば、まだmining中です。

次回は、ether送金をしていきます。

▼記事の続きは以下へ。

はじめての Ethereum Part3 ether送金編(2019年2月16日執筆) - kharukaのブログ~お金と技術とキャリア~

参考

ビットコインとブロックチェーン

ビットコインとブロックチェーン