今回はブロックチェーンについて調べた際に出てくる、プルーフオブワークという言葉の意味について詳しく解説していこうと思います!「ブロックチェーンが何なのか知りたい」ということでしたら以下の記事をまずはご覧ください!👇
Contents
ブロックチェーンのブロックはどうやって作られる?
ブロックチェーンは取引データが詰まったブロックがいくつも数珠つなぎに連なっている構造をしています。しかし、そのブロックはいったいどのようにして作成されるのでしょうか?ここで重要なのは、ブロックチェーンは管理者なしで自律的に動作することと、そのセキュリティを常に高く保つ必要があるという2つをクリアしなければならないということです。
ということは、ただ無作為にブロックを生み出してそこに取引情報を載せ、それをいくつも繋いでいくだけでは成り立たないのです。
コンセンサスアルゴリズムってなんだ?
上記を踏まえると、どのような条件でブロックを作成し、それまでのブロックに連結させるかを決める必要があります。この条件やルールのことをコンセンサスアルゴリズムと呼びます。
ブロックチェーンは管理者がおらず自律的に動作するため、誰かがブロックを生成してそれをチェーンにつなげる必要があります。実はビットコインやイーサリアムといった有名なブロックチェーンは、この世界の誰かがその作業に参加し、今でも管理者なしで自律的に動作させているのです。
そして、このブロックを作成してつなげる一連の作業を誰がやるかを決めるアルゴリズムの1種がプルーフオブワークなのです。
プルーフオブワークとは
コンセンサスアルゴリズムの1種であるプルーフオブワークとはいったいどのような仕組みやルールなのでしょう。それを理解するにはまず、ナンスとハッシュ値という言葉について理解する必要があります。
ナンスとは、ブロック作成時に一度だけ使用される数値のことです。
ハッシュ値とは、ハッシュ関数という特殊な関数を使って計算した計算結果のことです。ハッシュ値には指定された文字数に従って出力される、ランダムっぽい出力をするといった特徴があります。
ハッシュ値はどんなに似た入力だろうが、どんな長さの入力だろうが、一定の文字数でランダムに近い出力をするため、セキュリティ向上のための暗号によく使用されています。
プルーフオブワーク(PoW)はこのハッシュ値から元の入力値であるナンスを計算し、答えを導いた人にブロックをつなげる権限を与え、最後まで成功すれば報酬として高額な仮想通貨を与える仕組みとなります。主にビットコインに使用されています。
ただし、このナンスを求める計算は非常に困難なのと、処理能力高いコンピュータが必要になります。
支払われる仮想通貨はもちろんそのブロックチェーンによって管理されているものになります。したがってブロックをつなげる権利を持った人が悪意のある行動をブロックチェーンに対して行った場合、支払われる通貨に傷がついてしまう(価値が下がる)ため、素直に、そして安全にブロックをつなげる方が合理的となります。これによってブロックチェーンの安全性が保たれているわけです。
また、このようにナンスをコンピュータに計算させてブロックをつなぎ、仮想通貨を得ることをマイニングと呼び、世界中の人がこれに取り組んでいます。
そのほかのコンセンサスアルゴリズム
コンセンサスアルゴリズムには他にもいくつか種類があります。
プルーフオブステーク
これはイーサリアムに使用されているアルゴリズムです。これは、そのブロックチェーンに紐づいた仮想通貨を多く持つ人がブロックをつなぐ権限を大きく持てるという仕組みです。
PoWと同様、つなげる権利を持つ人がブロックチェーンを傷つけるメリットがない、むしろデメリットになるため、信頼が担保された仕組みになっています。
プルーフオブオーソリティ
これはブロックをつなげる権利を投票によって決めるシンプルなアルゴリズムです。プライベートチェーンのような範囲の狭い中でブロックチェーンを管理する際に有効になると考えられます。
まとめ
今回はブロックチェーンを成り立たせるために重要なコンセンサスアルゴリズムの1種であるプルーフオブワークについて解説しました。技術に触れるためにはその仕組みから理解することが重要なため、この記事が少しでも参考になればと思います。
ここまで読んでいただきありがとうございました!
投稿者プロフィール
- 本ブログではAIやブロックチェーンといったITに関する情報やそれらをビジネスに活用する方法などについて投稿していきます!会社のほうでは受託開発やコンサルティングを行ってますのでぜひよろしくお願いします!
コメント