POH Consensus

简介

Solana 链上的共识机制是 DPoS(委托权益证明) 和 PoH(历史证明),其中 PoH 是 Solana 高 TPS 的核心原因,理论峰值 TPS 为 65,000。下面我们详细说说 PoH 是如何做的。

传统共识机制(Pow 和 PoS)

传统共识机制中的每一个节点都有自己的内部时钟,它按照本地系统时钟执行。当交易发生时,节点根据本地时钟为交易新增时间戳。所有的节点需要相互沟通,协调彼此的本地时钟,以确保他们处理交易时时间是一致的。当有成千上万个节点分布在全球各地,就会遇到时间戳同步问题,要同步时间就需要花费大量的时间和处理能力来验证时间戳的准确性。倒是区块确认的延迟,甚至拒绝。

什么是 PoH(历史证明)

PoH 是选择一个节点(领导节点),以此节点的时间为全局时间,所有节点都使用它来验证两个事件的交易顺序。PoH 依赖于一种加密方法,以建立交易的连续,按时间顺序记录。

在 Solana 中每个交易都经过 SHA-256 处理,一个交易的 hash 是下一个交易 hash 的输入。这个过程建立一个长而连续的链。PoH 利用 VDF(可验证延迟函数)实现对交易的 hash 以及经过的时间,这是一个串行之行,提供了一个具有加密可靠的交易顺序。

DPoS(委托权益证明)

为了更好的了解 PoH,我们结合 DPoS 看看。
在 DPoS 中,每个抵押了 SOL 的验证者能够参与网络治理。对区块的有效性进行投票,决定是否将其新增到区块链中。不愿直接参与的权益证明的 SOL 持有者,可以将其委托给其他验证者。作为抵押 SOL 的回报,委托人将获得区块奖励的一部分。

DPoS 的运作原则是,具有较大权益的节点更有可能被选择来验证交易并将其新增到区块链中。

Solana 共识机制的概述

  1. 领导节点的选择: 领导节点负责生成 PoH 序列和建立区块
  2. 领导节点将接收交易,并使用 PoH 为它们新增时间戳,形成交易顺序。
  3. 建立区块
  4. 区块传播: 将新建立的区块发送给复制节点(其他验证者)。
  5. 负责节点验证:1. 使用 PoH 序列验证交易顺序,2. 验证交易规则是否有效
  6. 区块新增到区块链中。选择下一个领导节点,重新开始