区块链知识系列 - HotStuff 共识

共识协议 HotStuff 由 VMware Research 等团队于2018年3月提出,其预印版经过五轮迭代修改,并将于并行与分布计算领域著名的国际会议 PODC 2019上正式发表。

HotStuff 是一个基于主节点(Leader)的拜占庭容错共识协议

共识协议的目标是在去中心化的网络中就系统的状态达成统一的认识,以便所有的(诚实)节点统一从一个状态迁移到另一个状态。

  • PBFT 采用了两轮2/3投票来完成这个目标
  • HotStuff 采用了3轮2/3投票来完成这个目标

HotStuff 特点:

  1. 将 PBFT 的网状通信网络拓扑变成了星形通信网络拓扑,即它每次通信都依靠主节点。
    在这里插入图片描述
  2. 3轮2/3投票
    • pre-commit 阶段
    • commit 阶段:
    • decide 阶段

在这里插入图片描述
3. 门限签名

对于一个(k, n)-门限签名方案,假定存在一个公钥,而 n 个签名者每人都拥有自己的私钥(分片)。只要其中至少 k 个签名者对消息进行部分签名,那么由这 k 个部分签名可以导出对消息的完整签名,并且这个完整签名可以由公钥来验签。

PBFT的一个问题是区块头内包含了大量的确认签名, 使用门限签名可减少共识协议中签名的个数.

在 HotStuff 的三阶段确认中,所谓投票,就是其它节点即对某个消息进行门限签名并发送给主节点。当主节点收到足够多的投票时会导出完整签名。主节点向其它节点广播下一阶段消息时将附上这个签名,供其它节点将验证。

在这里插入图片描述
4. 共识过程的流水化处理 (与EOS相同机制)

三个确认阶段的行为: 其它节点对某一消息进行投票,主节点合成投票意见并通知给其它节点。这些过程可以统一表示,并采用流水化来处理。 这本质上就是让下一个视图的 prepare 阶段为当前视图的 prepare 阶段进行确认,即下一个 prepare 阶段(隐含地)包含了对当前视图的 pre-commit 确认,并以此类推。

在这里插入图片描述

往期精彩回顾:
区块链知识系列
密码学系列
共识系列
公链调研系列
以太坊系列
EOS系列
智能合约系列
Token系列
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

搬砖魁首

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值