第一节 公有链、私有链和联盟链
✍公有链(Public Blockchains)
公有链是指全世界任何人都可读取的,任何人都能发起交易且交易能获得有效确认的,任何人都能参与其中的共识验证过程的区块链。公有链不存在中心化的硬件集群或管理机构,任何节点的权利和义务都是均等的,其系统中的数据块由整个系统中具有维护功能的节点来共同维护。共识过程决定哪个区块可以被添加到区块链中并被确认当前状态。同时,任何在系统内的用户都可以通过激励层的通证代币进行交易和领取奖励。公有链是一个完整的区块链系统,该系统除了用自身在设计之初的管理组织和分布式自治组织(Decentralized Autonomous Organization, DAO)来进行管理,任何其他组织、个人都无权干涉。
作为完全去中心化的系统,公有链的安全由加密体系进行维系,并通过项目团队的运营使公有链的安全性和稳定性不断提升,项目团队通过不同的共识机制将经济奖励和加密数字验证相结合,并遵循区块链传统的激励原则,即每个人从中都可获得的经济奖励。在这个系统内,人人都能参与挖矿和生态建设,所有人都是平等的,从而达成完全去中心化的共识。
公有链一般会通过项目代币机制(俗称通证)来鼓励参与者“竞争记账”,确保数据的安全。从应用上说,公有链包括比特币、以太坊、超级账本、大多数山寨币及智能合约。公有链的鼻祖是比特币。
目前,大多数公有链项目都是在以太坊平台上搭建的,因为以太坊是可以被编程的区块链,项目方完全可以按照自己的意愿进行复杂的编写操作来创建自己的公有链项目。
公有链为了达成所有人的共识,需要更多的时间、更多的算力资源去验证并记录每一步操作,而且这些公开、透明、可追溯的记录也完全被暴露在所有人面前,一些存储着大量资金、安全性低的节点,有可能被黑客盯上。因此公有链项目总是面临着是否同时兼具高可用性、高安全性和高效率的技术难点。在实际操作中,如何在去中心化的前提下,提高公有链的处理能力,保护用户隐私,同时又符合当地法律法规的要求,是一个需要我们通过长时间尝试去解决的问题。
✍私有链(Private Blockchains)
以传统区块链技术架构为设计理念的比特币逐渐受到人们的关注,但其发展到今天,巨大的能源消耗及算力集中问题已经背离了设计的初衷。于是,私有链的概念在区块链技术讨论中成了热门。
2016—2017年火爆的区块链项目在首次发行数字货币(Initial Coin Offering, ICO)过程中,由于缺乏相关法律法规的监管,大量的普通投资者在投资区块链项目后遭受了巨大的损失,不少政府开始明令禁止公有链的 ICO 行为和法定货币交易行为。于是,私有链才慢慢出现在人们的视野中。
从本质上而言,相较于完全公开、不受控制、不受监管并通过加密技术来保证网络安全的公有链系统,私有链可以创造出访问权限控制更为严格(这样的区块链系统并非任何人都可以参与)、也不需要设计激励层的代币。我们可以对比私有链和私有云,这样可以更好地理解私有链的含义,即私有链系统是针对某一部分特定的群体和行业而创建的。同时,这个系统仍保留着区块链部分技术架构和部分去中心化的特性。虽然私有链背离了区块链技术完全去中心化的初衷,但是在实际应用中,以区块链技术来解决某些范围内的问题明显是效率很高的方式,或者说在某些不需要完全去中心化的领域,私有链同样可以有很好的应用场景。
私有链没有通证的设计,因此它的生态的运营和发展完全依赖于私有链中心化的管理,其生态的可持续性和工作效率是值得探讨的问题。
私有链的应用场景一般在企业内部,如数据库管理、审计、企业销售管理及产品管理等;也可以被应用于政府中,如政府预算执行、行业数据统计等,公众有监督权。私有链的价值主要是提供安全、可追溯、不可篡改、自动执行的运算平台,可以同时防范来自内部和外部对数据的恶意攻击。
✍联盟链(Consortium Blockchains)
联盟链是指其共识过程受到预选节点控制的区块链技术。也就是说,它是一个在中心化体系内附加的区块链技术,联盟链更适用于被传统的大型企业和金融机构用来进行技术改造。
联盟链有以下三个优势。
首先,使用方可控、可监管。这在目前的监管环境下是非常有意义的。人们用联盟链解决了监管的责任人和管理方面的问题,需要进行认证的准入机制相对安全可控,适合监管。
其次,实现了一定程度上的隐私保护。联盟链可以通过加密分区的方法来实现隐私保护,这与公有链有明显的区别。
最后,提高了效率。如果是高频交易,那么联盟链需要提供更高的 TPS 支撑,所以交易的吞吐量是应用区块链技术的企业的交易性能指标,利用联盟链,人们可以在使用区块链技术部分架构的同时支持高并发交易。
联盟链也存在着一些问题。
首先,要在控制成本的前提下提高性能。高性能涉及多节点的建立和维护,区块链技术是价值传递的互联网,所有人都需要在公平的条件下进行连接,联盟链需要有高性能的共识算法设计,否则就失去了存在的意义。
其次,联盟链需要有实际使用价值和可操作性。节点需要使用,加盟的企业也需要使用,节点和加盟的企业需要用一定的标准进行审核并建立接入工作制度。同时,节点的维护也需要更高的要求,一旦出现节点丧失工作环境的情况,需要迅速地进行修复,同时不影响整个生态的运行。另外,在联盟链最大限度地不影响节点和加盟企业的正常流程的执行的情况下,并入联盟链也是难以实现的操作环节。
再次,联盟链对于安全隐私的界定。传统公有链的应用的源代码是公开的,任何人都可以在上面进行二次开发,这对于联盟链而言是很难实现的。同时,联盟链对于业务数据等数据进行的隐私保护也与一般意义上的保护不同,由于监管的需要,这些保护是分级的。
最后,联盟链需要有可编程性、可拓展性。每个节点、每个企业要加盟,要有一个智能合约,我们可通过创造一套简单易懂的可执行“语言”或功能全面的协议来帮助节点和加盟企业进行生态建设。
与公有链相比,现在联盟链的发展势头更猛,但我们需要警惕的是,不要让联盟链变成纯粹中心化或多中心化的联盟链。相较传统的区块链技术而言,现在大部分的联盟链显然没有提供太多的可实现不可逆交易或降低中心化风险的方式。中心化的信任会使联盟链因网络审查或故障点的失误,导致整个网络处于危险之中。
相比之下,在比特币等公有链的框架下,交易一旦完成便无人能更改,无论执法部门还是参与者都无权冻结资金或征收罚款。对于联盟链,无论是团体故意作恶,还是多节点故障,都会让用户无法彻底放心。
目前,联盟链的应用场景多集中在通过应用区块链技术来提升票据流转的安全性、不可逆转性,提高资金管理效率,同时又为客户提供移动端的信用结算产品。在一个去中心化体系下,人们利用联盟链建立企业与金融机构的信任关系,提高数字资产可信度,从而降低企业的融资成本。通过区块链技术可以把某些行业数据变成受保护的虚拟资产。
联盟链有别于公有链,联盟链具有高性能、高可用、可编程、在隐私保护方面更有优势等特点。随着联盟链应用场景的进一步拓展,相信其在实际应用中,会比公有链、私有链发展得更快。