光电 · 技术与产业
文章库关于本站

产业观察

最开始比特币挖矿模式相关术语如何理解:模式、哈希与工作份额

摘要

理解比特币挖矿,可以先区分参与模式、哈希计算和任务通信三个层面。本文解释独立挖矿、矿池、目标值、nonce与share的关系,并说明早期接口和历史起点不能混为一谈。

区块链价格波动率的科技主题配图

先明确“最开始”的含义

“最开始比特币挖矿模式相关术语如何理解”可以理解为入门概念问题,也可能是在问历史起点。这里解释基础术语与早期接口,不据此确定某种模式首次出现的日期。

理解时可分三层:独立挖矿与矿池挖矿描述参与方式;哈希、目标值与nonce描述计算过程;getwork、getblocktemplate与Stratum描述任务信息如何传递。它们处于不同层面,可以同时出现在一套挖矿流程中。

区块链价格预警的科技主题配图

参与模式:独立挖矿与矿池

独立挖矿由矿工自行尝试生成区块;矿池挖矿把多名矿工的计算工作组织起来,以工作份额作为分配依据。两者都需要找到满足网络要求的区块。

区块链行情数据api的科技主题配图

例如,“通过矿池接收任务”回答的是谁组织工作,“使用什么协议接收任务”回答的是如何通信。判断术语时先看它回答哪个问题,就不会把一种通信协议误认为第三种挖矿模式。

哈希、目标值与nonce

NIST的安全哈希标准说明,哈希算法能够为消息生成摘要,用于检测消息是否发生变化。摘要可以理解为按确定规则计算出的结果;同样的输入得到同样的结果,但摘要本身并不说明输入内容是否符合比特币规则。

在挖矿中,矿工改变区块头中的nonce等数据,反复计算哈希,并检查结果是否满足目标值要求。目标值越小,条件越严格。这里的“难”指找到合格结果需要反复尝试,而核验一个已有结果可以直接计算并比较。

share为什么不等于区块

share是提交给矿池核验的工作份额。矿池通常设置比网络更容易满足的门槛,因此合格share不一定满足出块要求;只有同时满足网络要求的候选区块,才可能被网络接受。

常见误解是把提交次数视为成功出块次数。实际上,share用于统计计算贡献,区块则承担记录交易的作用。阅读目标值描述时也要注意方向:更容易的门槛对应更大的目标值,不能把目标值大小与难度高低直接等同。

早期接口术语的适用范围

getwork是早期且已弃用的挖矿接口;getblocktemplate用于提供构造候选区块的模板信息;Stratum用于传递挖矿任务和提交工作结果。看到这些名称时,应结合接口或协议版本理解其能力。

“早期接口”不等于“最初全部挖矿方式”。同样,描述某种Stratum实现时的交易选择限制,也不能直接推广到所有版本。涉及历史先后或具体软件支持情况,需要对应时期的记录才能确认。

← 返回全部文章

延伸阅读 · 相关栏目

光电技术产业观察研究资料资料与核验