コンセンサスアルゴリズムの基礎と初心者が抑えておきべき5種類のアルゴリズム

「コンセンサスアルゴリズムって何?」
「コンセンサスアルゴリズムの種類とそれぞれの仕組みについて知りたい」

こんな疑問を抱えている方におすすめの記事です。

仮想通貨ごとの利便性やマイニングの仕組みを調べるにあたって、コンセンサスアルゴリズムを理解することは重要です。

この記事を読むことで、ビットコインなどに代表される通貨のマイニングをより深く理解できることでしょう。

ぜひ最後まで読み進めてみてください。

仮想通貨を特徴づけるコンセンサスアルゴリズムとは?

コンセンサスアルゴリズムとは?

コンセンサスアルゴリズムとは、日本語でいうと「合意方法」となります。取引内容をひとかたまりのブロックにまとめ、暗号化した上でブロックチェーンの最後尾につなげていく。この作業を行うことで仮想通貨の取引は確定し、ブロックチェーンが維持されています。

ブロックの生成について、合意方法としてどのようなコンセンサスアルゴリズムを使用するのかは、仮想通貨ごとに違います。それが、仮想通貨の思想や特徴にもなっているのです。

コンセンサスアルゴリズムは仮想通貨ごとに違う

コンセンサスアルゴリズムは仮想通貨ごとに違う

コンセンサスアルゴリズムは、「データの真正性を担保するルール」といえるでしょう。

例えば、ビットコイン(BTC)ではブロックチェーンを採用していますが、取引データはどこかの中央機関が管理しているわけではなく、世界中の通貨の利用者が同じデータを持ち合っています。そのため、どこかでデータが破損してもカバーできますし、改ざんや捏造があればすぐに発見することができます。

しかし、多くの利用者が持っているデータが正しいものかどうかを証明し、担保する方法が必要です。

そこで、取引データを格納するブロックを「誰が作るか」を定義し、そのルールにもとづいて作られた1つのブロックを「正しいブロック」として認める、というルールが作られました。そのルールのタイプを表すのが、コンセンサスアルゴリズムです。

コンセンサスアルゴリズムは数種類あり、仮想通貨ごとに異なります。それぞれに特徴があり、課題や問題点を抱えたものもあります。多くの仮想通貨に使われているものもあれば、珍しいものもあります。

いずれにしても、仮想通貨の性格や利用目的などによって選択されていますし、手を加えて改善されることもあります。また、通貨によっては、将来的にアルゴリズムの変更が予定されているものもあります。

主なコンセンサスアルゴリズムとその特徴

主なコンセンサスアルゴリズム

現在使われているコンセンサスアルゴリズムの中から、主なものを5つピックアップして紹介しましょう。

PoW(プルーフ・オブ・ワーク)

「PoW(プルーフ・オブ・ワーク)」は、世界初の仮想通貨であり、最も主要な仮想通貨であるビットコインに使われているコンセンサスアルゴリズムです。そのため、ほかの多くのアルトコインでも用いられており、ベーシックなアルゴリズムといえます。

ブロックを生成するには、たった1つの「ナンス値」を探して、膨大な試行錯誤を繰り返さなくてはなりません。それは高い計算能力を使った、世界中のマイナー(採掘者)たちの競争です。

この競争で最も早くゴールした人、つまり最も早く正解であるナンス値を見つけた人がブロック生成の権利を得るのがPoWです。

PoS(プルーフ・オブ・ステーク)

「PoS(プルーフ・オブ・ステーク)」は、誰がブロックを生成するかはランダムに決定されますが、通貨の保有量が多いほどブロックを生成できる確率が高まるコンセンサスアルゴリズムです。2020年1月現在、PoWを採用しているイーサリアム(ETH)が、将来的にPoSに移行する予定であると発表しています。

PoSはPoWとは異なり、計算能力を使った競争が発生しません。そのため、ブロック生成作業のハードルが低く、必要な機材をそろえれば個人レベルでも実践することができます。

同時に膨大な電力も不要ですから環境に優しく、承認スピードも速いという特徴があります。反面、保有量を確保するため、通貨の流動性が落ちやすいという指摘もあります。

PoI(プルーフ・オブ・インポータンス)

「PoI(プルーフ・オブ・インポータンス)」は、通貨の保有量が勘案されるPoSの発展型ともいえる方式で、保有量に加えて取引回数や取引量など、いくつかの指標を設けてその通貨に対する保有者の「重要度」をスコアリングし、その結果をもとにブロック生成者を決める方式です。

コンセンサスアルゴリズムとしてはとても珍しい部類で、仮想通貨ネム(XEM)が唯一の採用例といわれています。
いくつもの視点から保有者が通貨にとって有益で重要な存在なのかどうかをチェックされるため、PoSのように流動性が落ちるという心配はあまりないようです。

ただし、アルゴリズムとしては新しいこと、ネムでしか使われていないことなどから、現実的なメリットやデメリットはまだ明確でないところもあります。

なお、ネムでは取引承認・ブロック生成の作業をマイニングと呼ばず、ハーベスト(収穫)と呼んでいます。

PoC(プルーフ・オブ・コンセンサス)

これまでに紹介してきたコンセンサスアルゴリズムは、条件さえ満たせば誰でも取引承認に関与できる方法でした。しかし、「PoC(プルーフ・オブ・コンセンサス)」は、バリデーターと呼ばれる取引の承認作業を行う特別なノードがすでに存在しており、その方々が承認作業をしています。バリデーターの80%以上がトランザクションを承認すれば取引ができるようになります。

バリデーター同士が承認者として認め合うことによってネットワークが形成されているので、悪意のあるバリデーターによる不正行為を防ぐことができます。

この形に対しては、中央集権的だという批判があります。管理する側が不正を行っても、それを見抜くことができないという理論上の問題を抱えているのも確かでしょう。

一方で、信頼性の高い企業や組織が導入するならば問題はないとも言われており、限られたバリデーターが承認作業を担当するため、処理スピードが速いというメリットがあります。

実際にこのアルゴリズムを採用しているXRP(リップル)は、国際送金システムとして利用され、そのスピードから各国の金融機関の注目を浴びています。

DPoS(デリゲート・プルーフ・オブ・ステーク)

「DPoS(デリゲート・プルーフ・オブ・ステーク)」はPoSの進化型といえるタイプで、LSK(リスク)に採用されていることでも知られています。近年では、このタイプのアルゴリズムを採用する仮想通貨が増加傾向であるともいわれます。

PoSのように単純に通貨保有量の多い人が優先されるのではなく、通貨保有量によって重みづけをした投票を行い、そこでブロック生成者を決定します。

CoincheckではDPosを採用しているLSKのステーキングサービスを提供しています。LSKを一定量保有しているだけで毎月報酬が付与される仕組みですのでチェックしてみてください。

なぜ、さまざまなコンセンサスアルゴリズムがあるのか?

さまざまなコンセンサスアルゴリズム
一連のコンセンサスアルゴリズムは、いずれも必要に応じて生まれてきたものです。そこには、競争原理を唯一のルールとしたり、通貨の健全な発展に寄与している人に管理を委ねようという考えがあったり、それなりの理由があって作られてきました。

ですから、現在使われているこれらのコンセンサスアルゴリズムは、さらに改良が加えられていく可能性がありますし、実際にそうした動きもあります。また、従来にはない、新しいアルゴリズムが登場する可能性も大いにあるのです。

結局どのコンセンサスアルゴリズムが良いの?

現在のところ、広く使われているコンセンサスアルゴリズムは、それぞれ特徴を持っており、仮想通貨そのものの性格や用途に沿って選択されています。ですのでどのコンセンサスアルゴリズムがベストなのか判断は難しく、アルゴリズムに優劣をつけることもできません。

仮想通貨を利用したり、マイニングに挑戦したりする場合には、その通貨がどのコンセンサスアルゴリズムを採用しているか、知っておきましょう。