
先明确适用范围
数字币是宽泛称呼,不能据此判断某种资产是否能够挖矿。挖矿设备的技术含义,需要结合具体网络的共识机制理解。比特币开发文档讨论工作量证明挖矿;以太坊开发文档则明确,其主网已经停止工作量证明挖矿,相关页面属于历史说明。
挖矿与工作量证明
工作量证明是通过计算结果证明投入了计算工作的机制。挖矿不只是产生新币,还涉及构造候选区块、寻找满足条件的证明以及广播区块。其他节点仍需验证区块,矿工不能凭借设备自行改变有效性规则。
因此,“找到计算结果”和“区块被网络接受”不是同一概念。满足工作量条件并不意味着可以包含违反协议规则的交易。
ASIC、算力与挖矿软件
ASIC指专用集成电路。在比特币挖矿流程中,挖矿软件构造区块头,专用硬件反复计算哈希,寻找符合目标的结果。设备、软件和节点承担不同职责,不宜统称为一台负责全部工作的“矿机”。
算力描述单位时间内进行哈希计算的能力,不等同于交易处理速度。理解设备参数时,需要同时明确它执行的算法与任务;脱离适用网络,只比较算力数值容易产生误解。
目标值、难度与nonce
目标值是判断哈希结果是否合格的门槛:目标越小,符合条件的结果越难找到。难度用于表达这种计算要求,不能理解为设备功率或硬件质量。
nonce是区块头中可调整的字段,用于尝试不同哈希结果。可尝试的数据并不局限于这一字段;软件还可以通过调整相关区块数据更新区块头,继续提供计算任务。
矿池与share的区别
独立挖矿由矿工自行尝试找到有效区块;矿池则协调参与者的计算工作。share通常译为“份额”,是符合矿池提交门槛的工作证明,用来统计计算贡献。
常见问题是:提交一个share是否就产生了一个区块?并不是。矿池提交门槛通常比网络出块条件宽松,只有同时满足网络要求的结果,才可能用于提交有效区块。
通信协议与历史术语
getblocktemplate用于提供构造候选区块所需的信息,Stratum用于挖矿任务通信。它们是软件协作方式,不是数字币,也不是芯片型号。
以太坊历史上的Ethash属于挖矿算法名称,不能据此推断其主网仍支持挖矿。阅读设备介绍时,应先分清描述的是历史机制还是适用机制,再区分算法、硬件与协议,避免把不同层次的术语混为一谈。