二、什么是区块链互操作? 1.什么是互操作性? 互操作性英文为Interoperability,是Interaction、Operation和Ability三个单词组合而成,即“相互操作的能力”,简称互操作性。维基百科认为:互操作性又可称之为互用性或协同能力,是指不同系统和组织机构之间相互合作,协同工作的能力[2]。IEEE(Institute of Electrical & Electronic Engineers,电气与电子工程师协会)在1990年给出互操作性定义:两个或多个系统或组成部分之间交换信息,以及对所交换的信息加以使用的能力[3]。 2. 什么是区块链互操作? 以维基百科和IEEE关于互操作性的定义为基础,行业出现了对区块链互操作的不同认识。以太坊创始人Vitalik Buterin认为跨链即为互操作[4];WEF(World Economic Forum,世界经济论坛)和德勤认为,区块链互操作聚焦于不同链系统之间资产和信息的交互[5];埃森哲公司的David等人认为,区块链互操作是分布式账本系统能够与多个DLT系统,以及DLT多个子系统之间互联互通的能力[6];可信区块链推进计划认为,区块链互操作是指区块链系统实例与其他系统实例交换信息,并对所交换信息加以使用的能力[7]。 相对于跨链即为互操作的狭义认识,可信区块链推进计划将区块链互操作的内涵广义化,认为区块链互操作应该包含用于解决上层应用与底层链紧耦合问题的应用层互操作,用于解决“链级孤岛”的链间互操作,以及用于解决链上链下安全可信交互的链下数据互操作三个方面。该定义准确的把握了区块链行业所面临应用与不同底层链对接切换难、不同区块链系统之间跨链互通难、链上链下可信交互难的三大问题。以该定义为基础,分析区块链互操作技术框架。 三、区块链互操作框架 图1. 区块链互操作框架 如图1所示,区块链互操作包括应用层互操作、链间互操作、链下数据互操作三个部分。 1. 应用层互操作 应用层互操作主要解决上层应用与底层链对接难、切换难的问题。而当前对接难、切换难的根本原因在于不同底层链所提供的接口不一致,包括接口实现方式、接口定义的不一致等。通过对部分链系统接口实现方式的调研,发现不同链系统差异中存在交集,如表1所示,有共性就有规范统一的可能,因此可从接口标准化方向入手。如果说区块链是一种分布式数据库系统,传统的关系型数据库如MySQL、SQLServer、Oracle等利用ODBC、JDBC完成了对不同数据库接口的标准化,实现了上层应用对底层数据库的平滑切换。同理,应用层互操作也可考虑用中间件的形式解决不同链接口不一致的问题。接口中间件对上层应用提供统一的标准化接口,对下通过适配器完成不同底层链原生接口到标准接口的转换,从而实现上层应用对底层链的轻松扩展与平滑切换。 (责任编辑:admin) |