Byzantine reliable broadcast is a fundamental primitive in distributed systems that allows a set of processes to agree on a message broadcast by a dedicated process, even when some of them are malicious (Byzantine). It guarantees that no two correct processes deliver different messages, and if a message is delivered by a correct process, every correct process eventually delivers one. Byzantine reliable broadcast protocols are known to scale poorly, as they require $\Omega(n^2)$ message exchanges, where $n$ is the number of system members. The quadratic cost can be explained by the inherent need for every process to relay a message to every other process. In this paper, we explore ways to overcome this limitation, by casting the problem to the probabilistic setting. We propose a solution in which every broadcast message is validated by a small set of witnesses, which allows us to maintain low latency and small communication complexity. In order to tolerate the slow adaptive adversary, we dynamically select the witnesses through a novel stream-local hash function: given a stream of inputs, it generates a stream of output hashed values that adapts to small deviations of the inputs. Our performance analysis shows that the proposed solution exhibits significant scalability gains over state-of-the-art protocols.
翻译:拜占庭可靠广播是分布式系统中的一种基本原语,它允许一组进程就某个专用进程广播的消息达成一致,即使其中部分进程是恶意的(拜占庭式)。它保证任意两个正确进程不会传递不同的消息,且若某个正确进程传递了消息,则每个正确进程最终都会传递一个消息。已知拜占庭可靠广播协议的可扩展性较差,因为它们需要Ω(n²)次消息交换,其中n为系统成员数量。这种二次方开销可解释为每个进程本质上都需要将消息转发给其他所有进程。本文通过将该问题转化为概率设定,探索克服此限制的方法。我们提出一种解决方案,其中每个广播消息均由小型见证人集合进行验证,这使得我们能够保持低延迟和较小的通信复杂度。为了抵御缓慢的自适应敌手,我们通过一种新颖的流局部哈希函数动态选择见证人:给定输入流,该函数会生成能适应输入微小偏差的输出哈希值流。性能分析表明,所提方案相比最先进协议展现出显著的可扩展性优势。