ブロックチェーンはデータを追加することしかできない特別な種類のデータベースです。ブロックチェーンでは、データの削除や変更はできません。その名前の通り、ブロックチェーンはブロックと呼ばれる、データベースに追加された情報の塊が、鎖状につながるためブロックチェーンと呼ばれています。全てのブロックには1つ前のブロックへのポインターを持っており、そこには通常、トランザクション情報、タイムスタンプ、およびその有効性を確認するための他のメタデータの組み合わせが含まれています。
この方法でつながっていることで、入力された情報を編集、削除、修正が行われた場合、その後に続く全てのブロックが無効となるため、編集、削除、修正を行うことはできません。
この時点でブロックチェーンはすべてやや誇張されているように見えるかもしれませんが、実際にこのシステムがどのような利点を提供するのか疑問に思うかもしれません。ブロックチェーンの強みが発揮されるのは、ユーザーが相互に信頼することなく、共有された事実のソースを調整が必要となる場面です。分散ネットワークでは、適切に構築されたブロックチェーンをハイジャックできる単一の管理者的な役割は存在しません。
ブロックチェーンの状況を独自に検証し、実行するためにユーザーは特定のソフトウェアをダウンロードする必要があります。一度、ユーザーのマシン上で実行されたら。このソフトウェアは、情報(トランザクションやブロックなど)をアップロード/ダウンロードする目的で、他のマシン上のインスタンスとやり取りを始めます。あるブロックをダウンロードした新しいユーザーが、そのブロックがシステムのルールに基づいて、作成されたかを確認し、別のユーザーにこの情報を伝えます。
現在のブロックチェーンとは、データベースの同一のコピーをすべて実行および同期する数百、数千、または数万のエンティティ(これらをノードと言います。)で構成されたエコシステムです。これにより、冗長性が高くなり、24時間365日利用可能になります。
もしも、間違えた金融情報が記録された場合、ブロックチェーンの統合性は弱まります。同時に、分散型システムには元帳を維持する管理人やリーダーがいないです。それでは、ブロックチェーンではどのようにして参加者が誠実に行動していることを保証しているのでしょうか。
サトシナカモトはProof-of-Workシステムを提案しました。このシステムは誰でもネットワークに追加するブロックを提案できます。ブロックを提案するためには、参加者はプロトコルによって設定された答えを推測するために計算能力を使わなければいけません。計算能力を使って、参加者は、特定の値よりも小さくなる数字を見つけるために何度もデータのハッシュを行います。
このプロセスは一般にマイニングと呼ばれています。マイナーが正しい答えを見つけたら、そのマイナーが作成した(未承認のトランザクションで構成された)ブロックがチェーンに組み込まれます。その報酬として、そのブロックチェーンのネイティブトークンを受け取ります。
ハッシュを行うとその結果からどのような値を入力したかを推測するのは実質的に不可能です。しかし、入力から結果を確認するのは簡単です。この方法によって、ネットワークの参加者ならば誰でもそのマイナーが正しいブロックを発行したかを確認でき、無効なものは拒否することができます。このような場合、マイナーは報酬を得られず、無効なブロックを発行するために無駄な資産を使うことになります。
仮想通貨システムでは、公開鍵暗号方式によって、所有していない資産に対しては何もできないようになっています。コインは所有者しか知らない暗号鍵に紐づけられており、有効な署名がなされた場合のみその資産を使うことができます。
Proof-of-Workはユーザー間で合意に達するために最も活用されてきたスキームであり、唯一のスキームです。Proof-of-Stakeのような代替手段は大きな注目を集めていますが、正しく実装されて、ちゃんと安定して長期間稼働し続けられるかを証明する必要があります。また、ハイブリッドコンセンサスメカニズムも注目を集めています。
改ざん不可能な連続してつながったデータというアイデアは1990年代初頭からありました。W. Scott StornettaとStuart Haber は「How to Time-Stamp a Digital Document」という題の論文を公表しました。この論文では、ファイルを編集したり改ざんしたりできないように、ファイルにタイムスタンプを付けるための効率的な方法について論じました。
StornettaとHaberのアプローチは不完全だったので、実装するには第三者への信頼を必要としました。ブロックチェーンテクノロジーには他の情報科学分野のイノベーションを取り入れられ、初めて発表された論文の著者はサトシナカモトという偽名を名乗っていました。つまり、この謎の人物がこれまで説明してきたシステムの発明者となります。
ブロックチェーンの歴史について、より詳しく知りたい場合はブロックチェーンの歴史という記事をぜひご覧ください。
仮想通貨はブロックチェーンのユースケースの1つにしかすぎません。多くの人がビットコインのような分散型通貨の出現から、分散型コンピューティングの可能性を見出しました。ビットコインのような第一世代のブロックチェーンがトランザクションの共有データベースを生み出したように、イーサリウムのような第二世代のブロックチェーンはスマートコントラクトという概念を生み出しました。スマートコントラクトとはブロックチェーン上で実行される、トークンを移動するための条件を設定するためのプログラムです。
スマートコントラクトでは、どこかのサーバーでコードが実行されることはないので、ホストレベルでの単一障害点は存在しないということです。ユーザーはソフトウェアが公開されていれば、監査でき、開発者はシャットダウンや変更ができないようにコントラクトを設計できます。
ブロックチェーンを活用したアプリケーションとしては以下のような例があります。
ブロックチェーンテクノロジーには幅広いユースケースがあります。以下で、バイナンスアカデミーで紹介しているユースケースを紹介します。
パブリックブロックチェーンはパーミッションレスなシステムなので、参加者となるために必要な認証プロセスなどはありません。ビットコインや他の仮想通貨では、オープンソースのソフトウェアをダウンロードするだけでユーザーはネットワークに参加することができます。
これらの元帳へのアクセシビリティを考えると、参加者をBANするのは非常に困難で、ネットワーク全体をオフラインにするのはほぼ不可能です。このような、アクセシビリティはあらゆる種類のユーザーにとってブロックチェーンを魅力的なツールとします。
ブロックチェーンの最も有名なアプリケーションは金融取引に使われていますが、将来的にはブロックチェーンが活躍しそうな分野は他にも多くあります。