欧意最新版本
欧意最新版本app是一款安全、稳定、可靠的数字货币交易平台。
APP下载 官网地址
不可能三角与共识机制
区块链不可能三角是由巴比特创始人长峡先生最早提出来的,所说的原理是:去中心化、安全、环保构成一个不可能三角形,设计一个符合其中两个特性的数字货币,则必然会使得第三个特性无法达成。例如设计一个既环保又安全的密码学货币,它必然是中心化的。
当时出现了很多采用其他共识机制而诞生的数字货币,例如PPcoin、Nextcoin、Ripple等,使得pow的共识机制在比特币社区也饱受争议,多数否定pow共识机制的社区成员认为这种共识机制是在浪费世界电力在做着无用的数学计算。而关键的是,中本聪在白皮书里对比特币共识机制的选择上并没有给出解释,pos即将取代pow的呼声愈演愈烈。
在这种情况之下,长峡先生提出了这个不可能三角的理论,用博弈论解读pos必然导致中心化的结果。我不否定pow,也不否定pos,但在不同的token机制下,其实有着不一样的取舍。我们都知道,跨地域、跨国家的银行间转账除了要付出很高的手续费之外,国与国之间的货币结算其实成本也是很高的,目前主要采用飞机运输的方式,按月进行结算。其次在各个商业银行将自己的储备货币发放到各个分支银行的过程中也是花费了大量的人力和物力,这其实是货币本身的属性造成的。货币在去中心化、安全、环保这三种特性中,最重要的是安全,其次才是效率。而比特币利用pow的共识机制,耗费了巨大的电力最大程度地保证了货币的安全特性,并同时兼容去中心化。在货币属性的架构搭建来说已经是最优解,而类似ripple这类以牺牲去中心化而提升效率的做法则更适用于结算。
而eos采用的dpos共识机制也是饱受争议,大家认为21个主节点的运行完全没有施行区块链去中心化的特点。但是各位得想一想,在这个不可能三角的框架下,对于智能合约这种商业的产品,是效率更加重要还是去中心化更加重要,相信在不同人的心里已经有了答案了。所以或者我们无法确认到底哪些共识机制最好,但我们可以在不同的应用场景和不同的token属性中找到那个最优的一种。
共识机制可以判定上层业务逻辑吗?
要理解共识机制,首先需要明白什么是共识。我们生活在一个多元化的世界,不存在一模一样的两片树叶,也没有完全相同的两个人。所谓共识,就是一群具有各方面差异性的人在某方面达成了一致意见,并将其上升成为共同遵守的规则。
人类文明的发展与繁荣离不开社会群体内个体间的分工协作,而如何分工,如何决策,如何分配成果并奖惩,则全都仰赖一个公认的的规则,或者叫共识。所谓共识机制指的是一个群体用以达成并维护共识的方式,共识机制往往决定着群体的组织形式。人类文明的早期阶段,武力是各群体建立和维护共识规则的主要方式,人类依托武力建立了部落、国家等中心化管理权威,制定了中心化的管理规则并惩罚不接受规则的个体。
当然,随着文明的发展与演进,我们开始制定法律、设计选举、引入协商与仲裁机制,这成了公司、协会、政府、学校等社会团体达成与维系共识的方式,但这一切文明做法的背后依旧仰赖庞大的国家暴力机器支撑。人类文明选择通过武力建立中心化权威以构建与维护群体共识,不仅因为在文明早期这一方式最为快捷,更由于依靠中心化权威的管理方式更加高效和稳固。然而,中心化并非唯一可行的方案,只要我们能够提出一种同样安全稳固便捷而并无需依托中心化权威的共识机制,同样可以建立一套与之相对应的全新组织形式。
区块链技术的出现恰恰提供了这样的选择,只不过这套去中心化逻辑所依托的并非现实世界而是相对轻量化的网络环境。共识机制作用的对象也不是个人而是一台台所属权各异的计算机,通过区块链共识机制的应用,可将分散在世界各处的计算机集合至一个统一的网络实现大规模的机器协作,下面我们将从技术的角度对区块链的共识机制进行详细拆解。
区块链作为一种点对点的协作网络,其原理是各节点均掌握一个独立的账本,通过保持账本同步来实现共同记账,而在没有一个中心进行指挥和协调同时网络状态复杂多变的情况下,如何保证空间上完全分散的各节点账本能够完全相同,这就要用到区块链的共识机制了。
以比特币为例,我们尝试来讨论一个典型的区块链系统的账本记账过程,其公共账本上记录着比特币网络中每时每刻都在发生的转账交易,但这些转账信息并非即刻被写入账本,而是每隔一段时间进行一次统一记账。每次记账会在账本上新生成一个区块,区块中不仅记录了若干条转账记录,还包含了诞生时间、上一个区块摘要等内容,通过这种方式,账本上各个区块间可依照时间顺序形成链状结构。
之所以选择这种区块式的记账方式而非所有节点即时记录所有信息,是由于在整个去中心化的系统中,考虑到不同节点间网络状态以及空间位置的差异,无法做到数据完全同步,通过结构化数据包的方式可以保证各节点记录结果的正确性。
而对于每一个新生的区块,基于几乎同样的原因,各节点分别记录的方法并不足以保障账本的唯一性。针对这一问题,区块链网络中所选择的应对方法是采取某种可自动执行的竞争手段选中一个唯一节点首先打包数据生成区块并记录到自身账本,然后由这个被选中的节点将新生产的区块数据通过互联网通知其他节点,其他节点在收到信息并验证区块无误后,同步记录在自己的账本上,以上就是一次完整的去中心化的分布式记账过程。
共识机制在这个过程中重点解决两个问题:一是完全对等的节点之间如何竞争记账权,区块链技术发展至今,已经有多种竞争记账权的办法,我们稍后详细介绍。第二个可能情况是在实际操作中,由于网络延时等原因,偶尔会出现两个节点均认为自己获得了记账权而去打包区块并通知其他节点,其他节点会将首先收到的通知记录下来而忽略另一个,考虑到两次通知时间间隔较小,必然会造成所有节点账本的写入不一致。对于这种情况,区块链网络的解决办法是暂时性接受这种链条分叉的状态,根据后续若干区块打包节点的记录为准。这种保留最长链的方式能够保证在复杂网络环境下多节点依然能够记录一个权威的账本。
现存独立的区块链网络有上百条,所用的共识机制大同小异,主要区别体现在上文的所述竞争记账方法,因而我们常常也用竞争记账的方式来命名不同的区块链共识机制。最为常见的有POW、POS、DPOS等。
POW(工作量证明)被比特币、以太坊等很多币种采用,其竞争记帐逻辑是各个节点竞争计算一个随机数,要得到这个随机数,必须经过一定的工作量。这一方法简单粗暴却极为有效,但常常因为耗费能源、易节点集中而被诟病。
POS(权益证明)则是通过节点持有代币的数量乘以持有时间分配记账权益,记账权益越高获得记账权概率越大,这种竞争方法的实现对于技术要求较高,且容易成为富翁节点的游戏。
DPOS(股份授权证明)共识机制的竞争记账逻辑类似于人民代表大会制度,代币持有者拥有相应额度的投票权,投票选出的节点拥有轮流记账权。采用DPOS的区块链项目最为著名的是EOS,这一共识机制最显著优势在于效率极高同时更加符合目前人们的接受习惯,但劣势同样明显,主要体现在中心化程度最高,很多人认为其违背了区块链的初衷。
区块链网络的实质目标在于让去中心化网络系统中各节点协同合作维护共同账本,共识机制的存在从技术层面解决了可行性问题,但在实际应用中,如何让节点主动参与记账同样关键。下一篇文章重点介绍区块链中的激励机制,共识机制与激励层搭配可以共同维持区块链网络的稳定有序运行
各DPoS公链,节点竞选机制对比
目前DPoS共识机制公链的代表主要为:EOS(柚子)和TRON(波场)。下面以已经开启节点竞选的EOS、TRON、GXChain为例,整理对比各家公链的节点竞选机制。
从通证的用途可以看出,发展初期,各家公链都选择创建一个组织(基金会)来推动公链的发展,而不是完全的去中心化。其中EOS通证总量的90%已经通过公募发行,筹码更加分散。
各家公链的治理结构可以分为两部分,一部分是以节点、备选节点为代表的线上治理结构;一部分是以基金会为代表的线下治理结构,两部分有机组合,共同完成公链的治理。
治理奖励来源,各公链的选择也有所不同,EOS由于前期90%的通证已经通过公募发行,故EOS选择每年增发1%-5%的EOS,作为治理奖励,而这也会导致EOS的通胀;而TRON和GXChain则选择有基金会提供这部分治理奖励,由于基金会所持有的通证也是有限的,若干年之后治理奖励从哪里来,成为基金会们后续需要考虑的问题。
DPoS治理机制中,出块节点主要负责记账工作,备用节点则是整个治理系统的冗余,保证在出块节点出现问题时,可以有足够数量和质量的备用节点可以短时间内接替出块节点的工作。所以在治理奖励中,在保证出块节点利益的同时,也需要考虑到备选节点的利益。
DPoS治理机制中,除了激励节点外,还需要激励持有通证的社区用户。理论上公链治理的越好,社区用户持有通证的价值就会增加,已经是对于参与投票的社区用户的激励了。但是具体实行过程中发现,上述激励的手段并不足以激励社区用户踊跃投票(参考EOS节点投票前期,投票比例不足)。所以TRON做出的一些新的尝试,用户参与投票,可以和节点平分投票奖励,来增加社区用户投票的积极性。

区块链常见的三大共识机制
区块链是建立在P2P网络,由节点参与的分布式账本系统,最大的特点是“去中心化”。也就是说在区块链系统中,用户与用户之间、用户与机构之间、机构与机构之间,无需建立彼此之间的信任,只需依靠区块链协议系统就能实现交易。
可是,要如何保证账本的准确性,权威性,以及可靠性?区块链网络上的节点为什么要参与记账?节点如果造假怎么办?如何防止账本被篡改?如何保证节点间的数据一致性?……这些都是区块链在建立“去中心化”交易时需要解决的问题,由此产生了共识机制。
所谓“共识机制”,就是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;当出现意见不一致时,在没有中心控制的情况下,若干个节点参与决策达成共识,即在互相没有信任基础的个体之间如何建立信任关系。
区块链技术正是运用一套基于共识的数学算法,在机器之间建立“信任”网络,从而通过技术背书而非中心化信用机构来进行全新的信用创造。
不同的区块链种类需要不同的共识算法来确保区块链上最后的区块能够在任何时候都反应出全网的状态。
目前为止,区块链共识机制主要有以下几种:POW工作量证明、POS股权证明、DPOS授权股权证明、Paxos、PBFT(实用拜占庭容错算法)、dBFT、DAG(有向无环图)
接下来我们主要说说常见的POW、POS、DPOS共识机制的原理及应用场景
概念:
工作量证明机制(Proof of work ),最早是一个经济学名词,指系统为达到某一目标而设置的度量方法。简单理解就是一份证明,用来确认你做过一定量的工作,通过对工作的结果进行认证来证明完成了相应的工作量。
工作量证明机制具有完全去中心化的优点,在以工作量证明机制为共识的区块链中,节点可以自由进出,并通过计算随机哈希散列的数值解争夺记账权,求得正确的数值解以生成区块的能力是节点算力的具体表现。
应用:
POW最著名的应用当属比特币。在比特币网络中,在Block的生成过程中,矿工需要解决复杂的密码数学难题,寻找到一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。这期间需要经过大量尝试计算(工作量),计算时间取决于机器的哈希运算速度。
而寻找合理hash是一个概率事件,当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block Hash。在节点成功找到满足的Hash值之后,会马上对全网进行广播打包区块,网络的节点收到广播打包区块,会立刻对其进行验证。
如果验证通过,则表明已经有节点成功解迷,自己就不再竞争当前区块,而是选择接受这个区块,记录到自己的账本中,然后进行下一个区块的竞争猜谜。网络中只有最快解谜的区块,才会添加的账本中,其他的节点进行复制,以此保证了整个账本的唯一性。
假如节点有任何的作弊行为,都会导致网络的节点验证不通过,直接丢弃其打包的区块,这个区块就无法记录到总账本中,作弊的节点耗费的成本就白费了,因此在巨大的挖矿成本下,也使得矿工自觉自愿的遵守比特币系统的共识协议,也就确保了整个系统的安全。
优缺点
优点:结果能被快速验证,系统承担的节点量大,作恶成本高进而保证矿工的自觉遵守性。
缺点:需要消耗大量的算法,达成共识的周期较长
概念:
权益证明机制(Proof of Stake),要求证明人提供一定数量加密货币的所有权。
权益证明机制的运作方式是,当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。权益证明机制根据每个节点拥有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,从而加快了寻找随机数的速度。
应用:
2012年,化名Sunny King的网友推出了Peercoin(点点币),是权益证明机制在加密电子货币中的首次应用。PPC最大创新是其采矿方式混合了POW及POS两种方式,采用工作量证明机制发行新币,采用权益证明机制维护网络安全。
为了实现POS,Sunny King借鉴于中本聪的Coinbase,专门设计了一种特殊类型交易,叫Coinstake。
上图为Coinstake工作原理,其中币龄指的是货币的持有时间段,假如你拥有10个币,并且持有10天,那你就收集到了100天的币龄。如果你使用了这10个币,币龄被消耗(销毁)了。
优缺点:
优点:缩短达成共识所需的时间,比工作量证明更加节约能源。
缺点:本质上仍然需要网络中的节点进行挖矿运算,转账真实性较难保证
概念:
授权股权证明机制(Delegated Proof of Stake),与董事会投票类似,该机制拥有一个内置的实时股权人投票系统,就像系统随时都在召开一个永不散场的股东大会,所有股东都在这里投票决定公司决策。
授权股权证明在尝试解决传统的PoW机制和PoS机制问题的同时,还能通过实施科技式的民主抵消中心化所带来的负面效应。基于DPoS机制建立的区块链的去中心化依赖于一定数量的代表,而非全体用户。在这样的区块链中,全体节点投票选举出一定数量的节点代表,由他们来代理全体节点确认区块、维持系统有序运行。
同时,区块链中的全体节点具有随时罢免和任命代表的权力。如果必要,全体节点可以通过投票让现任节点代表失去代表资格,重新选举新的代表,实现实时的民主。
应用:
比特股(Bitshare)是一类采用DPOS机制的密码货币。通过引入了见证人这个概念,见证人可以生成区块,每一个持有比特股的人都可以投票选举见证人。得到总同意票数中的前N个(N通常定义为101)候选者可以当选为见证人,当选见证人的个数(N)需满足:至少一半的参与投票者相信N已经充分地去中心化。
见证人的候选名单每个维护周期(1天)更新一次。见证人然后随机排列,每个见证人按序有2秒的权限时间生成区块,若见证人在给定的时间片不能生成区块,区块生成权限交给下一个时间片对应的见证人。DPoS的这种设计使得区块的生成更为快速,也更加节能。
DPOS充分利用了持股人的投票,以公平民主的方式达成共识,他们投票选出的N个见证人,可以视为N个矿池,而这N个矿池彼此的权利是完全相等的。持股人可以随时通过投票更换这些见证人(矿池),只要他们提供的算力不稳定,计算机宕机,或者试图利用手中的权力作恶。
优缺点:
优点:缩小参与验证和记账节点的数量,从而达到秒级的共识验证
缺点:中心程度较弱,安全性相比POW较弱,同时节点代理是人为选出的,公平性相比POS较低,同时整个共识机制还是依赖于代币的增发来维持代理节点的稳定性。
什么是dpos机制?
DPOS:Delegated Proof of Stake,委任权益证明
PS:关于此协议的详细内容,可以参考最新的博文《[区块链]DPoS官方共识机制(BTS/EOS)详解》
比特股的DPoS机制,中文名叫做股份授权证明机制(又称受托人机制),它的原理是让每一个持有比特股的人进行投票,由此产生101位代表 , 我们可以将其理解为101个超级节点或者矿池,而这101个超级节点彼此的权利是完全相等的。从某种角度来看,DPOS有点像是议会制度或人民代表大会制度。如果代表不能履行他们的职责(当轮到他们时,没能生成区块),他们会被除名,网络会选出新的超级节点来取代他们。DPOS的出现最主要还是因为矿机的产生,大量的算力在不了解也不关心比特币的人身上,类似演唱会的黄牛,大量囤票而丝毫不关心演唱会的内容。
dpos的中文名称是
dpos的中文名称是共识机制。
所谓“共识机制”,是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,我们就可以认为全网对此也能够达成共识。
再通俗一点来讲,如果中国一名微博大V、美国一名虚拟币玩家、一名非洲留学生和一名欧洲旅行者互不相识,但他们都一致认为你是个好人,那么基本上就可以断定你这人还不坏。
区块链作为一种按时间顺序存储数据的数据结构,可支持不同的共识机制。共识机制是区块链技术的重要组件。区块链共识机制的目标是使所有的诚实节点保存一致的区块链视图,同时满足两个性质:
1)一致性。所有诚实节点保存的区块链的前缀部分完全相同。
2)有效性。由某诚实节点发布的信息终将被其他所有诚实节点记录在自己的区块链中。