基于CAP理论的区块链共识机制的分析*
2021-01-19姬晓涛刘建华
姬晓涛 刘建华
(西安邮电大学 西安 710121)
1 引言
区块链是一种全新的分布式计算范式,其不需要中心节点来统一处理,管理网络,网络中各节点同步运行并通过共识机制保证一致[1]。Leslie Lamport[2]在1998提出了Paxos共识算法,2014年斯坦福教授Diego Ongaro[3]发布了Raft算法(Paxos算法的变种)。1999年,Castro和Liskov提出了实用拜占庭容错协议(PBFT),使拜占庭协议的复杂度有所降低[4],同年“工作量证明”这一概念被Markus Jakobsson[5]首次提出,2008年工作量首次被应用到中本聪[6]提出的比特币中。2011年,权益证明POS算法由一位名为Quantum Me-chanic的数字货币爱好者首次提出[7],2012年Sunny King[8]在点点币中首次使用了权益证明。为了解决工作量证明机制和权益证明存在的问题,Fabian Schuh提出了股份授权证明机制,比特股[9]是该机制的首次应用。2017年韩璇刘亚敏对现有的共识机制进行了总结,并从安全性等方面进行了评价[10]。
共识机制的研究主要集中在创新研究出更好的共识算法以及对其安全性、性能的分析等方面。共识机制作为区块链这一分布式系统的核心技术之一,目前并没有对其在CAP理论方面的权衡分析。因此本文在详细了解了几大主流共识算法的共识流程后,从CAP理论的角度分析了各算法对三属性的考量与权衡,将共识算法进行了分类,这将为区块链未来的应用提供了理论基础。
2 基本技术
2.1 共识机制的定义
百度百科定义:“‘共识机制’是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,我们就可以认为全网对此也能够达成共识”[11]。……
