首页/ 入门科普/ 你真的了解POC容量证明吗?
投诉
取消
提交

你真的了解POC容量证明吗?

假设一下,当某一天BTC全网算力已经上涨到目前的100倍时,会发生什么?会让更多的人参与其中,会让更多的人受益?不,会造成巨大的电力消耗,BTC挖矿一年所耗费的电力是整个欧洲国家的总和。尽管到那时币价可能已经是现在的100倍,但BTC巨大的耗电量始终是整个生态内频繁提及的问题。

而终于有一天,全世界各国下令禁止高能耗的挖矿活动,所有POW矿场都被迫关停,BTC全网算力暴跌,BTC网络随之瘫痪。在全球的禁令下,只有那些耗电量极低的加密货币才能得以生存。

加密货币的信仰者们迫切寻求着一种更低能耗的共识算法以挽救BTC。至此,POC(proof of capacity,容量证明)登上了加密世界的王座。

当然,这都是个人的臆想,如有雷同,纯属巧合。

回归正题,虽然上文的臆想可能过于遥远,但BTC以及POW所带来的巨大电力消耗问题是确实存在的。BTC社区的成员们就此提出了各种的解决方案,最终出现了空间证明(Proof of space),空间证明最终由burst团队将其改进并转变为如今的POC容量证明,因此Burst也称之为POC币种的鼻祖。

你真的了解POC容量证明吗?配图(1)

本质上,POC容量证明也是工作量证明的一种,只不过POC更加特殊,它与BTC的POW要求矿工追求哈希算力不同,POC容量证明要求矿工追求硬盘容量,这让POC容量证明摆脱了ASIC化与巨大耗电量的命运。

相较于BTC矿机动辄几千瓦的功耗,硬盘的功耗简直不要太低,目前市面上的硬盘功耗普遍在5-10W,因此POC容量证明的省电是显而易见的。

除此之外,使用硬盘挖矿的POC容量证明无需担心ASIC化,因为在POC容量证明中,硬盘容量的提升只能增加硬盘数量。而定制超大的硬盘,增加的只是成本,即便你有20T的硬盘,大不了我上两块10T。

目前的加密货币中,使用POC容量证明的币种仅有少数,而POC币种无一例外都需要将数据填满硬盘空间,我们称之为P盘,数据会强制占满硬盘空间,所存储的数据只能用于硬盘挖矿,这一步让许多不够了解硬盘挖矿的朋友匪夷所思,为什么要强制占满硬盘空间,POC容量证明到底是什么样的机制?

1、POC容量证明的算法原理

传统的POW工作量证明,为了保证竞争的公平性,在一次竞争区块打包权时,都要求矿工通过计算得到解答区块所需的哈希值,无论之前作出过多少次的计算结果,都要直接抛弃并重新计算。

而POC容量证明,也需要计算,虽然过程同样缓慢,但这个过程是在挖矿开始之前,矿工所需要做的仅仅是利用计算硬件例如CPU、GPU计算出挖矿所需的哈希值,并将哈希值存入硬盘空间即可。这就是我们常说的POC空间换时间,利用硬盘来缓存哈希值,提高了计算的效率。

可能还是有朋友会产生疑问,为什么POC能通过存储哈希值来提高计算效率呢?请看下面

2*3*4=24

2*3*4+10=34

2*3*4+111=135 ……

这3个计算中,如果是常规的计算逻辑,那么需要执行6次的乘法以及2次加法。不过我们可以发现,只需要将2*3*4的结果存储,我们就可以只通过2次的加法便能计算出所有的结果。

你真的了解POC容量证明吗?配图(2)

当然,这样的代价就是我们要有一定容量的硬盘去存储这些计算的结果,这就是为什么能通过存储来提高计算效率的原因。POC就是通过此种方法降低计算的难度,并因此将POW的算力消耗变成了硬盘空间的消耗。

容量证明便是采用此项方法,矿工通过储存缓存数据即可降低计算难度,以此将工作量证明的目标由算力消耗转向储存消耗。

2、POC容量证明的核心

Shabal哈希函数是2007年NIST举办的加密函数竞赛中的候选方案,尽管该方案没能进入决赛,但仍不失为一个优秀的哈希算法,该算法目前也没有出现致命弱点。容量证明的Plot文件需要通过Shabal函数来生成,生成方式如下:

第一轮运算:

矿工账户ID+随机数Shabal256(256位Shabal函数)=Hash值8191号

上述过程产生的8191号哈希值总共有32字节,矿工ID和随机值各8字节。

第二轮运算:

Hash#8191+账号ID+随机数Shabal256=Hash#8190

第三轮运算:

Hash#8910+Hash#8191+ID+随机数Shabal256=Hash#8189

重复上述运算,当哈希函数输入值(前几轮的哈希结果+ID+随机数)大于4096字节后,之后的运算将只会取最新的4096字节数据来进行哈希,例如:

Hash#7001+...+Hash#7128+ID+随机数Shabal256=Hash#7000

每一个哈希值由32字节,128个哈希值一共4096字节

最后,当完成8192次循环后,我们会有从0号到8191号总共8192个哈希值,将所有的哈希值作为输入,再加上ID与随机数,算出最终Hash值,如下:

Hash#0+...+Hash#8191+ID+随机数Shabal256=Final Hash

最终Hash拿来与其他8192个哈希值进行异或运算,得到全新的8192个哈希值,保存这些哈希值,两两分组分为4096组Scoop,Scoop便是容量证明挖矿所需要用到的基础缓存数据。每一组Scoop包含64字节,4096组Scoop总共占用256KB的储存空间。

你真的了解POC容量证明吗?配图(3)

由于矿工的ID是由公钥生成,不因此会轻易改动,因此Hash值生成的不同由随机数来决定,每个随机数都将生成256KB的Scoop组,而一个随机数占8字节,1byte(字节)=8bit,所以8字节总共有18,446,744,073,709,551,615种可能,想要储存完所有随机数所对应的Scoop组,总共需要4096ZB的空间,而目前人类所有数据加起来不超过50ZB,储存所有的数据数据是不可能的,因此矿工只能储存一部分的Scoop数据。

至于矿工为何要储存Scoop组,原因是矿工的挖矿将会用到这些Scoop组,其缓存的数据将成为计算缓存来加快挖矿计算速度。

应用:利用Scoop组的信息挖矿

在挖矿之前,矿工需要根据相关信息计算初需要读取的scoop组,我们以BHD为例(BHD的容量证明与Burst类似),其生成挖矿所需scoop组的方式如下:

钱包生成挖矿信息,包含最新区块的产块签名,下一区块高度以及base target。base target涉及到BHD的”Deadline“设定,其设定相当于BTC网络中的“当前网络难度”。

钱包生成挖矿所需Scoop组流程如下:

最新区块的产块签名0+矿工IDShabal256=产块签名1

产块签名1+下一区块高度Shabal256=产块哈希

产块哈希mod 4096=Scoop组编号(对产块哈希以4096取模,即取最小余数)

假设产块哈希取模后得到值 199,矿工就需要遍历198#Scoop组(Scoop组含0~4095)的数据,将相应组所有内容取一次Shabal256哈希值,再结合之前的产块签名还有Target数据(一种由钱包生成的当前网络挖矿难度数据),共同换算出Deadline数据,换算方式如下:

Scoop组数据+产块签名Shabal256=难度Target

难度Target/当前网络难度Base Target=Deadline(产块目标时间)

由于BHD网络中,Deadline被设定为>1的值(实际网路中设定值比1大得多),所以矿工为了让Deadline符合难度目标,必须要从硬盘中反复读取储存的Scoop数据进行运算。

每一个Scoop组的信息包含对0~4095随机数取值的所有信息,因此矿工为了能算出符合要求的Deadline就必须要尽可能多的储存Scoop组信息,即提升挖矿效率只能通过增加硬盘,提高储存空间来实现。就如同BTC工作量证明中,提升挖矿效率只能通过增加矿机或提高矿机效率来实现。

3、殊途同归的“工作量证明”

通过前文我们可以了解到,POC容量证明依然属于“工作量证明”,究其本质而言,POC容量证明也是通过对资源的消耗来维护网络的安全。BTC的工作量证明是消耗计算资源+高消耗电力资源+挖矿设备为BTC赋予基本价值,而POC币种通过消耗硬盘资源+低消耗电力资源+挖矿设备为自身赋予基本价值。

 你真的了解POC容量证明吗?配图(4)

当电力消耗达到某一个程度时,电力就会成为网络稳定性的影响因素,除影响网络算力的稳定性外,还会对去中心化程度造成影响。

当电费和挖矿设备价格成为影响矿工的准入门槛之后,普通人就会无法承担起维护网络安全的一份子,即我们常说的挖BTC是富人的游戏,当越来越少的富人接手“挖矿游戏”后,去中心化的程度就会越来越低。

BTC网络的现状便是如此。但在POC生态中,由于硬盘天生自带低功耗的属性,因此在较长的一段时间内,POC硬盘挖矿的电力成本将不再是提高准入门槛的因素之一。

硬盘的广泛适配性,更是进一步降低了挖矿的准入门槛,一块普通的二手机械硬盘即可成为挖矿设备,参与挖矿。值得一提的是,POC存储的数据是离线状态下生成的数据,因此即便是硬盘损坏,也不会导致网络数据的丢失。

POC容量证明的设计初衷便是为了解决传统POW的电力资源消耗等问题,由于POC的本质仍旧是通过消耗物理资源来为货币赋值,因此从长远的角度看,POC也存在着中心化的趋势。

但在BTC日趋中心化的今天,如何让更多的人参与区块链,参与挖矿行业,分享新技术为人类带来的红利,POC容量证明是 一种十分友好的解决方案。

#硬盘挖矿#  #硬盘狗社区#

本文来源:陀螺财经 文章作者:硬盘狗社区
收藏
举报
硬盘狗社区 个人认证
累计发布内容55篇 累计总热度10万+

陀螺财经现已开放专栏入驻,详情请见入驻指南:https://www.tuoluocaijing.cn/article/detail-27547.html

硬盘狗社区专栏:https://www.tuoluocaijing.cn/columns/author377966/

本文网址:https://www.tuoluocaijing.cn/article/detail-68591.html

免责声明:
1、本文版权归原作者所有,仅代表作者本人观点,不代表陀螺财经观点或立场。
2、如发现文章、图片等侵权行为,侵权责任将由作者本人承担。

相关文章

硬盘狗社区
个人认证

55篇

文章总数

10万+

总热度

一文了解HDD.Cash SINOC能为挖矿行业带来怎样的惊喜? 带你了解智能合约历史及现状
热门文章

下载APP

微信公众号

rss订阅