TBFT: Understandable and Efficient Byzantine Fault Tolerance using Trusted Execution Environment

02/03/2021
by   Jiashuo Zhang, et al.
0

While the requirements for reliability increasing rapidly in distributed systems, byzantine fault tolerance protocols have attracted more and more attention for the ability to tolerate arbitrary failures. Although traditional BFT protocols have achieved significant performance improvements after decades of research, they still cannot meet the increasing scalability requirements. Thanks to the recent development of trusted execution environment, researchers have opportunities to improve BFT protocols with hardware assistance, including increasing the ratio of byzantine nodes that the system can tolerate and improving the scalability of the system. However, existing TEE-based BFT protocols are mostly designed via improving traditional BFT protocols and using complex operations to overcome security issues introduced by TEE, which makes the protocols difficult to understand and implement. In fact, after introducing TEE, many byzantine failures can be eliminated naturally so that the adversary assumption of TEE-based BFT is more similar to CFT rather than traditional BFT. Therefore, it would be better to design a TEE-based BFT protocol on the basis of CFT protocols to inherit the advantages of CFT, i.e., understandable and efficient. In this paper, we summarize the key differences between TEE-based BFT and CFT protocols and propose four principles to help bridge the gap between TEE-based BFT and CFT. Based on these principles, we present TBFT, a novel TEE-based BFT protocol with inspirations from CFT protocols, which is simple and understandable enough to be applied in practice. Besides, we make comprehensive improvements to TBFT for both performance and security, including pipeline mechanisms, TEE-assisted secret sharing, and trusted leader election. Our evaluation shows that TBFT has better performance and scalability compared to previous protocols.

READ FULL TEXT
research
08/03/2022

Mixed Fault Tolerance Protocols with Trusted Execution Environment

Blockchain systems are designed, built and operated in the presence of f...
research
05/18/2022

SplitBFT: Improving Byzantine Fault Tolerance Safety Using Trusted Compartments

Byzantine fault-tolerant agreement (BFT) in a partially synchronous syst...
research
02/04/2022

Alea-BFT: Practical Asynchronous Byzantine Fault Tolerance

Traditional Byzantine Fault Tolerance (BFT) state machine replication pr...
research
03/08/2022

RAPTEE: Leveraging trusted execution environments for Byzantine-tolerant peer sampling services

Peer sampling is a first-class abstraction used in distributed systems f...
research
05/24/2019

Making Speculative BFT Resilient with Trusted Monotonic Counters

Consensus mechanisms used by popular distributed ledgers are highly scal...
research
05/26/2022

SoK: Decentralized Randomness Beacon Protocols

The scientific interest in the area of Decentralized Randomness Beacon (...
research
03/07/2022

Boosting Byzantine Protocols in Large Sparse Networks with High System Assumption Coverage

To improve the overall efficiency and reliability of Byzantine protocols...

Please sign up or login with your details

Forgot password? Click here to reset