跳到主要内容

什么是挖矿?

挖矿是帮助创建新的交易区块以添加到以太坊区块链网络的过程。它还有助于保持网络的安全,使其免受攻击。

就像比特币一样,以太坊目前使用工作证明(PoW)共识机制,这在很大程度上依赖于采矿。以太坊矿工利用他们的时间和计算能力来处理新传入的交易并产生新的区块。

以太坊 2.0(计划于 2022 年中后期)将用权益证明取代工作证明,这将大大改变新区块的产生方式。我们将在后面讨论 Eth2。

为什么矿工会存在?

大多数人认为,挖矿只是增加新交易和创造新币的一种方式。但是,我们在上面提到,挖矿也有助于保持网络安全。为什么这么说呢?

在以太坊这样的去中心化系统中,我们需要确保世界上每个人都同意交易的顺序。

例如,如果 Alice 给 Bob 发送了 1 个 ETH,他又把这个 ETH 发送给了 Charlie,那么交易的顺序必须是这样的

爱丽丝-->鲍勃 1 个 ETH

鲍勃-->查理 1 个 ETH

任何其他的交易顺序都是不可行的,重要的是每个人都同意这一点。

因此,矿工也负责验证区块链网络上的加密货币交易,并将其添加到账簿中。重要的是,这个过程可以防止数字货币的重复消费。

为什么有人会成为矿工?

就像实物货币一样,当有人执行交易时,区块链的状态必须被更新,以反映每个相关账户的借记/贷记。

然而,数字平台很容易受到攻击,并且可以被操纵。因此,矿工不仅要提出新的区块并验证所有的交易,他们还需要制作一份合法性证书,证明他们提出的区块中的所有交易都是有效的。

生成这个证书是一个计算上的困难和复杂的挑战。这就是所有 "工作证明 "的意义所在。我们将在以后的教程中更深入地讨论这个问题,但现在,只需知道制作这个证书是相当困难的。

但是,给定一个合法的证书,第三方要验证它是否有效是非常容易的。

对于矿工制作这些证书和执行交易的辛勤工作,他们会以新币的形式获得奖励。在以太坊中,当矿工成功挖出一个区块时,他们会收到 2 个 ETH 的辛勤工作。以太坊一开始的区块奖励是 5 个 ETH,但随着 2017 年拜占庭的升级,这个奖励降到了 3 个 ETH,然后在 2019 年君士坦丁堡的升级中再次降到 2 个 ETH。

由于去中心化系统缺乏中央自主权,挖矿过程对网络的安全性和有效性极为关键。因此,挖矿奖励作为参与交易验证过程的激励措施。

谁可以成为矿工?

从技术上讲,任何人都可以通过运行 Ethereum 节点软件成为 Ethereum 的矿工。然而,并不是每个人都能挖到 Ethereum 而获利。

在大多数情况下,矿工购买专门的硬件来挖矿获利。普通电脑不太可能赚取足够的挖矿奖励来支付挖矿的相关电力和硬件成本。

挖矿的成本

  • 构建和维护硬件所需的硬件成本
  • 为挖矿设备供电的电力成本
  • 支持挖矿设备的潜在成本(冷却器、通风器、能源监控器、电线、太阳能发电站等)。

为了探索采矿的盈利能力,你可以使用这样的计算器

以太坊交易是如何被挖掘的?

  • 用户从他们的账户中签署一个交易请求
  • 该交易通过一个节点被广播到以太坊网络上
  • 听到新的交易后,网络中的每个节点都会将该交易添加到他们的本地 mempool(内存池)。mempool 是一个节点听说过但尚未被纳入区块的交易列表。
  • 在某些时候,矿工将大量的交易组合成一个潜在的区块,其方式是使他们赚取的交易费用最大化,同时保持在区块气体限制之下。然后。
    • 矿工验证每笔交易的有效性。这包括检查没有人试图转移他们不拥有的以太坊,或签名无效,或请求是畸形的,等等。
    • 然后,矿工在他们的以太坊虚拟机(EVM)的本地副本上执行该交易。它将每个此类请求的交易费用授予他们自己的账户。
    • 矿工开始为整个区块创建工作证明(Proof-of-Work)的合法性证书,在此之前,区块中的所有交易都在他们的本地 EVM 上得到验证和执行。
  • 最终,矿工完成了该区块的合法性证书的制作,其中包括用户的交易。然后,矿工将完成的区块广播给全世界,其中包括证书和区块链的新状态信息。
  • 其他节点听说了这个新区块。他们验证证书(这很容易做到),在他们的 EVM 本地副本上执行区块中的所有交易,并验证他们的 EVM 状态与矿工提议的状态一致。
  • 一旦其他节点验证了矿工提出的所有内容,他们就会把这个区块添加到他们的区块链节点,并接受新的 EVM 状态作为 "区块链的当前状态"。
  • 每个节点从他们的本地 mempool 中删除包含在该区块内的交易。
  • 这个过程重复进行。

采矿的不同方法

在技术的早期,当成为矿工相当容易时,大多数矿工使用基于 CPU 的采矿,在他们的台式机和笔记本电脑上运行。然而,在当今时代,CPU 挖矿的速度相当慢,而且不切实际,因为在不断以 100%的容量运行 CPU 并支付高额电费的情况下,甚至需要几个月的时间才能赚取少量的挖矿奖励。

基于 GPU 的挖矿是目前最常见的方法。这种方法可以最大限度地提高计算能力,将多个 GPU 集中在一台挖矿设备上,让它们并行工作,从而提高一台设备的整体容量和吞吐量。

特定应用集成电路(ASIC)采矿也相当流行。这些是专门为开采以太坊设计的硬件芯片。你可以在网上为大多数流行的区块链网络购买 ASIC。然而,它们很昂贵,而且随着越来越多的矿工加入网络,挖矿变得越来越难,硬件很快就会被淘汰。一个全新的 ASIC 通常最多只能维持 1-2 年。

如今,另一个正在增长的选择是云采矿,它允许个人矿工利用专用采矿设施的力量,而不拥有任何硬件。

采矿池

大多数个人矿工没有足够的资源来建立拥有数千个 GPU 和 ASIC 的巨大采矿设施。矿池允许矿工结合他们的计算资源,以增加他们开采区块的机会。如果矿池中的任何人成功地挖到一个区块,奖励将根据他们对矿池贡献的计算能力按比例分配给矿池中的所有人。