比特币挖矿的难度和算力
难度是对挖矿困难程度的度量,即指:计算符合给定目标的一个HASH值的困难程度。
difficulty = difficulty_1_target / current_target
difficulty_1_target 的长度为256bit, 前32位为0, 后面全部为1 ,一般显示为HASH值:0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF, 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天
挖矿算力怎么计算
首先,算力代表的是矿机每秒的运算次数,如达到 1 次 /s ,则对应算力为 1H 。因此知道挖币矿机的运作时间与运算次数即可计算其算力。算力的单位是每千位一变化,最小单位 H 为 1 次, 1K=1000H,1G=1000K,1T=1000G,1P=1000T,1E=1000P 。大热币种比特币在各地的挖矿算力不完全一致,但基本保持在 24.5E 上下,至少要拥有 150 万台计算机才能达到这一算力。并且不同的数字货币对挖矿方式(算法)的选择也有所区分,因此比较不同货币的算力是不可比的。
不同币种间的算力
不同的币种挖矿选择的算法可能会有所不同,如以太坊使用 Ethash 算法,比特币是 sha256 算法,莱特币是 scrypt 算法等。不同算法对算力的影响就像 6 位数字密码与 12 位字母和数字密码解码的区别,实际情况还要比这个要复杂的多。两种密码的解码要求不同,那么尝试解码的速度也会有较大差距。因此,不同的币种间的算力是没有任何关系的。
比特币挖矿难度和算力有什么关系
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(blockquan+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 年起矿池出现,大量矿工纷纷加入矿池,以稳定收入,摊薄成本。大量算力融入,使得比特币挖矿难度越来越大。数字货币挖矿业形同军事竞备,挖矿设备不断更新迭代,不再遵循摩尔定律。
算力是什么意思是什么
目前指的算力,一般是指比特币挖矿机的算力。算力就是挖矿机挖出比特币的能力,您的算力占全网算力的比例越高,算力产出的比特币就越多。目前比特币的年投资回报率高达212%,是优质的投资品种,因而比特币挖矿机也被称为印钞机,只不过印出来的是比特币而已。目前使用最多的算力单位是T和P,1P=1000T,1T目前(2017/03/22)1天约产出0.00055个比特币。想要拥有算力,除了自己购置矿机搭建矿场挖矿外,还可以去类似算力宝这样的算力平台购买算力,操作简单,同时也是快速了解这个行业的入口。
数字货币挖矿,什么是算力?挖矿算力单位怎么换算?
数字货币挖矿 我们经常提到的一个词就是 矿机的算力,
比如:挖BTC比特币的蚂蚁矿机T9+ 算力10.5TH/S,
挖LTC莱特币的蚂蚁矿机L3+ 算力504MH/S,
挖LCC数字链的好矿机Ubuntu×64 算力180KH/S.
那究竟算力是什么意思呢? 算力代表了什么 算力单位是怎么定义的呢?
其实算力的意思很简单,他就是代表矿机的计算能力、计算性能的衡量 他具体代表的是每秒矿机的整体hash算法运算次数。
我们先要知道挖矿的本质就是解决一个数学计算,谁先算出来谁就获得奖励(币),这个数学计算方式也很简单,就是一直不断的尝试碰撞结果![什么是矿机算力?挖矿算力单位怎么换算?
就类似于你暴力破解一个手机密码 (假设尝试多次手机不会被锁),
你不断的尝试密码 从 000000 ~ 999999 一个一个的尝试直到你解锁成功,
如果你1秒内能尝试一次 你的算力就是1次/s ,1秒内能尝试两次 你的算力就是2次/s
你1秒内尝试的次数越多你的算力就越大, 你解锁的时间也就越短 。
矿机也是一样, 矿机1秒内能计算的hash算法次数越多算力越大,挖的币越多。
最开始比特币使用 CPU挖矿, 后来使用显卡GPU挖矿,到现在的使用ASIC专业定制芯片挖矿,计算速度一直不断提升
算力单位:
算力每隔千位划为一个单位,
最小单位 H=1次 1000H = 1K 1000K = 1G 1000G = 1T 1000T = 1P 1000P=1E
S9+ 10.5T 也等于 10500G / 0.0105P
比特币全网算力现在 24.42 EH/s 相当于232万台S9的算力
不同币种的算力
不同的币种的挖矿算法可能会不一样
比如比特币是sha256算法,莱特币是scrypt算法, 以太坊是Ethash算法,数字链是SHA-2算法。
这就像 手机1的密码4位随便输入, 手机2的密码6位, 输一次后 隔1s才能再次输入, 实际比这个要复杂的多,
解锁这两种不同的手机的方式是不一样的, 那我尝试解锁的速度也不一样, 解锁手机1 我会更快一点。
不用的币种之间的算力 是没有任何关系的, 比特币矿机是不能挖莱特, 因为算法不一样, 他不会解莱特币的题。