Nakamoto's consensus protocol works in a permissionless model and tolerates Byzantine failures, but only offers probabilistic agreement. Recently, the Sandglass protocol has shown such weaker guarantees are not a necessary consequence of a permissionless model; yet, Sandglass only tolerates benign failures, and operates in an unconventional partially synchronous model. We present Gorilla Sandglass, the first Byzantine tolerant consensus protocol to guarantee, in the same synchronous model adopted by Nakamoto, deterministic agreement and termination with probability 1 in a permissionless setting. We prove the correctness of Gorilla by mapping executions that would violate agreement or termination in Gorilla to executions in Sandglass, where we know such violations are impossible. Establishing termination proves particularly interesting, as the mapping requires reasoning about infinite executions and their probabilities.
翻译:中本聪的共识协议适用于免许可模型且能容忍拜占庭故障,但仅提供概率性共识。近期,Sandglass协议表明这种较弱保证并非免许可模型的必然结果;然而Sandglass仅能容忍良性故障,且运行于非传统的部分同步模型中。我们提出Gorilla Sandglass——首个在免许可环境下,采用与中本聪协议相同的同步模型,承诺确定性共识且终止概率为1的拜占庭容错共识协议。我们通过将可能违反Gorilla共识性或终止性的执行映射到Sandglass中的执行(已知此类违反不可能存在),证明了Gorilla的正确性。终止性的证明尤为关键,因为该映射需要推演无限执行及其概率。