【翻訳文字起こし全文】ジャック・ドーシーのためのビデオ プルーフ・オブ・ワーク(PoW)対プルーフ・オブ・ステーク(PoS)
以下の文章は、チャールズ・ホスキンソンのYouTube動画「ジャック・ドーシーのためのビデオ PoW対PoS」(2021/5/21)を翻訳文字起こししたものです。
HUNNYプールにステーキングしましょう!
HUNNY:ff5eb7a210b3b322271da7f17753a06d107bda666f34be10017ad723
PoolToolで詳細を見る:こちら
内容をPoWとPoSの比較にまとめたものはこちら
皆さん こんにちは Charles Hoskinsonです 暖かい日差しが降り注ぐコロラド州から いつも暖かく いつも晴れていて 時々コロラド州から生放送をしています
昨日は時間がありませんでしたが 今日は少しだけスケジュールに余裕があります
家に帰る前に プルーフ・オブ・ワークとプルーフ・オブ・ステークについて少しお話したいと思います
実はこのビデオは Jack Dorseyのために作られたものなんです
昨日ジャックは プルーフ・オブ・ワークはプルーフ・オブ・ステークよりも優れている なぜならプルーフ・オブ・ワークは中央集権的ではなく より安全だからだと言っていました
これは Bitcoinの学校で教え込まれた人たちがよく言うことですが 奇妙なことです
普通 ほとんどの素人はコンセンサスプロトコルやコンピュータサイエンスに強い意見を持っていません
患者を縫うのに一番好きな外科手術や方法は何ですか というのと同じようなものです 外科医であれば それなりの方法や意見があるでしょう
しかし あなたが素人であれば 「全く分からない」と言うでしょう
分からないですよね
colusa sect dummies(?)とか好きです
誰もが専門家になりたがり 誰もがこのようなことを話したがるので このようなことが起こってしまったのです
このような残念な会話になってしまい 実際に意味のあるものに収束させるのは本当に難しいのです
このビデオの目的は このようなことをどのように考えればいいのかを少しお話しすることです
そして もしあなたが良い意見を持つために労力をいとわないと思っているのであれば そのための素晴らしいリソースを紹介したいと思います
それでは 私の画面をご覧ください
よし
さて まず最初に見ていただきたいのは Leslie lamport氏の素敵な論文です
これはコンピュータサイエンスの分野で最も有名な論文の1つです time clocksとイベントの順序付け 分散システム
Leslieが発表したのは1970年代だったと思います
この論文は約12,000件の引用があります
コンピュータサイエンスの歴史の中で 最も引用された論文の一つです
この論文では 難しい問題の概要と その問題について考え 解決するための方法が述べられています
通常 一人の人間が何かを観察しているとき あなたをAliceとしましょう
よし
ちょっと素敵なドレスを着て ある出来事を見て それを出来事Aと呼ぶことにして 次に出来事Bを見ます
いいですか?これはローカルな環境で起きていることですが Aliceはこれらを順番に並べて 「ああ そうか イベントAが最初に起きて 次にイベントBが起きるんだな」と言うことができます
わかりました
しかし問題は もっと多くのアクターを登場させたときです 例えば ここにはBobがいます
彼はそれを目撃しています
Bobの視点から見ると 彼はイベントBを最初に見たことになります
つまり それが最初に起こったということです
そして もし何かあれば それは2番目に起こると見ています
そこで問題になるのは 誰が正しいのかということです Bobでしょうか?それともAliceですか?これは実に興味深い問題です
そして lamportは他の概念に混じって このことについても実際に議論しています
彼はこれを「部分的順序付け」と呼んでいます
ここから様々なものが生まれ 分散システムというコンピュータサイエンスの美しい 素敵な分野を生み出したのです
この仕事やその他の仕事のために lamportはコンピュータサイエンスのノーベル賞 チューリング賞を受賞しましたが 彼はとても素敵な人です
先日 彼が社内セミナーに登壇し TLAの話をする機会がありました
その中で 私は彼にclocksやPaxosの話をさせようとしたのですが 彼は ああ もうそんなことはしないよ
私はTLAをやるよ
今はね
もし あなたが本当に好奇心旺盛で これらの原理をすべて学びたいと思っているならば まず最初に
まず 1台のコンピュータ上で動作するこれらのタイプのものを学ばなければなりません
そして 次のレベルアップとして 異なる場所にあるコンピュータの集合体に行くのです
私は皆さんのために2つの素晴らしい資料を用意しています 1つ目はMITから出ている一連の講義で MIT 6.82という分散システムクラス用のものです
導入 RPC スレッド GFC レプリケーション Goとスレッドなど すべてをカバーしています
そして 最後の最後にBitcoinの話をしています
ケンブリッジ大学のMartin clipman氏による別の講義シリーズもあり こちらもあらゆる種類のクールなトピックを扱っています
8回の講義シリーズです
どちらも素人向けではなく プログラミングの知識やコンピュータサイエンスの理解がないと最大限に活用することはできません
しかし 重要なのは これはそれ自体がトピックであるということです
私が手術の話をしたのは あることについて強い意見を持つためには 突然 多くの知識が必要になるからです
しかし 一般的には この種の問題について話すときは まず定義や基礎を固めようとするものです
私たちの科学者が行ったことの1つに 約1100の引用がある素敵な論文を書いたことがあります
これがgkl論文です
正式名称は「The Bitcoin Backbone Protocol, analysis and applications」です
この論文は 他の暗号論文と同様に1100回も引用されています 非常に有名な論文は テキサスA&M大学のJuan gray氏とIOHKの卒業生2人によるものです
Aggelosはチーフサイエンティストで 他の人と一緒に大学のAthensラボを運営しているイコールアイアンアーティストです
この論文では 基本的に定義と基礎を作ろうとしています
つまり いくつかの基礎となる機能 例えば コンテンツ検証述語や入力寄与関数などの概念を作っています
そして 暗号通貨のプロトコルを語る方法を提供しています
そして そこからプロパティを得ることができます
特に 共通のプレフィックス・プロパティとチェーン・クオリティ・プロパティの2つです
これが本当に素晴らしいのは 理論的な基礎になっていることです
そして この基礎についてあらゆる種類の興味深く素晴らしい特性を証明することができます
しかし それができたら 次にできることは セキュリティモデルと呼ばれるものを開発することです
セキュリティモデルとは ある種の敵対者がいます
彼は悪人です
片眼鏡 トップハット そして杖を持っています
敵は基本的に 常に何かを壊そうとしていて セキュリティモデルは基本的に 敵がいつ勝つか いつ負けるかを教えてくれます
では どのような攻撃を防御し どのような攻撃を防御できないのでしょうか これは常に敵の能力と関係しています
さて ではあなたの能力は?例えば 彼らは古典的なコンピュータを持っていますか?彼らはあなたのコンピュータにアクセスできますか?通信媒体を盗聴してメッセージを収集できるのか?あるいは 量子コンピューターを持っているのか?よく 暗号通貨は量子コンピュータに対して安全ではないというような話を聞きますが 基本的には 敵が量子コンピュータの能力を持っている場合 セキュリティモデルが成り立たず 敵が勝つ可能性があるということを言っています
これは 暗号技術者がプロトコルをモデル化して構築する際に考えることです
そのため 注文を整理したり あなたの取引や私の取引でどのような出来事が起こったかを決定したり 基本的に分散システムのエンジンとなるプロトコルはたくさんあります
暗号通貨の場合は あるブロックから別のブロックに移動する必要があります
これらのプロトコルは ビザンチンフォールトトレラントまたは非ビザンチンフォールトトレラントと呼ばれるもので ビザンチンアクターを認めることができないかもしれません つまり 敵対者がシステムにいて その敵対者の存在によってシステムが破壊されるかどうかということです
ここでは 非ビザンチン型フォールトトレラントの例として 非常に単純なプロトコルを紹介します
例えば 7人の人間がいるとします
この7人の中から誰かを選んで ブロックチェーンのブロックを作ることにします
そして 乱数発生器を用意して 一人一人に乱数発生器を実行してもらい どれか最小のものをそのラウンドの勝者とするのです
いいですか?実際 インテルはこれを行いました
これは確か sawtoothと呼ばれるものの経過時間の証明か何かだと思います
通常のコンピュータでは このアルゴリズムはそれほど安全ではありません なぜなら 乱数生成器を乗っ取ることができるからです
乱数発生器を乗っ取って 「よし いつもゼロを返せばいい」と言えば 他の人は私と同じかそれ以上の値を持っているので 私はいつも勝てるということになります
なるほど
乱数生成器は実際にはSGX上で動作しているので ビザンチン・アクターのsawtoothは認められないわけです
そのため コードを修正することはできません
これは一例です
これらのプロトコルの開発方法には 多くのニュアンスやエレガンスがあります
しかし プロトコルを開発する際には たとえプルーフ・オブ・ワークであっても 暗黙的にせよ明示的にせよ 何らかの定義の概念が必要であり 何らかのセキュリティ基盤を構築する必要があります
サトシがそれをしなかったのは残念なことでした
ハッシュキャッシュのプルーフ・オブ・ワークをベースにしたプロトコルは素晴らしく インスピレーションに溢れていました
しかし 暗号学者たちが Nakamotoのプルーフ・オブ・ワークで何が起こったのかを理解するために 過去にさかのぼって基礎的なモデルを構築するには 何年もかかりました
そして実際に プルーフ・オブ・ワークには優れたセキュリティ特性がたくさんあることがわかりました
そのことについてお話しましょう
暗号通貨のプロトコルとブロックチェーンについて考えるとき 3つのことが起こります
まず ブロックを作る人を選ぶ必要があります
さて これがステップ1です 次に2ですが 先にブロックを作って配布し ネットワークにプッシュする必要があります
そして3つ目は ネットワークがその作業を受け入れることです
つまり Bitcoinのエネルギー消費はすべてここで発生します
そして ブロックを作るためのピッキングの部分です
そこで何が起こるかというと 人々が行うプルーフ・オブ・ワークがあるのです
人々は基本的に 計算機上の宝くじのようなものを購入しています
そして ある目標値以下のマジックナンバーを獲得すれば 有効なブロックとなります
これは平等主義的な実力主義のプロセスであり 外部の資源です
マイニングはBitcoinの中で行われるものではなく 外部のものです 基本的にこのプロセスを競争的に行うためには 外部のマイナーやASICが必要になります
ソロでやるか 多数のASICを集めたプライベートプールでやるか 分散型プールでやるか 実際にある種のワークユニットで貢献することになります
プルーフ・オブ・ステークとプルーフ・オブ・ワークは 機能的には同じです
プルーフ・オブ・ステークのアルゴリズムをBitcoinシステムの上に置いても同じようにブロックをプッシュすることができます
ほとんどの場合 実装の細部に違いはあるものの そのようになるでしょう
そして そのブロックが良いものかどうかの検証ルール 台帳ルール 受け入れルールが必要になります
このことを概念的に考える最も簡単な方法は ポーカーゲームのようなものだと思います
誰かがデッキをシャッフルしてカードを配るディーラーにならなければなりません
ステップ2は カードを配ることです
ステップ1は ディーラーを選ぶこと
そして ステップ3は デッキを拾い それを見て そのカードを見ることです
その結果 もしエースが5枚で 情報カードであるジョーカーがあった場合 「ちょっと待って これは有効なハンドではない」と言うことができます
そこで問題になるのが 完全な検証ができるかということです あるいは部分的な検証 あるいはブラインド・バリデーション?ブロックが作られる方法について どの程度の妥当性があるのか?暗号通貨の世界では さまざまなコンセンサス・アルゴリズムや台帳のルールがありますが それらはさまざまなレベルを持っています
Bitcoinの場合は 完全に信頼できないシステムになっている傾向があります
ブロックを受け取ると プルーフ・オブ・ワークをチェックしたり ブロックの内容をチェックしたりすることができます また すべての履歴が蓄積されているので そのブロックが本物であり 正当なものであり ロールバックされることはないということを 正直なところ多数派であると仮定して検証することができます
つまり 非常に強力な決定論的システムなのです
完全な非中央集権でこのようなことができるのは非常に稀です
だからこそ Bitcoinは素晴らしいのです
しかし その最初のステップ つまりコレクション マジックバリューは 先ほど述べたように すべてのエネルギー消費の99.9999997%がそこで発生します
プルーフ・オブ・ステークが何をするかというと ある種の合成資源を発明しようということです
つまり 採掘能力 ASICは資源である と考えることができます
任意の期間に すべてのASICのセットが存在することになります もし ユニオンを統合して ASICのセット全体を足すことができれば これは ASICの合計プールです
これがリソースのトータルプールです
合成資源について考えるとき 基本的にあなたがしていることは もし25%のASICがあれば
平均して 25%の確率で魔法の数字を見つけられるはずです
この合成資源の上では 平均して 私の期待値は25%になるはずです 私はディーラーになることができ ブロックを作りに行って それをプッシュすることができ もちろん それが受け入れられれば その利益に応じた報酬を得ることができるのです
なるほど
そこで問題になるのは この合成資源の分配が 公平であるかということです また それは安全なのでしょうか?つまり 意味のある議論をするためには 敵対者に対するセキュリティモデルが必要なのです この論文が非常に重要なのは プルーフ・オブ・ワークがどのようなセキュリティ特性を備えているかについて 非常に厳密な議論ができるからです
そして 合成資源を作って別のタイプのシステムを構築するとしたら そのシステムはどんなセキュリティ特性を持っているのか
そして私たちはその論文を書きました
この論文Ouroborosは もともと2017年に出たものなんですね
しかし 2019年にアップデートされ 新たに集まったいろいろなクールで面白いことが反映されています
そして これはそのGKモデルで作られています
この論文では 基本的に プルーフ・オブ・ステークの設計上の課題について述べています
つまり 「どうやって合成資源を適切に動作させるか」ということです そして その合成資源を使って ブロックを作る人の集まりを正しく選ぶにはどうしたらいいか ということです
もちろん これをモデル化して この種のものに対する厳密なセキュリティ証明を作成しなければなりません
実際にモデル全体を見てみましょう
時間と同期についても書かれていますが どこかで見たことがあるような気がします ああ あったあった
1978年 Lamportの論文を引用しましたが この論文では驚きませんでした
みんなそうしています
アカデミアの仕事です
軽さの特性や チェーンの成長 存在するチェーンの質 gklの共通接頭辞などについて書かれています
そして 何度も何度も大きなセキュリティモデルを構築し この論文に書かれている仮定の下でこれを使えば 基本的にはプルーフ・オブ・ワークのセキュリティと同等のセキュリティが得られるということを論じているのです
さて 問題は この仮定という言葉を使っていることです
これはコンピュータサイエンスの中でも最も危険な言葉で 理想的な機能性と同じです
この仮定とは 基本的に この邪悪な敵を倒すために我々が作ったモデルと仮定の下でのみ この敵を倒すことができるというものです
また 査読付きの論文があるからといって すべての種類の敵 すべての種類の条件に対して安全性が保証されているわけではありません
例えば お互いに会話しているコンピュータには さまざまな通信モデルがあります
そのため コンピュータ間で信号を送ると すべての信号が同期して発生することもあります
また 部分的に同期している場合もあれば 非同期の場合もあります
fisher Lynch Pattersonと可能性の結果と呼ばれる非常にクールなものがありますが これは システムが同期型 非同期型 部分同期型などの場合 セキュリティのレベルについて基本的な制限があることを示しています
これは メッセージの受け渡し方法に限った話です
もう1つは システム内にビザンチン・アクターを何人置けるかということです 3人目ですか?シャーデッドプロトコルや非同期システムではよくあることですね 4番目となると50%になります
実際 Bitcoinはプルーフ・オブ・ワークにより 本当に素晴らしい特性をたくさん持っていることがわかりましたが 例えば 攻撃から回復する能力があります
例えば 時間の経過とともにシステムへの攻撃があったとしても 正直 マイノリティが粘り強くマイニングを続け 攻撃者がやめれば マイノリティチェーンがマジョリティチェーンを元に戻すことができ 復旧することができます
つまり プルーフ・オブ・ワークの中に災害復旧メカニズムがあるということです
プルーフ・オブ・ワークのほとんどは 誰に尋ねるかによるが 部分的に同期的または非同期的です これはAndrew Miller氏のような業界の人々の悩みの種でした
つまり 非常に不快なネットワーク状態でも動作することができ 誰が魔法の値を見つけるのか 事前にはわからないのです
必ずしもそうではありません 多くのコンセンサス・アルゴリズムでは 次に誰がそのブロックを作るのかがわかっています
次のディーラーが誰になるかわかっているようなものです
だから そのディーラーに強要したり 攻撃したりすることができるのです
しかし Bitcoinは予測できません
それに加えて Bitcoinは実際にはかなり合理的なランダム性の源を生成しています
完璧ではありませんし grinding attackを受けることもあります
しかし 適度な量のランダム性が得られます
つまり 50%のセキュリティ特性に加えて 多くの優れたセキュリティ特性を持っているのです
つまり ビザンチン耐性の半分です
この4つをプルーフ・オブ・ステークが再現するのは簡単なことではありません
参加者の選択を公平にするためには ランダム性の源を創造的な新しい方法で確保しなければなりませんし 51%の攻撃から回復しなければなりませんし システムに適切なクロックを用意しなければなりません
通常 人々はNTPのようなシステムからクロックを継承して 物事を同期させています
しかし 実際には システム内でクロックを回避する方法があります
私たちはそのために「Cronos」という論文を書きました
多くの人が「なぜOuroborosの論文がこんなに多いのか」と質問します
Ouroboros論文がたくさんあるのは これらの特性の多くが この論文 つまりオリジナルのOuroboros論文では解決されていないからです 実際にIACR ePrint 暗号の領域におけるほとんどの学術的研究のための暗号アーカイブにアクセスしてみても
Aggelosは私たちのチーフサイエンティストで 彼が最近書いた論文の多くを見ることができますが 彼は非常に饒舌な学者です さあ Ouroborosと入力してみましょう
そうするとね
そうすると Ouroborosの論文がいくつか出てきます
大学のコンポーザブル・タイム・モデルに誇りを持っている私たちは Ouroboros Cronosにたどり着きました Ouroboros Cronosは Christina氏が言うように プライバシーを守るためのカポ・クロック・クリップです Ouroboros BFTは サイドチェーンやフェデレートプロトコルを支援するピギーバックプロトコルです
Genesisでは Genesisからブートストラップすることができます これは プルーフ・オブ・ワーク形式のシステムのもう一つの優れたセキュリティ特性で チェックポイントを設ける必要がなく プルーフ・オブ・ワークをやり直して 与えられたチェーンからすべてをチェックすることができ 適切なチェーン選択ができます
Prowse氏は 適応型セキュリティを半同期モデルに移行しました
これで終わりではありません 例えば ledger Reduxという論文があります
また ledger Reduxでは 51%の攻撃からの回復 すべてのコンセンサスReduxの回復 さらには高速なファイナリティなどについて話しています
つまり この作品では プルーフ・オブ・ワークやプルーフ・オブ・ステークなどの自己治癒力を高めるための処理が書かれています
これには多くの意味があります
とても複雑なことなんです
しかし 一般的にこれを考える最も簡単な方法は エンジンのようなものだと思います
エンジンがあるとき エンジンにはスループットという概念があります
このエンジンにはレイテンシーという概念があり 電力を供給するのにどのくらいの時間がかかるのか?どのくらいの電力を供給できるのかなど キャパシティの概念があります
プルーフ・オブ・ワークはエンジンの一種であり Bitcoinブロックチェーンやイーサリアムなどのブロックチェーンを動かしています
基本的には 一定の時間内にブロックごとに一定量の仕事をこなすことができる というものです
つまり ブロック間の距離は10分でも10秒でもいいのです
いいですか?
つまり ある値の時間tであったり レイテンシーを考慮したり キャパシティはそのブロックにどれだけ入れられるかということです だからプルーフ・オブ・ステークは違うタイプのエンジンです
スループット レイテンシー キャパシティの概念があり さらに 合成資源があれば n個の合成資源を持つことができるなど さまざまなことがあります
今 カルダノでは合成資源はADAですが 任意の数の他のトークンを入れて それらの間で何らかの重み付けをすることができます
そして おそらく1つは 単なる富豪的なものではなく より実力主義的なもので プルーフ・オブ・ステークがあり 投入されたリソースはすべて物理的なハードウェアを必要とします
つまり そのリソースは自分自身で独占する傾向があるということです
そして 多数のマシンから少数のマシンへと 集中化への競争という状況に陥りがちです
小規模なセットには規模の経済性があり 通常は電力を補助したり ASICや特許取得済みハードウェアを最初に入手したりすることができますが これを再現して市場に投入するのは容易ではありません
そのため よく「マイナーは10人以下」と言われます
大手の採掘業者は Bitcoinの資源の50%以上をコントロールしています
合成資源があれば 世界のどこにでも瞬時に移動させることができます
また 複数の合成資源を持つことができ それに応じて重み付けをすることもできます
このように このエンジンの特性は非常に優れています