徐明星:矿机耗电量这么大,到底在计算什么?
【摘要】目前制约区块链技术发展的诸多原因中,很多人认为有一条比较关键,就是能源消耗大。其实,随着区块链技术的进一步发展,参与的人数越来越多,产生庞大的数据,其需要的计算量也是呈指数级增长的。
目前制约区块链技术发展的诸多原因中,很多人认为有一条比较关键,就是能源消耗大。其实,随着区块链技术的进一步发展,参与的人数越来越多,产生庞大的数据,其需要的计算量也是呈指数级增长的。
前不久,美国石英网站发表了一篇题为《比特币的巨量耗电问题需不需要担心》的文章,就比特币的耗电问题进行探讨。一项发表于聚焦能源材料的Cell子刊《焦耳》杂志上的最新研究认为,在全球范围内,比特币挖矿在一年内所消耗的电量至少与爱尔兰全国的年电力消费量相当,约为24太瓦时(万亿瓦时)。
根据彭博社的报道,美国纽约州监管部门最近批准了一项面对加密货币挖矿行业的电力分配计划,将允许矿工就电力合同进行协商。就在几个月前,纽约州政府允许周内36个市的电力部门向加密货币矿工征收高于其他用户的用电费用。
矿机耗电量这么大,到底在计算什么?对此徐明星表示,这其实要回溯到区块链的运作本质来看。
现在很多人在谈论区块链,但却不知道区块链的运作机制。徐明星表示:区块链实质上是由一个个记录着交易信息的数据块链接而成的,生成一个新区块所需要完成的工作量证明,就是找到一个随机数,使得将这个随机数、上一个区块的哈希值、这个新区块的交易数据组成的字符串代入做哈希运算,所得到的哈希值符合目标难度要求。
徐明星解释道,哈希运算简单来说,就是输入任意长度的字符串作哈希运算,会得到一个较短的固定位数的字符串,称为这些输入信息的哈希值,并且不同的输入信息,哪怕是一个标点的不同,都会生成截然不同的哈希值。上一个区块的哈希值即是把上一个区块信息代入做哈希运算得到的唯一一个哈希值。
哈希值的表达是由0至9这10个数字以及abcdef这6个数字构成的,也就是说每一位有16种可能。而任何输入所生成的哈希值的表达是非常随机不可控的。具体的难度要求则是指限定一个哈希值表达的目标范围——哈希值开头连续多位数字是0。
“随机代入数值,要实现开头1个字位是0的概率是1/16,而要实现开头8位都是0的概率则是1/2^ 32,也就是大约需要代入2^ 32个随机数才能够得到一个开头8位都是0的哈希值。所以记账节点们在耗费大量算力计算的过程,就是代入大量随机数进行哈希运算直到找到一个能够让其参与生成的哈希值实现要求数量的0作为开头。”徐明星表示。
总的来说,比特币作为一个里程碑式的区块链数字货币,其源于大量的算力投入和用户信任的巨大价值。这一点是毋庸置疑的。
徐明星说,计算难度的要求是根据全网算力的变化进行调整的,比特币网络共识每生成2016个区块后,全网节点重新评估算力水平确定新的难度要求,而目前保证找到一个目标随机数的时间大约是10分钟。
但是尽管如此,英国开放大学Alan Shipman却表示:无须担心,大多数经济学家都认为,市场会调节好这一切。