面向业务的区块链网络运行架构
1 背景与介绍
2008年[1],提出的原始区块链,即比特币,是一种完全开放的运行模式,也就是公有链模型。在公有链模型中,全球任何人都可以自由轻松地加入或退出区块链网络作为节点,不受任何限制。参与者的身份可以在区块链服务的开发者、提供者和消费者之间直接转换,而没有任何技术限制。因此,区块链的一项非常重要的创新是,区块链技术能够在完全没有共同的中心化可信第三方的环境中,独特地创建一个点对点(P2P)信任平台[2]。
因此,公有区块链技术在共识机制方面投入了最大的努力,以实现众多节点之间的一致性[3]。例如,采用工作量证明(POW)的区块链目前占据了现有数字货币总市值的90%以上。工作量证明(POW)共识机制要求每个节点必须完成大量可能并无商业意义的计算,才能获得区块链记账的权利,例如获得币或代币奖励[4]。通过这种内生激励机制,区块链运营商(节点),即所谓的区块链网络服务提供者,能够被激励持续留在区块链网络中,推动当前区块链网络运行得更加稳健地。
虽然完全开放和去中心化的运行模式理论上可以获得最高级别的信任之一,但也带来了区块链网络的性能问题,例如当前比特币的交易频率最高不足6 TPS,以太坊约为15 TPS [5],远低于现有的中心化支付系统。完全去中心化还带来了隐私和访问控制问题,尤其是社会和商业应用 [6] 必须面对的监管问题。目前,为解决公有链中存在的这些问题(如交易分区和数据共享)而讨论的方法将不可避免地降低去中心化的程度。
联盟链[7]是一种较晚提出的运行模式,旨在在信任级别和性能要求之间寻求折衷。在联盟链模型中,每个节点必须经过特定许可才能加入区块链网络,因此区块链服务提供者与区块链服务消费者之间的身份基本不可直接转换。因此,联盟链可以采用更加一致的拜占庭容错(BFT)算法来解决分布式账本的拜占庭容错[8,9]问题。这还将带来一个额外的好处,即不再存在分叉。联盟链的节点通常不具备从区块链系统内部获得奖励的机制,而是通常由运营商自身的商业利益驱动。联盟链在将项目投入实际运行时面临的最大问题是,大多数现有的商业场景难以找到多个满足联盟链要求的可靠节点。出于参与者自身利益的考虑,企业或其他组织更倾向于控制区块链网络,最终将真正的区块链网络运行模式转变为私有链,这极大地削弱了区块链最重要的特性——信任。
在引入智能合约[5],后,区块链网络服务将对区块链网络消费者身份产生重大转变从单一的区块链网络用户身份分化为区块链应用开发者(区块链应用服务提供商)和区块链应用用户(区块链应用服务消费者)。区块链网络服务将在区块链应用服务的服务架构中扮演独立运营者的角色。通常情况下,区块链网络的服务提供商与区块链应用的服务提供商不同,更重要的是,他们的目标或激励并不相同。然而,由于区块链网络的独特性,激励的不一致可能会阻碍区块链网络自身的发展。例如,在公有链中,区块链网络的服务提供商即矿工,可能仅仅追求更大的代币激励,而非满足区块链应用提供商和用户的需求。在联盟链网络中,节点只会支持符合自身商业利益的应用,而不会支持其他外部用户的应用。企业之间不同的商业利益会将用户数据分散到不同的区块链网络中,阻碍数据的互联互通。
本文旨在设计一种面向业务的区块链网络运营架构,其中联盟型节点可以组成区块链网络,但提供符合统一标准的类公共区块链网络服务。基础区块链网络能够建立足够的激励机制,促使运行节点专注于提升其运营和服务能力。因此,该面向业务的架构将使最终的业务服务提供者(应用开发者)和业务服务消费者(应用用户)能够像使用当今的互联网服务一样,便捷地使用基础区块链网络服务。在第2节中,我们讨论互联网运营模式;在第3节中,我们将互联网运营模式的理念引入区块链网络运行,探讨在多个独立运营商参与下,区块链网络服务的面向业务的架构应如何构建。在第4节中,我们指出面向业务的区块链网络运行架构的一些重要特征。
2 互联网网络运营架构
当前互联网服务的运营架构是网络运营商模式。互联网的基础服务由所谓的网络运营商(大多数为公司)提供,例如AT&T、中国移动等。互联网的硬件和技术升级通常由网络设备提供商提供,例如华为和思科。网络设备提供商会根据一定的技术标准升级互联网硬件能力,例如从同轴电缆升级到光纤,移动通信从4G升级到5G。然而,在互联网应用的服务侧,商业应用的开发者只需通过互联网发布自己的服务,用户即可通过互联网轻松访问这些服务。对应用而言,互联网本身只是一个媒介,不同的网络运营商或不同的硬件设备不会对应用服务的形式产生根本性影响(图1)。
互联网网络服务提供商,即网络运营商,会按照一定的标准费率向接入的互联网服务用户(包括商业应用开发者和用户)收费,从而增强其维持互联网网络服务的能力。因此,作为互联网的底层技术支持,网络设备供应商等角色基本与互联网服务用户相隔离。这种分层的优势在于,互联网技术的迭代不会从根本上影响互联网应用的开发、维护和使用。同时,互联网运营商必须具备竞争力以提升互联网服务能力,而应用开发者则可以专注于自身业务,探索应用场景并改善用户体验。
在现有互联网运营模式下,不同的运营商可以采用各种技术提供分级和多维度的互联网接入服务,例如互联网接入速度。因此,不同运营商之间的连通性通常需要两个运营商或某个组织根据一些协议来实现全球互联网连通。在不同运营商之间切换服务的互联网用户可能需要支付跨运营商费用,甚至面临服务中断。也就是说,尽管互联网是开放的,但由于网络运营商的自然垄断,开发者和用户并不能完全自由地选择运营商。
3 引入区块链网络运营的理念
比特币等公有链的节点完全开放,因此只要个人和企业能够根据区块链协议提供相应的服务器支持,就可以平等运行区块链网络。然而,随着工作量证明 (POW)难度越来越高,个人普通服务器已几乎无法有效参与挖矿竞争,实质上已退出比特币网络运行。因此,大量所谓的矿工,无论是个人还是企业,都越来越多地汇聚形成“矿池”以参与挖矿竞争。例如,目前比特币的前四大矿池已经控制了整个网络50%以上的计算能力。作为第二大加密货币的以太坊情况也类似。由此可见,基于工作量证明构建的公有链表明,随着整个网络计算能力的增加和挖矿难度的提升,从博弈角度出发,算力集中是不可避免的,从而严重质疑了区块链最核心的去中心化特性,给区块链网络的不可篡改性和稳定性带来了巨大隐患。采用其他共识机制如权益证明、委托权益证明等,也难以避免甚至主动减少实际参与共识和记账的节点数量,以降低工作量证明带来的巨大损耗,并期望提升区块链网络的运行性能。总体而言,尽管公有链秉持开放与共享的精神,但现在乃至未来,能够真正参与共识的节点数量极为有限,甚至并非对公众开放。
联盟链运营商的许可已确定。所有运营商必须遵守联盟规则来运行区块链网络,因此节点的加入和退出受到联盟规则的限制。然而,在实际业务场景中,组建一个稳定的联盟十分困难,尤其是联盟领导者通常由主要利益相关者担任,拥有绝对权力,导致联盟链实质上退化为私有链。这将失去构建区块链最重要的特性——“信任”。目前在加密货币市场中,大量独立运营的区块链网络声称自己是联盟链网络甚至公有链网络,但实际上它们只是公司内部的“私有”区块链,情况正如上述所述。
这就是为什么在区块链中引入了互联网网络运营模式。在区块链网络运营模型的架构下,作为网络运营商的节点所有者应为独立的业务组织或公司。这类似于当今的互联网运营商,因此他们无需根据具体的商业场景从应用开发者和用户处获取利润,而是通过提供通用区块链网络服务来盈利。随后,不同的运营商将形成一种兼具合作与竞争的新区块链网络关系,在这种关系中,运营商能够提供更具可信度和更动态的区块链服务。当更多运营商主导联盟链网络时,相应的区块链网络在各个区块链网络之间将更具竞争力。根据联盟规则,少数节点将无法控制最终的区块链网络(图2)。
4 面向业务的架构在区块链网络运行中的4个重要特征
在建立面向业务的区块链网络运营新架构时,某些特性非常重要,应予以更多关注。
网络与应用分离
对于比特币而言,应用并未从比特币网络中分离出来。比特币网络本身就是比特币应用。在引入智能合约概念后,区块链的基础网络可以独立运行,而区块链应用则可以以智能合约或多个智能合约组合的形式在区块链网络上运行。尽管智能合约已在区块链中实现,但网络运行维护与应用维护之间仍缺乏足够的分离。例如,以太经典(ETC)用于激励以太坊网络中的节点,但同时也被用于支付以太坊网络上应用的计算和存储成本。网络与应用的耦合导致网络运营商可能出于自身利益无法惠及应用,从而损害网络的整体利益。因此,在区块链网络运营模型的架构中,区块链网络应独立于应用开发和服务。特别是,应用开发应仅遵循统一协议和一些通用的底层接口,以便能够在不同的区块链网络之间轻松迁移。
网络开发与运营分离
在区块链网络运营模型的架构下,网络开发应与网络运营相分离。技术开发者将专注于区块链技术的开发与规划。然而,网络运营商拥有完全的权利来决定采用何种新的区块链技术,只要其符合联盟链的区块链协议、标准和共识机制。节点间的技术差异带来了将服务差异化应用于区块链网络用户的可能性。例如,在使用同一区块链网络的前提下,某些节点可以为用户提供更快的查询服务,而另一些节点则可以为用户提供区块链外部的更多存储空间等。在运行于同一区块链网络的同时,不同的节点仍可拥有不同的目标用户,因此它们能够提供个性化开发工具和测试环境。这对于实现通用、高效的区块链网络是一个有用的特性。
多层级下不同角色的激励
对于区块链系统而言,激励是治理最重要的手段。公有链通常只有一种单一的激励模式,即通过币或代币对区块链节点进行激励。在引入区块链网络运营模型架构后,针对不同角色的激励可以实现分层。
-
技术开发者 :他们必须提供更优、更强大的区块链网络技术,以被区块链网络运营商所采纳,这是对技术开发者最重要的激励之一。与当前大多数情况下技术开发者往往同时兼任区块链运营商的情形不同,两种角色的重叠通常不利于整个网络生态系统的健康,会损害其进步与发展。
-
网络运营商 :最重要的激励是提供稳定持续的区块链服务。因此,众多区块链运营商之间需通过合作与竞争关系,维持动态有效的区块链服务。尽管对于一个区块链网络而言,底层协议和数据是相同的,但运营商仍可提供差异化技术和服务能力。同时,一个区块链节点可以支持多个区块链网络的连接,因此实施不同的区块链网络也有利于区块链全球生态系统的形成。
-
应用开发者 :就像互联网应用开发者无需过多关注实际运营商一样,他们可以专注于在区块链服务之上开发更有价值、专业的应用。基于区块链的特性,应用服务器完全由区块链网络运行,即在应用发布后,由运营商负责持续且防篡改的区块链服务。
-
应用用户 :其权益可以通过以清晰、开源编程方式编写的智能合约得到有效保护。
数据价值的持续挖掘
在建立完整的数据系统之后[10],区块链可作为非常合适的大数据平台。通过采用大数据开放架构[12]和其他大数据技术[11,13],可以持续挖掘区块链系统的数据价值。区块链的不可篡改性和透明性为数据分析提供了高质量的数据源,而结合人工智能与机器学习技术,能够进一步释放数据潜能,支撑更广泛的商业决策和社会治理应用。
5 总结和结论
本文提出了一种基于现有互联网运营模式的区块链网络运营模型架构。联盟型节点还可以构建一个区块链网络,但提供类似公有链的区块链网络服务,并遵循统一标准。基础区块链网络能够建立足够的激励机制,促使运行节点专注于提升其运营和服务能力。同时,它也推动区块链技术开发者专注于区块链技术本身,而区块链应用开发者则专注于有价值且专业的应用。该面向业务的架构实现了网络与应用、开发与运营的分离,并建立了多层次、分角色的激励体系,有助于克服当前公有链效率低下、联盟链信任缺失的问题。最终,该架构使得业务服务提供者(应用开发者)和业务服务消费者(应用用户)能够像使用当今互联网服务一样,便捷、高效地使用基础区块链网络服务,为区块链的大规模商业化应用奠定了可行路径。
2000

被折叠的 条评论
为什么被折叠?



