首页 > 编程知识 正文

清华大学区块链培训班,数字化转型的道与术 百度网盘

时间:2023-05-06 14:02:39 阅读:26049 作者:3089

北京大学kqdxg老师《区块链技术与应用》公开课笔记以太网采掘难度调整,支持内向滑板视频: click here

所有系列的笔记本请参阅click here

注:如果无法打开链接,则很可能CSDN后台审核失败,请稍候。

介绍比特币难度调整在2016个区块调整难度,达到维持区块时间10min的目标。 以太坊与此不同,可能会对每个区块进行难度调整。 以太网难度调整复杂,存在多个版本,网络上存在很多不一致。 这里按照以代码逻辑为准的原则,从代码上看以太网的难易度调整算法。

以太网难度调整以太网中的块难度调整算法如下图所示:

难度炸弹为什么要设置难度炸弹?

根据以上以太网难度调整算法,该算法可以很好地动态调整开采难度,将整个系统的封锁时间保持在15s左右。 不过,此前开采算法的文章介绍,以太网从设计之初就计划逐步从POW (工作量证明)过渡到POS (销售点),权益证明不需要开采。

在旁观者看来,开采大量消耗电力、资金等,转向放弃开采,必然会有好处。 但是从矿工的角度来看,花费成本购买设备,突然被说“不开采”,这无疑是难以接受的。 以太网本身是分布式系统,向销售点迁移必须得到系统中大多数矿工的认可。 如果矿工合作转移到销售点的话,这个设计就会成为原来的目的。

为此,以太坊从设计之初就增加了难度炸弹,将矿工转入销售点。 那么如何促使矿工自愿升级软件,而非坚持POS呢?

在数学上,指数函数是可怕的。 我们在谈论算法。 无论是其时间复杂度还是空间复杂度,一旦达到指数级,该算法必然难以应用于大规模计算。 指数函数前期增长比较缓慢,后期显示“指数爆发”。 这往往不能通过升级硬件来解决。

可以看出,在以太区初期,区块号小,难度炸弹的计算值小。 难度调整水平基本由难度调整中的自适应难度调整部分决定,但随着越来越多的区块被挖掘出来,难度炸弹的威力开始显现,开采越来越困难,矿工被迫转入销售点。

正如难度调整上所述,以太坊设想通过埋设难度炸弹来迫使矿工届时过渡到权益证明,但现实中有“理想丰满,现实粗壮”的说法。 在实际应用中,权益证明的方式尚不成熟,目前以太网的共识机制仍然是POW,需要矿工参与开采以维持以太网系统的稳定。 也就是说,向销售点过渡的时间多次推迟,开采越来越困难,系统的封锁时间开始逐渐延长,但矿工需要继续开采。

在上面难度炸弹的公式中,应该有人注意到了2项fake block number。 此数量相当于仅从当前块号中减去300万,就返回300万个块号。 那么,前300万个块时,这个fake block number是负的吗?

答案是否定的。 其实,以太坊的第一个设计没有第二个公式。 也就是说,最初只是简单地将块编号直接除以100000。 在多次延迟向权益变更实现时间节点迁移后,以太网系统采用将块号返回300万个块的方法降低了开采难度。 当然,为了保持公平,我们将屏蔽报酬从5个以太网货币减少到3个以太网货币。 这也是出现fake block number这一项目的理由。

下图显示了难度调整对难度炸弹难度的影响结果。

以太坊的发展,我个人觉得这个内向的滑板得到了粗略的解释。 只简单地提到了以太坊的四个阶段,没有介绍“拜占廷”这个区块链非常典型的问题。 内向的滑板可能是因为大家都想自己理解这些内容,或者加快上课时间表。

在写完整个内向滑板区块链技术课程系列后,如果大家对此感兴趣,会考虑找资料写这些内容。 在这里做个洞。

拜占庭将军问题暂时占领漏洞,链接点击无效

区块链发展阶段介绍暂占漏洞,链接点击无效

以太坊的发展有四个阶段,我们目前处于第三阶段拜占廷阶段,难度炸弹召回在拜占廷阶段进行。

具体代码实现难度计算公式

bigTime是当前块时间戳,bigParentTime是当前块的父块时间戳。

基础部分计算

炸弹计算为什么不是减去3000000,而是2999999?

因为在此确定的父块编号在公式中是根据当前块计算的。 以太网实际统计数据(2018年取自内向滑板课PPT )以太网开采难度变化曲线

断崖式下跌是因为降低难度的炸弹有300万个街区。

以太网分块时间变化图

两个真块信息

difficulty是当前块难度,而total difficulty是当前块链上所有块难度的总和。

可见,最长合法链与最难的合法链(最难的合法链)相同。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。