ASIC-Resistance(以下简称 “抗 ASIC”)是指区块链的挖矿算法能够抵御 ASIC(专用集成电路)专用硬件实施的能力。ASIC 专为执行单一任务而设计,本文中这个单一任务特指加密货币挖矿。相比于通用硬件(例如 CPU 或 GPU),ASIC 的挖矿效率要高出几个数量级。
什么是抗 ASIC?
抗 ASIC 这个概念的出现,是为了维护公平竞争的挖矿环境,确保拥有消费级硬件的小玩家仍然能够参与挖矿,并因其对网络的贡献而获得奖励。抗 ASIC 主要通过设计一种难以在 ASIC 中实施的挖矿算法,来实现网络更加去中心化,从而抵抗资本充足的大型矿工的集中化趋势。
实现抗 ASIC 的其中一种方法是采用内存密集型算法。这种算法需要大量内存来供挖矿硬件使用,以便执行挖出区块所需的计算。相比于纯计算任务(如哈希函数)的 ASIC 相比,这种方法显著增加了 ASIC 的研发和制造成本。
从 2015 年到 2022 年,以太坊所使用的挖矿算法 Ethash 就属于内存密集型算法。Ethash 需要从内存中读取大量数据,而且这个需求会随着时间的推移而增加,从而导致旧的硬件无法用于挖矿。
Grin 区块链采用了类似的被称为 Cuckoo Cycle 的内存密集型算法。该算法需要矿工在极大二分图中寻找回路,这就需要大量的内存和快速存储的支持。
抗 ASIC 有可能吗?
随着时间的推移,开发人员逐渐意识到实现真正的抗 ASIC 是一项艰巨的任务。因为只要有足够的资源和时间,人们总能够设计出专门针对某个算法的 ASIC。因此,许多曾声称能够抵御 ASIC 矿机的 PoW 区块链已经被 ASIC 所取代,这引发了人们对于集中化和被少数大型矿工控制的担忧。
第一批以太坊 ASIC 矿机历经数年研发才得以问世,但随着时间的推移,这些矿机的算力曾经一度增长到全网算力的 50%。在以太坊进行合并之后,这些 ASIC 矿机别无选择,只能转移至另一条使用 Ethash 挖矿算法的区块链,即 Ethereum Classic(ETC)。现在,用除 ASIC 矿机以外的任何设备挖 Ethereum Classic 都是无利可图的。
为了应对这种情况,一些项目选择对区块链协议进行硬分叉,以改变挖矿算法并使现有的 ASIC 矿机失效。这样做往往是为了恢复公平的竞争环境,防止少数矿工控制网络的大部分算力。然而,硬分叉并不是一个容易做出的决定,因为它可能会对网络及其用户造成损害,而且可能还需要付出大量的努力才能保证平稳过渡。
总结
值得注意的是,尽管内存密集型算法会增加开发 ASIC 矿机的难度,但这种策略并非万无一失。ASIC 矿机制造商仍然可能会开发出专门针对这些算法进行优化的定制硬件。
因此,为了使 ASIC 设备退出网络,必须采取硬分叉措施。不过,硬分叉容易造成权力集中(在决策的过程中),而且还需要在整个生态系统中进行大量的协调才能实施。
这种硬分叉还会损害社区中的重要利益相关者,因为矿工和矿机制造商在设备上投入了大量资金,而这些设备无法重新用来挖其他链。硬分叉可能符合某些社区成员的利益,但给关键利益相关者造成巨大的沉没成本可能不符合链的整体利益。