论文标题
SplitBft:使用可信赖的隔间改善拜占庭的容错安全性
SplitBFT: Improving Byzantine Fault Tolerance Safety Using Trusted Compartments
论文作者
论文摘要
部分同步系统中的拜占庭式耐断层一致性(BFT)通常需要3F + 1个节点才能耐受F故障复制品。由于其高吞吐量和最终属性属性,BFT算法建立了最近许可的区块链的核心。作为一个复杂且基础的基础架构,多个云提供商已经开始提供区块链即服务。这简化了允许的区块链的部署,但使云提供商处于中央控制位置,从而质疑区块链的容错和权力下放属性及其基础BFT算法。本文介绍了SplitBft,这是一种利用可信赖的执行技术(TEES)的新方法,例如英特尔SGX,以硬化BFT系统的安全性和保密性保证,从而增强了对基于许可的区块链的基于可能的部署的信任。 SplitBFT偏离标准假设,承认受信任执行保护的代码可能会失败。我们通过将BFT协议的核心逻辑分成多个隔间来解决这一问题,从而产生更弹性的体系结构。我们将SplitBFT应用于传统的实用拜占庭式容错算法(PBFT),并使用SGX对其进行评估。我们的结果表明,SplitBFT与非校准变体相比仅增加了合理的开销。
Byzantine fault-tolerant agreement (BFT) in a partially synchronous system usually requires 3f + 1 nodes to tolerate f faulty replicas. Due to their high throughput and finality property BFT algorithms build the core of recent permissioned blockchains. As a complex and resource-demanding infrastructure, multiple cloud providers have started offering Blockchain-as-a-Service. This eases the deployment of permissioned blockchains but places the cloud provider in a central controlling position, thereby questioning blockchains' fault tolerance and decentralization properties and their underlying BFT algorithm. This paper presents SplitBFT, a new way to utilize trusted execution technology (TEEs), such as Intel SGX, to harden the safety and confidentiality guarantees of BFT systems thereby strengthening the trust in could-based deployments of permissioned blockchains. Deviating from standard assumptions, SplitBFT acknowledges that code protected by trusted execution may fail. We address this by splitting and isolating the core logic of BFT protocols into multiple compartments resulting in a more resilient architecture. We apply SplitBFT to the traditional practical byzantine fault tolerance algorithm (PBFT) and evaluate it using SGX. Our results show that SplitBFT adds only a reasonable overhead compared to the non-compartmentalized variant.