ブロックチェーンを構成するノードの機能と種類のイメージ画像

ブロックチェーンを構成するノードの機能と種類

  • 公開日:2018/03/03
  • 更新日:2018/10/19
  • 投稿者:n bit

ブロックチェーンを構成するノードの機能と種類についてまとめていきます。ノードの持つ仕事や種類を理解していくことでブロックチェーンについてもう少し詳しく分かってきます。仮想通貨ごとに少しずつ詳細が変わってきますので今回はビットコインを中心に進めていきます。

  • ブロックチェーン
  • 仮想通貨
  • bitcoin

この記事は約 分で読めます。(文字)

P2P(Peer to Peer)ネットワークとノード

前回はブロックチェーンの概略についてイメージを掴んでいきました。今回はもう少し詳しくブロックチェーンを構成するノードの機能と種類についてまとめていきます。

ブロックチェーンはネットワーク上のコンピュータ同士の直接的なつながりで構築されています。

中央に位置するコンピュータがない状態で、コンピュータそれぞれが接続されているネットワークをピアツーピアネットワーク(Peer to Peerネットワーク)といいます。よく略してP2Pと表記されます。

ビットコインのブロックチェーンもこのP2Pネットワークで構成されています。

P2Pでは接続された端末同士が直接ネットワークを介してやり取りをすることが可能です。この仕組みは以前ファイル共有などで成功しました。従来の中央集権型のサーバを利用したケースとP2Pを利用したケースでのファイル共有の違いを比較してみます。

まず中央集権型サーバを利用した場合、送信側は1度サーバ上に共有すべきファイルをアップロードし、そして受け取り側がそのサーバからファイルをダウンロードして受信するといった形になります。

送信側端末 - アップロード → サーバ ー ダウンロード → 受信側端末

Note

サーバとは、インターネット上に置かれたコンピュータとイメージしておけば大丈夫です。

しかしP2Pの間では送信側端末から受信側端末に直接ファイルを共有することが可能です。

送信側端末 → 受信側端末

このP2Pネットワーク上に接続された個々の要素となるコンピュータ端末のことをノードと呼びます。

ノードの機能

ビットコインを支えるブロックチェーンネットワークのノードには4つの機能があります。
  • ルーティング
  • ブロックチェーンデーターベース
  • マイニング
  • ウォレット

P2Pネットワーク上でノードはこれらの仕事をしています。1機能ずつ簡単に説明していきます。

ルーティング

ルーティングはP2Pネットワーク内に存在するノード同士の接続コントロールに関するお仕事をしています。ノードからデータが送信されたとき、次にどのノードにデータを送るべきかを道案内してくれます。

ネットワーク内にはノードが無数にありルートを指し示すものがなければ目的のノードまでどのようにデータを送れば良いのか分からなくなってしまいますよね。

バケツリレーのように次にデータを転送するノードのルートを案内しながら無事に目的のノードまでデータを届けてくれます。

    ブロックチェーンデーターベース

ブロックチェーンデーターベースはその名の通り1番最初の取引から現在の取引までのすべての記録が入ったデーターベースです。記録を残していくことがお仕事です。

データーベースと言う言葉になじみがない人はExcelをイメージしていただいても大丈夫です。家計簿のように取引内容を記録しているExcelです。

ブロックチェーンデーターベースはいくつかの取引毎にデータをまとめたブロックをチェーン状につないで記録を増やしていきます。1番最初の取引を記録したブロックのことをgenesisブロックと言いますが、genesisブロックから最新ブロックまでの完全なデーターベースの情報を持っています。

    マイニング

マイニングはビットコインのメインとなる機能で、ビットコインの取引に信用を生み出しています。主に不正や二重払いを防ぐため、ブロックチェーンデーターベースに記録されている過去の取引情報と整合性を取りながら取引の承認・検証するのがお仕事です。

  • 取引の承認・非承認
  • 取引の2重払い防止

ビットコインでの各取引に関する情報をすべて持ったデータをトランザクションと言いますが、ノードが各トランザクションを受け取り検証作業を膨大な計算によって行っています。

マイニングによる検証作業によって分散的合意形成が行われトランザクションデータが信用に値するものとしてブロックチェーンデーターベースに記録されていきます。

また、同時に新しい通貨の発行を行うと言う仕事も持っています。

    ウォレット

自分のビットコイン資産を管理するお仕事です。取引データの紐付いたビットコインアドレスや公開鍵、秘密鍵を収容して管理しています。

ノードの種類

ビットコインのP2Pネットワークにあるノードは全て同じ機能を持って同じ仕事をしているわけではありません。さまざまな種類のノードが存在しそれぞれの仕事も違いがあります。代表的なノードは以下の通りです。これらのノードがP2Pネットワーク上で直接繋がりあいブロックチェーンシステムを構築しています。

  • フルノード
  • SPVノード
  • ソロマイナー
  • フルブロックチェーンノード

それぞれのノードの違いは持っている機能の違いです。下記の表からもわかるようにルーティング機能に関してはネットワークの通信を制御する機能ですのですべてのノードが持っています。

ノード名ルーティングフルブロックチェーンデータベースマイニングウォレット
フルノード
SPVノード
ソロマイナー
フルブロックチェーンノード

フルノード

フルノードはリファレンスクライアントやビットコインコアとも呼ばれています。ルーティング、フルブロックチェーンデーターベース、マイニング、ウォレット4つ全ての機能を持ったノードです。フルノードは1つのノートで全ての仕事を行うことができます。

SPV(Simplified payment verification)ノード

ブロックチェーンの1部の管理のみを行っているノードでルーティングとウォレットの機能を持っています。SPV(Simplified payment verification)ノードは軽量ノードとも呼ばれています。

ソロマイナー

単独でマイニング作業を行っているノードです。ルーティング、マイニング、ウォレットの機能を持っています。フルノードもマイニングの機能を持っていますのでマイナーのうちいくつかはフルノードになります。

マイニングプールと言う共同でマイニングを行う方法もありそちらに参加しているマイナーもあり、プールマイナーと呼ばれています。協力してマイニングを行いマイニングプールで得た報酬を山分けしています。

フルブロックチェーンノード

フルブロックチェーンノードはルーティング、フルブロックチェーンデーターベースの機能を持ったノードです。

ブロックチェーンにおけるノードの役割と報酬

ブロックチェーンの特徴は

  • 24時間365日止まることなく使い続けることができる
  • いちど記録したデータを後から改ざんできない
  • 特定の中央管理者がいなくてもシステムとデータの整合性を維持できる

主にこれらの3つになりますが、これを実現するための仕組みを支えているのが数多くのノードの存在です。ノードの働きによってデータの整合性をチェックしているため悪意のあるデータや不良データが混ざっていたとしても正しくブロックチェーン上にトランザクションを記録することができます。

ノードのマイニングによる報酬制度

マイニングを行うためノードとなるコンピュータを用意してブロックチェーンの仕組みにマイナーとして参加することができます。より多くの方に正常なノードとして参加してもらうために通常マイニングしてもらう代わりに通貨を報酬として支払う形をとっています。

報酬を得られるのでマイニングに参加したいと言う意思が働き、その結果ノードの数が増えていく。最終的にブロックチェーンの仕組みがより安定していくことにつながります。

参加の仕方にはフルノードを選択したり、ソロマイナーやマイニングプールに参加してプールマイナーになるなど、多岐に渡る方法で参加することが可能です。

今日のdot

ノードとはインターネットを介してブロックチェーンのP2Pネットワークに接続された端末のことです。ノードごとにそれぞれ違った機能を持ち仕事をしています。

ノード名ルーティングフルブロックチェーンデータベースマイニングウォレット
フルノード
SPVノード
ソロマイナー
フルブロックチェーンノード

ブロックチェーンの仕組みにマイナーとして参加し貢献することで報酬を得ることができ、またブロックチェーンの仕組みも適切に維持されていきます。