主页 > imtoken官网下载2.0国际版 > 减半的另一种视角:代码设计与算法优化

减半的另一种视角:代码设计与算法优化

imtoken官网下载2.0国际版 2023-03-22 06:12:24

摘要:矿业纪事 | 减半的另一种视角:代码设计与算法优化

前言

2020年初btc挖矿算法,减半来临,1月份比特币挖矿难度也大幅提升。 矿工用投入的算力来证明自己对减半的预期依然乐观。 但受疫情影响,矿机厂商推迟生产交付后,矿工和矿场不得不暂停升级矿机,一直上涨的难度值也受到抑制。 这是由于比特币网络本身的难度调整算法。 本文将通过优秀的开源特性,简要分析难度调整算法的内部设置及其在算法中的不断演进。

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

第六期比特币难度调整算法分析与开发优化

文数:2351篇,阅读时间约3分钟

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

文本:Chain Kayser 的操作 | 小柴编辑

出品:算力网络挖矿纪事

01 挖矿难度动态平衡

区块认证:区块头,区块头的内部结构包含了很多重要的字段。

btc怎么挖矿_btc挖矿算法_btc挖矿机下载

如图所示,我们可以看到一个区块头包含了软件版本号(nVersion)、上一个区块的哈希值(hashPrevBlock)、整个区块中交易集的哈希值(hashMerkleRoot)、生成时间(nTime),难度目标(nBits),计数器证明工作量(nNonce)。

btc挖矿算法_btc挖矿机下载_btc怎么挖矿

在区块头中,没有直接存储全网难度的字段,而是通过nBits字段来标识当前区块头经过哈希运算后小于等于的目标值。 为了方便理解,我们将尝试使区块头的SHA256结果小于某个目标值的平均计算次数定义为难度(difficulty),1难度≈2^32次=4294967296次≈4.2*10 ^9 次 ≈ 4G 操作。

难度是怎么调整的?

图为比特币源代码中设置的一些常量。 比特币挖矿难度值的变化是一个动态调整的过程。 在比特币网络中,每10分钟出一个区块,基本时间设定为2周,每2016个区块调整一次难度。 如果网络发现出块速度快于 10 分钟,则增加难度,反之亦然。

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

每个挖出的区块都会判断是否需要进入下一个难度循环。 期间挖矿难度为固定值。 如果没有达到,则难度为上一个区块的难度。 图中的return pindexLast -> nBits 代表了这个过程。 并且在到达新的难度周期后,会使用循环for(int i = 0; pindexFirst && i< nInterval-1; i++)期待第2016个区块的时间戳来记录本次生成的2016个区块总数time 在 nActualTimespan 中花费的时间。

同时,为了限制变化速度过快btc挖矿算法,每个调整范围必须小于一个因子(设置为4)。 如果要调整的范围大于该系数,则按该系数进行调整。 由于在下一个2016个区块的周期会继续不平衡,所以下一个周期会做进一步的难度调整。 因此,平衡散列能力和难度的巨大差异可能需要几个 2,016 个块周期才能完成。

btc挖矿机下载_btc挖矿算法_btc怎么挖矿

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

挖矿也有小概率事件。 如果大家关注比特币的出块记录,有时候会出现明显小于10分钟或者大于10分钟的出块。 去年 10 月,甚至出现了需要 2 小时才能生成的区块(如红框内)。 挖区块是概率事件,所以有短期连续出块或者长期出块。 通常,区块生成的理论时间为 10 分钟。 观察短期挖矿时间是长了还是短了,意义不大。 通常,观察到平均块生成时间。 造成这种现象的原因可能是部分算力在比特币和BCH挖矿之间来回切换。

这里结合难度调整算法中规定的一些代码,可能更容易理解难度调整整个过程的原理,对比特币的内部规则有一个了解。 同时我也想说,比特币也是人开发出来的系统。 其共识机制、区块设置、激励机制等也都按照规则运行。 这意味着比特币并不完美。 在矿工通过挖矿维护网络安全的同时,比特币也需要改进和优化。

btc挖矿算法_btc怎么挖矿_btc挖矿机下载

02 困难中比特币难度调整算法优化

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

btc挖矿机下载_btc怎么挖矿_btc挖矿算法

比特币继承了开源软件的优良特性,允许社区通过分叉对其进行优化改造,丰富挖矿生态。 这期间出现了大量的分叉币。 比较著名的比特币分叉包括比特币现金(BCH)和BSV(比特币现金分叉)。 BCH和比特币共享相同的挖矿机制,所以难度是一样的。 但是,如果比特币链上的算力远高于BCH,那么BCH想要挖出新的区块就非常困难。 为了防止这种情况发生,设计了 EDA 机制,即:每当矿工需要 12 小时才能找到 6 个或更少的区块时,挖矿难度将降低 20%。 导出的难度算法节省了比特币现金,因为当哈希率较低时,难度也会降低。 同时,通过开源代码和允许分叉,比特币可以实现快速进化,同时尽可能探索可能的发展方向。

面对威胁,分叉网络被迫演化出更完善的难度调整算法来保证安全。 BCH与比特币具有相同的加密算法(SHA256),这就导致了机枪池的出现。 枪池存在的主要原因是BTC和BCH的难度调整跟不上相对价格的变化,所以转挖矿会有一定的利润空间,但是算力的切换和转移会造成网络安全问题。 为了解决智能矿池的问题,BCH早在2017年11月就修改了难度算法,将难度调整算法EDA改进为DAA,让难度调整更快跟上算力波动, 这确保了它的生存。

03 疫情过后,矿业减半前景

近期,矿业受到疫情影响。 在矿机厂商推迟生产和交付后,矿工和矿场不得不暂停升级矿机。 本来,在这个阶段,很多矿工都在逐步淘汰旧矿机,购买新矿机。 但疫情的爆发延缓了矿机的升级,减缓了挖矿难度的增长。

数据显示,2月11日挖矿难度调整为较14天前提升0.52%。 这与 1 月 28 日和 1 月 14 日分别记录的 4.67% 和 7.08% 的增长率相比有显着下降,并且调整后的难度将略高于 15T,这是比特币去年 12 月三次触及该数字大约一年后的数字3,100 美元的低点,难度继续上升,这仍然表明更多的算力正在涌入比特币网络。 这个趋势直到难度值达到15.55T才回落。 也可以猜测,这个难度值是仍在挖矿的老机器提供的算力上限。 疫情结束后,在新的高算力机器进入市场之前,难度将迎来另一波。 上升。

不要怀念过去

btc挖矿算法_btc怎么挖矿_btc挖矿机下载

矿业杂志

不惧怕未来

关于我们

【Inter hash介绍】

算力互联网是一家围绕矿业提供一站式BTC挖矿和一站式云算力解决方案的服务商。 与全球超级计算机芯片制造商嘉楠耘智、全球TOP矿机制造商阿瓦隆建立合作关系。 战略伙伴关系。 目前算力互联网发展初具规模,管理矿机数量达到40000+台,管理净资产规模达到3亿元。

(1、内容来自链得得内容开放平台“DD”,稿件内容仅代表作者观点,不代表链得得官方立场。 2、“DD”文章内容的原创性和真实性由投稿人保证,因抄袭、造假等行为造成的任何法律后果由投稿人自行承担。 3. DD平台发表的文章如有侵权、违规或其他不当内容,敬请监督读者。一经确认,平台将立即下线。文章内容如有问题,请发送至邮箱:chengyiniu@chaindd.com)