区块链与石墨烯技术(DPOS)

2018-05-15  本文已影响0人  Goodluck_e1a1

石墨烯技术是DPOS的共识机制。

下面以EOS为例详细阐述石墨烯技术的原理、优势及劣势。

EOS的最大的创新之处在于其应用了石墨烯技术。石墨烯技术具体是指EOS调整了支撑BTC和ETH的工作量证明(POW)的共识机制,而采用DPOS(DelegatedProof Of Stake, 股份授权证明机制)的共识机制。

DPos共识机制

在POW模式下,所有节点都有机会赢得记账权,节点间是通过相互竞争,谁先破解出答案,就可以获得记账权。获得记账权的概率与节点的算力成正比。

而DPOS的模式,是改为由所有该链的token的持有者,选举出一定数量的节点,然后由这些节点协作,轮流进行记账

在EOS的DPOS模式下,所有EOS token的持有者,可以根据其持有的EOS的数量1:1获得选票,投票选出21个区块生产者(见证人)。然后由这21个区块生产者,相互协作,按照一定的顺序,轮流进行记账。出块间隔为3秒一个大区块。此外,这21个区块生产者,不仅记账,还需要提供EOS全链所需要的计算和网络资源(包括CPU、内存、存储容量等等)。

如果其中某个区块因为断网等原因暂停了出块,那么会发生跳块,下一个记账节点仍会跟上继续记账。这样的机制保障了哪怕最后只有一个节点在工作,整个系统仍然可以工作下去,然后继续选择新的节点从而保证运行稳定

如果在过程中产生了分叉,DPOS仍然采用的是最长链原则,并且约定每个节点不能同时在两个链上出块(否则节点将被判定为违规,且失去资格),这使得当产生分叉之后,最多过一半见证人节点总数的高度之后(在EOS里是11个区块高度),就只会保留一条链了。

另外,DPOS下还有不可逆原则,一旦某个区块后面跟随了超过2/3总见证人数量的区块,则该区块进入不可逆状态,等于确认了该区块是主链中的区块的地位,之后再也不可回滚回该区块之前的区块进行分成,否则视为违规。因为每个节点最多同时参与一条链,所以只可能同一个高度的区块只可能存在一个不可逆的区块,这更加保证了区块的安全性防止恶意攻击及恶性分叉。一般来说,在21个区块产生节点的模型里,15个区块(15/21>2/3)进入不可逆状态的时间(即交易100%安全)为45秒

因此,DPOS的优势在于:

    解决了POW模式下,消耗大量电能的问题。

节点由竞争改为协作,并且只有21个节点,更加容易迅速的达成共识,有利于提升主链的性能(TPS)

不会产生硬分叉,因为节点也会遵循最长链原则,并且每个节点不能同时参与两条链。所以,当产生分叉之后,最多过一半见证人节点总数的高度之后(在EOS里是11个区块高度),就只会保留一条链了。每次系统大升级也不会导致硬分叉,只需要让所有见证人节点同时升级即可。

安全性更强,要控制超过2/3的节点才能够将错误的区块定为不可逆状态。

确认速度非常快

但是DPOS的问题在于,实质上,DPOS并不是去中心化的,而是弱中心化的。并且,随着这些见证人节点存在的时间的推移,由于参与记账的奖励,会使得中心化程度越来越高。这对整个社群可能是潜在的风险。根据以往基于DPOS模式的项目,例如BitShares和Steemit来看,确实最终的中心化程度非常高,有一段时间绝大部分的见证人实际上是BM自己或受BM控制的节点。

再做一个衍生,EOS在基础的石墨烯技术上还做了提升,并不仅仅是DPOS共识,而是升级为DPOS+BFT的共识机制。

BFT(拜占庭容错机制)及不可逆状态

此外,为了实现秒级确认的性能,在前述DPOS此基础上,EOS还做了一些改进。

EOS为了提高区块确认的速度,还提出了小区块的概念,并且加入了拜占庭容错机制(BFT)和不可逆状态

EOS每3秒出一个大块,而目前EOS团队又提出一个方案,将3秒的区块继续分割成间隔为0.5秒的若干小块,这些小块之间不切换记账权。每一个小块一出来之后,就会马上广播。这样的设计可以使得区块更加快速得到确认的同时,尽可能减少因为网络延迟而产生的分叉影响。

此外,EOS还引入了BFT的机制:每当一个小区块在区块链网络内被广播时,其余节点将会立即对这个区块进行确认。经过2/3节点确认的区块将会进入不可逆状态。在这个共识机制下,安全确认的时间为0.5s(区块间隔)+0.3s(区块传播延时)<1s,从而到了秒级的确认性能。此外,如果将小块的出块间隔继续分割,理论上确认所需要的时间,会约等于区块传播的网络延时,甚至可以小于0.5秒。

此外,恶意攻击,除非控制了超过2/3的节点,否则无法恶意区块进入不可逆状态。这里特意提一下,如果恶意节点控制了超过1/2但小于2/3的节点,由于恶意区块不会进入不可逆状态,这样可以留给其它观察者节点和见证人节点足够的时间,将恶意节点投票出局。因此,这种模式也极大的提升了安全性

石墨烯是区块链工具组,由比特股团队cryptonomex开发,采用C++编写,丹尼尔•拉里默(Dan Larimer)是 Cryptonomex 的创始人。并发能力比较强,基于石墨烯底层的BTS和STEEM却可以达到1.5S的平均确认速度和有限条件下实测3300TPS的数据吞吐量,EOS通过并行链的方式,最高可以达到数百万TPS,并且并行本地链甚至可以达到毫秒级的确认速度。与大多数数字货币类似,Graphene (石墨烯) 使用区块链来记录参与者的转账信息及市场行为。由于每个区块总是指向前一个区块,因此一个区块链条包含了所有在网络上发生的交易信息。区块链是一个公开的、可审计的账簿,每个人都能够查看详细数据,并验证交易、市场订单和买卖盘数据。Graphene (石墨烯) 旨在实现一种区块链技术或协议。当其与具体的区块链整合后,如Gamechain System,其本身逐渐进化为一种生态系统。目前来说,使用石墨烯技术的区块链应用还不是很多,最近看到GCS游戏链,介绍是是全球游戏产业第一公链,游戏界的EOS,拥有石墨烯2.0技术,挺快的,想了解的可以去看看

作者:区块链朋克

链接:https://www.zhihu.com/question/66199007/answer/347746453

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

上一篇下一篇

猜你喜欢

热点阅读