ビットコインのブロックチェーンを同期させる方法


日付: 2021-04-29 閲覧数: 35



ビットコインは史上初の仮想通貨と知られており、2020年の末頃に暴上げした相場を背景に注目を集めています。その仕組みの参加者を実際に見ていくと、一般利用者、採掘者とビットコインノード運営者に区別することが出来ます。一口に言えば、一般利用者は仮想通貨の取引を行う、採掘者が取引データを検証する、ノードの運営者がビットコインの台帳を管理すると解釈しても良いではないかと思います。今回はビットコインのブロックチェーン上に書き込まれた情報の同期方法についてご解説し、ビットコインデーモンの導入と起動方法もしっかりと見ていきたいと思います。


仮想通貨で支払う時にスマホで電子ウォレットを使うことが多くありますが、電子ウォレットを実現するスマホアプリの実装に焦点を当ててみると仮想通貨ネットワークについてたくさん学ぶことが出来ます。ビットコインを支えるネットワークに関して言えば、第三者を必要とせずに取引を行えるというところがよく強調される特徴でしょう。換言すれば、トランザクションデータを誰も管理していないように聞こえるかもしれませんが、実は違います。ビットコインの利用者が仮想通貨を我武者羅に他人に送金したりするとなるとネットワークの秩序が乱れるので取引データを誰かに検証してもらう必要があり、ビットコインの採掘者とノード運営者がこの作業を行っていると解釈しておきましょう。ビットコインクライエントを立ち上げることで取引データが書き込まれる台帳の管理が可能になり、ビットコイン口座所有者の残高なども確認できるよになります。ということで、今回はビットコインノードを実現する台帳同期機能を備えたビットコインデーモンの導入方法について徹底解説したいと思います。


だいいち、bitcoinというソフトをGithubからダウンロードします:


$ git clone https://github.com/bitcoin/bitcoin.git

そしてダウンロードしたディレクトリに入ります:


$ cd bitcoin

必要なソフトをダウンロードし、OS更新も行います:


$ sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils python3 autoconf libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libboost-iostreams-dev libevent-dev

次にautogenを使います:


$ ./autogen.sh

そしてconfigureします。


$ ./configure

次は、ソースコードのコンパイルを行います:


$ make -j7

コンパイルが終わりますと、ビットコインデーモンを起動させます。ここで注意しないといけないことが1つありまして、ブロックチェーンのサイズが時間の経過とともに増加するので、現時点でブロックチェーンを保存するには300Gb以上の空き領域が必要で、ダウンロードする為に高速なインターネット接続、保存する為に十分な空き容量のSSDを用意しましょう。


$ ./bitcoind -daemon

ブロックチェーン上に書き込まれた全てのデータのダウンロードと同期が相当な時間がかかります。夜間に行うといいです。同期が完了すると、過去にあったトランザクションを検索したり、その詳細を確認することが出来るようになり、携帯端末をこのノードと接続させて、ビットコインウォレットを開発しても良いです。同期されたブロックチェーンを管理するビットコインデーモンはビットコインATM機器を設計する時にも必要不可欠です。


以上です。お疲れ様でした。今回はビットコインの分散型電子台帳を同期するビットコインデーモンの導入について解説しました。この内容が役に立ったと思って頂けれると幸いです。次の投稿もご期待してください。




コメント (0)


記事特選