主页 > imtoken新版下载 > 中本聪的惊人设计:经得起10年考验的比特币区块时间戳保护 | 火星技术线程

中本聪的惊人设计:经得起10年考验的比特币区块时间戳保护 | 火星技术线程

imtoken新版下载 2023-07-16 05:14:04

原标题:《比特币的区块时间戳保护规则》作者:BitMEX Research

我们研究了比特币中两条鲜为人知的规则,这些规则可以防止流氓矿工操纵区块时间戳以获得不公平的高挖矿奖励。 我们讨论了为什么可以选择像 2 小时 MAX_FUTURE_BLOCK_TIME 值这样的常量,以及该值将如何具体影响比特币现金。 我们得出结论,鉴于在实施规则时缺乏功能性网络,比特币的时间保护规则似乎运作良好。

在哪可以看比特币_比特币可信吗_比特币不可篡改

比特币的时间问题

有人可能认为时间对于比特币网络来说并不是一个重要的考虑因素,因为每个块都引用前一个块的哈希值,所以块已经有序。 比特币区块还包含交易(输入、输出和值)、导出区块头的默克尔树,以及用于证明工作的区块哈希本身。 从表面上看,这对于交易和共识系统来说可能就足够了。 但是,存在调整难度的问题。 如果太多矿工加入网络,出块时间可能会变得太快,或者如果太多矿工离开,出块时间可能会变得太慢,从而使网络变得不可靠。

为了解决这个问题,挖矿难度每两周调整一次,以实现区块之间十分钟的目标时间。 不幸的是,为了计算两周,需要将时间的概念引入区块链并成为共识系统的一部分。 因此,区块必须包含时间戳,可以将比特币想象成世界上第一个分布式电子时钟。 区块时间戳安全规则本质上涉及比特币区块生成的两次:

区块头中的时间是矿工放置的区块实际产生的时间。

当然,两次应该差不多。 毕竟,矿工必须拥有相当准确的时钟,那么他们为什么要在时间上撒谎呢?

矿工确实有在时间上撒谎的动机。 例如,流氓矿工可能会添加未来的时间戳。 例如,如果生产一个区块需要 10 分钟,矿工可以通过在未来添加 5 分钟的时间戳来声称它需要 15 分钟。 如果这 5 分钟的增加持续到整个两周的难度调整期间,平均出块时间看起来是 15 分钟,但实际上比这要短。 然后下一个周期的难度可能会向下调整,由于更快的出块时间而增加挖矿收入。 当然,这种方法的问题在于比特币时钟继续与实时相距越来越远。

为了解决或缓解上述问题,比特币有两种机制来防止矿工篡改时间戳。

1. 过去时间中值 (MPT) 规则——时间戳必须早于过去 11 个区块的中值。 中值为 11 个区块意味着可以重组 6 个区块并且时间仍然不会倒退,这可能与 Meni Rosenfeld 2012 年报告中提供的示例一致,即对于 10% 具有网络计算能力的攻击者必须执行 6确认将攻击成功的概率降低到 0.1% 以下。

2. 未来块时间规则根据- MAX_FUTURE_BLOCK_TIME 常量,与来自对等节点的中值时间相比,未来时间戳不能出现超过 2 小时。 节点提供的时间与本地系统时钟之间的最大允许差异为 90 分钟(另一个保障措施)。 应该注意的是,与上面的 MPT 规则不同,这不是一个完全同意的规则。 时间戳太晚的块是无效的,但随着时间的推移它们可能会变得有效。

规则一确保区块链在时间上继续向前发展,而规则二确保区块链不会向前发展太远。 这些时间保护规则并不完善,例如矿工仍然可以通过在两周内生成未来时间戳来将时间戳向前移动,但这种操作的影响是有限的。

比特币可信吗_在哪可以看比特币_比特币不可篡改

如上图所示,由于两小时只是两周的一小部分,因此该操作对网络可靠性和挖矿盈利能力的影响可能有限。 这相当于在难度调整后的两周内将区块之间的时间从 10 分钟减少到 9 分 54 秒。 而且,这只是一次移动,因为一旦发生了两个小时的时移,除非先向后移动,否则无法再次向前移动。 同时,矿工可能会考虑提前两个小时前的安全边际比特币不可篡改,以降低区块被网络拒绝的风险。

根据我们的判断,这些规则已被证明在防止矿工以恶意方式篡改比特币时间戳方面相当有效。

比特币现金的理论区块时间问题

正如我们在 2017 年 9 月首次提到的那样,比特币现金是 2017 年 8 月从比特币分叉出来的替代货币,主要目的是增加区块大小限制。 当时比特币现金开发者的担忧之一是很多矿工不会挖比特币现金,因此区块之间的时间差可能太大。 因此实施了所谓的“紧急难度调整”(EDA)来缓解这种担忧。 我们不会在这里详细介绍,但足以说明该机制很复杂并且已被证明存在根本性缺陷。 该算法意味着如果在一定时间内未找到一定数量的块,则难度会降低。 这个政策特别激进,因为这意味着区块之间的时间间隔越长,难度向下调整的幅度就越大。 矿工可以通过留下较大的时间间隔来故意操纵网络,从而导致难度的大幅波动,随后是以非常高的频率生成区块的低难度时期。 然后网络变得不可靠。

由于这个缺陷,产生了比预期更多的比特币现金区块,在此期间矿工的收入增加了。 比特币现金基于比特币建立了大约 5,000 个区块线索,其中一个线索至今仍然存在。 几个月后,即 2017 年 11 月,终于做出了修复。 EDA 被移除,取而代之的是一个新的难度调整系统(一个更简单的 24 小时滚动系统)。 但是,这与比特币的两周窗口系统还是有区别的。 比特币现金的系统更加动态,调整也更快。 虽然这意味着比特币现金在短期内可能会遇到更大的波动困难,但货币对会更快地适应变化,而比特币的时差修正可能需要更长的时间。

在哪可以看比特币_比特币可信吗_比特币不可篡改

资料来源:BitMEX 研究

在比特币现金的新难度调整算法中,许多人可能忽略的一件事是它如何与两小时时间保护规则相互关联。 据我们所知,比特币现金保持 2 小时不变。

在哪可以看比特币_比特币可信吗_比特币不可篡改

两小时的时间现在是计算周期的 8.3%。 这相当于将块之间的时间从 10 分钟减少到 9 分 10 秒。 这似乎确实具有潜在的重要意义,如果被利用,可能会导致矿工盈利能力发生变化。 因此比特币不可篡改,比特币现金可能在某种程度上容易受到矿工篡改时间戳的攻击,或者至少比比特币更容易受到攻击。 另一方面,虽然比特币现金比比特币更容易受到矿工时间戳篡改攻击,但它可以更快地解决问题。

综上所述

比特币现金的时间保护规则明显存在漏洞,可能未被利用,这表明比特币的时间保护规则是经过深思熟虑的。 据我们所知,这些时间保护规则自2009年比特币推出以来就已经存在。在设计系统时,中本聪至少要创新三个层次的深度:

验证工作系统→难度调整系统→完善时间保护规则

虽然这对我们今天来说似乎不是特别优雅,但我们在这些系统方面已有 10 年的经验。 我们认为,中本聪在出现任何此类网络之前就已经想到了这一点,这一点非常了不起。