VSSB-Raft:一种安全高效的区块链零信任共识算法

作者:SIBEN TIAN , FENHUA BAI , TAO SHEN , and CHI ZHANG

论文摘要原文:

To solve the problems of vote forgery and malicious election of candidate nodes in the Raft consensus algorithm, we combine zero trust with the Raft consensus algorithm and propose a secure and efficient consensus algorithm -Verifiable Secret Sharing Byzantine Fault Tolerance Raft Consensus Algorithm (VSSB-Raft). The VSSB-Raft consensus algorithm realizes zero trust through the supervisor node and secret sharing algorithm without the invisible trust between nodes required by the algorithm. Meanwhile, the VSSB-Raft consensus algorithm uses the SM2 signature algorithm to realize the characteristics of zero trust requiring authentication before data use. In addition, by introducing the NDN network, we redesign the communication between nodes and guarantee the communication quality among nodes. The VSSB-Raft consensus algorithm proposed in this paper can make the algorithm Byzantine fault tolerant by setting a threshold for secret sharing while maintaining the algorithm’s complexity to be O(n). Experiments show that the VSSB-Raft consensus algorithm is secure and efficient with high throughput and low consensus latency.

论文摘要中文:

针对Raft共识算法中存在的投票伪造和候选节点恶意选举问题,将联合收割机零信任与Raft共识算法相结合,提出了一种安全高效的共识算法–可验证秘密共享拜占庭容错Raft共识算法(VSSB-Raft)。VSSB-Raft一致性算法通过监督节点和秘密共享算法实现了零信任,而不需要算法所要求的节点间的不可见信任。同时,VSSB-Raft共识算法利用SM 2签名算法实现了数据使用前需要认证的零信任特性。另外,通过引入NDN网络,对节点间的通信进行了重新设计,保证了节点间的通信质量。本文提出的VSSB-Raft一致性算法在保持算法复杂度为O(n)的前提下,通过设置秘密共享的门限,使算法具有拜占庭容错性。实验结果表明,VSSB-Raft共识算法具有安全、高效、高吞吐量和低共识延迟等优点。

研究问题、关键问题:如何在区块链系统中提高 Raft 共识算法的安全性,使其能够在不信任的网络环境中可靠地运行?其中关键问题为:

  1. Raft 算法安全性不足: Raft 算法在选举过程中缺乏对恶意节点的检测和防御机制,容易受到恶意节点攻击导致共识失败。具体表现为:
    1)选举失败问题: 恶意节点发送错误投票或拒绝投票导致选举无法完成。
    2)候选人节点宣布不可靠的选举结果: 恶意候选人节点篡改选举结果,谎称自己当选。
    3)多个恶意候选人节点竞争分裂选票: 多个恶意候选人节点相互竞争,导致选票分散,无法选出合法的领导者。
    4)恶意领导者节点篡改共识消息: 恶意领导者节点篡改发送给其他节点的共识消息,导致共识失败。
  2. 现有解决方案不足:
    1)基于信用评价的共识算法:过度依赖节点间的信任值,容易受到恶意节点攻击。
    2)引入监督节点优化选举过程:缺乏对监督节点的监控机制,容易受到恶意节点攻击。
    3)消息签名:无法防止选票重复使用,容易受到恶意节点攻击。
    4)结合 PBFT 算法:算法复杂度高,效率低。
  3. 零信任安全模型: 零信任安全模型要求网络节点之间不存在隐式信任,并要求在访问之前进行身份验证和授权。VSSB-Raft 算法通过引入监督节点和秘密共享算法,实现了节点之间无隐式信任,并通过 SM2 签名算法保证了数据使用的安全性。
  4. 节点间高效通信: 引入 NDN 网络,重新定义节点间的通信方式,提高数据传输效率,降低共识延迟。

研究动机、研究意义:

  1. 研究动机:
    1)区块链技术因其透明、不可篡改和可追溯的特性,在各个领域得到广泛应用。现有的共识算法如 PBFT 和 POW 无法高效处理多节点场景下的共识信息,导致效率低下。
    2)Raft 算法作为一种高效的共识算法,在多节点场景下得到广泛应用。然而,Raft 算法缺乏对恶意3)节点的检测机制,容易受到恶意节点攻击,导致共识失败。
    4)Raft 算法的投票过程依赖于节点间的信任,存在安全漏洞,例如:
    – 跟随节点引发的选举失败问题
    – 候选节点宣布不可靠的选举结果
    – 多个恶意候选节点竞争导致选票分裂
    – 恶意领导节点篡改共识消息
  2. 研究意义:
    1)本文提出了一种安全高效的零信任共识算法 VSSB-Raft,旨在解决 Raft 算法的安全问题。
    2)VSSB-Raft 通过引入监督节点和秘密共享算法,实现了节点间无需信任的零信任机制,有效防止了恶意节点攻击。
    3)VSSB-Raft 使用 SM2 签名算法对消息进行认证,确保了数据使用的安全性。
    4)VSSB-Raft 引入 NDN 网络,重新设计了节点间的通信方式,提高了数据传输效率。
    5)VSSB-Raft 通过设置秘密共享阈值,实现了拜占庭容错,同时保持算法复杂度为 O(n)。
    6)实验结果表明,VSSB-Raft 算法具有高吞吐量和低共识延迟,能够有效抵抗恶意节点攻击,保证共识安全。

研究内容(算法、方法、技术、模型):

  1. 零信任机制:
    1)监督节点: 引入监督节点来生成和验证选举消息,打破了节点间的信任关系,实现了零信任机制。
    2)秘密共享算法: 使用秘密共享算法将选举签名分割成多个子密钥,只有收集到足够数量的子密钥才能恢复完整的选举签名,从而防止恶意节点伪造选票。

2. 安全认证:
1)SM2 签名算法: 使用 SM2 签名算法对选举消息和子密钥进行签名,确保数据的真实性和完整性。
2)签名承诺: 监督节点为每个子密钥生成签名承诺,候选节点可以使用签名承诺来验证选票的真实性。

3. NDN 网络:
1)兴趣路由: 使用 NDN 网络重新定义节点间的通信方式,建立兴趣路由,将数据传输从地址驱动转变为内容驱动。
2)NDN Forwarding Daemon (NFD): 使用 NFD 来转发兴趣消息,提高数据传输效率。
3)通信域: 将节点划分为多个通信域,每个域共享一个 NFD,进一步提高数据传输效率。

4. 选举失败检测算法:
1)公开选举信息: 当选举失败时,候选节点、跟随节点和监督节点公开其使用的选举信息。
2)比较和验证: 检测算法根据公开的选举信息比较和验证各个节点的行为,判断选举失败的原因。
3) 节点状态转换: 根据检测结果,将问题节点降级为跟随节点,并选择新的监督节点。

研究结论、主要贡献:

  1. 研究结论:
    1)VSSB-Raft 算法能够有效解决 Raft 算法的安全问题,包括:
    – 防止恶意节点伪造选票和选举结果。
    – 防止恶意节点窃取选票并进行重放攻击。
    – 防止恶意节点篡改共识消息。
    2)VSSB-Raft 算法通过引入 NDN 网络和重新定义节点间的通信方式,提高了数据传输效率,降低了共识延迟,并提高了吞吐量。
    3)VSSB-Raft 算法能够在 Byzantine 故障容忍的环境下安全运行,保证区块链系统的安全性。
  2. 主要贡献:
    1)安全选举算法: 设计了一种安全的选举算法,通过监督节点和秘密共享算法,确保了选举过程的安全性,并实现了 Byzantine 故障容忍。
    2) 高效通信方法: 引入 NDN 网络,重新定义节点间的通信方式,提高了数据传输效率,降低了共识延迟,并提高了吞吐量。
    3) 性能评估: 通过实验验证了 VSSB-Raft 算法的安全性、高效性和 Byzantine 故障容忍能力,并与 Raft、PBFT 等算法进行了比较,证明了其优越性。

创新点、创新性:

  1. 安全性和效率的平衡: VSSB-Raft 算法在保证安全性的同时,也兼顾了效率,实现了安全性和效率的平衡。
  2. Byzantine 故障容忍: VSSB-Raft 算法能够有效地抵抗 Byzantine 故障,保证了区块链系统的安全性。
  3. NDN 网络的应用: VSSB-Raft 算法是第一个将 NDN 网络应用于区块链共识算法的算法,为区块链共识算法的发展提供了新的思路。
  4. 安全性和效率的统一: VSSB-Raft 算法将安全性和效率统一起来,为区块链技术的发展提供了新的方向。

技术难点

  1. 安全性与效率的平衡:引入零信任机制和安全认证会增加节点间的通信开销和计算开销,如何平衡安全性和效率是一个挑战。秘密共享算法的分割和恢复过程也需要消耗一定的计算资源,需要优化算法以提高效率。
  2. NDN 网络的部署和维护:NDN 网络与传统 IP 网络的架构不同,需要进行相应的部署和维护,这需要一定的技术难度。NDN 网络的安全性也需要进行保证,防止恶意节点攻击。
  3. 选举失败检测算法的复杂性:选举失败检测算法需要对各个节点的行为进行监控和比较,算法的复杂性较高,需要设计高效的算法来实现。
  4. 系统可扩展性:如何保证 VSSB-Raft 算法在节点规模扩大时仍然保持高效性和安全性,需要进行进一步的研究。
  5. 系统安全性:如何保证 NDN 网络和 VSSB-Raft 算法的整体安全性,防止恶意节点攻击,需要进行进一步的研究。

进一步研究思路 (Future Work)

  1. 节点身份认证与可扩展性:
    1)节点身份认证: 目前 VSSB-Raft 算法主要关注节点之间的通信安全,未来可以考虑将节点身份认证策略与零信任相结合,确保进入共识系统的节点是可信的。
    2)可扩展性: 探索如何将 VSSB-Raft 算法应用于大规模网络环境,例如,可以研究如何通过分片或分层等技术提高算法的可扩展性。
  2. NDN 网络安全:
    1)加密通信: 目前 VSSB-Raft 算法主要使用 NDN 网络进行数据传输,未来可以考虑引入加密通信机制,进一步提高数据传输的安全性。
    2)安全路由: 研究 NDN 网络中安全路由机制的设计,例如使用安全路由协议或引入信誉系统,防止恶意节点攻击路由过程。
  3. 算法优化:
    1)性能优化: 尝试优化 VSSB-Raft 算法的性能,例如,可以通过优化数据结构和算法实现来降低算法的复杂度,提高算法的效率。
    2)可配置性: 研究 VSSB-Raft 算法的可配置性,例如,可以允许用户根据实际需求调整算法的参数,例如阈值、签名算法等。

个人总结:

本文提出了一种基于零信任的 VSSB-Raft 共识算法,通过引入监督节点和秘密分享算法,实现了节点间无信任的共识过程,并利用 SM2 签名算法和 NDN 网络保证了数据传输的安全性和效率。实验结果表明,VSSB-Raft 算法具有高吞吐量和低共识延迟,能够有效抵抗恶意节点攻击,为区块链安全共识提供了新的思路。

作者 ienlab2023