Proof of Authorityって何??
今日もまたコンセンサスアルゴリズムについて紹介したいと思います。
今回紹介するのはProof of Authority(PoA)というコンセンサスアルゴリズムです。
直訳すると「権威の証明」ですね。何だか偉そうな響きがしますw
Proof of Workではマシンパワーを、Proof of Stakeでは保有する仮想通貨の量を、それぞれProofとして差し出していますが、このPoAで差し出すのはIdentityです。政府が発行した文書などでこのプラットフォーム上の自分の身分を保証するということです。
PoSでは、自分の資産をあらかじめStakeすることで、ブロック生成に参加しており、不正するとStakeしていた資産が全て没収されます。だから誰も不正しません。
しかし、この仕組みだと、同じ1,000ETHをStakeしているAさんとBさんがいたとして、Aさんはその1,000ETHが財産の半分なら不正を起こす気になりませんが、Bさんはその1,000ETHが財産の1%程度に過ぎなかったら不正を起こす気になりうるという事態もありえます。
PoAはこれを解決したいのです。
仮想通貨ではなく、自分のIdentityをStakeすれば、そんな状態で不正するわけないよね。ということです。まぁそりゃそうなんだけどw
欠点はvalidatorの数があまりにも少ないと、validatorさえ狙えば簡単に乗っ取りができてしまうということです。
そのため、validatorの数は50人くらいは必要とされています。
ある程度の人数を確保していれば、1人や2人のIdentityが盗まれて成り済まされてもそれだけでネットワーク全体を乗っ取ることは不可能です。
また、他の欠点として、PoAがPoWなど他のコンセンサスアルゴリズムと決定的に異なり、PoAは中央集権的だということが挙げられます。
クローズドな関係性の中で用いられるコンセンサスアルゴリズムになりそうですね。
参考資料の例だと、地域の病院同士で流行している病気の追跡や分析をしたい時などに使えるのではないか?とありました。
実際イーサリアムでも、testnet環境ではこのアルゴリズムが用いられています。
書いた人
参考資料
この記事が気に入ったらサポートをしてみませんか?