プルーフ・オブ・オーソリティ(Proof of Authority)とは?Cryptoeconomics Studyの解説動画を紹介

編集部おすすめ

イーサリアム(Ethereum)開発者であるカール・フローシュ(Karl Floersch)氏が始めた仮想通貨やブロックチェーンを学べるウェブサイトの「Cryptoeconomics Study」から、プルーフ・オブ・オーソリティー(Proof of Authority)について解説したビデオを紹介。

プルーフ・オブ・オーソリティ(Proof of Authority)とは

セクション2.4では、二重支払いという厄介な問題を解決するために中央機関を復権させたProof of Authority(PoA)について説明する。以前は、参加者みんなによって承認された中央機関があった。これは、正しい状態について参加者間で意見が一致しない場合、中央機関に問い合わせる仕組みだ。

参加者はトランザクションに署名し、直接取引相手に送る代わりにそれを中央機関に送信する。中央機関は受け取ったトランザクションに署名し承認する。中央機関はこのトランザクションを全員に送信し、全員がそれを福音のように信じて受け入れる。

二重支払い問題の解決

ここで二重支払いを行うとどのようなことが起きるのか試してみよう。Malloryが矛盾した2つのトランザクション中央機関に送信する。中央機関は1つ目のトランザクションを受け取って署名する。次に2つ目のトランザクションを受け取って署名する。中央機関はこれらを参加者に伝播し、全員が受信する。参加者全員が中央機関によるトランザクションの順序付けを参照することができ、同じ履歴情報を持つことになる。

状態を順に確認していくと、まずAliceがJingにトランザクションを送り、次にMalloryがAliceに、そしてMalloryがJingに送金している。しかし、最後のトランザクションは成功しない。なぜならMalloryには十分な残高が無いからだ。このように、中央機関によって参加者全員の合意を形成する方法は二重支払いの問題に対処することができる。

中央機関を取り除くと発生する問題

問題はトランザクションの順序について合意するためには中央機関を信頼しなくてはならないことだ。では中央機関を取り除くとどのような問題が発生するのか。1つは二重支払いの問題だ。そして、検閲の問題が新しく発生する。

まず二重支払いについて説明する。何度も見てきたように、Malloryが2つのトランザクションの両方に署名し、それらのトランザクションが同時に発生するようにする。どちらのトランザクションが先に来るのかは分からないため、Malloryはトランザクションを選択的に伝播し各ノードを混乱させることができる。その結果参加者間の合意は形成されない。

検閲はPoAチェーンが持つ新しい課題だ。MalloryはAliceのことが嫌いだとしよう。Aliceはトランザクションを1つ送信するが、中央機関(のような立場に立ったMallory)はトランザクションを見て、それがAliceからのものだと気付くと破棄してしまう。そのため、Aliceはもう一度トランザクションを送信するがまた破棄されてしまう。Aliceにはいったい何が起きているのか分からない。トランザクションは通過することができず、検閲が成功したことになる。

2つの問題への対処

これらの問題には潜在的な緩和策が存在する。政治的に権威を分散させることにより、Malloryのようなユーザによる権威のコントロールを理論的に困難にすることが可能だ。1つの中央機関を持つ代わりに、4つの異なる権威がああるとする。各権威はそれぞれ異なる集団の利益を代表し、協力してトランザクションを承認する。これはマルチシグと呼ばれている。4つの権威は全員でトランザクションを承認する。

まず1つ目の権威がAliceからJingへのトランザクションを受信して承認する。次に2つ目の権威がこのトランザクションを受信して承認する。ここで、参加者は4つの内2つまたは4つの内3つの権威に承認されたトランザクションを受け入れることができる。これは、2つまたは3つの署名を持つトランザクションを受け入れるということだ。あるいは、承認のためにすべての署名を必須とすることもできる。これはのマルチシグ次第だ。

完璧ではないがベター

これらの権威がすべてMalloryのものであったとしたらどうだろうか。やはり二重支払いと検閲の問題が発生する。つまり、この仕組みは完璧ではないということだ。しかし、PoAは中央集権的な決済処理機関よりもいくつかの点でより良いものとなっている。なぜなら、すくなくとも参加者はすべてのトランザクションを自分たち自身で実行しており二重支払いを検知することができるからだ。しかし、技術的には二重支払いと検閲が可能だ。これは問題だ。権威へのオープンアクセスは無く、その1つになることは恐らく難しい。また、権威を罰することのできるプロトコル上のペナルティもない。

分散型の合意形成

そこで賢いAliceは別の方法を取ることにした。その方法とは、権威を取り除き、いわゆるマイナーとなって合意形成プロトコルに参加することだ。これは、合意形成プロトコルへのオープンアクセスを手に入れることを意味する。そして良い行動には経済的な報酬が与えられる。このような方法の合意形成は機能する。また、悪い行動には経済的なペナルティを課す。もし悪い行動を検知したらその人のコインを燃やしてしまう。この仕組みの詳細はチャプター3のプルーフ・オブ・ワーク(Proof of Work)で扱う。

関連
【仮想通貨(ビットコイン)の始め方】初心者でもわかりやすい解説コラム
ブロックチェーンとは?分散型台帳との違い、利用が進むその魅力とは?

参考
Cryptoeconomics Study