Skip to main content
QUICK REVIEW

[논문 리뷰] Revisiting hBFT: Speculative Byzantine Fault Tolerance with Minimum Cost

Nibesh Shrestha, Mohan Kumar|arXiv (Cornell University)|2019. 02. 25.
Distributed systems and fault tolerance참고 문헌 5인용 수 5
한 줄 요약

이 논문은 hBFT, 즉 3f + 1 리플리카로 두 단계 합의를 달성한다고 주장하는 비잔티노스 결함내성 합의 프로토콜에서 심각한 안전성 위반을 규명한다. 저자들은 형식적 시나리오를 통해 단일 비잔티노스 주자가 PREPARE 메시지를 이중적으로 전송함으로써 충돌하는 확약을 유도할 수 있음을 입증하며, 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, 즉 두 단계 비잔티노스 결함내성 합의 프로토콜이 3f+1 리플리카 효율성을 주장하는 바의 안전성 보장을 분석하기 위해.
  • 비잔티노스 결함 하에서 두 단계 합의가 3f+1 리플리카로 가능하다는 주장에 도전하기 위해.
  • 비잔티노스 주자가 PREPARE 메시지를 이중적으로 전송함으로써 hBFT가 합의 안전성을 위반하는 구체적 실행 시나리오를 제시하기 위해.
  • 합의가 이미 확약되었음에도 불구하고 커밋 증명서가 존재하지 않을 경우 hBFT의 뷰 변경 프로토콜이 확약된 값을 유지하지 못함을 보여주기 위해.
  • 두 단계 비잔티노스 합의 프로토콜에 대해 5f + 1 리플리카의 이론적 하한선을 강화하기 위해.

제안 방법

  • 비잔티노스 주자가 하나인 최소 4리플리카 시스템(f=1)을 구성하여 hBFT의 안전성을 테스트한다.
  • 두 뷰 실행을 설계: 뷰 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의 뷰 변경 논리에 따라, 커밋 증명서가 없고 b에 대해 f+1(2표)가 있기 때문에 값 b를 선택한다.
  • 뷰 2에서 모든 정상 릴리카(i2, i3, i4)가 값 b를 확약함으로써, 이전에 값 a가 확약된 것과 모순된다.

실험 결과

연구 질문

  • RQ1hBFT는 비잔티노스 결함 하에서 3f + 1 리플리카로 두 단계 합의를 안전하게 달성할 수 있는가?
  • RQ2합의 증명서가 존재하지 않을 경우 hBFT의 뷰 변경 프로토콜은 이전에 확약된 값을 올바르게 유지하는가?
  • RQ3비잔티노스 주자가 PREPARE 메시지를 이중적으로 전송함으로써 합의 안전성에 어떤 영향을 미치는가?
  • RQ4hBFT는 FaB Paxos가 설정한 두 단계 비잔티노스 합의에 대해 5f + 1 리플리카의 이론적 하한선을 위반하는가?
  • RQ5단일 뷰 변경과 4개 리플리카만으로도 안전성 위반을 입증할 수 있는가?

주요 결과

  • hBFT에서 단일 비잔티노스 주자는 메시지 이중성로 동일한 순서 번호에서 두 개의 다른 값(a와 b)이 확약되게 할 수 있다.
  • f=1인 4리플리카 시스템에서 hBFT의 뷰 변경 프로토콜은 커밋 증명서가 없고 b에 대해 f+1(2표)가 있기 때문에 값 b를 선택한다. 그러나 값 a는 2f+1 리플리카(3개 릴리카)에 의해 이미 확약되어 있다.
  • 뷰 변경 메시지에 커밋 증명서가 없기 때문에 새로운 주자는 충돌하는 값을 선택할 수 있으며, 이는 합의 안전성을 침해한다.
  • hBFT는 이미 3개의 정상 릴리카(i2, i3, i1)에 의해 수락된 값 a의 확약을 유지하지 못하며, 이는 안전성 위반을 초래한다.
  • FaB Paxos에서 설정한 5f + 1 리플리카 하한선을 위반하여, 두 단계 합의가 3f + 1 리플리카로는 비잔티노스 결함 하에서 안전하지 않음을 입증한다.
  • 안전성 위반은 정상 실행 중이 아니라, 커밋 증명서 검증 없이 표수에 기반해 잘못된 값을 선택함으로써 발생한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.