Skip to main content
QUICK REVIEW

[論文レビュー] Revisiting hBFT: Speculative Byzantine Fault Tolerance with Minimum Cost

Nibesh Shrestha, Mohan Kumar|arXiv (Cornell University)|Feb 25, 2019
Distributed systems and fault tolerance参考文献 5被引用数 5
ひとこと要約

この論文は、3f + 1レプリカでのみ動作する2段階コンセンサスを達成すると主張する、Byzantine Fault-Tolerant(BFT)コンセンサスプロトコルhBFTにおける深刻な安全違反を特定している。著者らは、形式的なシナリオを用いて、1体のByzantineなプライマリがPREPAREメッセージを二重に送信(equivocation)することで、矛盾するコミットを引き起こすことを示しており、FaB Paxosが確立した5f + 1レプリカの下限を覆し、コンセンサスの安全性を損なっている。

ABSTRACT

FaB Paxos sets a lower bound of 5f + 1 replicas for any two-step consensus protocols tolerating f byzantine failures. Yet, hBFT promises a two-step consensus protocol with only 3f + 1 replicas. As a result, it violates safety property of a consensus protocol. In this note, we review the lower bound set by FaB Paxos and present a simple execution scenario that produces a safety violation in hBFT. To demonstrate the scenario, we require a relatively simple setup with only 4 replicas and one view-change.

研究の動機と目的

  • hBFTという2段階のByzantine Fault-Tolerantコンセンサスプロトコルが、3f+1レプリカの効率性を主張する上で、その安全保証を分析すること。
  • Byzantine故障下でも3f+1レプリカでの2段階コンセンサスが可能であるという主張に反論すること。
  • ByzantineなプライマリによるPREPAREメッセージの二重送信によって、hBFTがコンセンサスの安全性を侵害する具体的な実行シナリオを示すこと。
  • コミット証明書が存在しない状況で、レプリカが矛盾する値を送信した場合に、hBFTのビュー変更プロトコルがコミットされた値を正しく保持できないことを示すこと。
  • 2段階Byzantineコンセンサスプロトコルにおける理論的下限である5f + 1レプリカの必要性を再確認すること。

提案手法

  • 1体のByzantineプライマリ(f=1)を有する最小の4レプリカシステムを構築し、hBFTの安全性をテストする。
  • 2ビューの実行を設計:ビュー1では、プライマリi1が値aとbの両方のPREPAREメッセージを送信する(二重送信)。
  • ビュー1では、レプリカi2とi3が2f+1(3)のCOMMITメッセージを受信し、値aをコミットする。一方、i4は値bをコミットする。
  • ビュー2に移行するためのビュー変更をトリガーし、プライマリi2が2f+1(3)のVIEW-CHANGEメッセージを収集する:i2(値a)、i4(値b)、i1(二重送信のb)。
  • hBFTのビュー変更ロジックに従い、f+1(2)の票がbに集まっていることと、コミット証明書が存在しないことから、値bが選ばれる。
  • ビュー2では、すべての正常なレプリカ(i2, i3, i4)が値bをコミットするが、これは以前に値aがコミットされたことに矛盾する。

実験結果

リサーチクエスチョン

  • RQ1hBFTは、Byzantine故障下でも3f + 1レプリカでのみ動作する2段階コンセンサスを安全に達成できるか?
  • RQ2コミット証明書が存在しない場合、hBFTのビュー変更プロトコルは、以前にコミットされた値を正しく保持できるか?
  • RQ3ByzantineなプライマリがPREPAREメッセージを二重送信することで、コンセンサスの安全性にどのような影響を与えるか?
  • RQ4hBFTは、FaB Paxosが確立した2段階Byzantineコンセンサスにおける5f + 1レプリカの理論的下限に違反するか?
  • RQ54レプリカと1回のビュー変更のみで、安全違反を示すことができるか?

主な発見

  • hBFTにおける1体のByzantineプライマリは、メッセージの二重送信により、同じシーケンス番号で異なる2つの値(aとb)がコミットされる原因となる。
  • f=1の4レプリカシステムにおいて、hBFTのビュー変更プロトコルは、2f+1レプリカ(3レプリカ)が値aをコミットしているにもかかわらず、f+1票(2票)の投票に基づき値bを選択する。
  • ビュー変更メッセージにコミット証明書が存在しないことで、新しいプライマリが矛盾する値を選択でき、コンセンサスの安全性が損なわれる。
  • hBFTは、すでに3人の正常なレプリカ(i2, i3, i1)によって受け入れられていた値aのコミットを保持できず、安全違反を引き起こす。
  • FaB Paxosが確立した5f + 1レプリカの下限に違反しており、3f + 1レプリカでの2段階コンセンサスがByzantine故障下で安全でないことを証明している。
  • 安全違反は通常の実行時ではなく、ビュー変更時に発生しており、証明書の検証なしに票数に基づいて誤った値が選ばれることが原因である。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。