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

カテゴリ glossary

コンセンサスアルゴリズムとは、仮想通貨のブロックを追加する際の合意形成アルゴリズムのことです。

 

仮想通貨のトランザクションの記録は、複数のマイナーによるマイニングによって成り立っています。

通常、マイナーたちは同じトランザクションの記録や計算処理を行っているため、マイナーごとの処理の結果はまったく同じになるはずです。

しかし、実際には多少の計算ミスや、悪意のあるデータの改ざんなどが含まれており、全員の答えが一致しない場合があります。

 

コンセンサスアルゴリズムは、そのような最終的なトランザクションの処理の結果がマイナーごとに異なった場合に、どのマイナーの結果を正しいと処理するかを決めるアルゴリズムです。

処理結果が正しいとされるということは、マイニングの際に発生するマイニング報酬が付与されることも同時に意味します。

 

このような誰が正しいかを決めるという意味合いから「コンセンサス(意見の一致。合意)」という言葉が使用されています。

 

コンセンサスアルゴリズムは、仮想通貨ごとに異なります。

ここでは、一例としてビットコインのコンセンサスアルゴリズムの説明をします。

 

ビットコインの場合は、PoW(PoW:プルーフ・オブ・ワーク)というコンセンサスアルゴリズムが使われています。

PoWの場合は、最も早く計算処理を行ったマイナーの答えを正しいものとしています。

計算処理の速度が求められるため、必然的にマシンパワーを向上させる必要があります。

すなわちPoWでの合意形成の場合は、マシンパワーの強さが最終的な結果への影響度の高さを表します。

 

PoW以外にもコンセンサスアルゴリズムは数多く存在しています。

代表的なコンセンサスアルゴリズムの例を一部紹介します。

 

代表的なコンセンサスアルゴリズム

PoW(Proof of Work:プルーフ・オブ・ワーク)

PoS(Proof of Stake:プルーフ・オブ・ステーク)

PoI(Proof of Importance:プルーフ・オブ・インポータンス)

PoC(Proof of Consensus:プルーフ・オブ・コンセンサス)

 

それぞれのコンセンサスアルゴリズムに特徴があり、メリットデメリットが存在しています。あくまでもコンセンサスアルゴリズムは仕様であり、アルゴリズムや仮想通貨ごとの優劣をつけるものではありません。

投稿者

Liquid編集部(基礎)