科普 | 比特币挖矿用的SHA256算法是什么?
视频来源:Matthew Endures Teaching
翻译:Cobo钱包
世界上最流行的计算机算法大概就是SHA 256哈希算法了。首先看下它的定义——一种具有确定性的单向哈希函数。我们逐词解释一下:
「算法」就是执行操作的一系列步骤/过程;
「哈希函数」是一种数学函数,输入的长度可以是任意的,但输出的长度是固定的,可以把它理解为文件的数字指纹;
具有「确定性」的特征,意思是同一个输入值,总能得到相同的输出值。
SHA 256是指输出值为256位的安全的哈希算法,那「单向」是什么意思呢——单向代表了函数很难逆推。有些函数很容易逆推,比如加30,只需减30就可以逆推回来;但如果你要逆推两个大素数的乘法公式就很难。
SHA 256函数是一种单向散列算法,输入值可以是任意类型和长度,输出值位数均为256位,可能是256个1和0——这是一个很长的数,所以通常会写成一段64位十六进制数。
这个公式有两个有趣又实用的特点:
首先,如果你得到了同样的哈希值,或者说是数字指纹,就是因为你输入了完全相同的输入值,两个不同的输入值不会得出同一个输出值(数字指纹)。
那哈希值数量有多少呢——2的256次方。
另一个有趣的特点是蝴蝶效应,只要输入值改变一点点输出值就会变。举个例子,我现在拍一张照片,像素:1000x1000,文件长度:2400万位,用SHA 256算法来运行一下,得出一个哈希值。现在来改变输入值中的某一个小单位,放大这个电线杆的像素,把绿色值的0改为1,重新用SHA 256算法运行一遍,就得到一个完全不同的输出值,这还只是改变了2400万单位中的一个。
以上两个特点帮助SHA 256适用于各种场景:密码学、数字签名、认证,以及比特币。
SHA 256在比特币协议中发挥着关键的作用,任何人都可以在自己的计算机上运行这个数学函数,但没有人能逆推它。如果你可以逆推这个算法,你就可以比其他人挖矿挖得更快,然后赚很多钱。
比特币挖矿的过程,就是找到输入值的过程,这个输入值通过SHA 256算法产生了一串开头带有约70个零的输出值。但是,因为没有已知的公式,每个人能做的也只是通过蛮力一个数一个数去试,直到找到正确的输入值。不过比特币挖矿只需要找到一个接近的哈希值就好,不需要完全匹配。实际上,挖矿难度可以调整,保证大概每十分钟能有矿工找到匹配的输入值,然后赚取12.5比特币的出块奖励,这就是为什么我认为它是地球上最流行的算法,或者应该说是地球上最常用的算法。
为了跑赢比特币挖矿的竞赛,人们专门使用了可以很快运行SHA 256算法的计算机,有多快呢?
如果把全世界所有比特币矿工加起来,目前他们每秒正在运算6千亿亿个哈希值,分秒不休,日复一日。
所以我说SHA 256是最流行的算法,这个结论还是很公道的。我觉得可能会有其它的字符处理算法和它竞争,比如傅里叶变换函数,但是每秒能运算超过6千亿亿次吗?
我不知道...
Anyway,我说这些就是想表明:没有人能找到比特币挖矿的捷径,虽然找捷径有巨大的经济动力,或许有人能找到,但他们不会那样做,只会选择遵循规则...
关注挖币网公众号
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。
-
科普 | 比特币挖矿用的SHA256算法是什么?
2019-12-27 SHA 256算法 -
鱼池教程 | 挖矿入门(二)
2019-12-04 挖矿入门 -
鱼池教程 | 挖矿入门(一)
2019-12-04 挖矿 -
普通用户参与挖矿的方式有哪些
2019-11-27 挖矿 -
公链矿工费设计
TOPS- 最热/
- 周排行/
- 月排行
- 最热/
- 周排行/
- 月排行
-
198019
゜ 1 以太坊挖矿必看!显卡算力对照和挖矿收益计算器资源集合 -
119087
゜ 2 以太坊ETH挖矿教程与显卡矿机搭建指南 -
62671
゜ 3 挖币网评测: 蚂蚁矿机L3++评测 -
48880
゜ 4 门罗币XMR分叉币门罗经典XMC 简介 -
46945
゜ 5 【重磅】ERB即将上线,将施行严格PDG退市保护制度 -
45189
゜ 6 重磅政策调整!国家发改委“淘汰产业”删除“虚拟货币挖矿” -
45111
゜ 7 Nevermore-miner 更高效的渡鸦币(RVN) N卡矿工软件及教程 -
44954
゜ 8 门罗币Monero(V7)最新挖矿教程 针对4月6日升级 -
43417
゜ 9 【重磅】比特大陆海外发售以太坊ASIC蚂蚁矿机E3,不一样的船新版本 -
42036
゜ 10 IPFS矿机哪家强?当下十大IPFS矿机资料大全