LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > POW 和 POS 共识机制浅谈

POW 和 POS 共识机制浅谈

2019-10-19 比德财经 来源:区块链网络

POW(Proof Of Work),工作量证明。

POS(Proof Of Stake),权益证明。

两者都试图达到一种“随机选节点出块,选中概率正比于节点的某种可验证的资源,然后,由于我们采用最长链共识,于是想要推翻已经得到确认的块需要掌握 50% 以上的资源”的状态,只不过两者所需要的资源不同:前者是工作量,后者是拥有的币量。

通俗的说法是,质押财富帮助大家记账,而记账人不作恶的基础是质押的财富大于他做假账的收益。一个质押的是现实世界的财富(电费、人工、硬件成本等),一个质押的是虚拟世界的财富(token)。

共识算法,就是大多数人对于同一问题达成统一的认识。有中心的时候就是中心说了算。现在解决的是去中心化后,谁说了算,那就“投票”。

投票权的分配:POW 给大家,一 CPU(矿机或 GPU)一票。POS 给大家,一币一(N)票。

俗话说的 51% 攻击,即女巫攻击,是指伪造投票,就看做的划算不划算。防御的方式肯定就是提高伪造“假票”成本,因此 POW 与 POS 都需要质押不同的财富(现实或虚拟)。

zhLZUe6NPtwP9qlkfQGBxygEwMyz98OFJ8LA5LFw.jpeg

 一、POW

优势:匿名投票,无需许可;投票行为成本高(硬件、电力等);投票成本与所投票绑定(投完就无法修改)。

劣势:延迟高,TPS 低,消耗资源不环保。

针对延迟高与 TPS 低,提高出块速度和效率,解决办法是:1、如 ITC,降低出块难度;2、像 BCH,扩大块容量。

与普遍认知相比,速度上来了,效率反而变得更慢。区块越大,广播速度越慢。出块速度快,别人(30% 算力)出的块(A 链)还没广播过来,我自己(40%)倒是出了新块(B 链)。这时候,分叉严重,谁说了算就再次出现了。A 链、B 链,这时不需要 51% 算力,作恶者只需要 11% 的算力就可以让我的块作废,B 链数据同步为选择 A 链(即回滚),大大降低安全性,只需要比最多算力的两个分叉差值大,作恶者就可以低成本伪造假票获利。

如果想避免分叉,广播速度和出块速度要合适,带宽利用率不能太高,TPS 自然被限定在一定范围内。比如比特币采用最长链共识,600 秒产生 1MB 的区块,相比较于带宽 100MB/S 甚至更大,其带宽利用率极低,安全性高。

二、POS

优势:延迟低;环保,节省资源。

劣势:通讯复杂度与投票人数成正比;非匿名,有许可;投票成本低(有签名即可);投票权可复用可转让。

通讯复杂度问题,简单且易解决:随机选取委员会代表投票或代理投票,如何公平分配随机数成为关键。

无利害攻击,一票多投。因为投票权和打包权分离,先投票再出块,拿到投票权是可以随便投,不管谁获得出块权,都有投票奖励。办法是监督机制,如有一票多投即惩罚,增加无形成本。

贿赂攻击,投票权可以转让,灵活且寻租空间,给与作恶者更多的操作空间,可以用非常低的成本买到更多的投票。

YupvkR99M8w3nMPRjToSK3sugECmptCGMWwOHi4K.jpeg

长程攻击,投票权的复用问题。A拥有 10% 的币或股权,使用完投票权获得奖励后,将该部分的币或股权卖掉,再把其对应的私钥卖给作恶者。而作恶者通过收集 50% 甚至更高比例的私钥来完全或部分覆写,重新创建一条从创世块开始的长区块链分支,做出新的区块代替诚实节点的块(回滚),从而取代主链。解决办法:保证弱活跃性,每隔一段时间查看并同步主链最新状态。锁定押金,并限制回滚长度。

因此 POS 设计初衷基于安全假设,每个人都是理性的诚实人:1、他们不会提前告诉别人自己有投票权;2、投票以后要把当轮的私钥删掉,不能卖给别人;3、他们还必须定期上线去同步一下状态,算一下接下来的一段时间内自己是不是有投票权,如果有的话还要按时上线投票。

—-

编译者/作者:比德财经

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...