比特币系统组成、矿工作用及工作量证明机制详解

2024-06-06
来源:网络整理

比特币系统由用户(用户通过密钥控制钱包)、交易(交易被广播到整个比特币网络)和矿工(通过竞争性计算生成由各个节点共同认可的区块链,区块链是一个分布式公共权威账本,包含了比特币网络中发生的所有交易)组成。比特币矿工通过用一定工作量解决工作量证明问题来管理比特币网络——确认交易和防止双重支付。由于哈希运算不可逆,因此很难找到一个符合要求的随机调整数,需要一个总次数可预测的试错过程。这时,工作量证明机制就发挥作用了。当一个节点找到符合要求的解时,它可以将其结果广播到整个网络。其他节点可以接收新解出的数据块,并检查其是否符合规则。如果其他节点通过计算哈希值发现满足要求(比特币要求的计算目标),那么该数据块有效,其他节点就会接受该数据块。 中本聪将比特币的生产过程,通过消耗 CPU 算力和时间,比喻为金矿消耗资源,为经济注入黄金。比特币挖矿和节点软件主要通过点对点网络、数字签名和交互式证明系统,发起零知识证明并验证交易。每个网络节点向网络广播交易,这些广播交易被矿工(网络上的计算机)验证后,矿工可以用自己的工作量证明结果来表达确认。确认的交易会被打包成数据块,数据块串在一起,形成连续的数据区块链。

每个比特币节点收集所有未确认的交易,并将它们分组为一个数据块。矿工节点附加一个随机调整数,并计算前一个数据块的哈希值。挖矿节点不断尝试,直到找到一个随机调整数,使得哈希值低于某个目标。挖矿难度为了维持数据块生成速度在大约每十分钟一个,生成新数据块的难度会定期调整。如果数据块生成速度加快,就增加挖矿难度;如果数据块生成速度变慢,就降低难度。每生成2016个数据块后(大约两周),比特币系统会根据最近一段时间的数据块生成率,自动重新计算接下来2016个数据块的挖矿难度。难度基本上决定了一个有效的数据块头(英文:)的SHA-256哈希值应该小于某个值,也就是说,哈希值必须恰好落在目标范围内才有效。目标范围越小,命中目标的机会就越低。 也就是说挖矿难度越高。由于ASIC计算设备的爆炸式增加,挖矿难度呈指数级增长。平均每年难度增加约3%,让普通个体矿工的挖矿工作变得异常艰难。以上内容参考自百度百科-比特币矿机

双重支付和双重归流_双重支付问题_双重支付

比特币系统由用户(用户通过密钥控制钱包)、交易(交易被广播到整个比特币网络)和矿工(通过竞争性计算生成由各个节点共同认可的区块链,区块链是一个分布式公共权威账本,包含了比特币网络中发生的所有交易)组成。比特币矿工通过用一定工作量解决工作量证明问题来管理比特币网络——确认交易和防止双重支付。由于哈希运算不可逆,因此很难找到一个符合要求的随机调整数,需要一个总次数可预测的试错过程。这时,工作量证明机制就发挥作用了。当一个节点找到符合要求的解时,它可以将其结果广播到整个网络。其他节点可以接收新解出的数据块,并检查其是否符合规则。如果其他节点通过计算哈希值发现满足要求(比特币要求的计算目标),那么该数据块有效,其他节点就会接受该数据块。 中本聪将比特币的生产过程,通过消耗 CPU 算力和时间,比喻为金矿消耗资源,为经济注入黄金。比特币挖矿和节点软件主要通过点对点网络、数字签名和交互式证明系统,发起零知识证明并验证交易。每个网络节点向网络广播交易,这些广播交易被矿工(网络上的计算机)验证后,矿工可以用自己的工作量证明结果来表达确认。确认的交易会被打包成数据块,数据块串在一起,形成连续的数据区块链。

每个比特币节点收集所有未确认的交易,并将它们分组为一个数据块。矿工节点附加一个随机调整数,并计算前一个数据块的哈希值。挖矿节点不断尝试,直到找到一个随机调整数,使得哈希值低于某个目标。挖矿难度为了维持数据块生成速度在大约每十分钟一个,生成新数据块的难度会定期调整。如果数据块生成速度加快,就增加挖矿难度;如果数据块生成速度变慢,就降低难度。每生成2016个数据块后(大约两周),比特币系统会根据最近一段时间的数据块生成率,自动重新计算接下来2016个数据块的挖矿难度。难度基本上决定了一个有效的数据块头(英文:)的SHA-256哈希值应该小于某个值,也就是说,哈希值必须恰好落在目标范围内才有效。目标范围越小,命中目标的机会就越低。 也就是说挖矿难度越高。由于ASIC计算设备的爆炸式增加,挖矿难度呈指数级增长。平均每年难度增加约3%,让普通个体矿工的挖矿工作变得异常艰难。以上内容参考自百度百科-比特币矿机

分享