Byzantine Fault-Tolerant (BFT) protocols have been proposed to tolerate malicious behaviors in state machine replications. With classic BFT protocols, the total number of replicas is known and fixed a priori. The resilience of BFT protocols, i.e., the number of tolerated Byzantine replicas (denoted f ), is derived from the total number of replicas according to the quorum theory. To guarantee that an attacker cannot control more than f replicas, so to guarantee safety, it is vital to ensure fault independence among all replicas. This in practice is achieved by enforcing diverse configurations of replicas, i.e., each replica has a unique configuration, avoiding f fault compromises more than f replicas. While managing replica diversity in BFT protocols has been studied in permissioned environments with a small number of replicas, no prior work has discussed the fault independence in a permissionless environment (such as public blockchains) where anyone can join and leave the system at any time. This is particularly challenging due to the following two facts. First, with permissionless environment, any one can join as a replica at any time and no global coordinator can be relied on to manage replica diversity. Second, while great progress has been made to scale consensus algorithms to thousands of replicas, the replica diversity cannot provide fault independence at this scale, limiting practical and meaningful resilience. This paper provides the first discussion on the impact of fault independence on permissionless blockchains, provides discussions on replica configuration diversity, quantifies replica diversity by using entropy, and defines optimal fault independence.
翻译:拜占庭容错(BFT)协议旨在容忍状态机复制中的恶意行为。在经典BFT协议中,副本总数是事先已知且固定的。依据法定人数理论,BFT协议的韧性(即可容忍拜占庭副本的数量,记为f)由副本总数推导得出。为确保攻击者无法控制超过f个副本,从而保障安全性,必须保证所有副本间的故障独立性。实践中,这通过强制执行副本的多样化配置实现,即每个副本拥有唯一配置,避免f个故障点危及超过f个副本。尽管在副本数量较少的许可环境中已对BFT协议中的副本多样性管理进行了研究,但此前尚无工作探讨非许可环境(如公有区块链)中的故障独立性——在该环境中,任何人均可随时加入或退出系统。这一问题尤为棘手,源于以下两点:首先,在非许可环境下,任何人可随时作为副本加入,且无法依赖全局协调者管理副本多样性;其次,尽管共识算法已取得重大进展,可扩展至数千个副本,但在此规模下,副本多样性无法提供故障独立性,从而限制了实际且有意义的韧性。本文首次探讨了故障独立性对非许可区块链的影响,论述了副本配置多样性,使用熵量化了副本多样性,并定义了最优故障独立性。