
Paperis 아티클
신뢰 없이 합의하기 — 서로 못 믿는 참여자들이 하나의 장부에 동의하는 법
관리자가 없는데 수천 대의 컴퓨터가 하나의 기록에 동의하는 원리 — 비잔틴 장군 문제와 FLP 불가능성이라는 두 고전적 한계에서 출발해, 작업증명·지분증명·BFT가 각각 무엇을 걸고 무엇을 내주는지, 그리고 '확정됐다'는 말이 계열마다 다른 뜻인 이유까지
신뢰 없이 합의하기 — 서로 못 믿는 참여자들이 하나의 장부에 동의하는 법
왜 알아야 하나
내 은행 잔고가 얼마인지 우리는 어떻게 아는가. 은행이 그렇게 적어 두었기 때문이다. 장부가 하나뿐이고 그것을 지키는 관리자도 하나뿐이므로, "무엇이 진실인가"에는 언제나 답이 있다. 관리자에게 물어보면 된다.
그런데 관리자가 없다면 어떻게 될까. 수천 대의 컴퓨터가 각자 장부 사본을 들고 있고, 그중 누구도 다른 누구를 특별히 신뢰하지 않으며, 일부는 고의로 거짓을 말할 수도 있다면 — 이들은 "지금 장부에 무엇이 적혀 있는가"에 어떻게 동의할까. 이것이 합의(consensus) 문제다.
이 문제가 블록체인과 함께 태어났다고 생각하기 쉽지만 사실은 훨씬 오래됐다. 여러 서버에 데이터를 복제하는 분산 데이터베이스는 오래전부터 Paxos, Raft, 비잔틴 결함 허용 같은 합의 프로토콜로 일관성을 지켜 왔고, 어느 것을 고르느냐는 늘 성능·일관성·신뢰성 사이의 트레이드오프였다 (DOI: 10.36227/techrxiv.175606742.20986239/v1 — 동료심사 전 프리프린트). 은행 전산망도, 항공기 제어 시스템도, 우리가 매일 쓰는 클라우드 서비스도 이미 이 문제를 풀며 돌아가고 있다.
블록체인이 한 일은 이 오래된 문제에 조건을 하나 더 붙인 것이다. 아무나 참여할 수 있게 하는 것. 합의 알고리즘은 중앙 권위에 기대지 않고 탈중앙 시스템 안에서 신뢰와 무결성을 보장하는 장치이며, 그 설계는 하나의 정답으로 수렴하지 않는다 (DOI: 10.63345/sjaibt.v2.i4.102).
이 글의 목표는 하나다. 이 분야의 논문을 펼쳤을 때 첫 문단에서 길을 잃지 않을 만큼의 토대를 쌓는 것. 가격도, 투자도, 어느 코인이 옳은가도 여기서는 다루지 않는다. 오직 "서로 못 믿는 참여자들이 어떻게 하나의 기록에 동의하는가"라는 원리만 본다.
큰 그림: 합의가 요구하는 것
합의 프로토콜에 우리가 바라는 것은 크게 두 가지다.
- 안전성(safety) — 나쁜 일이 일어나지 않는 것. 서로 다른 정직한 참여자가 서로 모순되는 결론에 도달하는 일이 없어야 한다. 같은 돈이 두 번 쓰이는 '이중지불'이 막히는 것도 결국 안전성의 문제다.
- 활성(liveness) — 좋은 일이 언젠가는 일어나는 것. 시스템이 영원히 멈춰 서지 않고 결국 무언가를 결정해야 한다.
고장에도 두 종류가 있다. 하나는 크래시 폴트(crash fault) — 참여자가 그냥 죽거나 응답을 멈추는 것이다. 다른 하나는 비잔틴 폴트(Byzantine fault) — 참여자가 아무 짓이나 할 수 있는 것이다. 거짓말을 하고, 사람마다 다른 말을 하고, 규칙을 어기고, 다른 악의적 참여자와 공모할 수도 있다. 소프트웨어 버그, 운영자 실수, 악의적 공격 모두 이런 임의적 행동을 낳을 수 있다 (DOI: 10.1145/571637.571640).
여기에 열린 네트워크만의 문제가 하나 더 붙는다. 아무나 참여할 수 있다면 한 사람이 신원을 수천 개 만들어 다수인 척할 수 있다. 이것을 시빌 공격(Sybil attack)이라 부른다 — 가짜 신원을 대량으로 내세워 비잔틴 고장을 유도하는 것이다. 공개·무허가 네트워크가 시빌에 견디는 리더 선출 전략을 반드시 요구하는 이유다 (DOI: 10.3390/a16010034).
기억해 둘 지도는 이것이다. 합의 = (안전성 + 활성) × (비잔틴 고장을 견디며) × (열린 네트워크라면 시빌까지 막으며). 앞으로 볼 모든 설계는 이 세 요구를 어떻게 나눠 지느냐의 차이일 뿐이다.
기본 개념과 원리
비잔틴 장군 문제 — 거짓말하는 참여자를 어떻게 견딜 것인가
일부 참여자가 임의로 배신할 수 있을 때 나머지가 하나의 결정에 도달할 수 있는가. 이 물음은 고전적으로 비잔틴 장군 문제(Byzantine Generals Problem)라는 이름으로 정식화되었다. 여러 장군이 한 도시를 포위한 채 전령을 주고받아 '공격'이냐 '후퇴'냐를 정해야 하는데, 일부가 배신자라서 어떤 장군에게는 공격하자고, 다른 장군에게는 후퇴하자고 말할 수 있다는 설정이다.
이 정식화는 두 장군 문제를 일반화한 것으로, 이후 등장한 사실상 모든 합의 알고리즘의 출발점이 되었다 (DOI: 10.3390/s23052739). 초기의 비잔틴 결함 허용 알고리즘들은 이 문제를 풀긴 했으나 통신 부담이 불필요하게 커서 확장성이 제한되었다 (DOI: 10.55677/craj/03-2025-vol02i07).
여기서 '결함 허용'이라는 표현에 주의하자. 비잔틴 결함 허용(BFT)은 배신자를 찾아내는 기술이 아니라, 배신자가 섞여 있어도 결과가 흔들리지 않게 만드는 기술이다. 누가 거짓말쟁이인지 끝내 몰라도 상관없다. 다만 그 수가 일정 비율을 넘지만 않으면 된다.
FLP — 비동기 네트워크의 벽
그렇다면 배신자 수만 적으면 언제나 합의에 도달할 수 있을까. 여기서 이 분야에서 가장 유명한 한계가 등장한다.
1985년 『Journal of the ACM』에 실린 한 논문은 이렇게 증명했다. 비동기 시스템에서, 단 하나의 프로세스만 고장 나도 모든 합의 프로토콜은 끝내 종료하지 못할 가능성을 갖는다. 그 고장이 거짓말도 아닌 단순한 정지(크래시)일 때조차 그렇다. 대조적으로 동기 시스템에서는 — 그 유명한 '비잔틴 장군' 문제에서조차 — 해법이 알려져 있다 (DOI: 10.1145/3149.214121). 저자 세 사람(Fischer·Lynch·Paterson)의 머리글자를 따 흔히 FLP 불가능성이라 부른다 (arXiv:cs/0209014 — 동료심사 전 프리프린트).
'비동기'라는 말이 핵심이다. 여기서 비동기란 메시지가 언제 도착할지 아무 상한도 보장되지 않는 네트워크를 말한다. 이런 세계에서는 응답 없는 참여자를 보고 "죽었다"와 "그냥 느리다"를 원리적으로 구별할 수 없다. 이 구별 불가능성이 바로 벽의 정체다.
벽을 우회하는 네 갈래
FLP는 "합의는 불가능하다"는 말이 아니다. "결정론적으로, 비동기에서, 항상 종료하는 합의는 불가능하다"는 말이다. 세 조건 중 하나만 놓으면 길이 열린다. 실제로 발표 이후 20년간의 연구는 네 가지 확장 모형으로 이 결과를 우회해 왔다. (a) 무작위성(randomization), (b) 추가적 타이밍 가정, (c) 실패 감지기(failure detector), (d) 기본 모형보다 강한 동기화 수단 (arXiv:cs/0209014 — 동료심사 전 프리프린트).
실패 감지기는 프로세스 크래시에 관한 (때로 부정확한) 정보를 주는 장치로, 충분히 강력하면 크래시 허용 합의를 풀 수 있다 (arXiv:1502.02538 — 동료심사 전 프리프린트). 타이밍 가정은 "메시지는 최대 Δ 안에 도착한다"고 못 박는 방식이다. 다만 이 가정에는 대가가 있다. 최장 사슬 프로토콜의 안전성 보장은 Δ가 커질수록 나빠지는데, 현실 네트워크의 지연은 이따금 평소보다 훨씬 커지므로 최악의 지연에 맞춘 보장은 지나치게 비관적일 수 있다. 그래서 지연을 확률분포로 다루는 모형이 제안되기도 했다 (DOI: 10.1287/stsy.2022.0031). 무작위성 쪽에서는, 적대자가 메시지 순서를 지정하는 대신 배달이 무작위 스케줄을 따른다고 가정하면 표준 비동기 모형에서는 불가능한 확률적 보장이 가능해진다는 결과가 있다 (arXiv:2502.09116 — 동료심사 전 프리프린트).
여기서 실무적 사실 하나를 정직하게 짚어 두자. 비동기 네트워크용 합의 프로토콜은 대체로 복잡하고 비효율적이며, 그래서 실제 시스템은 동기 프로토콜에 기대는 경우가 많다 (arXiv:1907.07010 — 동료심사 전 프리프린트). 이론적으로 더 강한 모형이 실무에서 늘 이기는 것은 아니다.
실제로 어떻게 나타나나
토대가 놓였으니, 열린 네트워크에서 이 문제를 푸는 세 갈래를 보자.
작업증명 — 계산으로 투표권을 산다
비트코인이 채택한 나카모토 합의는 작업증명(proof of work, PoW)을 투표 메커니즘으로 쓴다. 사슬을 지키는 데 해시 연산력을 기여하는 정직한 채굴자들은 자신이 아는 가장 긴 사슬을 이어 나가려 한다. 설계는 단순하지만, 어느 시점에든 연산력의 과반을 정직한 참여자가 쥐고 있다는 가정 아래 의미 있는 보안 보장을 얻는다. 전체 연산력이 시간에 따라 크게 요동쳐도 이 성질은 유지된다 (arXiv:2505.14891 — 동료심사 전 프리프린트).
PoW가 시빌 공격을 막는 이치는 이렇다. 신원은 공짜로 만들 수 있지만 연산은 공짜가 아니다. 투표권이 신원 수가 아니라 연산량에 비례하므로, 가짜 신원을 아무리 많이 만들어도 영향력은 늘지 않는다. 무허가 환경에서 강한 시빌 저항성을 갖는 것은 작업증명 아니면 지분증명의 원리를 채택한 몇 안 되는 패러다임뿐이며, 평판 시스템이나 현실 신원 연결에 기대는 방식은 저항성이 제한적이라는 것이 21,799편을 훑은 체계적 문헌 검토의 결론이다 (DOI: 10.3390/a16010034).
이 방식의 대가는 잘 알려져 있다. 에너지 소모, 확장성 병목, 채굴 풀로의 권력 집중이 대표적이다 (DOI: 10.63345/sjaibt.v2.i4.102). 그렇다면 자원만 바꾸면 될까. 저장 공간을 쓰는 '공간증명'이 지속 가능한 대체재로 제안되어 왔지만, 동적 가용성 아래서 안전한 최장 사슬 프로토콜을 공간증명으로 구성하는 법은 아직 알려져 있지 않다. 한 연구는 추가 가정 없이는 그런 프로토콜이 존재하지 않음을 증명하고, 이중지불에 필요한 분기 길이의 하한을 정량화했다 (arXiv:2505.14891 — 동료심사 전 프리프린트). 자원을 바꾸면 보안 성질도 함께 바뀐다.
지분증명 — 돈을 걸어 투표권을 산다
지분증명(proof of stake, PoS)은 다른 답을 낸다. 시빌 공격은, 프로토콜 실행에서의 역할 배분을 장부 자체에 기록된 지분 분포에 근거해 정함으로써 막는다 (arXiv:2001.04187 — 동료심사 전 프리프린트). 신원을 늘려도 지분 총량은 늘지 않으니 시빌은 무의미해진다.
PoS의 경제적 성질을 처음으로 정식 모형화한 연구는, 충분히 절제된 보상 일정이 주어지면 가능한 한 빨리 합의에 이르는 균형이 존재하고 지속적 분기 균형이 배제된다는 것을 보였다. 그 이유가 중요하다. PoW와 달리 PoS는 검증자가 동시에 이해관계자(stakeholder)일 것을 요구하기 때문이다 (DOI: 10.1093/rfs/hhaa075). 사슬을 망가뜨리면 자기가 건 몫이 함께 망가진다는 뜻이다.
여기서 슬래싱(slashing)이 등장한다. 규칙을 어긴 검증자가 걸어 둔 지분을 몰수하는 처벌 장치다. 한 연구는 PoS 보안을 공격자가 치르는 비용(cost-of-corruption)과 공격자가 얻는 이익(profit-from-corruption)으로 나눠 분석하는 틀을 세우고, 몰수된 자금을 배분하는 보험 메커니즘을 제안했다. 목표는 정직한 거래자가 결코 돈을 잃지 않는다는 강한 암호경제적 안전성이다 (arXiv:2401.05797 — 동료심사 전 프리프린트).
지분이 곧 투표권이면 소액 보유자는 참여하기 어려우므로 지분을 모으는 '스테이크 풀'이 생긴다. 한 주체가 여러 풀을 만들어 지배하려는 시도 역시 시빌 공격의 한 형태다. 보상 분배를 잘 설계하면 목표한 수의 풀이 합리적 플레이의 내시 균형으로 형성될 수 있음을 보인 연구가 있는데, 흥미롭게도 겉보기에 더 '공정'해 보이는 단순한 보상이 오히려 중앙집중적 균형으로 수렴하기도 한다 (arXiv:1807.11218 — 동료심사 전 프리프린트).
실제 전환의 결과는 측정되어 있다. 이더리움이 2022년 9월 PoS로 전환한 전후를 분석한 연구는 에너지 소비가 99.98% 감소했고 연속된 블록 사이의 시간이 12초로 일정해졌다고 보고한다 (DOI: 10.3390/commodities2020006).
다만 PoS에도 고유한 취약점이 있다. 몰수로 처벌할 수 없는 장거리(long-range) 안전성 공격에 노출되고, 활성 저항력이 낮으며, 토큰 가치가 낮을 때 부트스트랩이 어렵다는 문제다. 한 연구는 이 문제들이 외부의 신뢰 근원이 없는 모든 PoS 사슬에 내재적이라고 주장하고, 외부 사슬에 체크포인트를 남겨 이를 해소하는 프로토콜을 제안했다 (arXiv:2207.08392 — 동료심사 전 프리프린트).
BFT 계열 — 정족수 투표로 즉시 확정
세 번째 갈래는 고전 분산시스템에서 곧장 이어진다. 정족수(quorum) — 결정을 확정하기에 충분하다고 미리 정해 둔 참여자 수 — 를 채우는 찬성 투표가 모이면 그 자리에서 확정하는 방식이다.
2002년에 정리된 대표적 알고리즘(PBFT)은 인터넷 같은 비동기 환경에서도 안전하며, 시스템 수명 전체에 걸쳐 임의 개수의 고장을 견딜 수 있다고 보고한다. 단, 취약 창(window of vulnerability) 안에서 고장 난 복제본이 전체의 1/3 미만이라는 조건 아래서다 (DOI: 10.1145/571637.571640). 부분 동기 시스템에서 f개의 고장 난 복제본을 견디려면 보통 3f + 1개의 노드가 필요하다 (arXiv:2205.08938 — 동료심사 전 프리프린트).
이 3분의 1이라는 숫자는 정족수의 성질에서 나온다. 서로 다른 두 결정이 각각 정족수의 동의를 받았다면 그 두 정족수는 반드시 겹쳐야 하고, 겹치는 영역에 정직한 참여자가 최소 한 명은 남아 있어야 모순이 드러난다. 이 요구를 만족시키려면 고장 비율에 상한이 생긴다.
BFT의 장점은 명확하다. 확정된 블록은 그 자리에서 확정이다. 대가도 명확하다. 통신량이다. 초기 알고리즘은 메시지가 노드 수의 제곱으로 늘어나 확장성이 제한되었고, 이를 완화하려 비동기 프로토콜을 비롯한 여러 구조가 제안되었다 (DOI: 10.55677/craj/03-2025-vol02i07). 서베이는 이 계열의 개선 시도를 방법별로 분류해 정리한다 (DOI: 10.3390/electronics12183801). 실제로 BFT는 사설·컨소시엄 블록체인에서는 잘 작동하지만 대규모 공개망에서는 확장성이 부족하다는 것이 비교 연구의 진단이다 (DOI: 10.63345/sjaibt.v2.i4.102).
최근 설계들은 이 벽을 여러 방향에서 밀어낸다. 명령 복제는 분산시키고 순서 결정만 중앙화하는 패러다임은 300개 복제본 배치에서 기존 대비 약 3배 처리량·약 50% 나은 지연을 보고했다 (DOI: 10.14778/3538598.3538599). 값비싼 3단계 커밋 없이 낙관적으로 먼저 응답하는 투기적 접근도 있다 (DOI: 10.1145/1323293.1294267). 인증 없는 DAG 위에 세운 비동기 BFT는 광역망에서 1초 미만 지연으로 초당 10만 건이 넘는 처리를 보고한다 (arXiv:2410.08670 — 동료심사 전 프리프린트).
최종성이란 무엇인가
여기까지 왔으면 이 분야에서 가장 자주 오해되는 개념을 정면으로 볼 수 있다. 최종성(finality) — "이 거래는 확정되었다"는 말의 의미다.
핵심은 이것이다. 그 말의 뜻이 계열마다 다르다.
한 연구가 이 대비를 선명하게 정리한다. 나카모토 합의에서는 어떤 블록이 사슬 안에 더 깊이 묻힐수록 더 높은 확신을 얻는다. 반면 BFT 상태기계 복제에서는 일단 커밋된 블록은 고정된 저항 임계치를 갖는 안전한 블록이다 (arXiv:2101.03715 — 동료심사 전 프리프린트).
이 차이가 실무에서 뜻하는 바는 크다. 나카모토 계열에서 "확정"은 언제나 확률적이다. 뒤집힐 확률이 작아질 뿐, 정확히 0이 되는 순간은 오지 않는다. BFT 계열에서 "확정"은 결정론적이다. 정족수가 모인 순간 끝이다. 합의를 결정론적 합의와 확률적 합의로 나누어 보는 것이 이 분야의 표준적 정리 방식이기도 하다 (DOI: 10.54097/hset.v47i.8224).
현실 시스템은 이 둘을 섞기도 한다. 이더리움은 PoS 전환 이후 BFT에 가까워졌지만 나카모토 스타일도 함께 남겨, 참여자들이 블록을 확정하려 애쓰는 동안 사슬이 나무 모양으로 자랄 수 있는 복잡한 구조가 되었다. 이를 분석한 연구는 안전성은 성립하지만 활성은 확률적으로만 보장된다는 결론을 내놓았다 (arXiv:2210.16070 — 동료심사 전 프리프린트).
최종성은 지금도 활발한 연구 주제다. DAG 기반 BFT에서 공식 커밋 이전에도 안전이 보장되는 조건을 찾아 미리 확정함으로써 지연을 최대 65%까지 줄인 설계가 최근 제안되었다 (arXiv:2604.03974 — 동료심사 전 프리프린트).
흔한 오해
오해 1 — "확인 몇 번이면 절대 안전하다." 확률적 최종성 계열에서 확인 횟수는 안전을 보장하는 문턱이 아니라 확률을 낮추는 손잡이다. 유한한 확인 깊이에서 이중지불 공격의 성공 확률을 닫힌 형태로 계산한 최근 연구는, 필요한 확인 깊이가 적대적 지분 비율과 프로토콜 파라미터에 따라 달라진다는 것을 명시적으로 보였다 (DOI: 10.20944/preprints202604.0694.v1 — 동료심사 전 프리프린트). "몇 번이면 충분한가"는 상황에 따라 다른 값이지, 어디에나 통하는 상수가 아니다.
이론적 걱정만도 아니다. 한 PoS 프로토콜을 분석한 연구는 지분의 40%를 쥔 공격자가 20블록짜리 악의적 재구성을 평균 하루 한 번꼴로 실행할 수 있고, 40%를 넘어가면 성공 확률이 초선형으로 증가한다고 보고했다. 게다가 그 공격자는 공격 기회가 언제 올지 미리 알 수 있었다 (arXiv:2009.05413 — 동료심사 전 프리프린트).
오해 2 — "PoS는 에너지만 아낀 PoW다." 에너지 절감은 사실이지만(앞서 본 99.98%), 두 방식은 보안 가정 자체가 다르다. PoS는 검증자가 이해관계자여야 한다는 요구를 통해 분기 균형을 배제하고 (DOI: 10.1093/rfs/hhaa075), 지분 분포라는 장부 내부 정보로 시빌을 막는다 (arXiv:2001.04187 — 동료심사 전 프리프린트). PoW는 장부 바깥의 물리적 비용으로 막는다. 처벌 방식도 다르다 — PoW에는 슬래싱에 해당하는 장치가 없다.
그래서 어느 쪽이 더 안전한가 하는 물음은 취향 문제가 아니라 모형과 파라미터의 문제다. 두 방식의 균형 보안을 비교하는 경제 모형을 세운 연구는, PoW가 더 안전한 조건과 PoS가 더 안전한 조건을 일반적으로 도출한 뒤 실제 파라미터 값을 대입했을 때 PoS 쪽이 더 안전하며 그 우위가 대규모 사슬에서 특히 두드러진다고 보고한다 (DOI: 10.1093/rfs/hhaf013). 다만 이는 특정 모형과 파라미터 아래의 결론이며, 앞서 본 장거리 공격 같은 PoS 고유의 취약점 (arXiv:2207.08392 — 동료심사 전 프리프린트)과 나란히 읽어야 한다.
오해 3 — "탈중앙이면 자동으로 안전하다." 다섯 개의 현대 블록체인 시스템에 통제된 환경에서 고장을 주입해 결함 허용을 실측한 연구가 있다. 결과는 겸손을 요구한다. 다섯 중 하나를 제외한 나머지는 네트워크의 작은 일부만 고장 나도 크게 영향을 받았고, 일부 시스템은 국소적이고 일시적인 고장에서 회복하지 못했다 (arXiv:2409.13142 — 동료심사 전 프리프린트). 분산되어 있다는 사실 자체가 결함 허용을 보장하지는 않는다.
문제는 구현만도 아니다. 블록체인이 쓰는 비잔틴 합의 해법들은 잘해야 '손으로' 정확성이 증명되어 있을 뿐이라고 지적한 연구는, 여섯 가지 취약점을 열거하고 그중 둘은 새 반례라고 밝혔다 (arXiv:1909.07453 — 동료심사 전 프리프린트). 또 다른 연구는 널리 배포된 BFT 프로토콜들의 보안 모형이 학계에서 통용되는 모형과 미묘하게 다르다는 점을 지적하며, 적대자가 네트워크의 메시지 배달 순서를 완전히 통제할 수 있다면 일부 프로토콜은 동기화된 네트워크에서조차 활성을 달성하지 못한다는 것을 보였다 (DOI: 10.1145/3538227). 종이 위의 증명, 배포된 구현, 실제 네트워크 — 이 셋 사이에는 언제나 틈이 있다.
오해 4 — "완벽한 설계가 어딘가에 있다." 탈중앙성·보안·확장성을 동시에 최대로 달성할 수는 없다는 이른바 블록체인 트릴레마를, 세 성질을 형식화한 뒤 귀류법과 계산복잡도 분석으로 논증한 연구가 있다 (DOI: 10.3390/app15010019). 이런 형식화는 세 성질을 어떻게 정의하느냐에 결과가 크게 좌우되므로 그 자체로 논쟁 대상이다. 다만 "어딘가에 모든 걸 다 갖춘 설계가 있을 것"이라는 기대는 접어 두는 편이 낫다. 합의는 정답을 고르는 문제가 아니라 무엇을 내줄지 고르는 문제다.
더 깊이 가려면
여기까지가 이 분야의 논문을 펼치기 위한 최소한의 토대다. 세 문장으로 압축하면 이렇다. 첫째, 합의의 어려움은 거짓말하는 참여자(비잔틴 고장)와 언제 도착할지 모르는 메시지(비동기)에서 온다. 둘째, 열린 네트워크는 여기에 시빌 문제가 더해지므로 투표권을 무언가 희소한 것 — 연산이든 지분이든 — 에 묶어야 한다. 셋째, "확정됐다"는 말의 뜻은 계열마다 다르며, 확률적 최종성과 결정론적 최종성을 혼동하면 그 뒤의 모든 판단이 어긋난다.
다음에 읽을 것을 갈래별로 남긴다.
- 전체 지형을 훑고 싶다면: 합의 알고리즘의 최근 이정표를 에너지 효율·탈중앙성·보안 트레이드오프로 정리한 리뷰 (DOI: 10.1186/s42400-023-00163-y), 계보를 진화 계통수로 분류한 연구 (DOI: 10.3390/s23052739).
- BFT 계열을 파고들고 싶다면: 고전부터 최신까지 개선 방법별로 분류한 서베이 (DOI: 10.3390/electronics12183801)와, 배포된 프로토콜과 학계 모형의 간극을 짚은 분석 (DOI: 10.1145/3538227).
- 확장성 쪽으로 가고 싶다면: 지분증명 기반 샤딩의 구성 요소와 확률적 보안을 분석한 연구. 4,000개 노드·10개 샤드·샤드 저항성 33% 조건에서 실패까지 약 4,000년으로 계산했다 (DOI: 10.3390/s23052819).
- 모형을 더 현실적으로 만들고 싶다면: 정직·비잔틴 참여자만이 아니라 이익을 좇는 전략적 참여자까지 모형화한 최근 연구. 부분 동기에서 합리적+비잔틴 참여자가 전체의 1/3을 넘으면 정족수 기반 프로토콜이 상태기계 복제를 달성할 수 없다는 불가능성을 증명했다 (arXiv:2503.16783 — 동료심사 전 프리프린트).
마지막으로 하나만 남긴다. 이 분야를 읽을 때 가장 유용한 습관은 논문 첫머리에서 모형을 먼저 찾는 것이다. 동기인가 부분 동기인가 비동기인가. 고장은 크래시인가 비잔틴인가. 참여는 열려 있는가 허가제인가. 최종성은 확률적인가 결정론적인가. 이 네 답을 확인하고 나면 뒤에 이어지는 정리와 실험이 무엇에 관한 주장인지 또렷해진다. 성능 숫자를 비교하기 전에 모형을 비교하는 것 — 그것이 이 분야를 읽는 사람과 결론만 옮기는 사람을 가른다.
근거 논문
- "Distributed Database Systems and Consensus Protocols…" (2025) — DOI: 10.36227/techrxiv.175606742.20986239/v1 — Paxos·Raft·BFT와 분산 DB의 성능·일관성·신뢰성 트레이드오프. 동료심사 전 프리프린트(TechRxiv).
- "Consensus Algorithms Beyond Proof of Work: A Comparative Study" (2025) — DOI: 10.63345/sjaibt.v2.i4.102 — 합의는 중앙 권위 없이 신뢰·무결성을 보장하는 장치. PoW의 에너지·확장성·채굴 풀 집중 문제, PBFT는 대규모 공개망에서 확장성 부족.
- "Practical byzantine fault tolerance and proactive recovery," ACM Transactions on Computer Systems (2002) — DOI: 10.1145/571637.571640 — 비잔틴 고장의 원인(버그·운영자 실수·악의적 공격). 취약 창 안에서 복제본의 1/3 미만이 고장 나면 견딤.
- "Sybil in the Haystack: A Comprehensive Review of Blockchain Consensus Mechanisms…," Algorithms (2023) — DOI: 10.3390/a16010034 — 시빌 공격 정의와 체계적 문헌 검토(21,799편→483편). 강한 시빌 저항성은 PoW/PoS 원리뿐.
- "A Taxonomic Hierarchy of Blockchain Consensus Algorithms," Sensors (2023) — DOI: 10.3390/s23052739 — 비잔틴 장군 문제(두 장군 문제의 일반화)를 출발점으로 한 합의 알고리즘 계통 분류.
- "Byzantine Fault Tolerance in Distributed Systems: A Literature Review" (2025) — DOI: 10.55677/craj/03-2025-vol02i07 — 초기 BFT의 과도한 통신 부담, PBFT의 2차 메시지 복잡도, 비동기 프로토콜의 트레이드오프.
- "Impossibility of distributed consensus with one faulty process," Journal of the ACM (1985) — DOI: 10.1145/3149.214121 — 비동기 시스템에서 단 하나의 고장만으로도 모든 합의 프로토콜이 종료하지 못할 가능성(FLP). 동기 경우에는 해법이 알려져 있음.
- "Randomized protocols for asynchronous consensus" (2002) — arXiv:cs/0209014 — FLP를 우회하는 네 확장 모형(무작위성·타이밍 가정·실패 감지기·강한 동기화)과 무작위 프로토콜의 역사. 동료심사 전 프리프린트.
- "Consensus using Asynchronous Failure Detectors" (2015) — arXiv:1502.02538 — 충분히 강력한 실패 감지기가 FLP를 우회하는 정확한 기제. 동료심사 전 프리프린트.
- "Threshold Logical Clocks for Asynchronous Distributed Coordination…" (2019) — arXiv:1907.07010 — 비동기 합의 프로토콜은 대체로 복잡·비효율적이어서 실무는 동기 프로토콜에 의존. 동료심사 전 프리프린트.
- "The Longest-Chain Protocol Under Random Delays," Stochastic Systems (2023) — DOI: 10.1287/stsy.2022.0031 — 동기 모형의 보장이 최대 지연 Δ에 따라 나빠지는 문제와, 지연을 확률분포로 다루는 대안 모형.
- "Byzantine Consensus in the Random Asynchronous Model" (2025) — arXiv:2502.09116 — 적대적 스케줄링을 무작위 스케줄로 완화하면 표준 비동기·부분동기에서 불가능한 확률적 보장이 가능. 동료심사 전 프리프린트.
- "On the (in)security of Proofs-of-Space based Longest-Chain Blockchains" (2025) — arXiv:2505.14891 — 나카모토 합의는 PoW를 투표 메커니즘으로 사용(정직한 과반 해시파워 가정). 공간증명 기반 최장 사슬은 추가 가정 없이 안전할 수 없음을 증명. 동료심사 전 프리프린트.
- "Stake Shift in Major Cryptocurrencies: An Empirical Study" (2020) — arXiv:2001.04187 — PoS는 장부에 기록된 지분 분포로 역할을 배분해 시빌 공격을 방지. 그 분포의 시차(stake distribution lag) 실증. 동료심사 전 프리프린트.
- "Blockchain without Waste: Proof-of-Stake," The Review of Financial Studies (2020) — DOI: 10.1093/rfs/hhaa075 — PoS의 첫 정식 경제 모형. 절제된 보상 일정이 조속한 합의 균형을 낳고 지속적 분기 균형을 배제(검증자=이해관계자 요구 때문).
- "STAKESURE: Proof of Stake Mechanisms with Strong Cryptoeconomic Safety" (2024) — arXiv:2401.05797 — 공격 비용과 공격 이익을 분리하는 틀, 몰수 자금 배분 보험 메커니즘. 동료심사 전 프리프린트.
- "Reward Sharing Schemes for Stake Pools" (2018) — arXiv:1807.11218 — 스테이크 풀 형성의 내시 균형과 다수 풀 시빌 방어. '더 공정해 보이는' 단순 보상이 중앙집중 균형으로 수렴하는 역설. 동료심사 전 프리프린트.
- "An Event Study of the Ethereum Transition to Proof-of-Stake," Commodities (2023) — DOI: 10.3390/commodities2020006 — PoS 전환 후 에너지 소비 99.98% 감소, 블록 간격 12초로 일정화.
- "Bitcoin-Enhanced Proof-of-Stake Security: Possibilities and Impossibilities" (2022) — arXiv:2207.08392 — 장거리 안전성 공격·낮은 활성 저항력·부트스트랩 난점은 외부 신뢰 근원이 없는 모든 PoS 사슬에 내재적. 동료심사 전 프리프린트.
- "SplitBFT: Improving BFT Safety Using Trusted Compartments" (2022) — arXiv:2205.08938 — 부분 동기에서 f개 고장을 견디려면 통상 3f+1 노드가 필요. 동료심사 전 프리프린트.
- "Byzantine Fault-Tolerant Consensus Algorithms: A Survey," Electronics (2023) — DOI: 10.3390/electronics12183801 — 고전부터 최신까지 BFT 합의 알고리즘을 개선 방법별로 분류한 서베이.
- "Scalable byzantine fault tolerance via partial decentralization," Proceedings of the VLDB Endowment (2022) — DOI: 10.14778/3538598.3538599 — 명령 복제는 분산, 순서 결정은 중앙화. 300 복제본 지역 분산 배치에서 처리량 약 3배·지연 약 50% 개선.
- "Zyzzyva," ACM SIGOPS Operating Systems Review (2007) — DOI: 10.1145/1323293.1294267 — 3단계 커밋 없이 낙관적으로 응답하고 투기적 BFT.
- "Mahi-Mahi: Low-Latency Asynchronous BFT DAG-Based Consensus" (2024) — arXiv:2410.08670 — 인증 없는 DAG 위의 비동기 BFT로 광역망 1초 미만 지연·초당 10만 건 이상 처리. 동료심사 전 프리프린트.
- "Strengthened Fault Tolerance in Byzantine Fault Tolerant Replication" (2021) — arXiv:2101.03715 — 나카모토 합의는 깊이 묻힐수록 확신이 커지는 반면 BFT SMR은 커밋된 블록이 고정된 저항 임계치를 가짐(최종성 대비의 핵심). 동료심사 전 프리프린트.
- "A Brief Study on Byzantine Fault Tolerance, Consensus, and Blockchain" (2023) — DOI: 10.54097/hset.v47i.8224 — 합의를 결정론적 합의와 확률적 합의로 나누어 보는 표준 정리, PBFT·HotStuff.
- "Ethereum Proof-of-Stake under Scrutiny" (2022) — arXiv:2210.16070 — BFT와 나카모토 스타일이 뒤섞인 구조. 안전성은 성립하나 활성은 확률적으로만 보장. 동료심사 전 프리프린트.
- "Lemonshark: Asynchronous DAG-BFT With Early Finality" (2026) — arXiv:2604.03974 — 공식 커밋 이전에 안전이 충분히 보장되는 조건을 찾아 조기 확정, 지연 최대 65% 감소. 동료심사 전 프리프린트.
- "The Evaluation of a Double-Spend Attack Probability for Ouroboros-Like Proof-of-Stake Consensus" (2026) — DOI: 10.20944/preprints202604.0694.v1 — 유한 확인 깊이에서 이중지불 성공 확률의 닫힌 해. 필요한 확인 깊이가 적대적 지분 비율에 의존. 동료심사 전 프리프린트.
- "Defending Against Malicious Reorgs in Tezos Proof-of-Stake" (2020) — arXiv:2009.05413 — 지분 40% 공격자가 20블록 재구성을 평균 하루 한 번 실행 가능, 40% 초과 시 초선형 증가, 공격 기회를 미리 알 수 있음. 동료심사 전 프리프린트.
- "Proof-of-Work versus Proof-of-Stake: A Comparative Economic Analysis," The Review of Financial Studies (2025) — DOI: 10.1093/rfs/hhaf013 — 균형 보안 비교 모형. 실제 파라미터 대입 시 PoS가 더 안전하며 대규모 사슬에서 우위가 두드러짐.
- "Stabl: Blockchain Fault Tolerance" (2024) — arXiv:2409.13142 — 다섯 개 현대 블록체인에 고장 주입. 하나를 제외하면 네트워크 일부 고장에도 크게 영향받고, 일부는 일시적 고장에서 회복 실패. 동료심사 전 프리프린트.
- "Formal Verification of Blockchain Byzantine Fault Tolerance" (2019) — arXiv:1909.07453 — 블록체인 합의는 잘해야 '손으로' 증명되어 있을 뿐. 여섯 가지 취약점(새 반례 둘 포함) 제시와 모델 체커 검증. 동료심사 전 프리프린트.
- "Byzantine Fault Tolerance For Distributed Ledgers Revisited," Distributed Ledger Technologies: Research and Practice (2022) — DOI: 10.1145/3538227 — 배포된 BFT 프로토콜과 학계 보안 모형의 간극. 배달 순서를 통제하는 적대자 앞에선 동기 네트워크에서도 활성 실패.
- "The Blockchain Trilemma: A Formal Proof of the Inherent Trade-Offs…," Applied Sciences (2024) — DOI: 10.3390/app15010019 — 세 성질을 형식화하고 귀류법·계산복잡도 분석으로 동시 최대화의 모순을 논증.
- "Evolution of blockchain consensus algorithms," Cybersecurity (2023) — DOI: 10.1186/s42400-023-00163-y — 에너지 효율·탈중앙성·보안 트레이드오프 관점의 합의 알고리즘 리뷰.
- "Sharding-Based Proof-of-Stake Blockchain Protocols…," Sensors (2023) — DOI: 10.3390/s23052819 — 샤딩 기반 PoS의 구성 요소와 확률적 보안 모형. 4,000노드·10샤드·샤드 저항성 33%에서 실패까지 약 4,000년.
- "CoBRA: A Universal Strategyproof Confirmation Protocol…" (2025) — arXiv:2503.16783 — 정직·비잔틴·합리적 참여자 혼합 모형. 부분 동기에서 합리+비잔틴이 1/3을 넘으면 SMR 불가능. 동료심사 전 프리프린트.
🏛️ 이 글의 뿌리가 된 논문
이 글이 근거로 삼은 논문 중 ‘거인의 어깨’에 오른 초석 연구예요. 개념을 익혔다면 원전으로 가보세요.
최초로 실용 가능한 비잔틴 결함 허용(PBFT) 알고리즘을 제안하여 분산 합의 분야의 혁신을 이끌었습니다.
이 분야의 거인의 어깨 →비동기 분산 시스템에서 단 하나의 결함만으로도 합의가 불가능함을 증명한 분산 컴퓨팅의 최고 걸작
이 분야의 거인의 어깨 →