Tool: An Efficient and Flexible Simulator for Byzantine Fault-Tolerant Protocols
* National Taiwan University, Taiwan † Academia Sinica, Taiwan
Ping-Lun Wang*
R09922058@csie.ntu.edu.tw
Tzu-Wei Chao*
CheshireCatNick@gmail.com
Chia-Chien Wu*
gccbs02590@gmail.com
Hsu-Chun Hsiao*†
hchsiao@csie.ntu.edu.tw
Byzantine Fault-Tolerant (BFT) Protocols
2
BFT Protocols: Security Guarantees
3
Safety
Ensure consistent state of nodes
Liveness
Consensus will be reached
FLP impossibility[1]: cannot be provided at the same time!
(in an asynchronous network)
Assume a partially-synchronous network
[1] Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson.
Impossibility of distributed consensus with one faulty process. (PODS '83).
Partially-Synchronous Network Assumption
4
Transfer time: bounded
After GST
(Global Stabilization Time)
Theoretical Analysis
Reality
Transfer time: ?
How can we evaluate the performance in a realistic setting?
Unbounded network delays
Network attacks
BFT Protocol Simulation
5
Overall performance
Various network
Under attacks
High efficiency
Easy to deploy
… more
May differ from a real system
Calculation cost cannot be evaluated
Our BFT Simulator
Our Simulator Compare to Others
1. Much better performance
2. Global attacker
7
[2] A. Singh, T. Das, P. Maniatis, P. Druschel, and T. Roscoe.
BFT protocols under fire, NSDI 2008
[3] S. Bano, A. Sonnino, A. Chursin, D. Perelman, and D. Malkhi.
Twins: White-Glove Approach for BFT Testing. arXiv 2020.
Structure
8
BFT Protocol Implementation
9
Attack Implementation
10
Experiment Results
Performance Comparison
12
Various Network Environments
13
Simulation With Attacks
14
↑ Different number of fail-stop nodes
↑ Network partition attack
Visualizaing BFT Protocols
15
Conclusion
16