Byzantine consensus allows n processes to decide on a common value, in spite of arbitrary failures. The seminal Dolev-Reischuk bound states that any deterministic solution to Byzantine consensus exchanges Omega(n^2) bits. In recent years, great advances have been made in deterministic Byzantine agreement for partially synchronous networks, with state-of-the-art cryptographic solutions achieving O(n^2 \kappa) bits (where $\kappa$ is the security parameter) and nearly matching the lower bound. In contrast, for synchronous networks, optimal solutions with O(n^2) bits, with no cryptography and the same failure tolerance, have been known for more than three decades. Can this gap in network models be closed? In this paper, we present Repeater, the first generic transformation of Byzantine agreement algorithms from synchrony to partial synchrony. Repeater is modular, relying on existing and novel algorithms for its sub-modules. With the right choice of modules, Repeater requires no additional cryptography, is optimally resilient (n = 3t+1, where t is the maximum number of failures) and, for constant-size inputs, preserves the worst-case per-process bit complexity of the transformed synchronous algorithm. Leveraging Repeater, we present the first partially synchronous algorithm that (1) achieves optimal bit complexity (O(n^2) bits), (2) resists a computationally unbounded adversary (no cryptography), and (3) is optimally-resilient (n = 3t+1), thus showing that the Dolev-Reischuk bound is tight in partial synchrony. Moreover, we adapt Repeater for long inputs, introducing several new algorithms with improved complexity and weaker (or completely absent) cryptographic assumptions.
翻译:拜占庭共识允许n个进程在存在任意故障的情况下就一个共同值达成一致。经典的Dolev-Reischuk界指出,任何确定性拜占庭共识解决方案都需要交换Omega(n^2)比特的信息。近年来,针对部分同步网络的确定性拜占庭协议取得了重大进展,最先进的密码学方案实现了O(n^2 κ)比特的通信复杂度(其中κ为安全参数),几乎逼近下界。相比之下,对于同步网络,三十多年前就已存在复杂度为O(n^2)比特、无需密码学且具有相同容错能力的最优解。能否弥合这种网络模型间的差距?本文提出Repeater,这是首个将拜占庭协议算法从同步网络通用转换为部分同步网络的框架。Repeater采用模块化设计,其子模块依赖现有算法与新型算法。通过合理选择模块,Repeater无需额外密码学支持,具有最优弹性(n=3t+1,其中t为最大故障数),并且在输入规模恒定时,能保持被转换同步算法的最坏情况下单进程比特复杂度。利用Repeater,我们首次实现了部分同步算法:(1)达到最优比特复杂度(O(n^2)比特),(2)能抵抗计算能力无限的对手(无密码学依赖),(3)具有最优弹性(n=3t+1),从而证明Dolev-Reischuk界在部分同步场景下是紧致的。此外,我们针对长输入对Repeater进行适配,引入了若干复杂度更低、密码学假设更弱(或无密码学假设)的新型算法。