加密货币挖矿中的算力是什么?

· 6 分钟阅读

算力是每个矿工、矿池和区块浏览器最先展示的数字。本指南以 Blocknet 和 bntpool.com 仪表盘为例,讲解算力衡量的是什么、如何读懂从 H/s 开始的各级单位、你自己的算力与矿池算力和全网算力是什么关系,以及每个数值为什么会时刻变化。

什么是算力?

简短回答

算力是矿机每秒计算的哈希次数。在工作量证明挖矿中,每一次哈希都是对区块答案的一次猜测,而每次猜测赢得区块的机会都同样微小。算力越高,每秒猜测的次数就越多,因此你在区块中的预期份额会随你在总算力中的占比同比例增长。

工作量证明区块链要求矿工找到一个哈希值低于目标值的区块头。这里没有捷径:矿工修改区块头中一个叫作 nonce 的数字,对结果计算哈希,与目标值比较,然后重复。算力统计的就是机器每秒完成多少次这样的尝试。

在 Blocknet 上,一次尝试就是一次 Argon2id 哈希。nonce 作为密码输入,区块头的其余部分作为盐值,这个函数要处理完 2 GiB 内存才会得出 32 字节的结果。seine 和矿池都以每秒完成的哈希次数来报告算力,所以 1 H/s 表示每秒完成一次完整的 Argon2id 计算。

H/s、kH/s 和 MH/s 是什么意思?

算力单位沿用常见的公制前缀,每一级是前一级的一千倍:

单位 每秒哈希次数 常见用途
H/s 1 Blocknet 上的单台电脑
kH/s(KH/s) 1,000 Blocknet 矿池和全网总算力
MH/s 1,000,000 速度更快的工作量证明算法
GH/s 1,000,000,000 SHA-256 等快速哈希
TH/s 及以上 1,000,000,000,000 及更多 快速哈希的全网总算力

bntpool.com 仪表盘把千位单位写作 KH/s,数值每超过 1,000 就升一级单位,所以 44.44 KH/s 就是 44,440 H/s。用一个算力除以另一个算力时,先把两者都换算成 H/s。

为什么 Blocknet 的算力数值这么小?

Blocknet 的工作量证明是内存密集型的。每次哈希要写入约 2 GiB 内存,再读回约 2 GiB,远远超过任何处理器缓存的容量,所以内存系统的速度决定了挖矿速度。每个挖矿线程都需要自己的 2 GiB,这就是内存容量决定一台机器能运行多少线程的原因。

以下是 seine 在各代硬件上测得的最佳成绩:

硬件 线程数 算力
AMD EPYC · Zen 5(EPYC 9R45) 32 49.4 H/s
AMD EPYC · Zen 4(EPYC 9R14) 24 35.7 H/s
Apple M4 Max(48 GB MacBook Pro) 16 30.9 H/s
Arm 服务器(AWS Graviton4) 16 21.5 H/s
Intel Xeon(Sapphire Rapids 8488C) 12 13.1 H/s

即使是 32 线程的 Zen 5 服务器,每个线程每秒也只完成约 1.5 次哈希。基于快速哈希的算法数值要大得多:Bitcoin wiki 提到,运行双重 SHA-256 的比特币矿机在 2014 年就已经以每秒十亿次哈希为单位来标称。这两种数字衡量的是每次哈希中不同的工作量,所以算力只有和同一算法的其他算力放在一起才有意义。Argon2id 工作量证明详解深入介绍了这个算法,Blocknet 挖矿硬件指南说明了内存带宽和内存容量如何决定这些成绩。

你的算力、矿池算力和全网算力

对在矿池挖矿的人来说,有三个算力值得关注,它们各自的测量方式不同。

你的算力

seine 会统计你的机器完成的每一次哈希,并在仪表盘上显示两个数值:Current(当前),即你此刻的速率;Average(平均),即本次运行期间的平均速率。要稳定地了解一台机器的实力,请在 seine 用几分钟时间在实际挖矿工作中调好线程数和 CPU 计算内核之后,看它的平均值。

矿池看不到你的哈希。它看到的是你提交的份额,也就是满足为你的连接设定的较低目标值的哈希。bntpool.com 根据最近一小时内你被接受的份额的总难度估算你的算力,并显示在 My Stats 页面上。在 bntpool.com 上查看你的矿机一文详细介绍了这个页面。

矿池算力

仪表盘上的 Pool Hashrate(矿池算力)卡片把所有已连接矿工在同样一小时窗口内的份额工作量加在一起。它告诉你 bntpool.com 承担了全网多少工作,并由此得出矿池预计多久能找到一个区块,仪表盘把这个值显示为 Expected Block Time(预计出块时间)。

全网算力

没有人能统计网络上的每一次哈希,所以全网算力是根据区块推算出来的。难度是找到一个区块预计需要的哈希次数,而 Blocknet 的目标是每 300 秒出一个区块。

全网算力是怎么计算的?

简短回答

全网算力是根据难度和出块时间估算的。在 Blocknet 上,难度约等于每个区块预计需要的哈希次数,目标出块时间是 300 秒,所以全网算力大致等于难度除以 300。bntpool.com 仪表盘则根据最近十个区块的实际工作量和时间戳来推算。

下面用 2026 年 10 月 25 日 02:26 EDT 读取的实时数值演示这个计算。Blocknet 区块浏览器当时显示的下一个难度是 16,943,147,也就是说网络被设定为每个区块约需 1,690 万次哈希。除以 300 秒,约为 56,477 H/s。

同一时刻,bntpool.com 仪表盘显示的全网算力是 44.44 KH/s,即 44,440 H/s。两者都是从不同角度对同一事物的估算。按难度算出的数值,是让区块恰好按五分钟目标产出所需的速率。仪表盘的数值则是用最近十个区块的实际工作量除以它们实际用去的时间,所以当最近的区块用时超过五分钟时,它的读数就会偏低。Blocknet 每出一个区块就调整一次难度,这让两个数值在一段时间内保持接近。

算力为什么会波动?

这三个数值各有各的波动原因。

做决定时请看平均值:seine 的本次运行平均值、My Stats 上的 24 小时图表,以及一天内多次查看的全网算力。

你的算力对收益意味着什么?

因为每一次哈希的机会都相同,你在全网算力中的占比就是你在区块中的预期份额。Blocknet 每天产出 288 个区块,所以占全网 0.1% 的矿工,长期来看每天预计可以获得约 0.29 个区块的奖励。如何估算你的 Blocknet 挖矿收益一文用从仪表盘读取的数值,把它换算成每天的 BNT。

在 bntpool.com 上,这份预期收益按你被接受的份额记账,以矿池找到的每个区块中的一部分发放给你,所以收益会全天候一小步一小步地到账。如果你还没有开始,seine 安装指南能带你在几分钟内从下载走到第一批份额。

说明

本指南中的算力描述的是 Blocknet 当前的 Argon2id 工作量证明。根据 blocknetcrypto.com,Blocknet 计划在 2027-02-16 前后进行名为 Faraday 的网络升级,并计划更改工作量证明。请保持 seine 为最新版本:它会在启动时以及每 12 小时检查一次新版本。

常见问题

挖 Blocknet 时,一台电脑能达到多少算力?

在 seine 的实测中,各代硬件的最佳成绩分别是:AMD EPYC Zen 5 服务器 49.4 H/s,AMD EPYC Zen 4 35.7 H/s,Apple M4 Max 笔记本 30.9 H/s,AWS Graviton4 Arm 服务器 21.5 H/s。你自己的数值主要取决于内存带宽,以及你的内存能容纳多少个各需 2 GB 的线程。

为什么 Blocknet 的算力用 H/s 而不是 MH/s 或 TH/s 来衡量?

每次 Blocknet 哈希都是一次 Argon2id 计算,要写入约 2 GiB 内存再读回,所以即使是大型服务器每秒也只能完成几十次哈希。基于 SHA-256 等快速哈希的工作量证明数值要大得多,因此使用更大的单位。只应在同一种算法内比较算力。

为什么矿池显示的算力和我的挖矿软件不一样?

挖矿软件会统计它完成的每一次哈希。矿池只能看到你提交的份额,并根据最近一小时内这些份额的难度估算你的算力。份额的到达时间是随机的,所以矿池的数值波动更大,需要一段时间才会稳定。公平的比较方法是用 My Stats 上的 24 小时图表对照挖矿软件的平均值。

算力越高,挖矿收益就越多吗?

是的,而且按比例增加。每一次哈希找到区块的机会都相同,所以你在全网区块中的预期份额等于你的算力占全网算力的比例。算力翻倍,预期收益也翻倍;全网算力上升,你的份额就会变小。在 bntpool.com 上,这份收益以矿池找到的每个区块中的一部分发放给你。