Chia 挖矿背后的原理与技术细节
Posted Michael云擎的技术博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Chia 挖矿背后的原理与技术细节相关的知识,希望对你有一定的参考价值。
共识算法
运行于区块链上的数字资产采用各自不同的共识算法以分配资产。诸如 BTC(比特币)等资产采用了一套简单直接的工作量证明(Proof of work,PoW)方法,即通过具备大量算力的硬件计算哈希(Hash)以证明其工作量。PoW 方法的问题在于消耗了过多的能源。根据 University of Cambridge 发布的分析显示,BTC 网络一年耗费的电力超过阿根廷整个国家的用电量。此外,由于特定硬件制造的所有权以及廉价能源分布的集中,使得普通用户不容易参与 PoW 的过程,也使网络容易受到各种攻击。
另一种共识算法被称为权益证明(Proof of stake,PoS),该方法存在多种不同形式,但仍存在诸如易通过交易所集中控制资金、依赖定期与网络进行同步、以及普通用户不易参与其中等的显著缺点
在分布式共识系统中,系统的运作依赖于特定种类的可被加密验证(Cryptographically verifiable)且稀缺(并非无限获得)的资源,以抵抗 Sybli 攻击。PoW 与 PoS 中的稀缺资源分别是计算能力与权益。而在空间与时间证明(Proof of space and time,PoST)共识算法中,Chia 采用了存储空间作为稀缺资源。由于存储空间并非无限,因此他们认为,空间证明是更加贴近于比特币最初的“一个 CPU 一票”的理想替代方案。例如,拥有 300 GiB 的用户拥有三“票”,而拥有 500 GiB 存储容量的用户则有五“票”。这里的“投票”指的是在区块链上赢得并且验证该区块的机会。
而在 Chia 的共识算法中,仅仅采用空间作为稀缺资源是不够的。因此,PoST 共识算法引入了时间作为另一种稀缺资源。该算法创建了一种可验证延迟函数,以作为时间已经被流逝的证明。通过时间与空间的结合,Chia 构造了这样一种挖矿场景:用户将数据存储在硬盘驱动器上一段时间,而赢得区块记账权利的机会与分配的空间大小成正比。该机制通过与彩票中奖类似的方式,允许所有普通用户均可参与其中,而不需要任何特殊硬件、资金以及注册才可加入。
空间证明
从概念上来讲,Chia 采用下列方法来实现对存储容量的证明:
- 验证者向证明者发出一项质询(Challenge),然后
- 证明者向验证者证明在某一时刻,验证者保留了特定数量的存储空间
空间证明的实现细节非常复杂,有兴趣的读者可以参阅这一篇文章。DGideas 博客将会在未来详细讨论该证明的理论依据。不过简言之,对空间的证明由以下三个阶段组成:标绘(Plotting)、证明(Proving,即挖矿过程),以及验证(Verifying)。
Chia 共识算法白皮书中对于空间证明的示意图,首先证明者(Prover)标绘或分配部分硬盘空间 (1). 然后通过空间证明 (2,3,4). 来响应质询以实现挖矿过程,验证者检查该证明对该质询是否有效
Plotting
标绘(Plotting)过程即硬盘容量的初始化过程。证明者(挖矿用户)是任何拥有至少 100 GiB 可用空间的人,也可能有拥有大量未使用空间的企业。存储空间容量不设上限。标绘过程可能持续几个小时到几天的时间,该过程只需执行一次。经过初始化的空间被一个称为 以上是关于Chia 挖矿背后的原理与技术细节的主要内容,如果未能解决你的问题,请参考以下文章plot
的文件占用。绘图文件(plot
文件)的大小由参数