美文网首页区块链研习社程序员
POW早过时了,现在的大势是POC

POW早过时了,现在的大势是POC

作者: 59076414ba40 | 来源:发表于2019-01-14 17:15 被阅读31次

大家知道POW是工作量证明,比特币采用的就是POW机制,而这个机制有一个缺点,就是需要消耗很多资源来维护比特币区块链的安全和稳定。后来就有人提出并创造了POS机制,Proof of Stake权益证明,试图解决POW机制中大量资源被浪费的情况。这种机制通过计算你持有占总币数的百分比,包括你占有币数的时间来决定记账权,但是此种机制也有个痛点无法解决,那就是当你拥有的币越多,有记账权的概率就越大,最后记账权会越来越集中。

由于POW和POS机制存在的弊端,于是就有了POC共识机制的诞生, POC (Proof of Capacity) 即容量证明共识机制。

目前,来自麻省理工学院(MIT)和奥地利科技学院(IST)开发的MASS项目与CHIA项目都使用了一种不同于POW和POS的新共识机制,


POC

是一种利用本地计算机硬盘驱动器里的闲置空间来进行挖矿的共识算法。


Proof of Capacity 简要概述

相比 POW 不停改变区块头的某个数字来猜测正确的哈希值,POC 把你猜数字的工作量变成了硬盘空间里的“测绘”(plotting)的工作量。每个区块都会绑定一个专属的“谜题”,在挖矿还没开始前,网络就会把破解这个谜题的计算方法(solutions)储存在你的硬盘空间里。这些计算方法有的比较快,有的比较慢,如果你的硬盘里恰好有一个计算方法,是目前最近产生的这个区块里的谜题所对应的“最快解”,那么你就赢得了这个区块的记账权——挖矿的奖励就是你的了。

POC 背后真正的挖矿算法,如果要实时计算的话是非常复杂的,而产生一个区块的时间又太短(平均每 4 分钟产生一个新的区块),因此这种挖矿的计算方法必须提前存储在硬盘驱动器的空间里。最终,如果你在硬盘空间里拥有越多的计算方法(也被称为plots),你用最快的速度去破解当前这个区块的谜题,实现的概率也就越大。


Proof of Capacity 的一个类比

想象“你的硬盘空间里塞满了一大堆的彩票,当彩票生成一个随机数字开奖的时候,你就在硬盘里找和这个随机数字最接近的那一张”。如果你有数字最接近的那一张,那么你就中奖了。这大概就是 POC 一个基本原理的类比。而使用这种机制最好的一点是:你可以在不同次的抽奖过程中连续使用同一块硬盘。你不需要额外消耗些什么。


Proof of Capacity 技术概述

POC 包括两个部分:

[if !supportLists]·       [endif]硬盘空间里的测绘(plotting)

[if !supportLists]·       [endif]背后真正的挖矿过程

根据你的硬盘空间的大小,需要花费数天或者数周的时间才能生成你独特的测绘(plot)文件。测绘Plotting 使用的是一种很慢的哈希函数,名叫 Shabal ,它和比特币使用的 SHA-256 哈希函数不同。因为 Shabal 哈希非常难计算,我们需要对它进行“预算”(precompute)然后把结果存储在硬盘空间里。这个过程就叫做测绘,Plotting 。

Plotting

当你在 Plotting 的时候,也就是为你的硬盘空间创建 plot 文件,你同时会创建一个叫 nonces 的东西。nonces 是通过数据不停重复哈希产生的,这些数据包括你的账户 ID 等等。如果你为 Plotting 分配越多的硬盘空间,那么你就能存储越多的 nonces。一个 nonces 最终会包括 8192 个哈希表。这 8192 个哈希表是成对出现的,每对被称为 scoop 。每个 scoop 会被分配一个从 0 到4095 的标号数字。

在挖矿过程中,你从 0 到 4095 计算每个 scoop的标号数字。我们假设你最终算出的数字是 42 ,那么你就要去编号为 42 的 scoop 里取出它里面的数据,利用这个数据计算出一个时间,这个时间被称为 deadline 。重复上面的过程,直到每个 scoop 都被你计算过一遍,你再从所有计算出的 deadline 里面,找出代表最短时间的、数值最小的那个 deadline 。这个 deadline 就代表了“自从上一个区块被生成之后,到你生成下一个区块之前,系统必须等待的时间长度(多少秒)。如果在这个时间长度里面,没有人生成下一个区块,那么你就获得了生成一个区块的权利,挖矿的奖励也就归你了”。


最后

Proof of Capacity 对经典的POW 工作量证明机制来说,是一种非常有趣的共识算法的尝试。它旨在增强更多的去中心化的矿工节点,同时减少更多的电力算力资源的浪费。当然,目前这种新的共识算法还没有经过实践的检验,只有时间能够告诉我们 Proof of Capacity 在共识算法里面最终能达到一个什么样的位置。

相关文章

网友评论

    本文标题:POW早过时了,现在的大势是POC

    本文链接:https://www.haomeiwen.com/subject/dtjjdqtx.html