A Formally Verified Protocol for Log Replication with Byzantine Fault Tolerance

被引:2
|
作者
Wanner, Joel [1 ]
Chuat, Laurent [1 ]
Perrig, Adrian [1 ]
机构
[1] Swiss Fed Inst Technol, Dept Comp Sci, Network Secur Grp, Zurich, Switzerland
关键词
Byzantine fault tolerance; consensus algorithm; formal verification;
D O I
10.1109/SRDS51746.2020.00018
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Byzantine fault tolerant protocols enable state replication in the presence of crashed, malfunctioning, or actively malicious processes. Designing such protocols without the assistance of verification tools, however, is remarkably error-prone. In an adversarial environment, performance and flexibility come at the cost of complexity, making the verification of existing protocols extremely difficult. We take a different approach and propose a formally verified consensus protocol designed for a specific use case: secure logging. Our protocol allows each node to propose entries in a parallel subroutine, and guarantees that correct nodes agree on the set of all proposed entries, without leader election. It is simple yet practical, as it can accommodate the workload of a logging system such as Certificate Transparency. We show that it is optimal in terms of both required rounds and tolerable faults. Using Isabelle/HOL, we provide a fully machine-checked security proof based upon the Heard-Of model, which we extend to support signatures. We also present and evaluate a prototype implementation.
引用
收藏
页码:101 / 112
页数:12
相关论文
共 50 条
  • [41] Zyzzyva: Speculative Byzantine Fault Tolerance
    Kotla, Ramakrishna
    Alvisi, Lorenzo
    Dahlin, Mike
    Clement, Allen
    Wong, Edmund
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2009, 27 (04):
  • [42] Quorum Selection for Byzantine Fault Tolerance
    Jehl, Leander
    2019 39TH IEEE INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS 2019), 2019, : 2168 - 2177
  • [43] Zyzzyva: Speculative Byzantine Fault Tolerance
    Kotla, Ramakrishna
    Clement, Allen
    Wong, Edmund
    Alvisi, Lorenzo
    Dahlin, Mike
    COMMUNICATIONS OF THE ACM, 2008, 51 (11) : 86 - 95
  • [44] Zyzzyva: Speculative byzantine fault tolerance
    Kotla, Ramakrishna
    Alvisi, Lorenzo
    Dahlin, Mike
    Clement, Allen
    Wong, Edmund
    Operating Systems Review (ACM), 2007, : 45 - 58
  • [45] A Flexible Sharding Blockchain Protocol Based on Cross-Shard Byzantine Fault Tolerance
    Liu, Yizhong
    Xing, Xinxin
    Cheng, Haosu
    Li, Dawei
    Guan, Zhenyu
    Liu, Jianwei
    Wu, Qianhong
    IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, 2023, 18 (2276-2291) : 2276 - 2291
  • [46] A Dynamic Adaptive Framework for Practical Byzantine Fault Tolerance Consensus Protocol in the Internet of Things
    Li, Chunpei
    Qiu, Wangjie
    Li, Xianxian
    Liu, Chen
    Zheng, Zhiming
    IEEE TRANSACTIONS ON COMPUTERS, 2024, 73 (07) : 1669 - 1682
  • [47] Verifying fault tolerance of distributed algorithms formally - An example
    Volzer, H
    1998 INTERNATIONAL CONFERENCE ON APPLICATION OF CONCURRENCY TO SYSTEM DESIGN, PROCEEDINGS, 1998, : 187 - 197
  • [48] Achieving fault tolerance by a formally validated interaction policy
    Fantechi, Alessandro
    Gnesi, Stefania
    Semini, Laura
    RIGOROUS DEVELOPMENT OF COMPLEX FAULT-TOLERANT SYSTEMS, 2006, 4157 : 133 - +
  • [49] A Formally-Verified Migration Protocol For Mobile, Multi-Homed Hosts
    Arye, Matvey
    Nordstroem, Erik
    Kiefer, Robert
    Rexford, Jennifer
    Freedman, Michael J.
    2012 20TH IEEE INTERNATIONAL CONFERENCE ON NETWORK PROTOCOLS (ICNP), 2012,
  • [50] A replication-based fault tolerance protocol using group communication for the Grid
    Erciyes, Kayhan
    Parallel and Distributed Processing and Applications, 2006, 4330 : 672 - 681