区块链共识机制研究与分析

2018-08-01 09:59刘童桐中国移动通信研究院高级工程师
信息通信技术与政策 2018年7期
关键词:算力记账比特

刘童桐 中国移动通信研究院高级工程师

1 引言

如何在分布式系统中高效地达成共识是分布式计算领域的重要研究问题,正如社会系统中“民主”和“集中”的对立关系相似,决策权越分散的系统达成共识的效率越低,但系统稳定性和满意度越高;而决策权越集中的系统更易达成共识,但同时更易出现专制和独裁。区块链技术的核心优势之一,就是能够在决策权高度分散的去中心化系统中,使得各节点高效地针对区块数据的有效性和一致性达成共识。

由于点对点网络下存在较高的网络延迟,各个节点所观察到的事务先后顺序不可能完全一致。因此区块链系统需要设计一种机制,对在差不多时间内发生的事务的先后顺序进行共识,这种对一个时间窗口内的事务的先后顺序达成共识的算法被称为“共识机制”。

2 常见共识机制的技术原理

共识机制被用来决定区块链网络中的记账节点,并对交易信息进行确认和一致性同步。早期的比特币区块链采用高度依赖节点算力的工作量证明(Proof of Work,POW)机制来保证比特币网络分布式记账的一致性。随着区块链技术的发展和各种竞争币的相继涌现,研究者提出多种不依赖算力而能够达成共识的机制,例如点点币首创的权益证明(Proof of Stake,POS)共识和比特股首创的授权股份证明机制(Delegated Proof of Stake,DPOS)共识机制,以及一些分布式一致性算法如PBFT、RAFT等,这些共识机制各有优劣,应用场景也各不相同。下面对这些共识机制一一进行介绍。

(1)POW

工作量证明(Proof of Work,POW)的主要特点是将解决计算困难问题所需要的计算代价作为新加入块的凭证和获得激励收益。

中本聪在其比特币奠基性论文中设计了POW共识机制,其核心思想是通过引入分布式节点的算力竞争来保证数据一致性和共识的安全性。比特币系统中,各节点(即矿工)基于各自的计算机算力相互竞争来共同解决一个求解复杂但验证容易的SHA256数学难题(即挖矿),最快解决该难题的节点将获得区块记账权和系统自动生成的比特币奖励。

该数学难题可表述为:根据当前难度值,通过搜索求解一个合适的随机数(Nonce),使得区块头各元数据的双SHA256哈希值小于或等于目标哈希值,比特币系统通过灵活调整随机数搜索的难度值来控制区块的平均生成时间为10min左右。

一般说来,POW共识的随机数搜索过程如下:首先搜集当前时间段的全网未确认交易,并增加一个用于发行新比特币奖励的Coinbase交易形成当前区块体的交易集合。然后,计算区块体交易集合的Merkle根记入区块头,并填写区块头的其他元数据,其中随机数Nonce置零。第三步,随机数Nonce加1,计算当前区块头的双SHA256哈希值如果小于或等于目标哈希值,则成功搜索到合适的随机数并获得该区块的记账权;否则继续执行第三步直到任一节点搜索到合适的随机数为止。最后,如果一定时间内未成功则更新时间戳和未确认交易集合,重新计算Merkle根后继续搜索。

符合要求的区块头哈希值通常由多个前导零构成,目标哈希值越小,区块头哈希值的前导零越多,成功找到合适的随机数并挖出新区块的难度越大。由此可见,比特币区块链系统的安全性和不可篡改性是由POW共识机制的强大算力所保证的,任何对于区块数据的攻击或篡改都必须重新计算该区块以及其后所有区块的SHA256难题,并且计算速度必须使得伪造链长度超过主链,这种攻击难度导致的成本将远超其收益。正是由于这种机制保证了区块链的数据一致性和不可篡改性,但是同时也带来了资源浪费,甚至由于超大矿池的出现而失去了去中心的优势。

(2)POS

权益证明(Proof of Stake,POS)的主要特点以权益证明代替工作量证明,由具有最高权益的节点实现新块加入和获得激励收益。

POS共识是为解决POW共识机制的资源浪费和安全性缺陷而提出的替代方案。它的本质是采用权益证明来代替POW中的基于哈希算力的工作量证明,是由系统中具有最高权益而非最高算力的节点获得区块记账权。权益体现为节点对特定数量货币的所有权,称为币龄或币天数(Coindays)。币龄是特定数量的币与其最后一次交易的时间长度的乘积,每次交易都将会消耗掉特定数量的币龄。例如某人在一笔交易中收到10个币后并持有10天,则获得100币龄;而后其花掉5个币后则消耗掉50币龄,显然采用POS共识机制的系统在特定时间点上的币龄总数是有限的,长期持币者更倾向于拥有更多币龄,因此币龄可视为其在POS系统中的权益。

此外,POW共识过程中各节点挖矿难度相同而POS共识过程中的难度与交易输入的币龄成反比,消耗币龄越多则挖矿难度越低,越有可能成为记账节点,累计消耗币龄最多的区块将加入到主链。如果发现了一个新POS区块,币龄就会被清空为0。每被清空365币龄,将会从区块中获得0.05个币的利息(可理解为年利率5%)。节点判断主链的标准也由POW共识的最高累计难度转变为最高消耗币龄,每个区块的交易都会将其消耗的币龄提交给该区块,累计消耗币龄最高的区块将被链接到主链。POS算法使得网络的所有节点都可以参与防卫,抵御攻击,保障网络的安全性,任何敌手试图私藏一个含有比主链更多销毁币龄的区块链都需要付出更多的成本。

由此可见,POS共识过程主要依靠内部币龄和权益,而不需要消耗太多外部算力和资源,从根本上解决了POW共识算力浪费的问题,并且能够在一定程度上缩短达成共识的时间,因而比特币之后的许多竞争币均采用POS共识机制。

(3)DPOS

股份授权证明(Delegated Proof of Stake,DPOS)是POS的一个演化版本,首先通过POS选出代表,进而从代表中选出块生成者并获得收益。

DPOS共识机制的基本思路类似于“董事会决策”,即系统中每个股东节点可以将其持有的股份权益作为选票授予一个代表,获得票数最多且愿意成为代表的前101个节点将进入“董事会”,按照既定的时间表轮流对交易进行打包结算并且签署(即生产)一个新区块。每个区块被签署之前必须先验证前一个区块已经被受信任的代表节点所签署,“董事会”的授权代表节点可以从每笔交易的手续费中获得收入,同时要成为授权代表节点必须缴纳一定量的保证金,其金额相当于生产一个区块收入的100倍。授权代表节点必须对其他股东节点负责,如果其错过签署相对应的区块,股东将会收回选票,从而将该节点“投出”董事会。因此授权代表节点通常必须保证99%以上的在线时间以实现盈利目标。

显然,与POW共识机制必须信任最高算力节点和POS共识机制必须信任最高权益节点不同的是,DPOS共识机制中每个节点都能够自主决定其信任的授权节点,且由这些节点轮流记账生成新区块,因而大幅减少了参与验证和记账的节点数量,可以实现快速共识验证。

(4)RPCA

瑞波共识算法(Ripple Protocol Consensus Algorithm,RPCA)是一种数据正确性优先的网络交易同步算法,它是基于特殊节点(也称“网关”节点)列表达成的共识。在这种共识机制下,必须首先确定若干个初始特殊节点,如果要新接入一个节点,必须获得51%的初始节点的确认,并且只能由被确认的节点产生区块。

瑞波共识机制的工作原理如下:第一步,验证节点接收存储待验证交易,将其存储在本地。本轮共识过程中新到的交易需要等待,在下次共识时再确认。第二步,由活跃信任节点发送提议。信任节点列表是验证池的一个子集,其信任节点来源于验证池,参与共识过程的信任节点须处于活跃状态,验证节点与信任节点间存在保活机制,长期不活跃节点将被从信任节点列表删除。信任节点根据自身掌握的交易双方额度、交易历史等信息对交易做出判断,并加入到提议中进行发送。第三步,本验证节点检查收到的提议是否来自信任节点列表中的合法信任节点,如果是,则存储;如果不是,则丢弃。第四步,验证节点根据提议确定认可交易列表,假定信任节点列表中活跃的信任节点个数为M(比如5个),本轮中交易认可阈值为N(百分比,比如50%),则每一个超过M×N个信任节点认可的交易将被本验证节点认可,本验证节点生成认可交易列表。系统为验证节点设置一个计时器,如果计时器时间已到,本信任节点需要发送自己的认可交易列表。第五步,账本共识达成。本验证节点仍然在接收来自信任节点列表中信任节点的提议,并持续更新认可交易列表,验证节点认可列表的生成并不代表最终账本的形成以及共识的达成,账本共识只有在每笔交易都获得至少超过一定阈值(比如80%)的信任节点列表认可才能达成,这时交易验证结束,否则继续上述过程。第六步,共识过程结束,形成最新的账本,将上轮剩余的待确认交易以及新交易纳入待确认交易列表,开始新一轮共识过程。

瑞波共识机制使得一组节点能够基于特殊节点列表达成共识。初始特殊节点列表就像一个俱乐部,要接纳一个新成员,必须由一定比例的该俱乐部会员投票通过。因此,它区别于其它共识机制的主要因素是有一定的“中心化”。

(5)PAXOS

PAXOS是一种基于消息传递且具有高度容错特性的一致性算法,PAXOS算法中将节点分为3种类型:Proposer角色,负责提出一个提案,等待大家批准,往往是客户端担任该角色。Acceptor角色,负责对提案进行投票,往往是服务端担任该角色。Learner角色,被告知提案结果,并与之统一,不参与投票过程,可能为客户端或服务端。

基本共识过程是先由Proposer提出提案,先争取大多数Acceptor的支持,超过一半支持时,则发送结案结果给所有人进行确认。如果Proposer在此过程中出现故障,可以通过超时机制来解决。极为凑巧的情况下,每次新的一轮提案的Proposer都恰好故障,系统则永远无法达成一致(概率很小)。

算法本身用语言描述极其精简:第一阶段,Proposer向网络内超过半数的Acceptor发送Prepare消息,Acceptor正常情况下回复Promise消息。第二阶段,在有足够多Acceptor回复Promise消息时,Proposer发送Accept消息,正常情况下Acceptor回复Accepted消息。PAXOS中3类角色的主要交互过程在Proposer和Acceptor之间(见图1)。

图1 PAXOS中3类角色交互过程

其中1、2、3、4代表顺序。PAXOS协议用于微信PaxosStore中,每分钟调用PAXOS协议过程数10亿次量级。PAXOS协议被用于分布式系统中典型的例子就是Zookeeper,它是第一个被证明的共识算法,其原理基于两阶段提交并进行了扩展。

(6)PBFT

PBFT(Practical Byzantine Fault Tolerance)意为实用拜占庭容错算法。PBFT算法分为5个阶段:请求(Request)、预准备(Pre-prepare)、准备(Prepare)、确认(Commit)、回复(Reply),共识过程如图2所示。

图2 PBFT算法共识过程

其中C为发送请求端,0123为服务端,3为宕机的服务端,具体步骤是:第一步,请求阶段。从全网节点选举出一个主节点(Leader),这里是0,新区块由主节点负责生成,请求端C发送请求到主节点。第二步,预准备阶段,每个节点把客户端发来的交易向全网广播,主节点0将从网络收集到需放在新区块内的多个交易排序后存入列表,并将该列表向全网广播,扩散至123。第三步,准备阶段,每个节点接收到交易列表后,根据排序模拟执行这些交易。所有交易执行完后,基于交易结果计算新区块的哈希摘要,并向全网广播,1→023,2→013,3因为宕机无法广播。第四步,提交阶段,如果一个节点收到的2f(f为可容忍的拜占庭节点数)个其他节点发来的摘要都和自己相等,就向全网广播一条Commit消息。第五步,回复阶段,如果一个节点收到2f+1条Commit消息,即可提交新区块及其交易到本地的区块链和状态数据库。

这种机制下有一个叫视图的概念,在一个视图里,一个是主节点,其余的都叫备份节点。主节点负责将来自客户端的请求排好序,然后按序发送给备份节点们。但是主节点可能是有问题的,它可能会给不同的请求编上相同的序号,或者不去分配序号,或者让相邻的序号不连续。备份节点应当有职责来主动检查这些序号的合法性,并能通过超时机制检测到主节点是否已经宕掉。当出现这些异常情况时,这些备份节点就会触发视图更换协议来选举出新的主节点。

(7)RAFT

RAFT(The Raft Consensus Algorithm)算法是对PAXOS算法的一种简单实现。核心思想是如果数个数据库的初始状态一致,只要之后进行的操作一致,就能保证之后的数据一致。因此RAFT使用的是日志方式进行同步,并且将服务器分为3 种角色:Leader、 Follower、Candidate,角色之间可以互相转换。

Leader,即领导者,负责处理来自客户端的请求,管理日志复制以及与Follower保持心跳以维持其领导者地位。Follower,即追随者,负责响应来自Leader的日志复制请求,响应来自Candidate的选举请求,初始时所有节点均为Follower。Candidate,即候选者,负责发起选举投票,RAFT启动后或Leader宕机后,一个节点从Follower转为Candidate,并发起选举,选举成功后,由Candidate转为Leader。

RAFT算法主要分为两个步骤。第一步,选举Leader。Follower自增当前任期,转换为Candidate,对自己投票,并发起投票申请,等待下面3种情形发生:一是获得超过半数服务器的投票,赢得选举,成为Leader;二是另一台服务器赢得选举,并接收到对应的心跳,成为Follower;三是选举超时,没有任何一台服务器赢得选举,自增当前任期,重新发起选举。第二步,Leader生成日志,并与Follower进行心跳同步。Leader接受客户端请求,更新日志,并向所有Follower发送心跳信息,并同步日志。

所有Follwer都有选举超时机制,如果在设定时间之内,没有收到Leader的心跳信息,则认为Leader失效,重新选举Leader。在RAFT算法中,日志的流向只有Leader到Follower,并且Leader不能覆盖日志,日志不是最新者不能成为Candidate。

(8)POOL

POOL(验证池)共识是基于传统的分布式一致性技术,加上了数据验证机制,这种共识方法的主要特点是基于当前成熟的分布式一致性算法(PBFT、Pasox、Raft等),来实现秒级共识验证,是目前私有链和联盟链中大范围在使用的共识机制,此处不再赘述。

除了常见的以上所述的几类共识机制,在区块链的实际应用过程中,也衍生出了像POW+POS、行动证明(Proofofac-tivity)等多个变种机制。还存在着五花八门的依据业务逻辑自定义的共识机制,如小蚁的“中性记账”、类似瑞波共识的Stellar共识机制、Factom等众多以“侧链”形式存在的共识机制等,这些共识机制各有优劣势,比特币的POW共识机制依靠其先发优势已经形成成熟的挖矿产业链,支持者众多,而POS和DPOS等新兴机制则更为安全、环保和高效,从而使得共识机制的选择问题成为区块链系统研究者最不易达成共识的问题。

3 各种共识机制技术特点比较

(1)POW

POW共识机制是具有重要意义的创新,其近乎完美地整合了比特币系统的货币发行、交易支付和验证等功能,并通过算力竞争保障系统的安全性和去中心性。但POW共识机制同时存在着显著的缺陷,其强大算力造成的资源浪费(如电力)历来为研究者所诟病,而且长达10min的交易确认时间使其相对不适合小额交易的商业应用。

POW算法的优点包括完全去中心化,节点自由进出,算法简单,容易实现,节点间无需交换额外的信息即可达成共识。安全性高,破坏系统需要投入极大的成本,允许全网50%节点出错。

POW算法的缺点也同样多,首先是需要大量算力,目前Bitcoin已经吸引全球大部分的算力,其他再用POW共识机制的区块链应用很难获得相同的算力来保障自身的安全,新的区块链必须找到一种不同的散列算法,否则就会面临比特币的算力攻击。挖矿造成大量的资源浪费,依赖机器进行数学运算来获取记账权,资源消耗相比其它共识机制高。共识达成的周期较长,不适合商业应用。可监管性弱,存在安全性风险,同时超大矿池的出现,也使得算力集中化问题凸显,即“51%攻击”风险。性能效率比较低,每次达成共识需要全网共同参与运算。无法达成最终一致性,容易产生分叉,需要等待多个确认。

(2)POS

POS作为POW的一种升级共识机制,它主要解决了POW工作量计算浪费的问题。当前POS已有很多不同的变种,但基本还是根据每个节点所占有代币的数量和时间(即权益)来决定其挖矿的难度,根据每个节点所占代币的比例和时间,等比例的降低挖矿难度,从而加快找随机数的速度。

相比POW,POS算法的优点包括,避免了挖矿造成大量的资源浪费,缩短了各个节点之间达成共识的时间,网络环境好的话可实现毫秒级,对节点性能要求低。

缺点是仍需要挖矿,并且POS会使得“富者更富”,有可能支配记账权,拥有权益的参与者也未必希望参与记账。无法达成最终一致性,容易产生分叉,需要等待多个确认。POS依然是基于哈希运算竞争获取记账权的方式,可监管性弱,容错性和POW相同。

(3)DPOS

DPOS与POS的原理相同,主要区别在于节点选举若干代理人,由代理人轮流验证和记账,其合规监管、性能、资源消耗和容错性与POS相似。

DPOS相比POS,它的优点是,能大幅缩小参与验证和记账节点的数量,可以达到秒级的共识验证。缺点是整个共识机制还是依赖于代币,而很多商业应用是不需要代币存在的。

(4)RPCA

瑞波共识协议所创建的区块链是由所有参与者中部分被称作为“网关”的受信任的节点所维护,同时网关节点之间存在信任关系,而其余的一般参与者则被称为“用户”。用户只能产生交易,并不参与创建区块和记录交易的工作。

瑞波共识机制的优点包括,确认交易可以在很短的时间内完成验证,每3s左右就能产生一个区块,任何时候都不会产生硬分叉。

缺点包括对网关节点的可靠性要求很高,网关节点的可靠程度将影响整个交易网络的正常运行。由于存在网关节点,不能算做是完全的“去中心化”,新加入节点要取得与其他节点的共识所需时间也比较长。

(5)PAXOS

PAXOS属于传统的分布式一致性算法,是一种基于选举领导者的共识机制,PAXOS能保证在超过50%的正常节点存在时,系统能达成共识。

PAXOS共识机制的优点包括允许强监管节点参与,性能高,资源消耗低。缺点是仅用于具有较高容错性的分布式系统中。

(6)PBFT

PBFT解决了原始拜占庭容错算法效率不高的问题,使得拜占庭容错算法在实际系统应用中变得可行,可容错节点数为N/3-1。与PAXOS类似,它也是一种采用许可投票、少数服从多数来选举领导者进行记账的共识机制,但该共识机制允许拜占庭容错。

PBFT共识机制的优点包括,效率高,秒级出块,可配置为1到几秒出块,满足交易短时间内响应的需求。允许强监管节点参与,具备权限分级能力,相比PAXOS,性能更高,耗能更低。安全性高,该算法每轮记账都会由全网节点共同选举领导者,允许33%的节点作恶,容错性为33%。高一致性、高可用性,抗欺诈能力较强,是联盟链里较为实用的一种共识算法。

缺点包括当有1/3或以上记账人停止工作后,系统将无法提供服务。当有1/3或以上记账人联合作恶,且其他所有的记账人被恰好分割为两个网络孤岛时,恶意记账人可以使系统出现分叉,但是会留下密码学证据。

(7)RAFT

RAFT更注重协议的可理解性和落地性,其特点是任何时刻最多只有一个合法Leader,可容错节点数为N/2-1。Raft算法是PAXOS算法的一个简化实现,因此其合规监管、性能、资源消耗和容错性与PAXOS相似。

PBFT共识机制的优点包括,相比PAXOS和PBFT算法,性能更高,耗能更低,秒级出块,可以配置为1或多秒出块。高一致性,候选区块超过半数赞成票才提交到区块链中。高可用性,如果超时没有收集超过半数的回复票,则重新发起选举,保证系统的容错恢复能力。支持1/2节点容错,整个系统中少于1/2数量的节点出现故障,均不影响共识进行。数据安全性高,在选举过程和区块同步过程中严格校验签名。

缺点是与PBFT共识的拜占庭容错特性对比,RAFT共识并不严格保证抗欺诈性,适用于互信程度较高的联盟链。

(8)POOL

POLL(验证池)共识机制是基于传统的分布式一致性技术(PBFT、PAXOS、RAFT等),加上数据验证机制。

它的优点是不需要代币也可以工作,在成熟的分布式一致性算法基础上,实现秒级共识验证;缺点是性能会随着节点数的增加而变差,并且去中心化程度不高,更适合多方参与的多中心商业模式。

基于以上分析,这里我们做一张表,将上面这些共识算法从各角度做一个比较(见表1)。

表1 共识算法比较

4 共识机制应用场景分析

共识机制不但是计算机之间的算法和数据共识,也是合作伙伴之间进行协作的共识,共识机制使区块链的参与者通过约定的方式进行共同记账,确保合作者之间的记账正确性、一致性、持续性,避免少数出现故障的节点影响网络运行,并防御少数故意作恶者的破坏。在不同的应用场景下,需要使用不同的共识机制。现实生活中常见以下两种应用场景:需要加密数字货币的公有链和不需要货币体系的私有链和联盟链。

(1)需要加密数字货币的公有链

公有链如比特币、以太坊等使用的共识算法通常为工作量证明或权益证明等,可以根据投入权益和记账的行为,对记账者制定奖励和惩罚制度。公有链上的共识算法一般确认时间较长,或需要较多的算力投入。

POW作为无授权协议,最适合公有链系统,虽然网络维护费用高但却是完全去中心化系统安全运行的保障。POS作为需要授权但授权程度较低的共识机制,在需要许可的、公共的共享系统中更有发挥空间,而DPOS则是需要许可的、私有的共享系统的较好选择,因为委托人群体的更值得信任,保障系统安全运转无需较大花费。

(2)不需要货币体系的私有链和联盟链

而对于不需要货币体系的私有链或者联盟链而言,需要有绝对信任的节点,以及高效的需求,因此对于这样的区块链,传统的一致性算法成为首选,如RPCA、PAXOS、PBFT、RAFT、POOL。

私有链和联盟链共识机制的设计目标和公有链有所不同,系统不需要根据记账的计算量对记账者进行经济奖励,而是鼓励参与者在共同维护区块链、促进生态系统发展、推进节点合作的过程中获得价值或收益。在此过程中产生的纠纷或非法行为,将采用监管审计和法律仲裁结合的方式解决。这样共识机制的实现符合私有链或联盟链场景需求,可避免算力浪费、防分叉和提升运行稳定性。

私有链和联盟链的共识机制在节点总数不多、网络规模不太大时,可以提供较高的交易并发处理能力。但随着节点数量增多,比如达到几百个共识节点的规模时,由于需要共识节点之间交换较多的信息,会出现明显的性能下降。所以一般会通过协商,在保证公平公开的前提下,控制参与者共识的节点数量,以保证共识算法的效率。

5 共识机制选择标准

区块链上采用不同的共识机制,在满足区块链数据一致性和有效性的同时会对系统整体性能产生不同影响。综合考虑各个共识机制的特点,可以从以下5个维度作为对共识机制的选择标准。

(1)安全性

指共识机制防攻击、防欺诈的能力,即是否可以防止双重支付(即双花)、自私挖矿等攻击,是否有良好的容错能力。以金融交易为驱动的区块链系统在实现一致性的过程中,最主要的安全问题就是如何防止和检测双重支付行为。另外,自私挖矿通过采用适当的策略发布自己产生的区块,可以获得更高的相对收益,也是一种威胁比特币系统安全性和公平性的攻击方法。

(2)扩展性

指区块链是否支持网络节点扩展,扩展性是区块链设计要考虑的关键因素之一。根据对象不同,扩展性又分为系统成员数量的增加和待确认交易数量的增加两部分。扩展性主要考虑当系统成员数量、待确认交易数量增加时,随之带来的系统负载和网络通信量的变化。

(3)性能效率

指区块链交易达成共识被确认的效率。即从交易达成共识被记录在区块链中至被最终确认的时间延迟,也可以理解为系统每秒可处理确认的交易数量。与传统第三方支持的交易平台不同,区块链技术通过共识机制达成一致,因此其性能效率问题一直是研究的关注点。比特币系统每秒最多处理7笔交易,远不能支持很多应用场景下的业务量。

(4)资源消耗

指在达成共识的过程中,系统所要耗费的计算资源大小,包括共识过程中耗费的CPU、网络输入输出、存储等计算机资源。区块链上的共识机制借助计算资源或者网络通信资源达成共识,以比特币系统为例,基于工作量证明机制的共识需要消耗大量计算资源进行挖矿来提供信任证明完成共识。

(5)可监管性

指是否支持超级权限节点对全网节点、数据进行监管。区块链的匿名性与弱中心化的架构,与现有的监管体系存在某种程度的天然冲突。所以,比特币才会被用于暗网黑市交易、跨国境洗钱等场景。未来,区块链技术最终必然演化为“监管融入技术”的模式,区块链的难以篡改、共享账本、分布式的特性,更易于监管接入,获得更加全面实时的监管数据。让监管机构本身也参与到技术中去,通过技术本身实现对技术的监管,将最终化解区块链与监管的冲突。

6 未来展望

共识机制作为区块链技术中至关重要的一个组成部分,备受学术界和企业界关注。良好的共识机制有益于区块链技术在理论和实践中的推广。然而,现有的可用于区块链技术的共识机制都不尽完善,对于区块链技术中的共识机制选择,可以从安全性、扩展性、性能效率、资源消耗和可监管性来评估。未来创新之处主要在于降低共识机制的复杂度,资源消耗大的共识机制市场占有率会逐步减小,而那些不消耗能源的共识算法会进一步发展,这是一种长期的发展趋势。

共识机制永远需要在效率与安全之间达成最佳平衡,在比特币应用中采用了完全去中心化的共识机制,而在联盟链和私有链中,我们也看到去中心化不是那么完全的共识机制,相信基于区块链技术演化和发展,会有更多的技术和机制进入到我们的视野和应用场景中,区块链在比特币中的应用为我们打开了一扇通向未来数字货币的大门,而从数字货币到数字金融最终达到数字社会之路仍然任重道远,共识机制需要不断完善和创新。

猜你喜欢
算力记账比特
算力盗用:一种新型财产侵害*
中科曙光:联合发布全国首个“一体化算力交易调度平台”
中国电信董事长柯瑞文:算力成为数字经济的主要生产力
算力网络场景需求及算网融合调度机制探讨
财务自由第1步,从记账开始
记账类APP
记账理财的好处有哪些
比特币还能投资吗
比特币分裂
比特币一年涨135%重回5530元