LoginSignup
4
5

More than 5 years have passed since last update.

自分の仮想通貨を作る!イーサリアムのプライベートネットワーク作成 Geth入門!

Last updated at Posted at 2018-02-01

はじめに

最近何かとニュースを賑わせている仮想通貨ですね。
乗るしかない、このビッグウェーブに!と思っている私ですが、投資でお金をスるのは嫌だし、
リスクはとりたくない。ちょっと便乗したいだけなんです。

そこで、私は技術を勉強してちょっと違う方向でブームに乗っかってみることにしました。
手を進めることだけを考えた記事なので、概念的な理解は他の記事を参照してください。

Gethのインストール

Gethはイーサリアムのブロックチェーンのダウンロードや、マイニング、トランザクションの発行などを行うクライアントツールです。他にも、EthやPyethappなどがありますが、ポピュラーなのでGethを選択しました。

geth official install guide

brew tap ethereum/ethereum
brew install ethereum

私はmacOSでhomebrewを入れていたので、この手順で入れました。
homebrewがない場合はこちらでインストールしてください
自分の環境にはGoが元々入っていたので、もしかしたらGoを入れる必要があるかも?

プライベートネットの作成

まずは、genesisというファイルをjson形式で作成します。
これは全てのブロックチェーンの元になる設定などを記述しておくもので、
このgenesisを元にネットワークを作成します。

sampleGenesis.json

{
        "config": {
                 "chainId": 12345,
                 "homesteadBlock": 0,
                 "eip155Block": 0,
                 "eip158Block": 0
         },
         "timestamp": "0x0",
         "gasLimit": "0x8000000",
         "difficulty": "0x400",
         "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
         "coinbase": "0x3333333333333333333333333333333333333333",
         "alloc": {}
}

これを/Users/xxxx/eth_private/sampleGenesis.jsonに配置します。(記事の都合上指定していますが実際どこでもいいです)

それを以下のコマンドで読み込みます。-identityの後には適当に自分の名前を入れましたが、合ってるのかはわかりません。
geth -identity “あなたの名前” init /Users/xxxx/eth_private/sampleGenesis.json -datadir /Users/xxxx/eth_private

そして、起動コマンドがこれ!
geth --datadir /Users/xxxx/eth_private --networkid 12345

Screen Shot 2018-02-02 at 0.27.17.png

こんな感じになりました。

コンソールの起動

プライベートネットを動かしたのとは別のターミナルを開きます。
そこで、以下のコマンドを打つとjavascriptのコンソールが起動します。
geth attach /Users/xxxx/eth_private/geth.ipc

このコンソールでアカウントを作ります。
personal.newAccount()を実行してください。
パスワードを設定すると、アカウントの数字が発行されるのでコピーしてどこかに保存しておきましょう。
Screen Shot 2018-02-02 at 0.30.49.png

マイニング、残高確認などのコマンド

eth.getBalance("アカウントの数字") →残高確認
miner.start() マイニング開始
miner.stop() マイニング中止

以上、今後も自分がイーサリアムいじりを進めたら、加筆していく予定です。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5