[논문 리뷰] Correctness and Fairness of Tendermint-core Blockchains
이 논문은 Tendermint-core 블록체인의 정확성과 공정성을 공식적으로 검증하며, 1/3 미만의 바르비셔안 검증자가 존재하는 최종적으로 동기화된 환경에서 프로토콜의 수정 버전이 한 번의 시도와 반복적 공감을 달성함을 증명한다. 시스템이 최종적으로 동기화되어 있을 경우에만 공정한 보상 메커니즘이 존재하며, 원래 Tendermint 보상 메커니즘은 공정하지 않지만, 정교한 타임아웃과 메시지 내용 조정을 통해 최종적으로 공정하게 만들 수 있음을 보여준다.
Tendermint-core blockchains (e.g. Cosmos) are considered today one of the most viable alternatives for the highly energy consuming proof-of-work blockchains such as Bitcoin and Ethereum. Their particularity is that they aim at offering strong consistency (no forks) in an open system combining two ingredients (i) a set of validators that generate blocks via a variant of Practical Byzantine Fault Tolerant (PBFT) consensus protocol and (ii) a selection strategy that dynamically selects nodes to be validators for the next block via a proof-of-stake mechanism. However,the exact assumptions on the system model under which Tendermint underlying algorithms are correct and the exact properties Tendermint verifies have never been formally analyzed. The contribution of this paper is two-fold. First, while formalizing Tendermint algorithms we precisely characterize the system model and the exact problem solved by Tendermint. We prove that in eventual synchronous systems a modified version of Tendermint solves (i) under additional assumptions, a variant of one-shot consensus for the validation of one single block and (ii) a variant of the repeated consensus problem for multiple blocks. These results hold even if the set of validators is hit by Byzantine failures, provided that for each one-shot consensus instance less than one third of the validators is Byzantine. Our second contribution relates to the fairness of the rewarding mechanism. It is common knowledge that in permisionless blockchain systems the main threat is the tragedy of commons that may yield the system to collapse if the rewarding mechanism is not adequate. Ad minimum the rewarding mechanism must be fair, i.e.distributing the rewards in proportion to the merit of participants. We prove, for the first time in blockchain systems, that in repeated-consensus based blockchains there exists an (eventual) fair rewarding mechanism if and only if the system is (eventual) synchronous. We also show that the original Tendermint rewarding is not fair, however, a modification of the original protocol makes it eventually fair.
연구 동기 및 목표
- 실제 시스템 가정을 바탕으로 Tendermint-core 합의 프로토콜의 정확성을 공식적으로 분석하는 것.
- 합의 안전성과 생존성에 악영향을 미치는 원래 Tendermint 프로토콜의 미묘한 버그를 식별하고 수정하는 것.
- 검증자 기여도에 기반한 블록체인에서의 반복 합의 블록체인에서 보상 메커니즘의 공정성을 정의하고 증명하는 것.
- 블록체인 시스템에서 최종적으로 공정한 보상 메커니즘이 존재하기 위한 필수 및 충분 조건을 설정하는 것.
- 실제 블록체인 구현과 공식적 분산 시스템 이론 사이의 격차를 메우는 것.
제안 방법
- 최종 동기화 가정을 포함한 분산 시스템 프레임워크를 사용하여 Tendermint-core 프로토콜의 공식적 모델링.
- 원래 프로토콜에서 발생하는 생존성 문제를 수정하기 위해 정교한 타임아웃 메커니즘 도입.
- 검증자가 정확한 참여와 메시지 전달 비율에 비례해 보상받는 기여도 기반 보상 메커니즘 정의.
- 검증자 중 1/3 미만이 바르비셔안일 경우에 합의 종료 및 유효성의 증명.
- 커밋 메시지에 정상 및 바르비셔안 프로세스를 식별할 수 있는 구분 정보를 포함하는 수정된 합의 모델 사용.
- 최종적으로 공정한 보상 메커니즘이 존재함을 보이기 위해 이중 함의 증명 수행
실험 결과
연구 질문
- RQ1원래 Tendermint 프로토콜이 어떤 시스템 가정 하에 합의 정확성을 달성하는가?
- RQ2원래 Tendermint 프로토콜이 바르비셔안 검증자가 존재하는 상황에서도 생존성과 안전성을 확보할 수 있도록 공식적으로 수정 가능한가?
- RQ3반복 합의 블록체인에서 보상 메커니즘이 공정하다고 간주되기 위한 조건은 무엇인가?
- RQ4비동기 시스템에서 Tendermint-core 블록체인의 보상 공정성은 가능한가?
- RQ5원래 Tendermint 보상 메커니즘을 수정하여 최종적으로 공정하게 만들 수 있는가?
주요 결과
- 1/3 이하의 검증자가 바르비셔안일 경우, 수정된 Tendermint 프로토콜은 최종적으로 동기화된 환경에서 한 번의 시도와 반복 합의를 달성한다.
- 원래 Tendermint 프로토콜은 생존성 버그로 인해 표준 가정 하에서는 정확하지 않지만, 정교한 타임아웃 메커니즘을 통해 수정 가능하다.
- 반복 합의 블록체인에서 공정한 보상 메커니즘이 존재하는 것은 시스템이 최종적으로 동기화되거나 동기화되어 있을 경우에만 가능하다.
- 원래 Tendermint 보상 메커니즘은 최종적으로 동기화된 환경에서도 메시지 가시성 부족으로 인해 공정하지 않다.
- 2n/3개 이상의 메시지를 수신하고 타임아웃을 적절히 조정한 개선된 보상 메커니즘은 최종적으로 동기화된 환경에서 최종적으로 공정하게 만들 수 있다.
- 비동기 시스템에서는 모든 검증자가 정상이더라도 (최종) 공정한 보상 메커니즘이 존재하지 않으며, 이러한 환경에서의 공정성에 대한 근본적인 제약를 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.