天天小说网

第六节 Ripple—联盟共识

Ripple的共识同样形成于一个具有一定信任前提的网络,因此被归类为一种联盟共识。所有的Ripple网络参与节点都能够共享候选交易信息,包含有候选交易信息的开放账本(Open Ledger)通过广播发送至各个验证节点,由Ripple的共识机制将候选交易经过多轮确认,最终形成最新闭账本(Last-Closed Ledger)作为确定的账本记录。

Ripple共识机制中,所有的验证节点需要事先具备不会合谋作恶的信任基础,但并不要求所有的验证节点不作恶。只要验证节点能够保证不会持续合谋,就能够确保其共识机制的持续有效运行。所有节点都能够发起交易,并向全网络进行广播,但被广播到的节点并不会立即将每笔交易进行验证处理,而是排成一个序列组,按组被其他验证节点验证,一般节点仅被作为序列组的存储器,通过接收来自其他验证节点的多轮投票提案(Proposals)完成验证结果的输出。

例如,以7笔交易为一组,在59秒内节点A接收到了7笔交易,在第60秒接收到了第8笔交易,那节点A就会将前7笔交易所形成的序列组率先作为候选组进行验证,这个状态的账本就是开放账本。而第8笔交易将等待后面的9~14笔形成下一个7笔序列组。

从T×1到T×7的7笔交易将需要经过验证节点的投票提案获得验证。所有节点均保有一份验证唯一性节点列表(UNL),仅来自这个列表中的有效验证节点所提供的提案才会被节点所接受并进行处理。外部有效验证节点的提案将会对T×1到T×7这7笔交易进行投票,由于网络接收速度的原因,每一轮有效时间内可能仅有其中几笔交易获得了超过60%的投票,当这一轮结束时,若这个节点本身也是一个验证节点,则在这个验证节点中获得外部有效验证节点投票超过60%的交易将被作为提案输出给其他外部节点。经过多轮有效时间区间后,被投票超过80%的交易将被输出成为最终交易,被节点更新存储到本地数据库当中形成最新闭账本。需要注意的是,Ripple共识当中的投票提案可以是对某一笔交易的认可,也可以是否定,因此前述中所指代的投票超过60%或80%是指同样的认可累计超过了60%或80%,或者是同样的否定累计超过了60%或80%。而在形成最新闭账本时,被否定的交易将被抛弃,仅存储被认可的交易。

在开放账本状态当中,Ripple网络中的其他交易仍然可以被生成和广播,但在一个开放账本状态被确认成为最新闭账本前,这些交易都会被列入排队等待验证的状态,等待下一个或下下个验证序列组的形成。前文中提到的T×1到T×7这7笔交易有可能在一轮共识中仅6笔交易获得了80%以上的验证,剩余未达到的交易将连同下一批交易序列一起再次验证,直到结果出现。虽然Ripple是一个基于信任基础的区块链网络,但它具有原生数字代币XRP。XRP是最初由Ripple团队中心化预先生成好并进行分配的代币,所有在Ripple网络上的交易都需要消耗XRP,包括发送交易。Ripple交易的发送者与在比特币及以太坊上一样,需要消耗一定数量的XRP来使得自己的交易被验证,消耗的量相对越多,则会更早地被排入验证序列组,这种交易成本的设计也防范了网络上的DDoS攻击。

更多内容加载中...请稍候...

若您看到此段落,代表章节内容加载失败,请关闭浏览器的阅读模式、畅读模式、小说模式,以及关闭广告屏蔽功能,或复制网址到其他浏览器阅读!