要知道比特币挖矿到底在计算什么,就要了解什么是比特币挖矿?比特币挖矿是指通过比特币挖矿机的计算能力,计算出比特币的正确数据串链,简单点来说,比特币就是一道数学题,而比特币挖矿就是在计算数学题,了解了比特币挖矿之后,接下来币圈子小编就给大家详细介绍一下比特币挖矿在计算什么?
比特币的挖矿计算其实就是大家一起做数学题,题干是需要被记录的交易,大家通过做题抢夺记账权,抢到的矿工就能获得系统奖励和交易手续费。
比特币用的SHA256算法的特点是已知答案验证正确很容易,但是要得到答案非常麻烦,需要一个一个数字去试。最先得到答案的矿工大家就都认可他是抢到了记账权,奖励就归他了。大家继续抢下一题的记账权。
简单来说这些计算的意义只在于保证整个系统的稳定安全,并没有更多的意义。把比特币看作是计算的副产品是不全面的,比特币的产生发行、比特币链上所有的交易流通、比特币系统的稳定性,都是计算的目的,是一体的。当然除了维护这个系统之外,的确并没有产生其他的价值和产物。这也是比特币被指责不环保浪费资源的一个黑点。
总的来说,比特币作为一个里程碑式的区块链数字货币,其源于大量的算力投入和用户信任的巨大价值。这一点还是毋庸置疑的。
区块链实质上是由一个个记录着交易信息的数据块链接而成的,生成一个新区块所需要完成的工作量证明,就是找到一个随机数,使得将这个随机数、上一个区块的哈希值、这个新区块的交易数据组成的字符串代入做哈希运算,所得到的哈希值符合目标难度要求。
哈希运算,简单来说,就是输入任意长度的字符串作哈希运算会得到一个较短的固定位数的字符串,称为这些输入信息的哈希值,并且不同的输入信息,哪怕是一个标点的不同,都会生成截然不同的哈希值。上一个区块的哈希值即是把上一个区块信息代入做哈希运算得到的唯一一个哈希值。
哈希值的表达是由0至9这10个数字以及abcdef这6个数字构成的,也就是说每一位有16种可能。而任何输入所生成的哈希值的表达是非常随机不可控的。具体的难度要求则是指限定一个哈希值表达的目标范围——哈希值开头连续多位数字是0.我们知道,随机代入数值,要实现开头1个字位是0的概率是1/16.而要实现开头8位都是0的概率则是1/2^ 32.也就是大约需要代入2^ 32个随机数才能够得到一个开头8位都是0的哈希值。所以记账节点们在耗费大量算力计算的过程,就是代入大量随机数进行哈希运算直到找到一个能够让其参与生成的哈希值实现要求数量的0作为开头。
而这个难度要求是根据全网算力的变化进行调整的,比特币网络共识每生成2016个区块后,全网节点重新评估算力水平确定新的难度要求,以保证找到一个目标随机数的时间大约是10分钟。
简单的说就是不停地拼凑字符串,计算的SHA256哈希值,直到找到产生合适的哈希的字符串,这个字符串就是解。
总的来说,比特币挖矿就是在计算哈希值,通过计算之后得到唯一一个合法哈希值,当然这个计算过程是非常复杂,并不是人力所能解决的,所以投资者在挖矿之前,选择好的矿机是很重要的。