
误区一:挖矿是在破解密码
比特币开发者指南对挖矿的说明围绕区块构造、区块头哈希和目标阈值展开;NIST的哈希函数说明则解释了摘要及其安全性质。两者对应的是工作量证明机制与密码学基础。
哈希函数把输入映射为固定长度的摘要。挖矿反复改变允许调整的数据,寻找符合目标条件的哈希结果,并非解密交易或恢复密码。抗原像性讨论的是寻找指定摘要的输入有多困难,而挖矿接受的是符合阈值的一类结果,并不要求命中某个唯一摘要。

误区二:计算越久,就越接近答案
挖矿试算没有逐步逼近正确答案的进度条。某次哈希结果距离目标很近,不代表接下来的结果更容易合格。

在目标条件相同的情况下,更多试算意味着更多成功机会,但不能据此确定哪一次会成功。算力描述的是计算能力,不能直接变成固定的出块时间承诺。
误区三:目标值越大,挖矿越难
目标值是判定哈希是否合格的数值门槛。门槛越宽松,能通过的结果越多;门槛越严格,通过就越困难。因此,目标值增大与难度增大方向相反。
理解矿池时尤其要区分网络目标与份额目标。矿池可以采用更宽松的份额目标记录贡献,但这不会放宽网络对有效区块的要求。
误区四:提交一个份额,就挖出了一个区块
份额是矿池衡量计算贡献的依据,只有其中同时满足网络目标的结果,才具备相应的出块条件。份额数量不能当作新增区块数量。
矿池把参与者的计算贡献汇集起来,并按自身规则分配所得。份额用于统计贡献,并不意味着每份对应一次出块,也不能单凭份额数量断言最终分配结果。
常见问题:nonce用完怎么办,合格哈希是否足够
区块头中的nonce并非唯一可调整的内容。开发者指南介绍了通过修改coinbase交易中的额外nonce、更新默克尔根来生成新候选区块头的方法。因此,遍历完一轮nonce不代表所有尝试都已耗尽。
哈希达标也不等于区块可以包含任意交易。工作量证明与区块内容有效性是不同要求,不能用前者替代后者。上述解释适用于理解比特币挖矿的一般机制,具体矿池的任务下发和分配方式还取决于其协议与规则。