比特币难度调整方法_比特币什么时候会挖完

  ① 比特币挖矿难度和算力有什么关系

  2009年1月3日,中本聪(Satoshi Nakamoto)在位于芬兰赫尔辛基的一个小型服务器上,中本聪挖出了 比特币 的第一个区块,并获得了50个比特币的奖励。这标志着加密数字货币时代的来临。

  创世区块是区块链技术中的第一个区块,是区块链中非常独特的一环,因为它是第一个区块——整个数字基础设施中唯一没有与前一个区块连接的区块。

  比特币最早的挖矿难度只有1个哈希值,可以用最弱的消费者级别的CPU来开采比特币,而且有很大的机会获得比特币。

  在随后的几年里,随着交易所建立,比特币持有者之间的交易活动变得更有组织性。挖矿的难度显著增加,它需要越来越强大的处理器,到后来升级到图形处理器。2013年,专门的ASIC挖矿硬件开始出现,性能甚至远远超过最强大的图形处理器。

  到2013年底,比特币挖矿难度首次达到了1个Giga hash哈希值。这是创世纪块挖矿难度的1000*1000*1000倍。之后,比特币的挖矿难度又增加了数千倍。

  挖矿难度是为了保证让比特币新区块的产生速度在平均每10分钟产生一个而设置的动态参数。

  每挖2016个块便会做出一次调整,调整的依据是前面2016个块的出块时间,如果前一个周期平均出块时间小于10分钟,便会加大难度,大于10分钟,则减小难度,目的是为了保证系统稳定的每过10分钟产出一个块,所以难度调整的时间大概是2周(2016 * 10 分钟)。

  比特币挖矿形同猜数字谜,矿工要找出一个随机数(Nonce)参与哈希运算 1Hash(Block+Nonce),使得区块哈希值符合难度要求。算力指计算机每秒可执行哈希运算的次数,也称为哈希率(hashrate)。一个矿机每秒钟能做多少次hash碰撞,就是其“算力”的代表,单位写成 hash/s或者H/s。

  算力单位:

  1 KH/s = 1000 H/s

  1 MH/s = 1000 KH/s

  1 GH/s = 1000 MH/s

  1 TH/s = 1000 GH/s

  1 PH/s = 1000 TH/s

  1 EH/s = 1000 PH/s

  全网算力是btc网络中参与竞争挖矿的所有矿机的算力总和。当前难度周期全网算力会影响下一个周期的难度调整, 如果全网算力增加,挖矿难度增大,单台矿机固定时间的产出就会减少。

  那么,已知当前全网算力,下一个周期难度将如何调整呢?

  根据公式:

  难度 * 2^32 / 全网算力 = 出块时间

  出块时间要稳定在10分钟, 也就是600s:

  难度 = 600 * 24.42 * 10^18 / 2^32

  = 3.46e+12

  那么,在3.46e+12的难度下, 一台算力为14TH/s的矿机平均要花多长时间才能出一个块呢?

  根据公式:

  难度 * 2^32 / 算力 = 出块时间

  有:

  3.46 * 10^12 * 2^32 / 14 * 10^12

  = 1.06e+9 s

  结果大概是12270天。

  原本中本聪设计的是一个公平的完全去中心化的一个数字货币系统,每个人都可以使用个人电脑进行挖矿。然而,有利可图时大量新算力不断加入,矿工竞争激烈,使得单个矿工的挖矿成功率几乎为零。

  2011 年起矿池出现,大量矿工纷纷加入矿池,以稳定收入,摊薄成本。大量算力融入,使得比特币挖矿难度越来越大。数字货币挖矿业形同军事竞备,挖矿设备不断更新迭代,不再遵循摩尔定律。

  ② 比特币多久调整一次难度

  每14天左右。比特币大约每10分钟挖出一个块,每挖出2016个块调整一次,正常情况下,每14天左右会调整一次难度,挖矿的难度是根据之前一个周期的比特币全网算力来调整,所以难度和全网算力是相关的,时间上有一定程度的滞后。

  ③ 比特币系统是由谁在出题并调整难度第一个比特币是如何计算出的

  BTC是一种由开源系统的P2P手机软件产生的虚拟货币,是一种网络虚拟货币。比特犬~币不依靠特殊贷币组织发售,它通过特殊算法的很多测算造成,虚拟币经济发展应用全部P2P网络中许多连接点构成的分布式系统来确认并记录每一个交易行为。实际上BTC是近几年才进到投资者的视线,可以这么说BTC刚出现的时候,BTC基本上一文不值,1美金均值可以买到1309.03个BTC。在2011年,BTC与美元的兑换率,竟然从0.5美金一路涨到了13美金,上涨幅度达到2600%!

  BTC是基于区块链技术性衍生出来的,而区块链的组成就是普通的编码,我们可以把它理解为一个数据文件,一个不可以随意毁坏、不能伪造、可以从网络查询、可摆脱互联网单独存有、又可通过网络验证系统其详细水平、真假,且又可以随意分拆的文件夹。

  ④ 比特币分叉往事补遗

  互联网是有记忆的。

  最近比特币屡创新高,华尔街机构纷纷入场囤币,连马斯克都忍不住公开喊单,得到了主流媒体和金融机构的认可,大家都对比特币系统的安全性没有任何质疑。

  不过,很多人可能想象不到,就在三年前,比特币还面临过诞生以来最大的一次危机——差点被 BCH 集团夺权篡位,甚至连“比特币”这个名字都差点不保。

  比特币分叉都是上一个牛市的陈年旧事了,本来不想多说,但是最近又有一些无聊的人,抹黑中伤币信,我们不说话,让一些不明真相的朋友还真以为币信十恶不赦,成了反派的代名词,还是简单说一说当年的币信为保护比特币网络做的一些事情吧。

  这些事情都已经过去好多年,这些年来一直没对外提,也不求什么名利,只求大家知晓真相,去伪存真,同时也在茶余饭后,多一些谈资。

   BCH 分叉党为什么仇视币信?

  很多人觉得当年“比特币分叉”这件事并没什么大不了的,毕竟这种现象现在在加密数字货币社区很常见,可能一个程序员用不了几天就能成功将一个币种分叉。

  但是在当年,分叉是一件非常严重的事情,牵扯到方方面面的人和事,牵扯到诸多信仰和利益,简直和“佛道之争”不遑多让,简直已经达到你死我活,兵戎相见的地步。

  这并不夸张说辞,而是事实。

  现实中很多关系非常好的朋友,合作伙伴,因为比特币分叉这件事而反目成仇,老死不相往来。

  很多人无法理解,为什么 BCH 分叉集团对比特币支持者、对币信恨之入骨?天天怼天怼地各种造谣?而且有时候为了让自己的谣言看上去逻辑完备,往往不惜花大量时间去搜集各种资料,然后移花接木,张冠李戴,让众多不明群众看了觉得“资料详实”,大呼过瘾。

  原因就在于,币信断了 BCH 分叉集团的财路。

  正所谓“断人财路,如杀人父母”,币信在瓦解 BCH 集团分叉s行动的过程中,做了许多工作,甚至在关键时期守护了比特币两周时间,成功瓦解了BCH(之前叫 BCC ) 篡权夺位的阴谋。

  不得不说,BCH 集团真的是知行合一,他们也有信仰,他们真的相信 BCH 肯定会成功,能够打败比特币,所以他们把手头的比特币基本上都换成了 BCH ,要是被他们篡权成功,其回报之丰厚绝对难以想象。

  结果这一切都被币信在关键时刻给毁了,你说他们恨不恨?

   币信和比特大陆的恩怨

  有关比特币分叉的文章有很多,我这里就不再多说,感兴趣的朋友看一下虎扑的文章《比特币分叉往事》或者搜索其他文章了解。

  这里主要说说在分叉大战整个过程中,币信扮演了一个什么样的角色,因为这个事情遭受了怎样的损失。

  可能很多朋友在 2018 年的时候,看到过比特大陆因专利的事情状告币信矿业公司的新闻,其中的被告还有深圳比特微(神马矿机)和新特能源股份有限公司(矿场方)。

  当时很多人看到这个新闻其实挺震惊的,因为币信星空和比特大陆吴忌寒两人的关系其实一向都非常好,私底下经常一起约饭。

  他们怎么突然就对簿公堂了?到底发生了什么事情?

  在那个官司中,涉及到的专利叫做串联供电技术。

  说起串联供电技术,就不得不提到一个技术宅男——瓦西里。

  瓦西里早年是俄罗斯的 Bitfury 公司(2013 年就已经开始做比特币矿机公司)的工程师。从 Bitfury 出来之后,2014 年,瓦西里被一个名叫 Yuri 的俄罗斯人忽悠到了中国,因为 Yuri 跟他说他联系到了中国的烤猫,能够拿到他们的芯片做矿机,可以发大财。

  那个时候,烤猫公司刚刚宣布,他们不再自己做矿机,而是直接转型成为芯片提供商,欢迎大家采购芯片。

  Yuri 是个典型的商人,由于当时烤猫最新芯片矿机方案不成熟,在尝试几次做矿机方案不成功之后,他转而向烤猫兜售他的“串联供电”技术。

  这项技术早就存在,但是瓦西里受其启发,第一次成果将其用在矿机主板上。

  有了这项技术,矿机可以不用昂贵的电源控制芯片,直接对挖矿芯片供电,这样不但可以节省大量成本,还可以不受电源芯片货源的制约。(当时比特大陆将市场上的电源芯片一扫而空,不但没货还抬升了价格)

  这项技术说起来简单,实现也简单,但研发却非常困难,因为没有电源芯片控制,电流无法稳定输出,很容易造成电流均衡而烧毁芯片。

  烤猫对这项技术非常感兴趣,于是和 Yuri 谈了很多次,但是 Yuri 的条件太苛刻,后来烤猫得知这项技术的实际拥有者并不是 Yuri 而是瓦西里,于是直接找到瓦西里,购买了他的技术,并且还将瓦西里招到了公司当硬件开发工程师。

  后来,杨作兴从 RockMiner 离开,加入了烤猫矿机( ASICMiner )研发团队,和瓦西里成为同事,一起研发矿机和芯片。

  2015 年,烤猫突然人间蒸发,烤猫公司也原地解散,所有技术封存。后来道杨作兴在比特大陆兼职了一段时间,顺便将串联电源技术带到了比特大陆。

  到了 2016 年 ,杨作兴有了创业的想法,首先是找吴忌寒聊,得到了吴忌寒的单方面的支持,然后吴让他去找詹聊一下,却遭到了詹克团的当面否决,甚至詹还当面将杨作兴的商业计划书直接用碎纸机碎成碎片。

  于是,杨作兴创办了神马矿机,从此和比特大陆打擂台。

  自然,神马矿机也顺理成章地用上了串联电源技术。

  值得说一下的是,杨作兴创业之前曾多次找到星空聊创业的事情,在詹之后,杨再次找到星空,确认杨下决心要做矿机芯片后,星空联合其他几位朋友一起投了,成为了神马矿机的大股东之一。

  星空投资神马矿机的逻辑很简单——由于烤猫失踪,烤猫矿机彻底退出 历史 舞台,当时比特大陆的蚂蚁矿机一家独大,基本处于垄断地位,这对比特币网络并不好,很容易出大问题。(事实证明这个判断是非常正确的)

  当时一起投资神马矿机的,还有鱼池的神鱼和王纯,大家的想法都非常一致,不能让比特大陆再这样搞下去。

  要知道,为了能够成功分叉比特币,比特大陆很早就开始布局,他们在那段时间,将大量矿机优先卖给支持分叉的人,支持比特币的人反而很难拿到货。

  并且,大区块的支持者甚至只需要支付 10% 的货款,这相当于是给他们做了一个五倍杠杆,只需要支付一份算力的钱,就能获得五份算力。

  很多人因此而发家致富,因此也对比特大陆更加忠心耿耿,在支持分叉的岐途上一路走到黑。

  幸运地是,神马矿机研发顺利,并且迅速成长成为能够和比特大陆一较高下的矿机厂商。

  币信矿业当时是比特大陆的超级客户,为了支持神马矿机的发展,也采购了大量的神马矿机。

  在分叉大战期间,当 BCH 集团意识到是币信在暗中保护比特币网络的时候,他们采用了围魏救赵的方式,将神马公司和币信矿业公司,以侵犯专利为由,一起告上了法庭。

  虽然最终这个官司比特大陆输了,但是他们却达到了预期目的——矿场场地方为了避免风险,要求币信的矿机限时从矿场中搬离,币信算力因此暂时消失,这场较量才告一段落。

  经此一战,币信损失惨重。

  一方面,币信用自有算力去阻止 BCH 算力暴击(后文有解释),每天就有将近 100 个比特币的损失(持续了一个难度周期,即 14 日)。

  另外一方面,因为矿场被迫搬离,这其中又耽误了很长时间无法挖矿,中间也有不小的损耗,币信也遭受了巨大亏损。

  不过,这个时候,BCH 集团针对比特币精心策划地采用的紧急难度调整算法(EDA)已经失去了最佳作用时间,他们原本想用这个方式来偷袭比特币网络的阴谋也彻底破产。

  如果当时没有币信算力的狙击,BCH 真的有可能已经成功篡位,不但算力超过比特币,可能连比特币这个名字都被其抢走,比特币可能成长到今天的规模和地位。

  因为这件事情,星空和吴忌寒这两个原来的好兄弟,也因此反目成仇,断了往来。币信从此也成为了 BCH 利益相关者的肉中刺,眼中钉,欲处之而后快。

   币信为什么不支持 BCH ?

  众所周知,其实无论是币信也好,还是鱼池也好,当年和比特大陆的关系其实都不错,包括香港共识和纽约共识大会,大家都坐在一起谈,一起讨论。

  目的当然是共赢,希望比特币发展得更好。

  但是,这一切在 2017 年之后事情开始有了变化,吴忌寒逐渐有了要分叉的想法,并且他在 2017 年 8 月将这个想法付诸实践。

  在这个过程中,BCH 阵营的做法一直相当具有攻击性,一副我就要干死你的架势。其实分叉就分叉吧,各自好好做自己的事情就好,但是 BCH 从一开始就打算好了,要踩比特币上位。

  其实说来很讽刺,原来的比特币布道者,却摇身一变成为了比特币最坚定的反对力量,攻讦比特币也最卖力。

  他们说“BCH 才是真正的比特币”,号召大家把比特币卖了买 BCH。不知道多少人信了他们的谎言,将自己幸苦囤的比特币换成了 BCH,因此而损失惨重,最终不得不彻底离开了这个行业。请问,这种行为和诈骗有什么区别?

  他们说比特币区块小,无法处理太多交易,链上非常堵。结果大家发现比特币没他们说的那么堵,于是他们就发起“粉尘攻击”,短时间内发送大量的小额垃圾交易,造成比特币网络拥堵的假象。然后他们鼓吹大区块,造谣说比特币最终会因拥堵而消亡。(事实上,比特币至今还活得很好,并且越来越健壮。)

  记得当年杀毒软件是如何作恶的吗?为了卖出他们的软件,有些无良公司会自己炮制病毒,等用户中毒之后,再去兜售产品。他们的行为简直如出一辙。

  当时澳本聪站出来支持分叉,于是他们与其一拍即合,请来了澳本聪为 BCH 站台,写文章,开发布会,一顿骚操作猛如虎,风光得不可一世。

  当时他们万万没想到,出来混总是要还的,澳本聪这个诈骗犯可不是易与之辈。仅仅是三个月之后,澳本聪就反手给了 BCH 致命 一刀,掀起了差点将 BCH 彻底毁灭的分叉大战。

  没错,BCH 分叉比特币,澳本聪又来分叉 BCH,另外分出个 BSV,真是一出好戏!

  币信一直都是比特币的信徒,或许 BCH 的初衷是好的,但是在后续的推进过程中,币信自然非常不认可他们所采取的各种作恶手段。

  也许这些手段在政治斗争中非常常见,摸黑陷害竞争对手都是常用伎俩,但这是比特币社区,寄托了无数人的期望和信仰,最初的信仰者就是一小撮理想主义者,变成这个样子,肯定是大家所不愿看到的。

  并且,BCH 背后主要推手是比特大陆,无论是开发人员,还是社区中的意见领袖,大部分都是比特大陆资助的,BCH 俨然就是一个公司币,过于中心化,想要取比特币而代之,显然是不合适的。

  并不是说公司币不行,例如 BNB 这样的平台币就做得非常好,但是如果这个公司币想要干翻比特币自己上位,那就有点定位不清了。

  总之,BCH 集团的很多行为都透露出他们的极其不靠谱,要是将比特币的未来寄希望在这样一群人身上,那比特币迟早玩完,这是所有比特币社区的人不愿看到的。

  于是,在关键时刻,币信决定出手干预。

   币信是如何保护比特币网络的?

  不得不承认,BCH 为了赢得这场分叉之战,的确做了大量的工作和准备,在很久之前就开始聘请社区内的一些意见领袖开始造势,不停地写文章,有些文章写得还挺有深度,看上去有理有据,逻辑完备。(后来澳本聪也采用了同样的套路,忽悠了一大批死忠粉)

  除了舆论战,在技术和未来愿景方面,BCH 集团也画了很多大饼,看上去让人神往,由于大区块的特性,的确有很多比特币无法实现的功能,这让很多人对其充满了期待。

  如果这些还只是常规操作,那么有一点不得不让人惊艳,那就是—— BCH 的紧急难度调整机制(EDA)。

  因为 BCH 使用和比特币同样的算法,按正常的思路,BCH 要想分叉成功,并且持续保持出块,就必须拥有庞大的算力支撑,因为分叉的时候,比特币网络的难度已经非常大了,小算力根本爆不出块。

  所以,他们想出了一个紧急难度调整机制:如果当前区块的前6个区块出块时间大于12小时,则难度自动下调20%,如果当前区块的 MTP 时间和从当前块往前数第6个块的 MTP 时间相差大于12个小时,就应急降低20%难度。

  简单来说,就是如果一定时间内不出块,就会自动下调20%难度,再不出块就继续下调 20%,直到出块为止。这样就算只有很小的算力,也能保证能够出块。

  这个机制乍一看像是防守机制,纯粹是为了自保,为了自己能够生存下去而已,但是各位别被其表象所迷惑了,这实际上是一个极具有攻击性的机制,因为难度只有下调,没有上调。

  设计这套机制的人,深谙人性之道,他们懂得,矿工其实是趋利的,只要哪里有钱赚,就会用脚投票,直接把算力切到哪里。

  当 BCH 的难度降低了,拥有同样的算力,那矿工就能够挖到更多的币,只要所得到的利润大于比特币,那么矿工的算力就会被吸引过来。

  这样,就算 BCH 的价格比比特币低,只要难度够低,矿工就能赚更多钱,算力就会过来。

  而 BCH 的算力和比特币的算力是互斥的,挖 BCH 就不能挖 BTC,是一种此消彼长的关系,一旦比特币算力都迁移到 BCH 网络,再配合拉涨币价,在当时的环境下,还真有可能会被 BCH 篡位成功。

  要知道,当时很多中立方都表示过,哪个网络的算力大就支持哪个币是真正的比特币。

  不得不承认,紧急难度调整机制的设计的确非常天才,所以,这种机制也被人称为针对比特币的“算力暴击”。

  BCH 集团酝酿多时,花费了大量的人力物力筹备分叉,他们准备在分叉之后,立刻对比特币展开“算力暴击”,即分叉完成之后,就把自己的算力从 BCH 网络撤出,让难度大幅下降,同时大幅度拉涨币价,这样就可以吸引大部分的矿工算力过来,比特币网络的算力就会暴降,让比特币网络因拥堵不出块而无法运转,最终一举奠定胜局。

  这个计划近乎完美。

  这简直就是针对比特币的阳谋,大家都知道怎么回事,但是就是没办法去破解,因为当时 BCH 集团控制了一半上述的比特币算力,只要吸引 10%左右的算力过来,比特币网络就可能运转不了了。

  当时除了 BCH 集团控制的算力和矿池,就只有三个矿池占比比较大,分别是鱼池鱼池、国池(比特币中国矿池)、和币信矿池。

  矿池就算想要支持比特币,那也得矿工答应,矿池是无法控制用户的算力的,不然矿工肯定会用脚投票直接走人。

  所以,BCH 集团当时觉得胜券在握了,估计他们连庆祝酒会都已经准备好了。

  但是,让他们万万没有想到的是,等分叉完毕,BCH 出了几个块,当他们将自有算力从 BCH 网络撤出,静静等待不出块而难度自动下降之时,意外却出现了——有神秘算力突然接入了 BCH 网络,爆块继续。

  由于有持续爆块,BCH 的紧急难度调整机制就无法生效,因为这样难度一直降不下来(出块间隔时间小于 12 小时)。

  并且,为了防止神秘算力针对 BCH 网络发动 51%攻击,他们又不得不很尴尬地重新将自己的算力切回来,持续挖着。

  这些神秘算力隐藏了 Coinbase 和地址,一时间所有人都搞不清其来路。

  突然出现的神秘算力打乱了“算力暴击计划”的节奏,本来等难度降低后,他们准备了大量的资金要配合拉盘,一时间拉盘计划也无法继续推进,生生卡住了。

  这种情形,就仿佛一个刺客,针对刺杀目标发动了致命一击,然后突然出现了一股神秘力量,将这致命一击给挡住了,并且持续守护着目标,导致刺客后续的一系列攻击都无法实施。

  BCH集团非常费解:这股神秘力量到底从哪里来的?

  前面说过,除了 BCH 集团自己控制的算力,另外拥有比较大的算力的,就只剩下鱼池、国池和币信矿池这三方。

  鱼池和国池都是散户的算力,他们根本无法动用,只有币信矿池基本都是自己的算力,也就是说只有币信有这个条件做这件事。

  答案呼之欲出:币信!

  是的,这股神秘算力就是币信的自有算力。

  币信在 BCH 集团准备针对比特币发动第一次也是最强的一次算力暴击的时候,出手了。

  其他人没办法做这件事情,只有币信有这个条件,只有币信能做,那就由币信来做!

  为了比特币的未来,舍我其谁?

  要知道,当时难度没降下来,矿工挖 BCH 肯定是不划算的,币信矿业顶着每天几十甚至上百比特币的巨额亏损,硬生生守护了比特币一个难度周期!(即两周时间)

  BCH 集团也很快反应过来,知道这肯定是币信干的好事,但是没办法,在技术上他们是无法拒绝币信的算力的,只能干瞪眼。

  通过这个方式,他们终于将币信算力赶出了 BCH 网络,这才得以对比特币实施算力暴击。

  币信矿场刚停机,他们就迫不及待开始拉盘了,BCH 开始大涨,但那个时候已经他们无力回天了,因为最佳狙击时机已过,他们已经失去了“天时”,效果大打折扣。

  尽管后面 BCH 针对比特币多次算力暴击,导致比特币网络算力经常不稳定,但胜负已定,已经无关紧要,不影响大局。

  经此一役,币信损失惨重,不但损失了十几天的比特币挖矿收益,矿场也不得不搬离,损失的比特币在现在看来,简直是个天文数字。

  但是,这一切都是值得的,币信为守护了比特币贡献了自己的力量,帮比特币挡住了致命一击,做了比特币信仰者该做的事情。

  虽然币信因为这件事几乎将以前所有挖矿赚到的利润都一次性亏了出去,但长期来看,币信肯是受益的。

   后记

  这些往事封存已久,很多人其实并不清楚其中的细节,也不知道币信当年做的事情,这其实也没什么,币信一直都活得很好。

  但是这么多年来,币信一直被一些别有用心者抹黑造谣,实在心累,想想还是写点文字,将事实公布,免得无辜吃瓜群众被其误导。

  分叉风波已经过去多年,比特币依然还是那个比特币,比特币社区也比以前更加健壮,这是我们这些比特币信仰者最大的幸福。

  Long Bitcoin, Short the world!

  #欧易OKEx# #比特币[超话]# #数字货币#

  ⑤ 比特币什么时候会挖完

  •   预计2140年可以挖完,总计2100万枚

  •   根据比特币的相关文献,在2140年,会产出2100个比特币,并不再增长。根据比特币的原理,在经历33次减半期后,每区块的挖矿产出将达到0.58聪,小于最小单位一聪。而每次减半的间隔是210000区块,上述文献给出的全部产出时间(2140年)是由每区块产出时间10分钟推算出来的。(210000*10/60/24/365=3.9954年*33=132年,从比特币产生的2008年起,132年之后即是2140年)。

      但是,上述推算方法所使用的“每区块产出时间为10分钟”是一个理想状态,这个假设仅在全网算力和难度不发生改变的情况下成立。查阅比特币区块链,不难发现,比特币的全网算力长期处于增长状态,挖矿难度也随之增涨。于是,不难得出,上述推算不成立,有巨大误差。

      上述方法的注意缺陷是,无法准确地预测比特币全网算力的变化,无法准确地预测比特币的开采速度。上述计算方法所使用的11.3天的数据,仅是从2013年5月2014年4月5日的平均值,代表性有待商榷。大家可以综合大数据分析结果和矿机生产情况等建立更准确的数学模型。

  •   ⑥ 详解比特币挖矿原理

      可以将区块链看作一本记录所有交易的公开总帐簿(列表),比特币网络中的每个参与者都把它看作一本所有权的权威记录。

      比特币没有中心机构,几乎所有的完整节点都有一份公共总帐的备份,这份总帐可以被视为认证过的记录。

      至今为止,在主干区块链上,没有发生一起成功的攻击,一次都没有。

      通过创造出新区块,比特币以一个确定的但不断减慢的速率被铸造出来。大约每十分钟产生一个新区块,每一个新区块都伴随着一定数量从无到有的全新比特币。每开采210,000个块,大约耗时4年,货币发行速率降低50%。

      在2016年的某个时刻,在第420,000个区块被“挖掘”出来之后降低到12.5比特币/区块。在第13,230,000个区块(大概在2137年被挖出)之前,新币的发行速度会以指数形式进行64次“二等分”。到那时每区块发行比特币数量变为比特币的最小货币单位——1聪。最终,在经过1,344万个区块之后,所有的共20,999,999.9769亿聪比特币将全部发行完毕。换句话说, 到2140年左右,会存在接近2,100万比特币。在那之后,新的区块不再包含比特币奖励,矿工的收益全部来自交易费。

      在收到交易后,每一个节点都会在全网广播前对这些交易进行校验,并以接收时的相应顺序,为有效的新交易建立一个池(交易池)。

      每一个节点在校验每一笔交易时,都需要对照一个长长的标准列表:

      交易的语法和数据结构必须正确。

      输入与输出列表都不能为空。

      交易的字节大小是小于MAX_BLOCK_SIZE的。

      每一个输出值,以及总量,必须在规定值的范围内 (小于2,100万个币,大于0)。

      没有哈希等于0,N等于-1的输入(coinbase交易不应当被中继)。

      nLockTime是小于或等于INT_MAX的。

      交易的字节大小是大于或等于100的。

      交易中的签名数量应小于签名操作数量上限。

      解锁脚本(Sig)只能够将数字压入栈中,并且锁定脚本(Pubkey)必须要符合isStandard的格式 (该格式将会拒绝非标准交易)。

      池中或位于主分支区块中的一个匹配交易必须是存在的。

      对于每一个输入,如果引用的输出存在于池中任何的交易,该交易将被拒绝。

      对于每一个输入,在主分支和交易池中寻找引用的输出交易。如果输出交易缺少任何一个输入,该交易将成为一个孤立的交易。如果与其匹配的交易还没有出现在池中,那么将被加入到孤立交易池中。

      对于每一个输入,如果引用的输出交易是一个coinbase输出,该输入必须至少获得COINBASE_MATURITY (100)个确认。

      对于每一个输入,引用的输出是必须存在的,并且没有被花费。

      使用引用的输出交易获得输入值,并检查每一个输入值和总值是否在规定值的范围内 (小于2100万个币,大于0)。

      如果输入值的总和小于输出值的总和,交易将被中止。

      如果交易费用太低以至于无法进入一个空的区块,交易将被拒绝。

      每一个输入的解锁脚本必须依据相应输出的锁定脚本来验证。

      以下挖矿节点取名为 A挖矿节点

      挖矿节点时刻监听着传播到比特币网络的新区块。而这些新加入的区块对挖矿节点有着特殊的意义。矿工间的竞争以新区块的传播而结束,如同宣布谁是最后的赢家。对于矿工们来说,获得一个新区块意味着某个参与者赢了,而他们则输了这场竞争。然而,一轮竞争的结束也代表着下一轮竞争的开始。

      验证交易后,比特币节点会将这些交易添加到自己的内存池中。内存池也称作交易池,用来暂存尚未被加入到区块的交易记录。

      A节点需要为内存池中的每笔交易分配一个优先级,并选择较高优先级的交易记录来构建候选区块。

      一个交易想要成为“较高优先级”,需满足的条件:优先值大于57,600,000,这个值的生成依赖于3个参数:一个比特币(即1亿聪),年龄为一天(144个区块),交易的大小为250个字节:

      High Priority > 100,000,000 satoshis * 144 blocks / 250 bytes = 57,600,000

      区块中用来存储交易的前50K字节是保留给较高优先级交易的。 节点在填充这50K字节的时候,会优先考虑这些最高优先级的交易,不管它们是否包含了矿工费。这种机制使得高优先级交易即便是零矿工费,也可以优先被处理。

      然后,A挖矿节点会选出那些包含最小矿工费的交易,并按照“每千字节矿工费”进行排序,优先选择矿工费高的交易来填充剩下的区块。

      如区块中仍有剩余空间,A挖矿节点可以选择那些不含矿工费的交易。有些矿工会竭尽全力将那些不含矿工费的交易整合到区块中,而其他矿工也许会选择忽略这些交易。

      在区块被填满后,内存池中的剩余交易会成为下一个区块的候选交易。因为这些交易还留在内存池中,所以随着新的区块被加到链上,这些交易输入时所引用UTXO的深度(即交易“块龄”)也会随着变大。由于交易的优先值取决于它交易输入的“块龄”,所以这个交易的优先值也就随之增长了。最后,一个零矿工费交易的优先值就有可能会满足高优先级的门槛,被免费地打包进区块。

      UTXO(Unspent Transaction Output) : 每笔交易都有若干交易输入,也就是资金来源,也都有若干笔交易输出,也就是资金去向。一般来说,每一笔交易都要花费(spend)一笔输入,产生一笔输出,而其所产生的输出,就是“未花费过的交易输出”,也就是 UTXO。

      块龄:UTXO的“块龄”是自该UTXO被记录到区块链为止所经历过的区块数,即这个UTXO在区块链中的深度。

      区块中的第一笔交易是笔特殊交易,称为创币交易或者coinbase交易。这个交易是由挖矿节点构造并用来奖励矿工们所做的贡献的。假设此时一个区块的奖励是25比特币,A挖矿的节点会创建“向A的地址支付25.1个比特币(包含矿工费0.1个比特币)”这样一个交易,把生成交易的奖励发送到自己的钱包。A挖出区块获得的奖励金额是coinbase奖励(25个全新的比特币)和区块中全部交易矿工费的总和。

      A节点已经构建了一个候选区块,那么就轮到A的矿机对这个新区块进行“挖掘”,求解工作量证明算法以使这个区块有效。比特币挖矿过程使用的是SHA256哈希函数。

      用最简单的术语来说, 挖矿节点不断重复进行尝试,直到它找到的随机调整数使得产生的哈希值低于某个特定的目标。 哈希函数的结果无法提前得知,也没有能得到一个特定哈希值的模式。举个例子,你一个人在屋里打台球,白球从A点到达B点,但是一个人推门进来看到白球在B点,却无论如何是不知道如何从A到B的。哈希函数的这个特性意味着:得到哈希值的唯一方法是不断的尝试,每次随机修改输入,直到出现适当的哈希值。

      需要以下参数

      ? block的版本 version

      ? 上一个block的hash值: prev_hash

      ? 需要写入的交易记录的hash树的值: merkle_root

      ? 更新时间: ntime

      ? 当前难度: nbits

      挖矿的过程就是找到x使得

      SHA256(SHA256(version + prev_hash + merkle_root + ntime + nbits + x )) < TARGET

      上式的x的范围是0~2^32, TARGET可以根据当前难度求出的。

      简单打个比方,想象人们不断扔一对色子以得到小于一个特定点数的游戏。第一局,目标是12。只要你不扔出两个6,你就会赢。然后下一局目标为11。玩家只能扔10或更小的点数才能赢,不过也很简单。假如几局之后目标降低为了5。现在有一半机率上述扔出来的色子加起来点数会超过5,因此无效。随着目标越来越小,要想赢的话,扔色子的次数会指数级的上升。最终当目标为2时(最小可能点数),只有一个人平均扔36次或2%扔的次数中,他才能赢。

      如前所述,目标决定了难度,进而影响求解工作量证明算法所需要的时间。那么问题来了:为什么这个难度值是可调整的?由谁来调整?如何调整?

      比特币的区块平均每10分钟生成一个。这就是比特币的心跳,是货币发行速率和交易达成速度的基础。不仅是在短期内,而是在几十年内它都必须要保持恒定。在此期间,计算机性能将飞速提升。此外,参与挖矿的人和计算机也会不断变化。为了能让新区块的保持10分钟一个的产生速率,挖矿的难度必须根据这些变化进行调整。事实上,难度是一个动态的参数,会定期调整以达到每10分钟一个新区块的目标。简单地说,难度被设定在,无论挖矿能力如何,新区块产生速率都保持在10分钟一个。

      那么,在一个完全去中心化的网络中,这样的调整是如何做到的呢?难度的调整是在每个完整节点中独立自动发生的。每2,016个区块(2周产生的区块)中的所有节点都会调整难度。难度的调整公式是由最新2,016个区块的花费时长与20,160分钟(两周,即这些区块以10分钟一个速率所期望花费的时长)比较得出的。难度是根据实际时长与期望时长的比值进行相应调整的(或变难或变易)。简单来说,如果网络发现区块产生速率比10分钟要快时会增加难度。如果发现比10分钟慢时则降低难度。

      为了防止难度的变化过快,每个周期的调整幅度必须小于一个因子(值为4)。如果要调整的幅度大于4倍,则按4倍调整。由于在下一个2,016区块的周期不平衡的情况会继续存在,所以进一步的难度调整会在下一周期进行。因此平衡哈希计算能力和难度的巨大差异有可能需要花费几个2,016区块周期才会完成。

      举个例子,当前A节点在挖277,316个区块,A挖矿节点一旦完成计算,立刻将这个区块发给它的所有相邻节点。这些节点在接收并验证这个新区块后,也会继续传播此区块。当这个新区块在网络中扩散时,每个节点都会将它作为第277,316个区块(父区块为277,315)加到自身节点的区块链副本中。当挖矿节点收到并验证了这个新区块后,它们会放弃之前对构建这个相同高度区块的计算,并立即开始计算区块链中下一个区块的工作。

      比特币共识机制的第三步是通过网络中的每个节点独立校验每个新区块。当新区块在网络中传播时,每一个节点在将它转发到其节点之前,会进行一系列的测试去验证它。这确保了只有有效的区块会在网络中传播。

      每一个节点对每一个新区块的独立校验,确保了矿工无法欺诈。在前面的章节中,我们看到了矿工们如何去记录一笔交易,以获得在此区块中创造的新比特币和交易费。为什么矿工不为他们自己记录一笔交易去获得数以千计的比特币?这是因为每一个节点根据相同的规则对区块进行校验。一个无效的coinbase交易将使整个区块无效,这将导致该区块被拒绝,因此,该交易就不会成为总账的一部分。

      比特币去中心化的共识机制的最后一步是将区块集合至有最大工作量证明的链中。一旦一个节点验证了一个新的区块,它将尝试将新的区块连接到到现存的区块链,将它们组装起来。

      节点维护三种区块:

      · 第一种是连接到主链上的,

      · 第二种是从主链上产生分支的(备用链),

      · 第三种是在已知链中没有找到已知父区块的。

      有时候,新区块所延长的区块链并不是主链,这一点我们将在下面“ 区块链分叉”中看到。

      如果节点收到了一个有效的区块,而在现有的区块链中却未找到它的父区块,那么这个区块被认为是“孤块”。孤块会被保存在孤块池中,直到它们的父区块被节点收到。一旦收到了父区块并且将其连接到现有区块链上,节点就会将孤块从孤块池中取出,并且连接到它的父区块,让它作为区块链的一部分。当两个区块在很短的时间间隔内被挖出来,节点有可能会以相反的顺序接收到它们,这个时候孤块现象就会出现。

      选择了最大难度的区块链后,所有的节点最终在全网范围内达成共识。随着更多的工作量证明被添加到链中,链的暂时性差异最终会得到解决。挖矿节点通过“投票”来选择它们想要延长的区块链,当它们挖出一个新块并且延长了一个链,新块本身就代表它们的投票。

      因为区块链是去中心化的数据结构,所以不同副本之间不能总是保持一致。区块有可能在不同时间到达不同节点,导致节点有不同的区块链视角。解决的办法是, 每一个节点总是选择并尝试延长代表累计了最大工作量证明的区块链,也就是最长的或最大累计难度的链。

      当有两个候选区块同时想要延长最长区块链时,分叉事件就会发生。正常情况下,分叉发生在两名矿工在较短的时间内,各自都算得了工作量证明解的时候。两个矿工在各自的候选区块一发现解,便立即传播自己的“获胜”区块到网络中,先是传播给邻近的节点而后传播到整个网络。每个收到有效区块的节点都会将其并入并延长区块链。如果该节点在随后又收到了另一个候选区块,而这个区块又拥有同样父区块,那么节点会将这个区块连接到候选链上。其结果是,一些节点收到了一个候选区块,而另一些节点收到了另一个候选区块,这时两个不同版本的区块链就出现了。

      分叉之前

      分叉开始

      我们看到两个矿工几乎同时挖到了两个不同的区块。为了便于跟踪这个分叉事件,我们设定有一个被标记为红色的、来自加拿大的区块,还有一个被标记为绿色的、来自澳大利亚的区块。

      假设有这样一种情况,一个在加拿大的矿工发现了“红色”区块的工作量证明解,在“蓝色”的父区块上延长了块链。几乎同一时刻,一个澳大利亚的矿工找到了“绿色”区块的解,也延长了“蓝色”区块。那么现在我们就有了两个区块:一个是源于加拿大的“红色”区块;另一个是源于澳大利亚的“绿色”。这两个区块都是有效的,均包含有效的工作量证明解并延长同一个父区块。这个两个区块可能包含了几乎相同的交易,只是在交易的排序上有些许不同。

      比特币网络中邻近(网络拓扑上的邻近,而非地理上的)加拿大的节点会首先收到“红色”区块,并建立一个最大累计难度的区块,“红色”区块为这个链的最后一个区块(蓝色-红色),同时忽略晚一些到达的“绿色”区块。相比之下,离澳大利亚更近的节点会判定“绿色”区块胜出,并以它为最后一个区块来延长区块链(蓝色-绿色),忽略晚几秒到达的“红色”区块。那些首先收到“红色”区块的节点,会即刻以这个区块为父区块来产生新的候选区块,并尝试寻找这个候选区块的工作量证明解。同样地,接受“绿色”区块的节点会以这个区块为链的顶点开始生成新块,延长这个链。

      分叉问题几乎总是在一个区块内就被解决了。网络中的一部分算力专注于“红色”区块为父区块,在其之上建立新的区块;另一部分算力则专注在“绿色”区块上。即便算力在这两个阵营中平均分配,也总有一个阵营抢在另一个阵营前发现工作量证明解并将其传播出去。在这个例子中我们可以打个比方,假如工作在“绿色”区块上的矿工找到了一个“粉色”区块延长了区块链(蓝色-绿色-粉色),他们会立刻传播这个新区块,整个网络会都会认为这个区块是有效的,如上图所示。

      所有在上一轮选择“绿色”区块为胜出者的节点会直接将这条链延长一个区块。然而,那些选择“红色”区块为胜出者的节点现在会看到两个链: “蓝色-绿色-粉色”和“蓝色-红色”。 如上图所示,这些节点会根据结果将 “蓝色-绿色-粉色” 这条链设置为主链,将 “蓝色-红色” 这条链设置为备用链。 这些节点接纳了新的更长的链,被迫改变了原有对区块链的观点,这就叫做链的重新共识 。因为“红”区块做为父区块已经不在最长链上,导致了他们的候选区块已经成为了“孤块”,所以现在任何原本想要在“蓝色-红色”链上延长区块链的矿工都会停下来。全网将 “蓝色-绿色-粉色” 这条链识别为主链,“粉色”区块为这条链的最后一个区块。全部矿工立刻将他们产生的候选区块的父区块切换为“粉色”,来延长“蓝色-绿色-粉色”这条链。

      从理论上来说,两个区块的分叉是有可能的,这种情况发生在因先前分叉而相互对立起来的矿工,又几乎同时发现了两个不同区块的解。然而,这种情况发生的几率是很低的。单区块分叉每周都会发生,而双块分叉则非常罕见。

      比特币将区块间隔设计为10分钟,是在更快速的交易确认和更低的分叉概率间作出的妥协。更短的区块产生间隔会让交易清算更快地完成,也会导致更加频繁地区块链分叉。与之相对地,更长的间隔会减少分叉数量,却会导致更长的清算时间。

      ⑦ 什么是比特币挖矿难度如何调整原理是什么

      比特币挖矿难度(Difficulty),是对挖矿困难程度的度量,挖矿难度越大,挖出区块就越困难。目标值(Target)与挖矿难度成反比。难度越高,目标值越小。而难度目标是目标值通过转化得到,是一个只有 4 个字节的字段(为了便于理解,本文将难度目标等同目标值处理)。比特币系统正是通过调整区块头中难度目标来控制挖出区块所需平均时间的。

      目标值是个长度为 256 比特的字符串,换句话说目标值约有 2^256 种可能的取值。调整难度目标就是调整目标值在整个输出空间的占比。

      举例说明:挖矿就如射击,所有射出去的子弹都会落在一个很大的靶子上。难度目标就是这个大靶子上圈出一个范围,这个范围越小,被射中的难度就越高。调节难度目标,就是调节这个圈在整个靶子上的占比。

      挖矿算力增大,单位时间射击的次数就越多,目标范围被射中所需的时间就越短。反之,挖矿算力减小,目标范围被击中所需的时间就越长。而比特币系统追求的平均出块时间为 10 分钟,这时候就需要调整难度目标来实现。

      02 如何调整难度目标?

      比特币系统是怎样调整难度目标的呢?在《白话区块链入门 080 | 数说比特币,了解 比特币 必须知道这 10 个数字》一文中,我们介绍了比特币系统每过 2016 区块(大约为 14 天时间),会自动调整一次难度目标。所有区块高度为 2016 整数倍的区块,系统就会自动调整难度目标。如果上一个难度目标调整周期(也就是之前 2016 个区块),平均出块时间大于 10 分钟,说明挖矿难度偏高,需要降低挖矿难度,增大难度目标(准确地说是目标值);反之,前一个难度目标调整周期,平均出块时间小于 10 分钟,说明挖矿难度偏低,需要缩小难度目标。

      03 难度目标的可调范围

      比特币系统设定,难度目标上调和下调的范围都有 4 倍的限制。举例说明:假设上一个难度目标调整周期内的 2016 个区块,由于算力暴涨,只用 7 天就全部挖出来了,通过难度目标调整,将难度目标缩小一倍,可以将平均出块时间维持在 10 分钟左右,但如果算力暴涨,前 2016 个区块全部挖出只用了 1 天,那么难度目标最小只能调整为原来的四分之一。

      04 总结

      比特币的算力是持续波动的,比特币系统通过难度目标的调整,使得平均出块时间维持在 10 分钟左右。难度目标和挖矿难度成反比,挖矿难度越大,难度目标越小。当区块高度为 2016 的整数倍时,比特币系统就会在该区块上,自动调整难度目标。如果上一个难度目标调整周期内,平均出块时间超过 10 分钟,那么降低挖矿难度,增大难度目标;反之则提高挖矿难度,减小难度目标。难度目标上调和下调的范围都有 4 倍的限制。

      比特币每 2016 个区块(大约 14 天)调整一次挖矿难度,相比于 BCH 每个区块都调整(大约 10 分钟调整一次),有明显的滞后性。你认为是哪种调整方式更合理呢?为什么呢?欢迎在留言区分享你的观点。

      ⑧ 关于POW算法难度调整的简单理解

      POW算法是比特币,以太坊等区块链系统使用的共识算法,简单来说他做的就是“工作量证明”。本文从一个非常简单的哈希算法的例子去解释一下,如何把 社会必要劳动时间 全网算力这个概念量化以及难度调整。

      相信使用搜索引擎查询过和“哈希表”的同学都很清楚他们是如何映射和扩容,这里就不作赘述了。本文中假设使用的哈希算法都能最大程度地平均分配空间

       希望他的题目能保持在 3秒 钟左右被解答出来。

      想象一下我们在一个只有 9个空间 的哈希表里面玩这个游戏。

      每次碰撞成功率:1/3

       回合1结束 :在问题发布1秒钟后,有一个哥们宣布他算出了正确答案。

      通过简单的小学数学我们得知, N=3 ;又称当次全网算力为3hash/秒

      (划重点)

       回合2开始

       对题目进行了必要的调整:“啊,我亲爱的 奴隶 劳动人民 矿工们,想要获得我的宝藏吗?去找吧,我把我的一切财富都放在了那里!只要找到一个值,通过使用 神 · 哈希 计算后等于1,就拿这个值找我兑换一点吧”;

      他发现自己低估了初代矿工们的能耐后,为了控制财富被瓜分的速度,他在知道上一次全网算力为3hash/s的前提下优化了题目参数。

      每次碰撞成功率:1/9

      (假设矿工数没变,也就是全网算力没变)

       回合2结束 :在问题发布3秒后,有一个哥们宣布他算出了正确答案。

      再次通过伟大的小学数学我们得知:N = 3;验证了全网算力依旧是3hash/秒,同时把分配财富的速度降低到了3秒/次。 感到很满意;

      这时候我想大家就明白了, 通过调整问题中要求的哈希值的整体覆盖率,来降低猜值成功的概率,这里可以近似认为 覆盖率=成功率

      调整的方法就是:

      目的:在期望时间内,全网算力产出能算出所有覆盖到的哈希值。

       :共 产 识社会机制

      财富:出块奖励

      宣布正确答案:出块

      单位中的hash:代表进行一次哈希运算

      ⑨ 比特币挖矿的难度和算力

      难度是对挖矿困难程度的度量,即指:计算符合给定目标的一个HASH值的困难程度。

      difficulty = difficulty_1_target / current_target

      difficulty_1_target 的长度为256bit, 前32位为0, 后面全部为1 ,一般显示为HASH值:, difficulty_1_target 表示btc网络最初的目标HASH。 current_target 是当前块的目标HASH,先经过压缩然后存储在区块中,区块的HASH值必须小于给定的目标HASH, 区块才成立。

      例如:如果区块中存储的压缩目标HASH为 0x1b0404cb , 那么未经压缩的十六进制HASH为

      所以,目标HASH为0x1b0404cb时, 难度为:

      比特币的挖矿的过程其实是通过随机的hash碰撞,找到一个解 nonce ,使得 块hash 小于 目标HASH 值。 而一个矿机每秒钟能做多少次hash碰撞, 就是其“算力”的代表, 单位写成 hash/s 或者 H/s

      算力单位:

      比特币系统的难度是动态调整的, 每挖 2016 个块便会做出一次调整, 调整的依据是前面2016个块的出块时间, 如果前一个周期平均出块时间小于10分钟,便会加大难度, 大于10分钟,则减小难度,目的是为了保证系统稳定的每过 10分钟 产出一个块,所以难度调整的时间大概是2周(2016 * 10 分钟)

      全网算力是btc网络中参与竞争挖矿的所有矿机的算力总和。当前难度周期全网算力会影响下一个周期的难度调整, 如果全网算力增加,挖矿难度增大,单台矿机固定时间的产出就会减少。目前全网算力大概是24.42EH/s, 一台蚂蚁S9矿机的算力大概是14TH/s

       那么, 已知当前全网算力,下一个周期难度将如何调整呢?

      根据公式:

      因为出块时间要稳定在10分钟, 也就是600s:

       那么,在3.46e+12的难度下, 一台算力为14TH/s的矿机平均要花多长时间才能出一个块呢?

      根据公式:

      有:

      结果大概是12270天

      ⑩ 自学区块链(六)BTC-挖矿难度

      我们来看下挖矿的计算公式

      H(block header) target,这个target就是 目标阈值

      BTC用的哈希算法是SHA-256,它产生的哈希值是256位,那么就有2^256种取值,这个就是他的输出空间,要增大挖矿难度, 就调节目标值在这个输出空间所占的比例 。

      挖矿难度和目标阈值是成反比的, 当算力强时,调节难度,使目标阈值变小 。

      不调节难度,随着矿工数量增多,随着算力的上升,那么挖到区块的时间就会变短,从10分钟缩短到1分钟甚至几秒钟,这个会带来什么样的问题呢?可能很多人觉得这不是挺好吗,交易等六个确认就会缩短时间了,交易就会变快了。其实出块时间缩到很短,风险是很大的,因为网络延迟,出块时间变短,不同节点很可能接到不同的区块信息,导致会有很多分叉节点出现。矿工会根据自己认为正确的区块接着挖。这种情况下,恶意节点发动分叉攻击就比较容易成功,因为诚实节点的算力被分散了。

      导致不需要51%的算力就能成功,所以缩短出块时间是不利于BTC系统的稳定的。虽然10分钟不一定是最优的时间,但是也算是比较合理的。

      下面是 算力增长曲线

      下面是 挖矿难度曲线

      下面是 平均出矿时间

      我们来看下难度公式:每2016个区块调整一次挖矿难度,10分钟出一个平均算下来是两星期调整一次。

      previous_difficulty是上一次的挖矿难度,分母是最近2016个区块花费的时间

      每个节点挖矿是独立的,BTC的协议也是开源的,会不会有矿工不修改挖矿难度呢?可能性是存在的,但是不影响结果,因为广播给其他节点需要独立验证block header的哈希值, 这个header里面有难度的一个压缩编码,修改难度产生的结果是不会被诚实的节点认可的。

免责声明: 文章源于会员发布,不作为任何投资建议

如有侵权请联系我们删除,本文链接:https://www.sws100.com/btc/301419.html

(0)
鸟叔鸟叔
上一篇 2023年 3月 28日
下一篇 2023年 3月 28日

相关推荐

  • STEP币最新价格

    STEP币价格连续上涨 近日,STEP币价格一路飙升,连续几天都保持上涨趋势。截至目前,STEP币的价格已经突破了历史最高点。这一情况引起了广泛关注,市场上也出现了大量STEP币的交易。 STEP币简介 STEP币是一种使用区块链技术发行的数字货币,是Steptech公司的代币。Steptech公司是一家专注于提供安全、稳定的数字货币支付解决方案的企业。其旗…

    比特币行情 2023年 7月 25日
  • 币安us注册(为什么币安的都是几倍)

    关于币安us注册(为什么币安的都是几倍)这个问题很多人都不太了解,下面由句子百科https://www.sws100.com小编大唐风水网为大家详细讲解一下,大家来看下。 1.4月10日,据彭博社报道,全球最大加密货币交易所币安获得阿联酋首都阿布扎比全球市场的原则性批准,这意味着币安可以作为虚拟资产的经纪商在此地运营。 2.2022 年7 月提供加密货币优惠…

    2023年 4月 6日
  • 比特币有几个交易平台_虚拟货币正规交易平台

    比特币有几个交易平台 比特币是目前应用最为广泛的虚拟货币之一,其交易平台的数量也随着市场的发展不断增长。本文将通过对比特币正规交易平台的分析,为读者介绍比特币交易平台的相关知识。 什么是比特币交易平台 比特币交易平台是指提供比特币交易服务的在线平台,其主要功能是连接买卖双方,方便快捷地进行交易。用户可以在交易平台中进行买入、卖出、存款、提款等操作,以实现比特…

    比特币行情 2023年 4月 26日
  • GRT币好挖吗

    大家好,句子百科Sws100.com小编下面围绕“GRT币好挖吗”主题给大家详细介绍一下。 和比特币挖矿相比,莱特币挖矿相对容易点。因为莱特币挖矿难度相对比较低。但目前,莱特币挖矿以逐步进入ASIC矿机竞争时代,算力在不断的攀升,大的矿池算力开始接近51%,如果你想进行莱特币挖矿,你就必须购买专业的asic。 1、政策风险,因为政策变化会直接影响到资金对股票…

    比特币行情 2023年 2月 20日
  • 币安中国能监控吗(币安iota交易量)

    关于币安中国能监控吗(币安iota交易量)这个问题很多人都不太了解,下面由句子百科Sws100.com小编caly为大家详细讲解一下,大家来看下。 1. 2. 3.已于2021年9月24日停止了中国大陆地区新用户注册。 4.每经记者:潘婷 每经编辑:易启江币安又遭勒索,这次是300个比特币。 5.币安大陆用户注册解决办法(币安中国用户注册)今天汇云百科为大家…

    2023年 1月 1日

联系我们

在线咨询: QQ交谈

邮件:k37759@foxmail.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信