共识机制的核心目的始终是相同的:它提供某种证明,以确保所有网络节点都能就区块链的真实和有效状态达成一致。这就是如何避免网络上的恶意攻击。没有它,加密货币就失去价值。
在区块链中,公众通常都是在证实和时间戳交易。一旦数据被参与的用户或节点证实,该交易记录就被永久写入区块中。
新生成的区块关联前一个区块并广播到整个网络,从而达成共识:区块链上的每个节点所记录的账本都是相同的。但是,不同的共识机制算法往往会面临类似的问题,尽可能的保证活跃性和安全性。目前还没有一种解决方案可以同时解决。
比特币BTC使用的是工作量证明机制(POW),该机制具有明显的挑战,可能会致命。因此,权益证明机制(POS)已经越来越受欢迎,并且要求用户提供一定数量的加密货币的所有权,这个对拥有越多的加密货币用户越有利。
许多初创公司开始寻找其他方式达成共识已解决这些深层结构性问题。目前替代方案正在开发中。虽然比特币和以太坊的开发团队不断致力于改善他们的系统,但是还有一些不太为人所知的共识机制迫切希望能有一席之地。
1、权威证明(Proof of Authority)
PoA是一种个人身份证明。用户必须在平台上进行个人识别和验证,使其成为可信节点。确认其身份的用户有权验证链上的区块。用户获得的加密货币奖励是公开的,其恶意攻击行为也是公开的;这意味着在保护网络时,个人的信誉度将受到威胁。
应用该共识机制的Egor Homakov的Fairlayer项目,还未发布加密货币。但Homakov具有很强的可信度,并且技术界的一些人相信它正在做的:构建一个不会在安全性上妥协的无限可扩展区块链。
另一个使用PoA的著名应用是Vivacoin。他们提出了一个不同的方法,只有几个层次,但这个概念仍然集中在标识身份上。同时,VeChain拥有一个以PoA共识机制为中心的极其成熟的企业解决方案。
2、Markov Chain Monte Carlo(MCMC)
IOTA最大的成功就是应用复杂的、非标准的技术,它们运行在DAG架构上,使用MCMC来达成共识。这是一个复杂的算法,但这个概念在应用时很简单,统计学家可以很好地理解这个算法。
在用户广播其交易之后,该算法随机地选择两个未确认的交易来进行证明。使用IOTA,需要少量的工作量证明来确认这些交易,然后可以由其他人验证用户自己的交易广播。
IOTA最初将使用主节点,通过确保可以消除任何欺诈性交易和攻击来保护网络故障。此外,没有采矿行为意味着能源效率的大幅提升。
Matrix也建议使用MCMC,BigTangle也是如此,它的结构在设计上看起来与IOTA相似,尽管可能稍微不那么完整。
3、贡献证明(Proof of Contribution)
POC是另一种不使用挖矿的共识机制。实质上,它是一种通过测量支持网络功能的用户的有用贡献来达成共识的算法。
理论上可以通过使系统过载所需的高成本来防止对网络的攻击。POC是CyberVein的首选系统:他们提出了一个去中心化的数据库网络,在用户的磁盘空间上运行。
POC基于存储空间,允许用户通过提供对网络有用的工作量来提供共识。这被转换为一个安全的数据集,并且用户可以获得加密货币奖励。
由于存储容量是稀缺资源,因此认为由于所需的高成本而导致攻击变得不可行。然而,这本身不是一个故障安全机制;它们运行在于IOTA类似的DAG体系结构上,最初将使用集中节点来保护主链。
使用工作量证明(Proof-of-Work)的单独区块链是他们提出的另一个解决方案,用于保护DAG,确保欺诈性交易失效,整个网络可以被证明为真实的。
此外,通过捐赠足够的磁盘空间来存储整个网络及其所有交易,根据用户贡献的存储量提供更高的CyberVein(CVT)加密货币支付,鼓励用户成为可信的完整节点。
以提供存磁盘空间来存储值和智能合约交易实现有利于系统的目的,即在用户设备之间分配存储的数据。4.拜占庭共识协议(Byzantine Agreement)
两个最重要的BA系统是瑞波币(Ripple)和恒星币(Stellar),它是一个很有吸引力的机制。可以快速、经济地达成共识,不涉及资产所有权的参与。
但是,这种方法需要一定程度的集中化,否则需要不切实际的协调和资源均等。
Ripple和Stellar都使用投票方法,Ripple使用概率投票,Stellar使用联盟制,这分别有利于活跃度和安全性。因此,利用Ripple:证明节点收集交易,将它们转换为建议并将其发送给其他证明节点。收到建议后,他们会进行一系列投票以清除欺诈性交易。
出于实际目的,这种方法是有效的,但通过验证的交易实际有效的概率低于99%。这就是安全方面存在缺陷的原因,也是Ripple必须集中管理或开发解决方案的原因。
传统的拜占庭协议系统已经关闭成员资格,其中用户节点的数量是固定的。Stellar允许开放成员资格,节点可以随意加入和离开。
他们的联盟模型意味着节点可以与其认为值得信任的节点“联盟”达成共识,而不需要涉及网络中的所有节点。虽然Ripple要求所有节点通过一系列投票接受相同的交易,但联盟投票意味着节点只需依靠单个组来证明其交易。
拜占庭协议系统基本上是无成本的,并且是可扩展的:吞吐量是每秒4,500个交易量,具有64个节点。更多的节点会降低网络性能,但这仍然与比特币每秒最多7次交易还是有很大的优势。
区块链是新生的
我们知道区块链仍在探索之中, 也就是说,我们还需要一段时间才能看到区块链技术发的潜力。关键的挑战是建立一个有效的共识机制,不损害权力下放的概念。
虽然Ripple的核心是集中式的,也暗示了一种“去中心化战略”,但IOTA和CyberVein是以集中控制开始的网络应用,只有在他们达到临界用户数量时才会体现出来。
这取决于可能性和有效性。大多初创公司正在努力设计替代性的共识方法,以便称为赢家。将安全性与可扩展性结合起来的未来解决方案可能已经在开发中。