时序与事件
PoH 序列不仅是一条时钟,还是一个事件日志——交易和事件可以被"插入"到序列中,获得可验证的时间戳。
事件插入
当一笔交易发生时,PoH 产生器将交易数据混入当前哈希:
普通步骤:
H(n) = SHA256(H(n-1))
插入事件的步骤:
H(n) = SHA256(H(n-1) || 交易数据)
这个哈希值就记录了"该交易发生在第 n 步"。
顺序的不可否认性
一旦交易被插入序列,就无法改变其时间顺序:
- 不能把后发生的事说成先发生(序列是顺序的)
- 不能伪造时间戳(改变任何步骤会破坏后续所有哈希)
这解决了分布式系统中长期存在的事件顺序问题,节点无需通信即可就事件顺序达成一致。
Solana 的 Slot 机制
Solana 将 PoH 序列划分为固定长度的 Slot(约 400ms),每个 Slot 由当前 Leader 填充交易,打包成区块。
Slot 1 [0-400ms]: Leader A 的区块,包含 H0 ~ H100
Slot 2 [400-800ms]: Leader B 的区块,包含 H101 ~ H200
Slot 3 [800-1200ms]:Leader C 的区块,包含 H201 ~ H300
在演示中体验
在时序演示页面,你可以:
- 观察事件如何被嵌入到哈希序列的特定位置
- 看到事件时间戳与哈希步骤的对应关系
- 理解为什么时间顺序不可篡改