HashCore:面向通用处理器的工作量证明函数
密码学与安全
2019-04-17 v2
摘要
在过去五年中,与挖矿工作量证明(Proof-of-Work)区块链相关的奖励大幅增加。因此,矿工有强烈动机去设计并使用专用集成电路(ASIC),其计算哈希的效率远高于现有通用硬件。目前,由于价格和供应限制,大多数用户难以购买和使用 ASIC,导致对于大多数流行加密货币而言,矿工数量相对于总用户基数较少。在这项工作中,我们旨在通过构建一种工作量证明函数,使现有通用处理器(GPP,如 x86 集成电路)本身已成为优化过的 ASIC,从而反转 ASIC 开发的问题。这样一来,我们将确保任何潜在矿工要么已经拥有其希望参与的 Proof-of-Work 系统的 ASIC,要么可以相对容易地以有竞争力的价格获得一个。为实现这一点,我们提出 HashCore,一种由运行时伪随机生成的“小部件(widgets)”组成的工作量证明函数,每个小部件执行一系列通用处理器指令,旨在给此类 GPP 的计算资源施加压力。这些小部件将模仿 GPP 已优化的工作负载来建模,例如 x86 IC 的 SPEC CPU 2017 基准测试套件,我们称此技术为反向基准测试(inverted benchmarking)。我们提供证明:无论小部件如何实现,HashCore 都是抗碰撞的。我们观察到 GPP 设计者/开发者实质上为 SPEC CPU 2017 等基准测试创造了 ASIC。通过以此类基准测试为模型构建 HashCore,我们创建了一种可在 GPP 上最高效运行的工作量证明函数,从而带来更易获取、更具竞争性和更均衡的挖矿市场。
引用
@article{arxiv.1902.00112,
title = {HashCore: Proof-of-Work Functions for General Purpose Processors},
author = {Yanni Georghiades and Steven Flolid and Sriram Vishwanath},
journal= {arXiv preprint arXiv:1902.00112},
year = {2019}
}