4 月 9 日、Nervos & Cryptape の研究者であり、CKB コンセンサスアルゴリズム NC-Max の設計者である張韌博士が香港で開催された「Web3 学者峰会 2024」に招待され、テーマ講演「中本コンセンサス以外のすべてのコンセンサスプロトコルに対する私の偏見」を行いました。
講演動画を見る(バイリンガル字幕、WeChat 公式アカウントの記事内で視聴する必要があります):https://mp.weixin.qq.com/s/UWqZQGgZcMh5Zed_cxftOA
以下は、張韌博士の英語の講演に基づいて整理した内容です(動画の内容と異なる場合は動画を基準としてください):
私がここで講演するために招待されたとき、私はこれが一連の業界サミットの中の学者会議であることに驚きました。この事実は、私のそれほど長くない研究者としてのキャリアの中での核心的な問題を再び浮き彫りにしました:研究者はブロックチェーンの世界でどのような役割を果たすべきか?より具体的には、私の役割は何でしょうか?研究者とは一体何なのでしょうか?
ある研究者は神として見なされ、彼らは不可能を可能にし、中本聡のように巨大な産業を生み出しました。別の者は神の役割を果たし、真実を追求し、法律や道徳に縛られません。他の者は神託を伝える者であり、人間の限界を思い出させ、宇宙の法則を明らかにします。しかし、ブロックチェーンの世界はもはや神や神託を伝える者を必要としていません。開発者や起業家たちは、私たちが何ができないかを教える必要はありません。少なくとも、私はまだそのような存在にはなれていません。
したがって、私は偉大なものを創造したり明らかにしたりできないことを知ったとき、自称偉大なものを破壊することに喜びを見出しました。私は自分の本当の才能を発見しました。この発見は、Bitcoin Unlimited というビットコインのスケーリングプロトコルを批判したことから生まれました。この話は後でお話しします。私の本当の才能は、他の人を不幸にすることです。他人を不幸にする元凶になることは、私にとって大きな喜びをもたらしました。私は孤独ではありません。今日の議題を見て、ほとんどの講演者が公認のセキュリティ研究者であることに気づきました。セキュリティ研究者になることを選ぶということは、私たちには何らかの深層心理的な問題があるに違いありません。ドイツ語にはこの快感を表す言葉、Schadenfreude があります。
したがって、私は牛虻(gadfly、批判し、論争を引き起こし、人々を不安にさせる者)になりたいと思っています。ソクラテスは自らを牛虻に例え、人々を叩き、彼らを怒らせることで真実のために戦いました。私はここで何をしているのでしょうか?私は偏見を広めています。これが私の見解です。時には、これらの見解は何度も拒否され、その後、考え方の柔軟な査読者によって受け入れられ、発表されます。学術界の外では、これらの見解は愛されることもあれば、嫌われることもあります。私の母校の鄭也夫教授がかつて言ったように:「博士号は他人を自分の偏見を信じさせる能力を与える。偏見のない人はなんと退屈なことか!」
「中本コンセンサス以外のすべてのコンセンサスプロトコルに対する私の偏見」、これが私の講演の題目です。私は 5 つの異なるタイプのプロトコルを深く掘り下げていきます。あなたたちのほとんどがイーサリアムに興味を持っていることを知っているので、私はそれを最後に残しました。もし私が少し時間をオーバーした場合、司会者が私を中断しなければならないとき、彼らは少し罪悪感を感じるでしょう!
まず、Bitcoin Unlimitedについて。下の図は、GHOST プロトコルの設計者であり、Kaspa の創設者である Yonatan Sompolinsky です。私の博士課程の初期に、彼は私を指導してくれました。2017 年に戻ると、彼は電話で私に「ビットコインは 2 つのチェーンに分裂しようとしている。おそらくあなたは何かできるかもしれない」と言いました。
図:Yonatan Sompolinsky
では、その時何が起こったのでしょうか?あまりにも若くて記憶に残っていない人のために、2017 年にはビットコインがどのようにスループットを向上させるべきかについてのビットコインスケーリング論争がありました。マイナーの間で最も人気のある方法は、Bitcoin Unlimited というプロトコルで、ネットワークを分裂させることなくブロックサイズ制限を引き上げることができると主張していました。その支持者たちは、その優位性に自信を持ち、超多数になると 51% 攻撃を仕掛けると主張しました。しかし、コミュニティはその安全性を懸念していました。Bitcoin Unlimited の支持者は、この攻撃は「攻撃者が支払うコストが被害者をはるかに上回る」と主張しました。
時間が限られているため、技術的な詳細を紹介する時間はありませんが、少しだけお話しします。BU にはブロックの有効性に関するコンセンサスがありません。つまり、あなたにとって有効なブロックが他の人にとっては無効であり、各マイナーが自分で選択します。有効なブロックとは何でしょうか?各マイナーには独自のブロックサイズ制限があります。この研究では、BU の支持者が 3 つの異なるインセンティブモデルの下での主張を分析した結果、BU はすべてのケースでビットコインの安全性を弱めることが示されました。
本質的に、BU では攻撃者がブロックを生成し、誠実なマイニングパワーが 2 つの異なるチェーンに分裂することができます。最終的に、これらの 2 つのチェーンは合流し、攻撃者のブロックが複数の誠実なブロックを孤立させることができます。したがって、私の見解では、BU のスローガンは「Bitcoin Unlimited は潜在的な攻撃を解放した」に変更されるべきです。
私たちの論文「On the Necessity of a Prescribed Block Validity Consensus: Analyzing Bitcoin Unlimited Mining Protocol」が発表された後、BU の支持率はすぐに低下しました。CoinDesk は私たちの研究成果を報じ、BU の安全性に関する議論を終わらせました。数ヶ月後、BU の支持率はゼロにまで低下しました。この論文は年末に CoNEXT で発表されました。
次に、他の 9 つの PoW プロトコルについて。中本コンセンサス(NC)を改善するために、私はモデルを設計し、数十のアイデアを評価しましたが、完璧なものはありませんでした。しかし、これらの欠陥のあるアイデアは次々と発表され、安全性の評価はほとんど行われていませんでした。人々は状況を理解する必要があると思います。私は少し恥ずかしいですが、これは「私が持っていないのだから、あなたも持ってはいけない」というカニの心理に合致しています。
多くのプロトコルが NC を改善できると主張していますが、真の問題は:安全性の面で NC を全面的に超えるプロトコルは存在するのか? これを評価するためには、まず NC を改善する方法を理解する必要があります。
NC の主な弱点はそのチェーンの質が悪く、3 つの攻撃を引き起こすことです:
第一、自私的マイニング攻撃。 自私的マイニングのプロセスはチェーンの質攻撃と同じですが、目的は異なります。自私的マイニング者の目的は利益を高めることですが、チェーンの質攻撃者の目的はメインチェーンブロックの割合を高めることです。これらの 2 つの攻撃は他のコンセンサスプロトコルでは等価ではありません。
第二、二重支払い攻撃。 この部分は飛ばせると思います。皆さんは二重支払い攻撃が何かを知っています。
第三、検閲攻撃。 検閲攻撃では、攻撃者は特定の取引を確認したブロックを無効にしようとします。もし一部のマイナーが攻撃者の主張に同意しなければ、攻撃者はこれらのブロックを無効にしようとします。この攻撃の成功率は非常に低いですが、誠実なマイナーにとって合理的な選択は攻撃者に加わることです。そうすれば、攻撃者が事実上の所有者になります。
他にもマイニングに関連する攻撃がありますが、これらはコンセンサスプロトコルを直接対象としたものではありません。
私たちの評価フレームワークは 4 つの指標で構成されています。NC を上回るプロトコルは、より良いチェーンの質を実現するか、上記の 3 つの攻撃に対してより良く耐える必要があります。 したがって、私たちは NC を上回ると主張するすべてのプロトコルを 2 つのグループに分けました:
- より良いチェーンの質プロトコル:これらは「私はチェーンの質を向上させ、すべての攻撃を根本的に解決できる」と主張し、通常は異なるフォーク解決戦略を採用します。
- 攻撃耐性プロトコル:これらは「私はチェーンの質を向上させる必要はなく、攻撃に耐えることができる」と主張します。このグループはさらに 3 つの小グループに分けられます:
- 全報酬プロトコル:失敗者に補償を行い、自私的マイニングの動機をなくします。
- 罰則プロトコル:すべての競争ブロックを見つけ、どのような場合でも二重支払いが罰せられます。
- 幸運報酬プロトコル:特定の幸運なブロックにのみ報酬を割り当て、これらの幸運なブロックがネットワークの安定のアンカーとなることを期待します。
私たちの結果は、どのプロトコルも NC を全面的に超えることはできないことを示しています。これらは、特定の攻撃者シナリオでのみチェーンの質を向上させたり、ある攻撃に対する耐性を高めるために別の攻撃に対する耐性を犠牲にしたりしています。
私たちは特定のプロトコルに対する一連の攻撃を発見し、これらのプロトコルが目標を達成できない理由を深く掘り下げました。この講演では 2 つの攻撃しか紹介できません。
第一、報酬は攻撃問題を解決しない。 特定の攻撃に対抗するために新しいインセンティブメカニズムを設計しようとするのは一般的な誤りです。攻撃者には異なる動機があり、すべての攻撃を防ぐ報酬メカニズムは存在しません。私たちは「優れたものに報酬を与え、劣ったものに罰を与える」というジレンマを発見しました。すべてのマイニング製品に報酬を与えると、二重支払いのリスクは存在しません。なぜなら、二重支払いの攻撃者はどちらにせよ報酬を得るからです。すべての競争ブロックに罰を与えると、実際には攻撃者に検閲攻撃を行うための新しいツールを提供することになります。幸運なブロックにのみ報酬を与えると、攻撃者は幸運なブロックを利用して報酬を得て、不運なブロックを利用して誠実なマイナーを攻撃することができます。
第二の洞察は、コンセンサスプロトコルの設計方法についてです。私たちは、過度に複雑で分析が難しいプロトコルを設計すべきではありません。また、特定の攻撃戦略、特定の攻撃者のインセンティブ、または現実のパラメータを使用して安全性を分析するべきではありません。 Knudsen がかつて言ったように、「もしプロトコルが安全であることを証明できないなら、それはおそらく安全ではない」と言われています。しかし実際には、Knudsen はこの言葉を決して言っていません。彼が言ったのは、「もし安全であることが証明できるなら、それは安全でない可能性もある」ということです。しかし、私は修正されたその言葉も有効であると思います。中本聡でない限り。
私の論文「Lay Down the Common Metrics: Evaluating Proof-of-Work Consensus Protocols’ Security」は IEEE 2019 で発表されました。
時間が限られているため、第三部 — 分割ブロックチェーンは飛ばします。皆さんはただ、分割は非常に困難であることを覚えておいてください。
第四、2 つの DAG ベースのプロトコルについて。あまり若くない人たちは、ビットコインが安全性の面でトレードオフがあることを知っているはずです。ブロックサイズを増やしたり、ブロック間隔を短縮したりして性能を向上させようとすると、最終的にはより多くの孤立ブロックが生成されます。Yonatan がこの図で示しているように、孤立ブロックが増えると、安全性と性能の両方が実際に悪化します:安全性は低下し、攻撃者は少ないマイニングパワーでより長いチェーンを秘密裏に掘り出すことができます。性能も悪化します。なぜなら、これらの孤立ブロックの伝播に浪費されたすべての帯域幅が取引確認に役立たないからです。
私が設計した NC-Max はこの問題を解決しました。 今日はその仕組みを紹介する時間がありません。私を信じてください、NC-Max はこの問題を解決しました。しかし、NC-Max の論文「NC-Max: Breaking the Security-Performance Tradeoff in Nakamoto Consensus」を発表することも容易ではありませんでした。受理される前に、私たちは何度も拒否されました。受理が難しかった理由の一つは、査読者が常に私たちにこう尋ねてきたからです:「DAG プロトコルが安全性と性能のトレードオフの問題を解決したのであれば、なぜチェーンベースのプロトコルを設計する必要があるのか?」これが私たちに別の研究を行うきっかけとなり、コミュニティを説得するために DAG プロトコルが安全性と性能のトレードオフの問題を解決できないことを示しました。
DAG ベースのプロトコルとは何でしょうか?より高いスループットを実現するために、Yonatan はブロックチェーン構造を有向非巡回グラフ(DAG)に置き換えることを提案しました。各ブロックは複数の前のブロックを持つことができ、複数の並行ブロックが取引確認に貢献できます。しかし、初期の DAG ベースのプロトコルは、安全性の保証が弱いか、部分的な安全分析しか提供できませんでした。
Prism と OHIE の 2 つの DAG ベースのプロトコルだけが、その安全性を証明できます。これらは、取引、同期、確認を分離することで安全性と性能を証明できます。時間が限られているため、今日はそれらの仕組みを紹介する時間がありませんが、彼らの主なアイデアは非常にシンプルで、NC-Max に似ています。したがって、取引確認の重責は、小さなブロックで構成された NC チェーンにかかります。なぜ DAG プロトコルで NC チェーンを使用するのでしょうか?その利点は、NC の安全性証明を借用できることです。NC の安全性証明は非常に成熟しており、厳密です。
彼らは本当に安全性と性能のトレードオフを解決できるのでしょうか?もちろん、できません。この 2 つのプロトコルの問題は、隠れた仮定が存在することです。彼らは複数の小さなブロックを使用し、これらの小さなブロックが短時間で一定の遅延を持ち、常に即座に受け入れられることを期待しています。そうすれば、安全性と性能のトレードオフを回避できると考えています。しかし、この仮定は成り立たず、私たちはこの仮定が誤りであることを示す 2 つの現象を発見しました。
第一の現象はブロックの詰まりと呼ばれます。ネットワークが 1 秒間に 1 つのブロックしか処理できないと仮定すると、2 秒間に 3 つのブロックを掘り出した場合、そのうちの少なくとも 1 つのブロックは 2 秒以内に伝播を完了できません。どんなに小さくても、帯域幅が足りないのです。
第二の現象は遅延前置ブロックと呼ばれます。あなたが小さなブロック、つまりオレンジ色のブロックを持っていて、それが大量の大きなブロックを参照していると仮定します。この小さなブロックがすぐにすべてのマイナーに伝播したとしても、マイナーはすべての大きな前置ブロックを受け取るまでその上でマイニングすることができません。マイナーは大きなブロックを待たなければならず、それらは小さなブロックの前置ブロックです。私たちはいくつかの巧妙な数学的分析を行い、これらも安全性と性能のトレードオフの影響を受けることを示しました。
しかし、この論文を発表することも容易ではありませんでした。なぜなら、査読者が常に私たちにこう尋ねてきたからです:「チェーンベースのプロトコルが安全性と性能のトレードオフの問題を解決したのであれば、なぜ DAG ベースのプロトコルを分析する必要があるのか?」私は異なる査読者がいるかもしれないことを知っていますが、この皮肉な感覚は本物です。私は論文を書くのに 2 年かかりました。なぜなら、あなたたちが私の前の論文が説得力に欠けると言ったからです。今、この論文が完成したのに、あなたは 2 年前に説得されたと言っています。だから、私は自分の立場が非常に困難であることを感じました。私の論文を発表するために、彼らが攻撃しているプロトコルがますます人気を集め、人々がそれを攻撃する価値があると信じるようになることを望みました。
その後、「Security-Performance Tradeoff in DAG-based Proof-of-Work Blockchain Protocols」という論文が NDSS に受理されました。これは NC-Max 論文が受理された会議でもあります。最良の会議が最良の論文を受け入れることを願っています。
最後に、すべての PoS プロトコルについて。技術的な部分が好きな人には申し訳ありませんが、今回の講演の時間が短すぎて、PoS プロトコルを攻撃することに時間を浪費することはできません。本当に興味があるなら、私の 2019 年の講演動画を見てください。その講演では、なぜPoS は決して PoW と同じように安全であり得ないのかを 1 時間かけて説明しました。
正式に分析されるべき攻撃はどれくらい残っていますか?私たちはいくつかの簡単な統計を行いました。私たちの研究グループは、2020 年から 2022 年の間にトップ CS 会議に出現したブロックチェーン論文が 585 本ある小プロジェクトを行いました。驚くべきことに、PoW の論文は依然として PoS の論文よりも多いです。
私たちは以下の洞察を発見しました。中本コンセンサスの正式な分析において、研究者たちはそれが以前考えられていたよりも安全であることを発見しました。しかし、PoS プロトコルに関しては、研究者たちはより多くの攻撃ベクトルを発見しました。 これらの攻撃ベクトルは基本的に私の 2019 年の講演で具体化されました。そして新しい PoS 設計については、私たちはそれらが PoW のような安全性を実現できるかどうか確信が持てません。現在、PoS エコシステムに関する分析や測定研究は存在しません。なぜなら、それらはあまりにも中央集権的であるか、あまりにも均質的だからです。
特に興味深い例は、イーサリアムの PoS です。私はそれを言及するのは、それが非常に興味深いからです。イーサリアムでは、ある人にとって有効なブロックが他の人にとって無効である可能性があり、これはブロックの有効性に関するコンセンサスがないことを意味します。イーサリアムは報酬を配布する際に同期モデルを使用し、ブロックを確認する際に部分的な同期モデルを使用します。思い出してください、もしプロトコルが安全であることを証明できないなら、それはおそらく安全ではないのです。したがって、報酬が優れたものに与えられる可能性があります。思い出してください、報酬は攻撃問題を解決しないのです。
私はこれが非常に良い研究課題だと思います。しかし、私は遅すぎました。多くの研究者が狼の群れのように飛びついており、その中のいくつかの問題はすでに解決されています。イーサリアムは未来を持っていると主張していますが、過去を忘れた者は必ず同じ過ちを繰り返す運命にあります。
次のステップは何でしょうか?これほど多くの研究者がイーサリアムを攻撃している中で、新しい視点を見つけるのは難しく、新しい情報を見つけることは言うまでもありません。しかし、私はそれでも一つ見つけましたが、書くのが遅いです。したがって、私のイーサリアムへの最も誠実な祝福でこの講演を締めくくりたいと思います:私が完成する前に、死なないでください。
ありがとうございました。
関連リンク:
- On the Necessity of a Prescribed Block Validity Consensus: Analyzing Bitcoin Unlimited Mining Protocol: https://eprint.iacr.org/2017/686
- Lay Down the Common Metrics: Evaluating Proof-of-Work Consensus Protocols’ Security: https://www.esat.kuleuven.be/cosic/publications/article-3005.pdf
- NC-Max: Breaking the Security-Performance Tradeoff in Nakamoto Consensus: https://eprint.iacr.org/2020/1101
- Security-Performance Tradeoff in DAG-based Proof-of-Work Blockchain Protocols: https://eprint.iacr.org/2023/1089
- 張韌博士 2019 年の講演動画:https://www.youtube.com/watch?v=gxFm1QieUdE