토픽 4 / 116·블록체인 / 탈중앙화
BFT (Byzantine Fault Tolerance, 비잔틴 장애 허용)
BFT (Byzantine Fault Tolerance, 비잔틴 장애 허용)
분산 시스템에서 일부 노드가 악의적이거나 오작동(비잔틴 장애)하더라도 전체 시스템이 올바른 합의에 도달하는 능력
비잔틴 장군 문제: 분산 환경에서 배신자 존재 시 충성 장군들의 합의 도달 문제, Lamport(1982) 제안
허용 한계: 전체 노드 n개 중 비잔틴 노드 f개일 때 n ≥ 3f + 1 필요 (f < n/3)
PBFT (Practical BFT)
- •단계: Pre-Prepare → Prepare(2f+1) → Commit(2f+1) → Reply
- •통신 복잡도: O(n²), 소규모 네트워크에 적합
- •허가형 블록체인(하이퍼레저)에서 활용
변형 알고리즘: Tendermint(블록체인 최적화), HotStuff(선형 복잡도, LibraBFT), Istanbul BFT
비교: PBFT(결정적/빠름/O(n²)) vs PoW(확률적/느림/51%저항) vs Raft(CFT/비잔틴 미지원)
연관: 합의 알고리즘, 블록체인, 분산 시스템, 하이퍼레저