共识的当前保证:一致性与活性
今天的共识协议主要关注两个属性:一致性和活性。一致性要求所有节点最终对同一组交易及其顺序达成一致,而活性则确保系统能够持续处理新的交易。然而,这些协议并未解决一个关键问题:达成的交易顺序是否能完全反映公平性。
在公有区块链中,交易排序具有直接的经济后果。交易执行的顺序决定了谁获取价值、谁承担成本,尤其是验证者、区块构建者或排序者可以利用其在区块构建中的特权角色来谋取经济利益。这种做法被称为最大可提取价值(MEV),包括有利可图的抢先交易、尾随交易和夹击交易。从表面上看,没有明显的方法可以阻止MEV提取行为,因为区块提议者对交易排序拥有单方面权力,并且没有任何协议规则从根本上限制他们如何行使这种权力。
为了解决这个问题,交易顺序公平性被提出作为第三个关键的共识属性。如果一个协议能够确保没有任何参与者可以系统地使交易排序偏离客观网络条件和协议规则所隐含的结果,那么该协议就具有交易顺序公平性。通过限制区块提议者对交易重新排序的权力,公平排序协议使区块链更接近透明、可预测且抗MEV的目标。
然而,即使是这种直观的公平概念也遇到了结构性限制。在一个异步分布式系统中,不存在全局定义的接收顺序,因为每个节点在不同的时间观察到消息,并且没有共享的时钟。因此,没有任何协议能够保证严格按照单一的通用到达顺序执行。这一限制源于异步通信下分布式共识的基本约束,而非任何特定的设计选择。
孔多塞悖论与完美公平的不可能性
最直观且最强的公平概念称为接收顺序公平性(ROF)。它简单来说就是“先到先服务”。ROF规定,如果大多数节点在交易B之前收到交易A,那么A应该在B之前被处理。
这听起来简单且公平。然而,问题在于节点并非在同一时刻看到所有交易。消息传输速度不同。有些计算机可能先收到A,另一些可能先收到B。因此,除非每个节点都能瞬间通信且无延迟,否则无法保证完美的“先到先服务”公平性。在真实网络中,这种情况永远不会发生。
还有一个更深层次的问题,即孔多塞悖论。这一概念源于投票理论。它表明,即使每个人(在此处是每个节点)在自己的思维中都有清晰且一致的顺序,群体最终也可能产生一个无意义的循环。
例如:大多数节点在B之前看到A,大多数节点在C之前看到B,大多数节点在A之前看到C。这产生了一个多数偏好循环(A→B→C→A),意味着没有任何单一排序能够满足所有成对比较中的多数观点。网络无法构建一个与大多数节点最初观察到的一致序列。
由于在这些条件下完美的ROF无法实现,实际系统采用了以下章节中概述的某些较弱的公平性保证。
Hashgraph的公平模型:哈希图、中位时间戳与aBFT共识
采用哈希图算法的Hedera通过一个由加密链接事件构成的有向无环图(DAG)来处理公平性问题。它是一种无领导者共识算法,在完全异步的环境下运行,并实现了异步拜占庭容错(aBFT)。在此模型下,即使存在无界消息延迟,诚实节点最终也能就同一交易日志达成一致。共识排序通过全网范围的虚拟投票过程产生:顺序由节点集体计算得出,而非由指定的区块生产者分配。
当节点收到交易时,会将其打包成一个称为事件的消息,并通过八卦协议传播给对等节点。当另一个节点创建后续事件时,它会记录已看到的事件的哈希值,并对新事件进行数字签名。这提供了加密证明,表明该节点在签署新事件之前已经看到了先前的事件。因此,哈希图强制执行因果顺序:一旦节点发布一个事件,嵌入在该事件中的祖先关系便证明了哪些交易先于该事件发生。
这种链接可以在DAG中表示为一条边。如果一个事件是另一个事件的直接或间接祖先,那么图中就存在一条从前者到后者的向下路径,协议提供了加密保证,证明祖先事件是先创建的。通过这种路径连接起来的交易根据其在图中的因果关系进行排序。当两个事件没有祖先关系时,它们是并发的,协议通过“接收轮次”机制来解决它们的相对顺序。每个事件根据超过三分之二的节点(即超级多数)通过DAG结构“强烈看到”该事件的条件被分配一个轮次。分配到较早轮次的事件先排序。
对于共享同一接收轮次的事件,协议使用中位时间戳来确定顺序。每个节点在首次收到事件时记录本地时间戳。分配给事件的共识时间戳是节点集报告的时间戳的中位数。这个时间戳并非孤立地从任意本地时钟推导而来。它受到哈希图中保存的八卦祖先关系的约束:节点不能声称在因果前驱事件之前收到某个事件,否则会在DAG中产生可检测的不一致。在标准aBFT假设下(少于三分之一的节点是拜占庭节点),中位数会落在一个诚实的时间戳上或两个诚实时间戳之间,这防止了恶意节点将中位数偏移出有界范围。
孔多塞悖论仍然可能适用于并发事件,特别是那些在DAG中没有祖先关系的事件,不同的节点可能以不同的顺序观察到它们。DAG结构消除了因果链接事件的这种歧义:不可能存在矛盾的因果路径,因为每个事件的祖先关系在创建时就已加密固定。由于八卦传播通常使新事件在几分之一秒内成为先前事件的后代,大多数交易都落入清晰的因果链中。剩余的并发事件通过上述的接收轮次分配和中位时间戳来解决。
然而,哈希图的公平性保证存在有界的对抗面。节点仍然可以决定何时八卦一个事件、先中继哪些事件以及延迟中继多长时间。这些选择重塑了传入中位时间戳计算的“首次看到”模式。DAG不能歪曲其记录的因果顺序,但在该顺序被记录之前,八卦行为可以有策略地塑造它。
BOF协议:通过批量聚合实现公平性
BOF协议将“区块”定义为构成单个孔多塞循环的交易集合,然后对这些区块进行公平排序,同时忽略区块内部的排序。BOF标准最早由Mahimna Kelkar等人于2020年在《Order-Fairness for Byzantine Consensus》一文中提出,该文形式化了Aequitas协议族。在Aequitas中,BOF要求:如果γ比例(γ-fraction)的节点观察到区块b在区块b′之前,那么任何诚实节点都不能在输出时使b排在b′之后。γ比例是指必须就区块排序达成一致才能将该排序视为“公平”并由共识协议强制执行的比例。
对于BOF,如果公平性谓词指示交易tx应该先于tx′,那么tx不能出现在比tx′更晚的区块中。当公平性关系出现循环时,协议会将整个强连通分量合并为一个区块,因为BOF将该区块(而非单个交易)视为原子的公平单元。在γ-BOF下,唯一被禁止的结果是:当存在有向约束tx→tx′时,将tx′放在严格早于tx的区块中。协议允许两个交易出现在同一个区块中,并且对它们在该区块内的排序不施加任何限制。
例如,假设有30个交易构成一个孔多塞循环,那么它们会被放在同一个区块中。按哈希排序可能会将30放在1之前,但γ比例节点观察到交易1在交易30之前。然而,在γ-BOF下,将30放在1之前仍然被认为是“公平的”,因为1和30在同一个区块中,而这种公平概念只考虑区块的顺序,而不考虑区块内交易的顺序。
当不存在循环时,BOF等同于强形式的ROF。当出现孔多塞循环时,参与循环的所有交易被放入一个区块中,并通过确定性方法(例如基于哈希的规则)对该批次内的事件进行排序。
该协议通过三个协调阶段来确保整个网络的交易排序一致性:八卦阶段、共识阶段和最终确定阶段。
在八卦阶段,节点使用先进先出广播按每个发送者本地接收的顺序传播交易,保留每个发送者的序列,以便每个对等节点维持可比较的交易视图。八卦稳定后,进入共识阶段,节点执行Set Byzantine Agreement(Set-BA)协议,就一组统一的本地排序达成共识,这将是全局排序的基础。在最终确定阶段,节点构建一个捕获交易排序关系的依赖图。该图中形成循环的任何交易都被分组到同一个强连通分量中,并作为一个区块一起完成最终确认。
然而,Aequitas存在弱活性问题,因为其高通信成本和严格的公平性约束要求协议等待整个孔多塞循环完成后才能最终确定折叠后的SCC。由于孔多塞循环可能无限延续,这种等待时间可能无界增长。因此,交易传递可能被无限期延迟,并产生了定义Aequitas弱活性保证的“冻结”风险。
Themis的引入解决了这一问题。它在解决活性和通信问题的同时,保留了相同的γ-BOF特性。与Aequitas类似,Themis也构建依赖图并在“FairFinalize”阶段折叠SCC。这些SCC代表了γ-BOF松弛背后的同一非传递性孔多塞循环,Themis使用凝聚图来推导最终输出的批次结构。关键区别在于,Themis不会等待一个完整循环完成。相反,它使用延迟排序和批次解卷来增量输出SCC,同时允许新交易继续流入。这保留了γ-BOF,但将Aequitas的弱活性提升为标准活性,并保证了在有界延迟内的交付。
在其标准形式中,Themis要求每个参与者与网络中的大多数其他节点交换消息。随着参与者数量的增加,通信量迅速增长,大致与网络规模的平方成正比。然而,在其优化版本SNARK-Themis中,节点使用简洁的加密证明来验证公平性,而无需直接与每个其他参与者通信。这降低了通信负载,使其仅与节点数量成正比增长,从而允许Themis即使在大型网络中也能高效扩展。
如果恶意提议者试图通过提议一个空区块来利用这种情况,Themis采用延迟排序:部分排序的批次(B₁)仍然被接受,而其交易的最终精确顺序由下一个诚实提议者决定。该提议者基于可验证的交易关系(而非个人裁量权)来最终确定顺序。这种设计确保最终确定仅依赖于有界网络延迟,而不依赖于当前提议者的任意行为,从而弥补了Aequitas无法保证的关键活性差距。
这种结构保证每笔交易都被包含并确定性执行,即使存在冲突的到达顺序。由于Themis利用内部依赖图和SCC凝聚来提取最终排序,因此它能够抵御恶意操纵。一旦交易被纳入批次,攻击者无法简单地重新排序或抢先交易其他用户的交易。任何改变依赖关系的尝试都会破坏经过验证的图一致性。
根据Mahimna Kelkar等人的实证分析,在地理分布式网络中,γ-BOF比基于时间戳的方法更能抵抗对抗性重排序。然而,它需要显著更高的计算和协议复杂性,这也可以视为一个缺点。
结论
在缺乏同步时钟和即时通信的分布式系统中,交易排序的完美公平性在结构上是无法实现的。孔多塞悖论确保了多数偏好可能以任何单一线性顺序都无法满足的方式发生冲突。真正的问题是如何找到最现实且最有用的权衡方案。
哈希图和BOF代表了两种连贯的答案。两种方法没有本质上的优劣。两者都将公平性直接嵌入共识机制,而非依赖信任或权威。两种方法都表明公平性不是一个二元属性,而是一个由正式不可能性结果定义的权衡谱。在同步性不可用且时钟不可信的情况下,中位时间戳聚合与批次顺序折叠之间的选择,反映了对同一基本约束的不同但同样原则性的回应。

资金费率
资金费率热力图
多空比
大户多空比
币安/欧易/火币大户多空比
Bitfinex杠杆多空比
账号安全
资讯收藏
自选币种