首页 > 编程语言 >哈希图共识(Hashgraph Consensus)算法

哈希图共识(Hashgraph Consensus)算法

时间:2025-01-17 20:02:54浏览次数:3  
标签:事务 Hashgraph Consensus 投票 共识 希图 gossip 节点

哈希图共识(Hashgraph Consensus)是一种新型的分布式共识算法,旨在提供一种快速、高效且无须传统区块链的共识机制。它基于哈希图(Hashgraph)结构,通过一种名为“gossip about gossip”(关于闲聊的闲聊)和“virtual voting”(虚拟投票)的技术实现共识。

哈希图结构

哈希图是一种有向无环图(DAG),其中的每个节点代表一个事务。不同于区块链的线性链结构,哈希图允许多个事务并行发生,因此能够处理更多的交易。

哈希图共识的工作原理

  1. Gossip about Gossip

    • 节点之间会通过“gossip”方式传播消息(也就是相互交流并分享自己所拥有的信息)。每个节点不仅会传播交易信息,还会记录其他节点交换信息的时间戳和顺序。
    • “关于闲聊的闲聊”是指每个节点在传播时,不仅传播自己的事务信息,还会附带其他节点的传播历史,记录哪些节点已经知道哪些事务,形成网络中信息的传播链。
  2. Virtual Voting

    • 节点通过计算其他节点传播信息的时间戳和顺序来进行虚拟投票。每个节点并不直接进行投票,而是根据传播的时间戳推算其他节点可能的投票结果。
    • 通过这种方式,节点可以判断出大多数节点的共识,确认某个事务的有效性,并决定将其加入最终的账本。

举例说明

假设我们有四个节点(A、B、C、D)和五个事务(T1、T2、T3、T4、T5)。

  1. 节点A发送事务T1和T2

    • 节点A开始传播事务T1和T2,并记录这些事务的时间戳和顺序。
  2. 节点B、C、D接收到T1和T2

    • 节点B、C、D接收到A的事务并记录收到的时间戳。然后,节点B开始将自己收到的事务信息传播给其他节点,同时也记录其他节点接收到这些信息的时间顺序。
    • 此时,节点B不仅传播T1、T2,还传播自己从A接收到的消息,形成“关于闲聊的闲聊”传播。
  3. 节点C和D也传播消息

    • 节点C和D以类似的方式传播事务T1和T2,并记录接收到信息的顺序。
  4. 虚拟投票形成共识

    • 根据传播的时间戳,节点可以推算出其他节点可能会选择哪些事务。比如,如果节点A、B、C都收到T1,并且T1是最早传播的事务,那么它们会认为T1是有效的并加入账本。
    • 每个节点根据自己的“虚拟投票”结果,形成最终的共识。
  5. 最终账本

    • 所有节点根据虚拟投票的结果达成共识,确认哪些事务是有效的,形成一致的账本。

哈希图共识的优点

  1. 高吞吐量

    • 由于支持并行处理,哈希图可以处理更多的事务,而不像区块链那样需要顺序地处理每个块。
  2. 快速确认

    • 在哈希图中,共识确认速度较快,因为节点通过虚拟投票推算出共识,不需要等待所有节点的实际投票。
  3. 无矿工

    • 哈希图不依赖传统的矿工,避免了区块链中的能源消耗和竞争。
  4. 去中心化和抗篡改

    • 与区块链一样,哈希图也是去中心化的,而且通过哈希图的结构,篡改历史数据变得非常困难。

总结

哈希图共识是一种不同于传统区块链共识算法的创新方式。通过哈希图的结构和gossip及虚拟投票机制,能够实现高效、快速且去中心化的事务处理,为分布式系统提供了更高的性能和更少的能源消耗。

图结构

哈希图共识(Hashgraph Consensus) 是一种基于 有向无环图(DAG) 结构的共识协议,结合了 gossip about gossip虚拟投票 的机制,以实现高效的事务处理和共识。要理解哈希图共识的工作原理,通常会通过 图结构消息流 来表示。

哈希图共识流程图

这里给出一个简化版的哈希图共识流程图,展示哈希图如何通过节点间的消息传播和投票来达成一致。

   +------------------------------------+
   |                                    |
   |              Node A                |
   |                                    |
   +------------------------------------+
                /        |       \
          (gossip)     (gossip)   (gossip)
               /            |            \
    +----------------+  +----------------+  +----------------+
    |                |  |                |  |                |
    |    Node B      |  |    Node C      |  |    Node D      |
    |                |  |                |  |                |
    +----------------+  +----------------+  +----------------+
          /      |            |      \         /         |    
   (gossip)    (gossip)    (gossip)    (gossip)  (gossip)
        |           |          |          |          |
   +----------------+  +----------------+  +----------------+
   |                |  |                |  |                |
   |   Node E       |  |   Node F       |  |   Node G       |
   |                |  |                |  |                |
   +----------------+  +----------------+  +----------------+

哈希图共识工作流程

1. Gossip about Gossip
  • 节点通过 gossip(闲聊) 协议传播信息。在传统的 gossip 协议中,节点只是简单地传播它们自己所知道的事务信息。而在哈希图中,节点不仅传播事务信息,还会携带其他节点的传播历史。
  • Gossip about gossip 是指节点传播它们不仅拥有的事务数据,还包括其他节点之前接收到事务信息的时间戳和顺序。这样做是为了记录信息的传播链,形成一个有向无环图(DAG),并为后续的虚拟投票提供依据。
2. 图结构与消息传播
  • 在哈希图中,每个事务都是一个节点,而节点之间的边表示这些事务的传播顺序。
  • 随着节点间的信息传递,图结构不断增长。每个事务(节点)都可以指向多个父节点,并且可以有多个子节点,这使得哈希图结构非常灵活,可以并行处理多个事务。
3. 虚拟投票(Virtual Voting)
  • 一旦信息传播到一定的程度,每个节点根据接收到的 时间戳顺序 来进行虚拟投票,确认某个事务是否有效。虚拟投票并不依赖于传统的投票机制,而是通过推算其他节点的可能投票结果来实现共识。
  • 例如,如果节点A、B和C都收到事务T1,并且T1是最早传播的事务,那么这些节点会通过虚拟投票达成一致,认为T1是有效的,并将其纳入账本。
4. 共识达成
  • 通过 gossip虚拟投票 的结合,最终所有节点达成一致,确认哪些事务是有效的,并将它们加入到账本中。这样,整个网络的节点能够迅速达成一致,且不依赖于传统的工作量证明(PoW)或权益证明(PoS)。
5. 分布式账本
  • 最终,所有节点都共享一个相同的账本,且该账本的每个事务都有明确的传播历史和虚拟投票结果,确保数据一致性和不可篡改。

结构图示例

                   +-----------------------------------+
                   |                                   |
                   |            Transaction T1         |
                   |                                   |
                   +-----------------------------------+
                         /                   \
                        /                      \
              +-------------------+    +-------------------+
              |                   |    |                   |
              |    Transaction T2 |    |    Transaction T3 |
              |                   |    |                   |
              +-------------------+    +-------------------+
                    /   |      \                |      \
                   /    |       \               |       \
          +-------------------+  +-------------------+  +-------------------+
          |                   |  |                   |  |                   |
          |   Transaction T4  |  |   Transaction T5  |  |   Transaction T6  |
          |                   |  |                   |  |                   |
          +-------------------+  +-------------------+  +-------------------+

关键特点

  1. DAG结构:哈希图的图结构是一个有向无环图(DAG),使得多个事务能够并行处理。这解决了传统区块链中的性能瓶颈,避免了每个事务都必须按顺序打包到一个区块中的问题。

  2. Gossip机制:通过gossip协议,信息能够快速传播到全网,确保节点间的消息能够迅速同步。

  3. 虚拟投票:节点根据接收到的消息和时间戳,通过虚拟投票算法推算出其他节点的投票结果,从而实现共识。

  4. 高吞吐量与低延迟:由于支持并行处理事务,并且消息传播速度非常快,哈希图能够处理大量事务,且交易确认时间低,通常在几秒内完成。

总结

哈希图共识通过 DAG 结构和 gossip about gossip 机制,使得节点能够并行处理事务,并通过虚拟投票快速达成共识。这种结构和机制不仅提高了吞吐量,还减少了传统区块链系统中的延迟,使得哈希图成为一种高效的分布式共识解决方案。

标签:事务,Hashgraph,Consensus,投票,共识,希图,gossip,节点
From: https://blog.csdn.net/WuLex/article/details/145213640

相关文章