美文网首页区块链
由浅入深学通证经济013

由浅入深学通证经济013

作者: 珞珈山神 | 来源:发表于2018-12-11 07:48 被阅读767次

    区块链 PoS 共识——Tendermint

    今天,我们来讲一下Tendermint。作为传统的数字加密货币,比特币和以太坊使用了PoS 共识机制来保障区块链网络安全有效的运行,在这种共识机制中,出现了一个新的共识算法的软件——Tendermint。

    Tendermint的出现在早期的数字货币诞生之后,它拥有比传统的工作量证明协议更为安全和高效地性能。最初,Tendermint在实现共识算法之外,还同时拥有自己的数字货币——用户需要交纳保证金充当违反协议的罚款,因此,它也是另一种总意义上的股权证明协议。之后,Tendermint逐渐演变为区块链共识引擎,即插即用,替代原有的共识模块,允许所有用户主机作为节点加入分布式网络。

    事实上,Tenermint基于拜占庭容错算法,用于在多台主机上同步同一个应用程序,保证数据的一致性。一方面,Tenermint对安全性能有了更高的保障,网络中即使有三分之一的机器出现故障无法工作,在Tenermint中依然能够正常运行。另一方面,Tenermint保证了不同主机之间数据的高度一致性,正常运行的主机之间拥有相同的交易日志并计算出相同的状态。事实上,安全和一致性这两个问题是分布式系统的基本问题,在很多场景尤其是货币系统中发挥着关键的作用。

    Tenermint由共识引擎(Tendermint Core)和应用区块链接口(Application BlockChain Interface)两部分组成。

    其中,共识引擎(Tendermint Core)是Tenermint的核心内容,是一种ABCI规范下的socket 通信协议,它是POS共识算法和拜占庭容错算法相结合的产物,保证在所有节点上交易记录都能够进行一致性排序。

    应用区块链接口(Application Block Chain Interface)简称为ABCI,是一个通用接口,能够支持多种编程语言对交易进行处理。在实际处理中,开发人员不需要直接对区块链和共识算法直接进行操作,因为大部分区块链和共识方案已经被封装成内置状态机,通过Tendermint就可以实现状态机的复制,并且,Tendermint拥有友好的开发环境,支持任意编程语言的编码。

    在比特币加密系统中,区块链系统中的所有节点共同维护一个数据库。如果在Tendermint实现一个这样的系统,Tendermint可以提供以下功能:一是使所有节点共享区块数据和交易数据,二是为所有交易进行一个不可更改的顺序。同时,Tendermint为应用进程和共识进程提供接口进行通信,将巨大的区块链应用软件分解成拥有独立功能的组件。在接口通信中,DeliverTx、CheckTx、Commit三种消息同于实现通信功能:

    DeliverTx消息用于传递区块链中的交易信息,经过验证通过的消息会被存入数据库。

    CheckTx消息用于验证区块链中的交易信息,验证交易信息是否有效,有效则继续转发。

    Commit消息用于加密计算,计算当前应用的加密保证并将其放入下一个区块头。

    接下来,我们来简单看一下Tendermint的共识方法,如图所示。

    在Tendermint中,validator被称为验证人,他们是协议的参与者,验证人的活动是提议和投票。验证人的提议和投票是对区块发起的,如果提交成功区块将作为新的数据区块链接到区块链上,每个区块在链上占据一个高度,并且该位置相对其他区块的绝对位置固定。如果提交失败,则继续由新的验证人进行下一轮提交,仍然提交同一高度的区块。在区块提交之前,需要进行预投票和预提交两个操作,当超过三分之二的验证人对该区块进行了预投票(一个波卡)就可以证明一个预提交操作,只有超过三分之二的人对该区块进行了预提交操作,这个区块才能进行提交操作。

    但是,完成了预投票和预提交并不意味着提交一定成功,离线和网络速度都可能造成提交区块失败。在进行投票操作之前,存在一段等待时间用于验证人从当前提议者处接收提议块。这种机制的存在使得Tendermint不再是一个异步协议,而是具有了一定的同步协议色彩,但是,协议除此之外的部分仍然是异步协议,当接收到超过三分之二的验证人消息时,该验证人才会继续进行下面的操作。

    Tendermint依然对安全性能有较好的保障。为了保证验证人不会进行冲突块的提交操作,Tendermint制订了锁定协议,当验证人对一个区块进行预提交,他就会在该区块上被锁定,只有满足条件解锁后才能继续为下一轮的新区块继续进行提交。

    关于Tendermint的知识我们就讲到这里啦。

    相关文章

      网友评论

        本文标题:由浅入深学通证经济013

        本文链接:https://www.haomeiwen.com/subject/kcidhqtx.html