5 questions to test your understanding
A distributed system has 10 nodes. What is the maximum number of Byzantine failures it can tolerate while still achieving consensus?
An engineering team is building an internal distributed database for a company's own servers. Some nodes occasionally crash. Which fault tolerance model is most appropriate, and why?
A node that crashes and stops responding is an example of a Byzantine failure.
A system with 4 nodes using PBFT can tolerate 1 Byzantine failure, because 4 > 3×1.
Why does tolerating Byzantine failures require more than two-thirds of nodes to be honest, while crash fault tolerance only requires a simple majority?