主页 > imtoken安卓ico > 侯赛因比特币挖矿的关键部分是什么? | 侯赛因侯赛因

侯赛因比特币挖矿的关键部分是什么? | 侯赛因侯赛因

imtoken安卓ico 2023-08-25 05:12:46

作者| 萨贾德·侯赛因

比特币挖矿是比特币系统安全的关键部分。 这个想法是比特币矿工将一堆比特币交易组合成一个块,然后重复数十亿次称为散列的加密操作,直到有人找到特定的目标散列。 此时,该区块被开采并成为比特币区块链的一部分。 哈希任务本身并没有完成任何有价值的事情,但由于很难通过它找到成功的目标值比特币挖矿没收益怎么办,它确保没有人有能力和资源接管比特币系统。

哈希函数获取大量数据并创建一个小的、不可预测的输出。 哈希函数的设计使得没有“捷径”来获得所需的输出——你只需保留哈希块,直到你通过蛮力找到一个有效的块。 对于比特币,哈希函数是一种叫做 SHA-256 的东西。 为了提供更高的安全性,比特币将连续两次重复 SHA-256 函数,这一过程称为双重 SHA-256。

在比特币中,成功的哈希值是以足够多的零开头的数字。 就像很难找到以多个零结尾的电话号码或车牌一样,很难找到以多个零开头的散列。 但是比特币的难度呈指数增长。 目前,一个成功的散列必须以大约 17 个零开头。 换句话说,找到一个成功的哈希比在地球上所有的沙粒中找到一粒沙子更难。

下图显示了比特币区块链中的一个区块及其哈希值。 黄色字节被散列以生成块散列。 在这种情况下,生成的哈希值以足够多的 0 开头,以便挖掘成功。 但是Hash是很难一次性获得的。 在这种情况下,矿工更改 nonce 值或其他区块内容并重试。

比特币使用的 SHA-256 Hash 算法

SHA-256 哈希算法采用 512 位(或 64 字节)输入块,以加密方式组合数据,并产生 256 位(32 字节)输出。 SHA-256 算法由一个重复 64 次的相对简单的循环组成。 下图显示了一个回合,它接受 8 个 4 字节的输入——A 到 H,然后执行一些操作并为 A 到 H 生成新值。

比特币挖矿算法_比特币挖矿采用的算法_比特币挖矿机真能挖到比特币吗

蓝色框以非线性方式将这些值混合在一起,使得对这些值的密码分析变得困难。 由于该算法使用了几个不同的函数,因此更难检测到攻击。 (如果你能找到一条数学捷径来生成成功的哈希值,你就可以接手比特币挖矿)。

ma 大多数盒子看 A、B、C 数字。 对于每个位置,如果多数为0则输出0,否则输出1。即对于A、B、C的每个位置,看1的位数。 如果是0或1,输出0,如果是2或3,输出1。

Σ0 框将 A 的数字取反,形成三个取反的版本,然后取模 2 相加。即如果 1 的位数是奇数,则和为 1,否则为 0,三个值是A,分别反转2位、13位、22位。

Ch“Select”框根据输入E的值选择输出位,如果E的某位为1,则输出位为F对应的位,如果E的某位为0,则输出bit是G对应的bit,所以F和G的bit是根据E的值随机选择的。

下一个框 Σ1 反转 E 的位,类似于 Σ0,但移动了 6、11 和 25 位。

红框内进行32位加法,为A和E生成新值,输入的Wt根据输入数据稍作处理。 (这是将输入块输入算法的地方。)输入 Kt 是为每一轮定义的常量。

从上图可以看出,一轮只换了A和E。 其他值不变传递,旧的A值变成新的B值,旧的B值变成新的C值,以此类推。 虽然每一轮 SHA-256 不会更改太多数据,但在 64 轮之后输入数据将被完全打乱。

这对挖矿硬件意味着什么?

SHA-256 的每一步都非常容易用数字逻辑实现——简单的布尔运算和 32 位加法。 (如果你学过电子学,你可能已经能够想象电路)。 出于这个原因,定制的 ASIC 芯片可以在硬件中非常有效地实现 SHA-256 算法,在单个芯片上并行执行数百轮。

相比之下, 、 等使用 Crypt Hash 算法,该算法被有意设计为难以在硬件中实现。 它在内存中存储了 1024 个不同的哈希值,然后以不可预测的方式组合它们以获得最终结果。 因此,Scrypt 比 SHA-256 Hash 需要更多的电路和内存。 您可以通过查看挖矿硬件来了解影响,Scrypt(等)的计算速度比 SHA-256(比特币)慢数千倍。

SHA-256 算法非常简单,易于手动实现。 (用于签署比特币交易的椭圆曲线算法手工计算会很痛苦,因为它有很多 32 字节整数的乘法)。 我在 16 分 45 秒内手工完成了一轮 SHA-256。 按照这个速度,哈希一个完整的比特币区块(128 轮)需要 1.49 天,每天的哈希率为 0.67(尽管我可能会通过练习变得更快)。 相比之下,目前的比特币挖矿硬件每秒可以进行数万亿次哈希运算,这比我的手动哈希运算快了大约 5000 万倍。 不用说,手动比特币挖矿根本不切实际。

比特币挖矿采用的算法_比特币挖矿机真能挖到比特币吗_比特币挖矿算法

一位 Reddit 读者询问了我的能源消耗情况。 事实上比特币挖矿没收益怎么办,它不需要太多的能量消耗,所以假设静息代谢率/天,人工哈希的能量消耗约为 10 MJ/Hash。 典型挖矿硬件的能耗为 1000 MJ/Hash。 所以,我的能源效率降低了 10¹⁶。 下一个问题是能源成本。 一种廉价的食物能源是甜甜圈,200 卡路里的热量为 0.23 美元。 这里的电价是$0.15/kWh,比我预想的便宜6.7倍。 所以我的每个哈希的能源成本大约是挖矿硬件的 67 倍。 显然,我不会用比特币挖矿所采用的算法手工挖矿来发大财,我什至不包括我需要的所有纸和铅笔的成本。

萨贾德·侯赛因

李汉波译

奥利维亚编辑

内容仅供比特币挖矿算法参考,不作为投资建议,风险自负

挖矿网Ethos中文站拥有简单易用的挖矿系统。 为挖矿行业提供教程软件、矿机评测和交易信息,对比计算各种数字货币在挖矿网络上的挖矿收益,介绍挖矿网络挖矿。 矿山工具、矿山最新动态等。

挖矿网,版权所有丨比特币挖矿算法如未注明均为原创丨本站受BY-NC-SA协议授权

转载请注明原文链接:比特币挖矿中使用的硬核算法丨BTC的挖矿算法是如何工作的?

币圈新闻,版权所有丨如未注明,均为原创丨本站受BY-NC-SA协议授权

转载请注明原文链接:侯赛因比特币挖矿的关键部分是什么? | 侯赛因侯赛因