历史证明:区块链时间同步的一致性算法

在不同项目的区块链使用的数十种一致性算法中,还有历史证明,这是由Solana项目团队开发的解决方案,用于明确消除与分布式网络中时间戳真实性相关的问题。

去中心化网络通过使用可靠但中心化的第三方时间戳解决方案部分解决了这一问题。例如,Google的Spanner依赖于几个彼此同步的Atom钟以及各种数据中心。

然而,这个问题必须通过区块链以不同的方式解决,因为它们是无信任的系统。网络中的节点不能信任外部源或消息中出现的时间戳。

例如,像Hashgraph这样的解决方案用平均时间戳解决了这个问题。网络显示的每条消息都由更高级别的实体签名和标记。这导致基于所有签名和认证消息的平均同步时间戳。

但是,这不是一种有效的解决方案,因为必须从网络收集所有消息并签名。然后必须计算平均时间戳并通过网络重新分配。一个太慢的系统。

这是历史证明共识算法的用武之地。

历史证明:时间同步的区块链算法

可以证明消息/事件在一个事件之后但在另一个事件之前的某个时间发生,而不是使用经典的时间戳概念。

例如,拍摄“纽约时报”封面照片时,可以证明照片是在报纸发布后拍摄的。通过历史证明,可以创建一条记录,显示某个事件在特定时间,在其他事件之前或之后发生,所有这些都不使用时间戳或第三方同步系统。

历史证明是一种高频延迟可验证功能。这意味着该功能需要许多连续的步骤来评估并产生一个独特可靠的结果,然后公开。

在Solana中实现的实现的情况下,使用了一种功能,该功能采用了对预图像(预先准备的散列图像)具有抗性的顺序散列系统。

为此,操作的输出成为下一个操作的输入。然后,定期记录当前计数,状态和输出。

在SHA256散列函数的情况下,如果没有使用2 125核心的暴力攻击,这个过程是不可能并行的。

输入

通过将数据的散列添加到先前生成的状态,可以将数据插入到序列中。随后发布状态,输入数据和计数。

添加输入时,所有未来的输出都将无法预测地发生变化。因此,仍然不可能并行化该功能,并且只要SHA256不受预映像和冲突的影响,实际上不可能创建生成所需散列的输入或创建具有相同散列的替代历史。

这证明两次操作之间已经过了一定的时间。可以证明数据是在包含之前创建的。

返回参考

历史证明输入可能引用了之前的历史证明事件。反向引用可以作为使用用户签名签名的消息的一部分插入,这意味着如果没有用户的私钥,则无法修改它。

参考报纸的例子,它相当于用户手拿报纸拍照。

由于消息包含散列0xdeadc0de,因此已知它是在创建计数510144806912之后生成的。然后将消息插回到顺序函数中。因此,回到这个例子,就好像一旦手拿报纸的照片被拍摄,第二天报纸将发布持有报纸的用户的照片。

历史证明:区块链时间同步的一致性算法首先出现在密码学家身上。

资讯来源:由0x资讯编译自CRYPTONOMIST。版权归作者Emanuele Pagliari所有,未经许可,不得转载
提示:投资有风险,入市需谨慎,本资讯不作为投资理财建议。请理性投资,切实提高风险防范意识;如有发现的违法犯罪线索,可积极向有关部门举报反映。
你可能还喜欢