Top
首页 > 正文

POS&DPOS中ECOC轻链或将引领科技潮流

PoS一致性算法中的另一个弱点和问题是50%+ 1所有权攻击。如果一个人,团体或实体控制区块链中超过一半的硬币,他们就可以向链条写任何东西,甚至改变它的历史。这种攻击类似于PoW的“ 民主 ”攻击(> 50%的哈希能力)。
发布时间:2019-07-04 14:11        来源:凤凰网        作者:

POS&DPOS中ECOC轻链或将引领科技潮流

在区块链聚会期间与一些人讨论后,我决定写这篇文章来阐明两种共识算法是如何不同的,因为仍然存在很多混淆,特别是当涉及dPoS(委托的证明证明)时。在聚会中的每个人都有这样的印象,即dPoS的一致性算法是PoS的变化。

事实是,协议不仅完全不同,而且还要求完全不同的链架构。当然,就像每个共识算法一样,它们都有自己的优点和缺点。

什么是POS?

让我们从PoS开始吧。

PoS具有构建区块链的质量,无需消耗电力或使用特殊硬件。它模仿了工作量证明(PoW)结构。但是,链中的每个节点都是一个利益相关者(也就是说,它拥有链中的一些原生硬币),并试图通过使用其公共账户中的余额来“赢得”创建下一个区块的权利。 。

这种共识架构伴随着风险的权衡:安全性。

POS安全问题和漏洞

安全问题源于在PoS协议中链内没有数学证明的事实。因此,从genesis块开始,任何人都可以花费较少的电力并生成一个“有效”的全新链(即,它遵循PoS协议)。

已经连接到区块链的对等体和节点知道上述链是无效的。但那些刚加入区块链并碰巧连接到无效链的人呢?他们无法知道哪条链是有效的,哪条链不是。

一个问题是“ 短程攻击 ”(也称为“贿赂攻击”)。在这种情况下,攻击者进行大型初始事务并开始构建备用链。替代链从原始链的分支开始,在包含其支付的链之前一个块。这样,初始交易甚至不会包含在替代链中。新分支是保密的,只有在攻击者成功产生比主链更长的链时才会发布。现在,替代链被认为是“有效的”并被所有节点接受,因为它是区块链中最长的链。

PoS一致性算法中的另一个弱点和问题是50%+ 1所有权攻击。如果一个人,团体或实体控制区块链中超过一半的硬币,他们就可以向链条写任何东西,甚至改变它的历史。这种攻击类似于PoW的“ 民主 ”攻击(> 50%的哈希能力)。

PoS安全问题是一个复杂的问题,需要一整套自己的文章。

由于PoS类似于PoW,因此可以有许多节点连接到区块链。PoS链可以真正分散(数千个具有对称角色的节点)。

什么是DPOS?与POS有何不同?

第一个主要区别是共识算法:利益相关者无法直接创建新块。他们委派他们的权利并投票超级节点。这些节点(也称为“代表”)是链中唯一能够形成新块的节点。

通过拥有超级节点,默认情况下,节点的角色变得不对称,这意味着所有对等体都可以读取整个链,但只有少数实际上有权在其上写入(创建新块)。这为链提供了以下属性:

少量节点可以形成新块

终局

能够快速创建块。甚至可以不到十秒钟

克服PoS安全问题但存在其他安全问题

许多人声称更高的TpS(每秒事务数)

让我们稍微分析一下这些特征。

让我们从终极性开始(b)。最终意味着不能进行任何分叉或复制。该块是最终的,链不能有分支(叉)。理论上,不需要确认。这个属性被dPoS传道者宣传为优势。但终极性可能是一件非常危险的事情。具有终结性的链可以从称为“阻塞”的单个攻击中丢失其所有存储的数据(哈希),其中攻击者可以在创建下一个块时更改整个链。

dPoS能够以非常快的速率创建新块(c),因为节点不多; 他们彼此“认识”; 如果它们位于地理位置上彼此非常接近(创建低延迟),那么几秒就足以达成共识并形成一个新的块。

这是dPoS的最强点:快速创建块。它们对于真正需要它的某些应用程序(例如金融机构的应用程序)至关重要。

说到安全性,让我们检查(d)。我们无法深入分析所有内容,因为它太耗费时间,但我们可以说dPoS不会遭受短期或长期攻击。它使用BFT(拜占庭容错)算法达成共识。

BFT有两个大问题。首先是安全问题。我们稍后会提到第二个问题(它与集中化有关)。在最好的情况下,BFT是2f + 1,这意味着控制33%+ 1硬币的人可以成功攻击链。通过成功,我们的意思是他可以改变整个链条。不只是扭转一些块,而是改变整个链!这是我们上面提到的最终财产。

机制如下。当恶意节点具有成为广播者的能力时,它同样(向不同的节点组)广播两个不同的快照。因此1/3的节点将接收快照“A”而另一个1/3“A”。当代表“投票”达成共识时,广播公司投票A(或A')。这为攻击者提供了66%+ 1的大多数,他们可以成功地形成一个新的链,其中每个块可以与原始块不同。

另一个安全问题是基于可以形成块的节点数量少的事实。有人可以轻松地向这些节点发起拒绝服务攻击。实际上,并非所有节点都需要成为此攻击成功的目标。如果攻击者成功击倒代表硬币持有者三分之一的节点,那么链条就会出现; 它无法生成下一个块。执行此类攻击不需要专门的工具或设备。有足够的带宽就足够了。

关于吞吐量,转换为更高的TpS (e),我们认为如果块限制很高,PoW和PoS也可以实现非常高的TpS。真正的问题不是TpS限制,而是链的总大小。当您考虑可扩展性时,一个巨大的链条实际上是无用的。与当前技术的网络功能相比,不合理的总大小禁止普通用户使用链并成为节点(甚至是对等)。只有使用受信任的第三方才能使链的使用成为可能。

但这导致了一个几乎完全集中的系统。在这个问题面前,PoW,PoS和dPos同样无望。唯一的解决方案是总尺寸必须保持合理的尺寸,并随着技术的发展而成长。

最后,我们必须参考dPoS的最薄弱点。它是少量节点。为什么dPoS不使用多个节点?因为它的一致性算法。

要使BFT工作,所有节点必须相互通信。当然,该协议可以容忍网络故障,但总容差不能超过1/3。如果网络故障超过1/3,节点将永远不会达成共识(网络故障在我们的世界中成为现实)。

如果节点的数量为n,则它们之间的连接为n *(n-1)。这意味着O(n ^ 2)时间。

现在很清楚,即使是少数n个(100个或更多)节点,网络也变得慢得多(块的创建时间短,TpS低)。

通常,dPoS体系结构使用大约20个节点来保持快速块创建的好处并具有高TpS能力。

节点数量较少有问题吗?

为什么节点数量有问题?它会产生安全问题(例如我们已经讨论过的DdoS)。最重要的是,拥有少量节点并不能使其成为真正的公共链。

该链实际上是一个联盟链 - 在某些极端情况下,节点在同一实体的控制之下 - 一个私有区块链。

从技术上讲,它仍然是区块链。问题是它在现实世界中失败了使用链条的目的。如果它是集中的,那么开发人员创建新应用程序就没有好处。该应用程序将保持集中。在这种情况下,应用程序选择使用自己的数据库(并发或独立),避免额外的成本和速度损失。

POS与DPOS相结合

让我们概括一下:

PoS可用于分散链。dPoS不能。

PoS和dPoS存在安全问题,但性质完全不同。

PoS和dPoS都可以实现高TpS,但会出现严重的可扩展性问题。

dPoS可以提供非常快的块创建时间(假设节点很少并且彼此接近)。对于PoS,如果不将其安全性降低到不可接受的水平,就不可能实现这一目标。

dPoS具有终结性(不可能分叉)。这是好事和坏事。PoS没有这个属性。

这些是重点。我希望我澄清了PoS和dPoS之间的主要区别。作为结论,对于完全分散的系统,不能使用dPoS(不幸的是)。

专题访谈

合作站点
stat