本文是为预测EIP4345的影响而作的练习。这个EIP提议在2021年12月推迟难度炸弹。我们的目标是看看我们是否能帮助确定应该何时推迟、应该推迟多少,好让难度炸弹预计在2022年5月份再次爆炸。
预备知识
有关这个主题,我之前已经写过很多篇文章了:
有关难度计算的方法:It’sNottheDifficult
有关如何推迟难度炸弹:AMethodtoDiffusetheDifficultyBomb
一些更老的文章见此处和此处
难度炸弹的计算两部分组成:A部分,用于调整难度、平抑出块时间的波动;B部分,即难度炸弹本体。
A部分的调整时逐块发生的,保证出块时间围绕13.5秒波动。这部分的调整效果非常好,如果没有难度炸弹的话,将使出块时间几乎保持恒定。我们感兴趣的是B部分。
B部分的炸弹是一个阶跃函数,每隔10万个区块,数值就变作两倍。在“爆炸”之前,大家都不会注意到它,然而一旦它开始爆炸,数值上升的速度会非常快(跟2^n一样。
以太坊核心开发者提出将难度炸弹实施时间推迟两个月:6月13日消息,在以太坊测试网执行 The Merge 并反映出一些错误后,以太坊开发人员提出 EIP-5133 将难度炸弹推迟到 2022 年 8 月。据了解,难度炸弹是一条 The Merge 的关键催化剂,这可能意味着等待 The Merge 的时间将更长。(decrypt)[2022/6/13 4:21:10]
炸弹的数值依赖于fake_period。fake_period的值则完全依赖于fake_block的数值;这个数值又是由当前区块的区块号以及offset决定的。
注意
我只有自己一个人。我带着日渐疲惫的心、使用公开可得的数据写下这篇文章。我在这里所说的一切都是可以讨论的,但我已不准备为此负任何责任。本文中的一切,请自己带着怀疑和谨慎加以看待和使用。
实际数据vs.理论数据
我是一个工程师,不是一个数学家,所以我对实际数据的兴趣,要比对数学预测的大。在下文中,我会预测数据将如何改变。我的预测基于上面的公式,但都只用到了简单、直接的Excel表格。
我的讨论基于三个简单的观察:
A部分工作得非常好,使得出块时间稳定在平均13.3的水平。
B部分也工作得非常好,它是独立于A部分的,并且只会提高区块时间。
以太坊核心开发者:12月网络升级将仅包含“推迟难度炸弹”:9月27日消息,以太坊核心开发者Tim Beiko表示,在与4个客户端团队交谈后,以太坊12月的网络升级将仅包含“推迟难度炸弹”,不包含其他内容的升级,提议以箭形冰川(Arrow Glacier)命名12月的升级。EIP-3860和目前上海升级(是否仍然称为“上海升级”待定)中提出的其他EIP,一旦合并完成,将讨论其中哪些应该在合并后的第一次升级中实施。[2021/9/27 17:08:49]
如果我们忽略炸弹部分,我们的预测会是保守的。
换句话来说,如果我们的预测忽略了炸弹的效果,我们预测的时间将会比实际时间“提早”一些。这样的话,即使我们预测错了,也会有额外的缓冲时间。
第一个表格使用当前的区块号,并按每块13.3秒的时间推算出14000000区块高度的时间:
看仔细一些,我们发现,自区块号12000000以来,平均出块时间一直在提高。当然,随着炸弹的爆炸,平均出块时间会增加得越来越快。
以太坊社区提案将难度炸弹延迟到今年12月第一周:以太坊社区提案EIP-3554提议将难度炸弹延迟到今年12月第一周,该提案目前为草稿状态。EIP-3554的目的是为将难度炸弹推迟到上海升级和PoS合并之后。[2021/5/9 21:40:02]
再次强调,为了保守一些,我们选择13.3秒的出块时间来预测未来区块挖出的具体时间,并且,我们暂时忽略难度炸弹的效果。当难度炸弹爆炸时,平均出块时间增加;所以,忽略难度炸弹的结果是我们预测的时间将早于实际挖出的时间。
何时分叉
我们考虑的第一个问题是,“何时应该分叉?”
在我看来,答案完全取决于fake_period的数值。可以这么问:“我们应该在哪个区块号分叉?13700050,13800050还是139000050?”——为什么这很重要,则留给读者当作练习——公式的计算应该使用大于号呢,还是使用大于等于号呢?)
下面的表格展示了fake_block计算。
动态 | 以太坊EIP 2515提议用“难度冻结”取代“难度炸弹”:以太坊硬分叉协调员James Hancock最近发布的EIP 2515试图用“难度冻结(Difficulty Freeze)”取代长期存在的“难度炸弹(Difficulty Bomb)”。
Hancock表示,“难度冻结是一种易于预测和建模的机制,核心开发人员和客户端维护人员更容易感受到失去它的压力。客户端维护人员也被定位为最有能力应对即将到来的难度冻结的群体。”
EIP 2515提议使用难度冻结替换难度炸弹,主要由于最近硬分叉缪尔冰川面临的问题。 Hancock解释,EIP背后的动机是简单地消除难度炸弹的复杂模型,该模型在意想不到的时间出现,造成了技术困难,对矿工造成了负面影响。
如果实施新的EIP,将简化区块时间重定目标机制。Hancock还提到该EIP会对其产生影响的一些安全考虑因素。然而,并非每个人都对新EIP感到满意,有一些批评者倾向于旧方式。(AMBCrypto)[2020/2/17]
在这里我们并置了对每个区块将挖出的具体时间的预测,以及伪区块号的计算。
伪周期号正是我们感兴趣的内容,因为难度炸弹的值完全取决于伪周期号的值。从我之前的工作来看,我们认为难度炸弹的效果会在伪周期号达到41~42之间的时候开始显现,在此之前则不明显。换言之,当伪周期号变成41时,B部分的效果将压过A部分的效果。
动态 | 由于难度炸弹的影响,ETH日产量或将在下个月下降超30%:据CoinSummer数据显示,由于难度炸弹的影响,ETH的日产量将在2019年2月9日的时候骤降至13787个,和之前相对稳定的日产量20300个相比,下降幅度达到32.08%,按照今日coinbase的ETH报价104.75美金计算,每日减少卖出压力68.22万美元,占coinbase过去24小时成交量的4.33%。现预计推迟到2019年2月27日的constantinople硬分叉之后,日产量将继续下降至13130个,和20300个相比,下降幅度达到35.32%[2019/1/29]
我在这里不想解释为什么难度炸弹的效果不会在伪周期号达到41之前显现。我想说的只是,炸弹只会提高出块的时间,而如果没有炸弹的话,A部分就会让区块时间保持在13.3秒左右。换句话来说,平均出块之间会高于13.3秒,如果太低了,A部分就会调整难度,把出块时间拉回来——再直白一点——A部分就是这么工作的。
给定上述分析,我建议在晚于13800000区块的任意时间分叉。大概是12月中旬。我会建议以具体的区块号为目标,比如区块号13850000。“痛点”会在大约1月中旬到来。所以这个目标也是有容错空间的。
我们应该推迟多少伪块?
我们需要考虑的另一个问题是,“我们需要偏移多少伪区块?”
如上所述,偏移量决定了伪区块号,进而决定了伪周期号,进而决定了炸弹的值。所以,在下文中,我们会专注于偏移量,看看我们能学到什么。
EIP4354所提议的数值
首先,我们来看看这个EIP提议的偏移量。我们在此根据13.3秒的平均出块时间生成一个简单的图表。同样地,我们忽略炸弹的影响,因为我们知道炸弹只会提高区块时间,因此让相应区块号的实际发生时间晚于我们的预测。我们将安排“ArrowGlacier”发生在13800050号区块,并使用这个EIP提议的偏移量10500000。
本图似乎表明,如果我们设置10500000的偏移量,则难度炸弹最早将在4月中旬开始爆炸。到5月中旬,区块将开始显著变慢。
我们之前遇过的最大的伪周期号就是43,是在“拜占庭”分叉之前。出块时间的增加显著可见——达到了数秒的级别。
提早或推迟分叉的时间
为了消遣,我准备看看如果我们提早或推迟分叉的时间,会有什么影响。
下面的这张表显示了估计的结果——让我有点意外——分叉的时间对最终结果没有影响。但是,我回想了一些,觉得这是有道理的。因为,唯一一个决定伪周期号的量就是偏移量。除了让当次分叉之前出块变得更慢,推迟分叉的时间对下一次难度炸弹爆炸的时间没有任何影响。
你可以从上面这张图看出,无论我们早点还是晚点实施“ArrowGlacier”硬分叉,只要我们使用10500000的偏移量,那就对下一次难度炸弹爆炸的时机没有任何影响。
那我们该偏移多少呢?
这个问题取决于你想在5月的时候给以太坊核心开发者多大的压力。如果你想给他们很大的压力——让5月的时候整个世界都会抱怨以太坊出块速度变慢——那就把偏移量设得小一点。如果你只想轻轻地推他们一下——类似于“我们最好现在采取行动,不过也不是特别着急”——那就支持大一点的偏移量。
如果你使用了10500000的偏移量,你可能是在给他们很大的压力。你可以预期,四月底就会看到出块显著变慢。但是,难度炸弹的麻烦之处在于,一旦开始爆炸,就不会给人喘息之机。
从“明显”到“非常显著”,到“令人烦躁”,再到“搞什么鬼”再到“以太坊去死吧”,只需要4到6周时间。我不是瞎扯,因为每一个10万区块的周期都会越来越长,而且只要开始爆炸,就会爆炸得越来越快。详见我上面关于“拜占庭”分叉前爆炸情况的文章。难度炸弹是来得很慢,但爆炸之后可就是另一番景象了。
在最后一个表格中,我建议使用10700000的偏移量。我同样建议在13800050号区块后分叉。这会让我们现在有休息的时间,并让预计下一次爆炸的时间推到5月中旬。这是保守估计,但也是现实的考量。
结论:需要设置大于10500000的偏移量。
总结
决定你想给核心开发者多大的压力。如果你想狠狠推他们一把,就把偏移量设为10500000;如果你想放过自己,就请设置为10700000。摇摆不定的,可以在这两者间取一个值。
“何时”激活分叉的决定对下次爆炸的时间没有影响。这个决定唯一影响的是“ArrowGlacier”硬分叉之前出块时间会拉长到多久。这是因为,只有偏移量会影响伪周期号,也只有伪周期号会影响难度炸弹的数值。
支持我们的工作
TrueBlocks是完全用我们的个人资金支持的项目,少量奖金来自以太坊基金、Consensys公司、MolochDAO以及近期的Filecoin/IPFS。
如果你喜欢本文,或者希望支持我们的工作,请看我们的GitCoin主页:https://gitcoin.co/grants/184/trueblocks。请给下一轮匹配捐款。我们会从更大的匹配奖励中获得额外的利益。即使很小的数额也会产生很大的效果。
最近有报道称,FacebookInc.将要更名为元宇宙公司,而这个不太新颖的名词已经成为了全球的头条新闻.
1900/1/1 0:00:0010月22日消息,英国央行发布了9月底的一场CBDC技术论坛会议纪要,其中强调隐私至关重要,但不等于匿名.
1900/1/1 0:00:00比特币在第一次月收盘价超过6万美元后,以动荡的开始迎来了新的一周和新的月份——接下来会发生什么?在备受期待的10月结束后.
1900/1/1 0:00:00近日,澳大利亚参议院发布了关于该国区块链监管状况的最终报告,长达168页,为政策制定者提供了如何最好地利用新兴区块链的路线图行业.
1900/1/1 0:00:00EIP-1559于2021年8月5日上线,作为伦敦硬分叉的一部分,并没有发生任何假定的恐惧;由于矿工没有分叉以太坊并将EIP-1559作为分叉的一部分而导致的链分裂、价格暴跌.
1900/1/1 0:00:00波士顿联邦储备银行前行长埃里克-罗森格伦根据波士顿联储和麻省理工学院的研究,就中央银行数字货币未来形态提供了一些关键见解.
1900/1/1 0:00:00