Kim Seogyu
Blockchain

Istanbul Byzantine Fault Tolerance (IBFT)

IBFT 합의의 단계, 정족수 조건, 운영 시 주의점을 간결하게 정리합니다.

Published 2025년 12월 27일2 min read212 words

Istanbul Byzantine Fault Tolerance (IBFT)

IBFT 한 줄 요약

IBFT는 PBFT 계열의 합의 프로토콜로, 승인된 validator 집합에서 빠른 최종성(finality)을 제공합니다.

신뢰 가정

  • 총 validator 수를 n, 비잔틴 노드 수를 f라고 할 때:
    • 안전성/진행성을 위해 일반적으로 n >= 3f + 1 가정.
    • 주요 단계에서 2f + 1 서명이 필요.

예: validator 4개면 최대 1개 비정상 노드를 허용할 수 있습니다.

합의 단계

  1. Pre-prepare: proposer가 블록 제안.
  2. Prepare: validator들이 제안 블록 해시를 확인 후 prepare 브로드캐스트.
  3. Commit: 충분한 prepare를 확인한 validator가 commit 브로드캐스트.
  4. Finalize: 2f + 1 commit이 모이면 블록 확정.

Round Change

proposer가 실패하거나 네트워크 지연이 길어 타임아웃이 나면 round를 올리고 새 proposer로 재시도합니다. 이 과정이 liveness를 보장하는 핵심입니다.

장점

  • PoW 대비 짧은 확정 시간.
  • 확정된 블록의 되돌림 가능성이 매우 낮음.
  • permissioned 네트워크에서 예측 가능한 처리량.

한계

  • validator 수가 커질수록 메시지 교환 비용 증가.
  • 네트워크 분할 시 진행성 저하 가능.
  • validator 운영/키 관리가 보안의 핵심 병목.

운영 체크포인트

  • 타임아웃 값은 실제 RTT 분포를 기준으로 조정.
  • validator 세트 변경 절차를 자동화하고 감사 로그 보존.
  • 재시작/재동기화 시나리오를 테스트넷에서 반복 검증.

요약

IBFT는 "빠른 finality"가 강점인 대신, validator 운영 품질이 성능과 안정성을 좌우합니다. 프로토콜 이해보다 운영 시뮬레이션과 장애 훈련이 더 중요합니다.

Share

Related Articles

Comments

이 블로그는 제가 알고 있는 것들을 잊지 않기 위해 기록하는 공간입니다.
직접 작성한 글도 있고, AI의 도움을 받아 정리한 글도 있습니다.
정확하지 않은 내용이 있을 수 있으니 참고용으로 봐주세요.

© 2026 Seogyu Kim