比特币挖矿入门
讲清楚 NMMiner 怎么"参与"之前,先用一屏文字过一遍比特币挖矿的本质。
任务是什么
比特币矿工在抢答这样一道题:找到一个数字 — 即 nonce — 让 block header(这个 nonce + 其他字段)经过 SHA-256 哈希 两次(也就是 SHA-256d)之后,得到的输出值小于网络指定的 target。
就这一句话。整个挖矿行业本质上是同一个搜索问题:
找一个 32 位的数,使
sha256(sha256(header_with_that_value))小于网络 target。
Difficulty,说人话
- 网络难度 — 让赢得下一个 block 有多难。今天高到爆炸,需要一整仓库 ASIC 才能在合理时间内打中一个。
- 矿池难度 — 矿池让你"查多深"。矿池把它定得很低,让小矿工也能交出 share(证明你真的在算)。
- Share — 满足矿池难度(不一定满足网络难度)的一次 hash 结果。矿池用 share 数来计你的贡献。
NMMiner 的 hashrate 在 几百 KH/s 这一档,所以它接的是 share 难度极低的矿池(往往只有不到 1)。
收益,说人话
矿池里某台机器(不一定是你)打中一个满足网络难度的 hash,矿池领走 block reward,按各家 share 计数分钱。小矿工分得也少,但 NMMiner 接的这类矿池直接打到你的钱包地址。
DigiByte (DGB) 同理
DGB 同样用 SHA-256d,数学完全一样 — 只是网络参数和矿池不同。同一份 NMMiner 固件不用改就能挖 BTC 或 DGB。
NMMiner 在干什么
NMMiner 做的事:
- 连接到你配置的 Stratum 矿池(默认连 NMMiner 自家 SoloBTC)。
- 持续接收矿池下发的 job。
- 在芯片极限下搜索 nonce 空间。
- 把有效 share 回传给矿池。
- 在屏幕上显示算力、最近一次 share、本次开机最优 + 历史最优。
接下来两页讲协议和设备内的数据流。