イーサリアムで見る「PoS」と「PoI」の仕組み
PoWからPoSへの移行
時価総額2位のイーサリアムは、ビットコインと同じPoWを採用していました。しかし、流通量が増えるにつれPoWの消費電力増大や決済手数料アップの問題に直面し、開発者コミュニティはこれらの問題に対処するためにPoSに切り替えることを決断しました。この移行はイーサリアム1.0からイーサリアム2.0へのバージョンアップと呼ばれ、イーサリアム2.0は手数料を下げる仕組みが組み込まれています。
移行作業
コンセンサスアルゴリズムの変更作業は大きな出来事なので、図3のようにフェーズに分けて段階的に切り替え作業が行われています。
【フェーズ0】(2020年12月1日):ビーコンチェーンの立ち上げ
新しいチェーンとなるビーコンチェーンを立ち上げて、ユーザーが新しい仮想通貨(ETH)のバリデータになることを可能としました。まだ、メインのブロックチェーンに影響せず、並んで存在する形態です。
【フェーズ1】(2022年初め):スマートコントラクト
新しいチェーンがイーサリアムのトランザクションの全履歴を格納し、PoSネットワークでスマートコントラクトをサポートしました。
【フェーズ2】(2022年9月19日):マージ完了
従来からのメインネットがビーコンチェーンとマージされ、イーサリアム2.0としてイーサリアムの全履歴が新しいチェーンに転送されました。なお、PoWのマイナーたちにバージョンアップを促すためにマイニングの難しさを増大させる難易度爆弾(difficulty bomb)を落として、氷河期にするという計画が立てられたのですが、利害が絡む問題でありP2Pでは実施が難しいのでしょうか、爆弾投下が何回も延期されています。
【フェーズ3】(2023年後半):シャーディング
シャーディングと呼ばれるスケーラビリティソリューションが可能となり、これで予定していた作業がすべて完了となります。
シャーディング
シャーディング(Sharding)とは、1つのテーブルを複数のコンピュータにレコード単位に分散して記録する方式で、水平分割とも呼ばれています。
データ量が膨大になった場合に、それを1つのデータベースに格納していると処理速度が遅くなります。その対策として、1つのデータベースを複数のデータベースに分散して記録する技術がパーティショニングです。パーティショニングには、図4のように垂直パーティショニングと水平パーティショニングがあります。
図4の上が垂直パーティショニングで、オリジナルデータを列(カラム)単位でデータベース分割しています。下が水平パーティショニングで、オリジナルデータを行(レコード)単位に複数のデータベースに分割しています。
シャーディングは水平パーティショニングです。同じ構造のテーブルを複数のデータベースに用意し、記録されるレコードを分散することで、各データベースに格納されるレコード量を減らすことができます。この技術は膨大な取引情報を格納する必要があるブロックチェーンに有効です。各バリデータがシャーディングを使えるようにすることで、処理速度が大幅に向上すると期待されています。
スマートコントラクト
ブロックチェーンの説明でよく出てくるスマートコントラクト(Smart Contract)という言葉は、ひと言でいえば「事前に契約したとおりに自動処理される」という意味です。お金を入れたらペットボトルが出てくる自動販売機によく例えられますが、責任者がいないP2Pネットワークで取引する上で信用上非常に重要な概念です。
ところで、人々がお金を投じる宝くじは還元率45.7%、競馬は払戻率77.5%と決められていますが、これは本当に守られているのでしょうか。いや、誰もそんなこと疑わないですよね。その理由は、宝くじは全国の地方自治体が発売元、中央競馬は中央競馬会(JRA)が主催しており、不正をするはずがないと信用しているからです。
では、仮想通貨はどうでしょうか。ビットコインで一番早く当たりナンスを見つけた人に決められた報酬が与えられる、イーサリアムでコインを多く持っている人に決められた割合だけ当たりくじを引く確率が高くなる、仮想通貨に半減期があって発行枚数が決まっている。普通に考えれば、これらのルールが正しく行われているのか気になりますね。
しかし、仮想通貨のセキュリティについていろいろ指摘する人も、この部分のリスクに言及する人はほとんどいません。中央管理者(=責任者)のいないP2Pネットワークで、マイナー(バリデータ)や利用者が安心して資金や資産を投資するのは、その仕組み(スマートコントラクト)がすべてプログラミングコードという形でブロックチェーンに格納されているからです。
図5にスマートコントラクトのイメージを示しました。流れ自体は当たり前のことで、事前に取り決められた通りに処理されて決済(コインの譲渡)が行われるだけです。スマートコントラクトは、仮想通貨の取引からさまざまなビジネスに広がりつつあります。例えば、海外企業と取引をして商品を受け取り、支払いを行うとしましょう。商品が届いたら自動的に支払いを起こす処理がプログラムに組み込まれているため、商品を輸出する方も安心して取引できるのです。
ホテル予約の例の方がピンとくるかも知れません。前日キャンセルの場合にキャンセル料が50%発生するというホテルを予約したとしましょう。支払いを現地払いにしていると、前日にキャンセルしたのにゴリ押し(契約違反)して支払わないこともできるかも知れません(良い子のみなさんは真似しちゃだめです)。しかし、予約時にクレジットカードで決済していると自動的にキャンセル料50%が徴収され、駄々をこねてもそれを阻止できません。このように、コンピュータの仕組みで「契約内容が改ざんされない」「中央管理者がいなくても自動的に契約が履行される」のがスマートコントラクトなのです。
ビットコインは仮想通貨に徹していますが、イーサリアムは仮想通貨以外に決済のプラットフォームとしても存在感を表しています。スマートコントラクトの仕組みを用意し、貿易やホテルだけでなく住宅ローン(貸し手と借り手の契約)、知的財産保護(所有権の移動と対価の支払い)、保険契約などさまざまなビジネスの取引の決済プラットフォームとして使われているのです。イーサリアムのスマートコントラクトを利用すると送金手数料とは別にスマートコントラクト利用料が発生し、これらの手数料(GASと呼ばれています)もバリデータの報酬となっています。
POI
実はPoW、PoSのほかにPoIというコンセンサスアルゴリズムもあります。PoWは「仕事をした人(Work)が得する」、PoSは「持っている人(Stake)が得する」という考え方なのに対し、PoI(Proof of Importance)は「持っていて、かつ流通している重要な人(Importance)が得する」という考え方で報酬を与えます。
PoIの考え方の基本は、PoSで懸念される流動性の確保です。PoSは保有している方が有利ですが、PoIはそれに加えてたくさん利用している人に当たる確率を高くしています。株式の場合、出来高の低い株は価格が下がりやすいですが、仮想通貨も似たような傾向があります。そのため、通貨を保有して、それをきちんと使ってくれている人が仮想通貨にとって重要(Importance)だという考え方になっています。
まとめ
第5回の今回は、以下の内容について学習しました。
- ビットコインのPoWの消費電力量が膨大となり、エコの観点から世界中で問題視されていること
- マイニング専用コンピュータや冷却装置などの投資が飛躍的に増え、普通の仮想通貨はPoWだと投資対効果が合いにくくなっていること
- 株式と同じく仮想通貨もさまざまな銘柄(通貨)があり、世界中の取引所で売り買いされていること
- 株式と同じく仮想通貨も時価総額と流通量(流動性)という概念があること
- PoWの課題に対応するためPoSというコンセンサスアルゴリズムが誕生していること
- PoSの課題に対応するためPoIというコンセンスアルゴリズムが誕生していること
- イーサリアムは、スマートコントラクトのプラットフォームとして使われていること
次回からは、いよいよスマートコントラクトのプラットフォームの上のアプリケーションにテーマを移します。NFTやDAppsなど、Web3というネーミングの中核について解説しますので、お楽しみに!
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- ブロックチェーン(2)ブロックチェーンの構造と仕組み(マイニング・PoW)
- PoWにおける多数決方式とハードフォーク
- ブロックチェーンの取引情報の管理とチェーンの維持
- 「DApps」と「メタバース」
- 「スマートコントラクト」の仕組みと「NFT」の事例
- 特徴や仕組みを理解!アルトコイン(altcoin)とは
- エンタープライズグレードのブロックチェーンを発展させる「Hyperledger」とは
- ベルリンのスタートアップに聞いてみた!BrickBlock―ブロックチェーン技術の開発に関わる面白さと彼らの見る未来とは?
- 「Open Source Forum 2019」開催 ― キーマンが語る企業や社会の要素となるOSS技術とは
- Web3の概要とブロックチェーン(1)