【イーサリアム】クライアントソフト geth を使ってみた。

公開日: : 最終更新日:2020/11/19 仮想通貨 , , , ,

イーサリアムのクライアントソフト geth をインストールして使ってみました。

クライアントソフトを入れることによって、Ethereum ネットワークに参加することができます。

OSLinux にしました(Windows はインストールが少し面倒だと書いてあったので)。

Windows10 に Linux(Ubuntu)を入れる方法については以前にまとめました。
【WSL】Windows10 に Linux(Ubuntu) を入れてみた。

geth のインストール

まずは、geth をインストールします。

Genesis ブロックの作成

ローカル環境に1番最初のブロックの Genesis を作成します。

以下のような genesis.json ファイルを用意します。

以下のコマンドで初期化を行います。

以下のようなエラーが出てしまいました。

Fatal: Failed to write genesis block: unsupported fork ordering: eip150Block not enabled, but eip155Block enabled at 0

英語のサイトで調べ、genesis.json ファイルを以下のように修正しました。

無事に「Successfully…」と表示され、初期化できました。

INFO [07-17|11:11:21.323] Successfully wrote genesis state database=lightchaindata hash=”743236…b31e94″

geth の起動

Warning や ERROR がちょくちょくでましたが、「Welcome to the Geth JavaScript console!」と表示され、geth の対話型コンソールが起動できました。

アカウントの作成

EOA(Externally Owned Account) を作成します。引数にパスワードを指定します。

今回はプライベート環境を使っているので簡易なパスワードに設定しますが、本番環境では複雑なパスワードを設定しましょう。

「0x」から始まるアドレスが表示されます。

INFO [07-17|11:30:00.052] Your new key was generated address=0x7534af2C274F7DbC00b2f254cbfaf7BB0C0bBE9A

後ほど、ether の送金を行うので、アカウントを複数作っておきます。

アカウントの確認

複数作成したアカウントの確認を行います。

アドレスが配列で表示されます。

マイニング

マイニングを実行してみます。

ここで coinbase というものを設定します。coinbase は、マイニングの報酬などに紐づいたアカウントのことで、デフォルトでは配列の最初のアドレス(accounts[0])が設定されています。

eth.coinbase」コマンドで確認できます。

「miner.start(スレッド数)」コマンドで、マイニングが始まります。引数でスレッド数を指定することもできます。

「null」もしくは「true」と出力されていれば問題ありません。

放っておくとずっとマイニングしているので、適当なところで「miner.stop()」として停止させましょう。

残高の確認

coinbase について、マイニングした報酬を確認します。

送金

coinbase(accounts[0])から accounts[2] に送金をしてみます。

このとき、送金する側(accounts[0])のロックを解除しないとエラーが出てしまうようです。

エラーが出ます。

GoError: Error: account unlock with HTTP access is forbidden at web3.js:6347:37(47)
at native
at <eval>:1:24(6)

エラーが出たので geth の起動オプションを変更してみました。

まず、「password.txt」というファイルを「eth_private_nex」ディレクトリ直下に作成し、4つのアカウントのパスワードを指定します。

password
password
password
password

そして、以下のように geth の起動オプションでアカウントと password.txt ファイルを指定します。


しかし、以下のようなエラーが出てしまいました。

Fatal: Account unlock with HTTP access is forbidden!

ちょっとこれ以上はよく分からなかったので送金は断念しました。。

参考書籍

関連記事

【イーサリアム】 公開鍵暗号について調べてみた。

仮想通貨の1つであるイーサリアムでは、公開鍵暗号という技術が使われています。 公開鍵暗

記事を読む

初心者でも分かるビットコインの仕組みについてまとめてみた。

ビットコインは,時価総額が1位で最も有名な仮想通貨です. 仮想通貨の時価総額の見方について

記事を読む

【仮想通貨】新しいトランザクション(取引)の追加方法【ブロックチェーン】

仮想通貨で用いられているブロックチェーン技術において、新しいトランザクション(取引)をどのよ

記事を読む

【イーサリアム】日本円のチャートで比較する方法【イーサリアム・クラシック】

イーサリアム(Ethereum)は、2020年時点で、時価総額がビットコインに次ぐ第2位の仮

記事を読む

【仮想通貨】時価総額のランキングを円(JPY)で見る方法。

ビットコインやイーサリアムなどの仮想通貨の時価総額のランキングを 円(JPY)で見れる分かり

記事を読む

【Solidity】 イーサリアムでコントラクトを生成してみた。

スマートコントラクトプログラミングの高級言語の1つである Solidity を使って、イーサ

記事を読む

【イーサリアム】 ホリエモンが2014年当時にイーサリアムの可能性に気付いていた!?

ホリエモンこと堀江氏が、2014年の自身のブログで「イーサリアムやべぇ。。。」というタイトル

記事を読む

【ビットコイン】1ブロックに含まれる情報について調べてみた【マークル木】

ビットコインなどの仮想通貨では、トランザクション(取引)の束を「ブロック」という単位で扱い、

記事を読む

【イーサリアム】 ハッシュ関数(Keccak-256)について調べてみた。

仮想通貨の1つであるイーサリアムで用いられているハッシュ関数「Keccak-256」について

記事を読む

【仮想通貨】トランザクションについて調べてみた【ブロックチェーン】

ビットコインなどの仮想通貨では、取引をトランザクションで記述されます。 そのトランザク

記事を読む

初心者でも分かるビットコインの仕組みについてまとめてみた。

ビットコインは,時価総額が1位で最も有名な仮想通貨です. 仮

【LaTeX】 見出し付き箇条書きを右にずらす方法【数式の変数説明】

今回は、LaTeX で見出し付き箇条書きの全体の位置を右にずらす方法に

【LaTeX】 余白部分を設定しレイアウトを確認する方法。

今回は、LaTeX の余白部分のレイアウトの変更方法とレイアウトの確認

【LaTeX】 レポートや論文の表紙のテンプレート。

LaTex を使ってレポートや論文を書くときに、表紙をつけると思います

【DTM】 Cubase AI でギターやベースを録音する方法。

今回は、DTM のための DAWソフト Cubase AI でギター(

→もっと見る

PAGE TOP ↑