欢迎来到报告吧! | 帮助中心 分享价值,成长自我!

报告吧

换一换
首页 报告吧 > 资源分类 > PDF文档下载
 

区块链互操作白皮书.pdf

  • 资源ID:120995       资源大小:17.70MB        全文页数:34页
  • 资源格式: PDF        下载积分:15金币 【人民币15元】
快捷下载 游客一键下载
会员登录下载
三方登录下载: 微信开放平台登录 QQ登录  
下载资源需要15金币 【人民币15元】
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,下载共享资源
 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

区块链互操作白皮书.pdf

区块链互操作白皮书 可信区块链推进计划 2020年7月 ( 1.0版) 版权声明 本白皮书版权属于可信区块链推进计划,并受法律保护。转载、摘编 或利用其它方式使用本白皮书文字或者观点的,应注明“来源:可信 区块链推进计划”。违反上述声明者,可信区块链推进计划将追究其 相关法律责任。 区块链互操作白皮书(1.0版)编写委员会 牵头编写单位: 中国信息通信研究院 参与编写单位(排名不分先后): 深圳前海微众银行股份有限公司、百度(中国)有限公司、杭州趣链科技有限公司 腾讯云计算(北京)有限责任公司、西安纸贵互联网科技有限公司 上海分布科技信息有限公司、联动优势科技有限公司 编写组主要成员(排名不分先后): 何宝宏、魏凯、庞伟伟、和涛、刘虹男、张启、张奕卉、张开翔、李辉忠、 莫楠、程司雷、刘尧、陈晓丰、吴方洲、郑佩玉、汪小益、李佳、敖萌、 陈昌、樊家合、史磊、杨文韬、胡凝、刘胜、赵树伟、王琦、刘毅。 区块链互操作白皮书( 1.0版) 2 前言 区块链具有多方共识、分布式存储、难以篡改、可追溯的特性,在促进数据共享、优化业务 流程、降低运营成本、提升协同效率、建立可信体系等方面具有广阔的应用前景,政务、金融、司 法、供应链管理等领域的区块链应用探索如火如荼。 然而,当前正处在区块链技术百花齐放的阶段,不同行业的应用系统选择的底层区块链技平台 各异,这些平台在数据结构、共识机制、通信协议等方面千差万别,导致生态割裂,网络碎片化严 重,这将制约区块链在全社会的大规模应用。一是难以实现不同区块链系统间的跨链互通。区块链 跨链互通不仅涉及数据的互通,还需实现身份互认、共识转换和治理协同,然而不同系统在这些方 面实现方案的不同,加剧了跨链互通的难度,导致“链级孤岛”问题日益突出,极大限制了区块链 网络规模的扩大。二是难以实现应用在不同底层链之间的平滑切换。应用开发者、参与方管理员、 系统管理员通过底层链提供的相关接口使用底层链功能,而不同底层链提供的接口互不兼容的现 实,使得应用无法在不同底层链之间平滑迁移,导致应用被底层链锁定。三是难以保证链上链下数 据的可信交互。通常,链上应用的正常运转离不开链下数据的支撑和触发,如跨境贸易结算场景中 的汇率数据通常需要从链下获取。链上链下交互过程中需从数据来源可信、传输可信、计算可信三 方面保证数据的可信性,但当前尚缺乏规范的数据可信交互方案。 本白皮书凝聚了可信区块链推进计划成员单位的初步共识,界定了区块链互操作的概念,提 出了区块链互操作的参考框架;从应用层互操作、链间互操作、链下数据互操作三个方面分析了互 操作的基本需求;通过对目前业界已经提出的互操作技术方案的广泛调研,总结了互操作的技术现 状,对其中的关键问题进行梳理,并提出了相关的演进方向。 我们希望以本白皮书为起点,团结更多力量参与到区块链互操作研究和推动工作中,凝聚广泛 共识,形成更大合力,聚链成网,共同构建广泛互联的可信区块链生态体系。 3 一、概述 4 二、互操作概念与框架 6 (一)互操作概念 6 (二)区块链互操作框架 8 1.应用层互操作 9 2.链间互操作 10 3.链下数据互操作 11 三、应用层互操作 13 (一)需求分析 13 (二)互操作现状 15 (三)互操作建议 16 1.业务开发 16 2.参与方管理 17 3.系统管理 17 (四)演进方向 17 四、链间互操作 18 (一)需求分析 18 (二)互操作现状 19 (三)互操作建议 20 1.接入规则 21 2.通信协议 22 3.数据互信 22 4.跨链治理 23 (四)演进方向 23 五、链下数据互操作 24 (一)需求分析 24 (二)互操作现状 24 1.数据预言机 25 (1)中心化预言机 25 (2)去中心化预言机 26 2.计算预言机 26 (三)互操作建议 27 1.数据可信 27 2.隐私保护 28 3.安全监管 28 (四)演进方向 29 六、总结与展望 30 参考文献 31 目录 区块链互操作白皮书( 1.0版) 区块链作为一种分布式账本技术,以其多方共识、去中心化存储、难以篡改等特点,可在不同 参与方之间快速建立信任关系,促进缺乏信任基础的各方高效协同工作。随着区块链技术的演化成 熟,民众对区块链认知程度的不断提升,区块链逐渐在金融科技、政务民生、司法仲裁、供应链协 同、税务发票、版权保护等领域得到广泛应用,为各行各业赋能增效1。 发展区块链的愿景是形成一个连接各方的可信网络,连接的成员越多,其网络价值越大;区块 链上的应用越灵活,其生态越繁荣;链上数据越丰富,其信用放大作用越明显。但当前各行业均按 照自身需求构建起区块链生态,而由于行业早期技术先行、标准滞后,导致生态割裂,不同区块链 系统难以实现互联互通,具体表现在以下三个方面:第一,区块链跨链互通涉及数据互通、身份互 认、共识转换和治理协同多重因素,不同区块链系统在通信协议、身份管理、共识机制和治理方案 方面技术路线各不相同的现实,增加了跨链互通的难度,导致“链岛”问题日益突出。第二,区块 链系统通过接口将所支持的功能暴露给应用开发者、参与方管理员、系统管理员,而不同底层链所 提供的接口千差万别、互不兼容的现实,增加了应用与底层链对接适配、切换适配的工作量与工作 难度。第三,通常,链上合约的执行需要链下数据的触发,如跨境结算中的汇率数据需要从链下获 取,在链上链下数据交互过程中,尚缺乏规范的数据可信交互方案的现实限制了链上数据的丰富程 度,限制了区块链的应用范围。 互操作问题引起了国内外产业界各方的高度关注。 政府层面,美国国土安全部(Department of Homeland Security,DHS)设立区块链项目,聚焦于区块链安全性、互操作性、隐私保护三 个方面的研究2。欧盟报告3指出,跨链互通是区块链的必然趋势,建议政府出台相关措施支持 基础设施项目研究。德国联邦政府鼓励初创企业、中小企业、民间组织及开发者积极参与到区块 链相关标准的制定工作中,共同解决区块链互操作的难题4。行业组织层面,ITU(International Telecommunication Union,国际电信联盟)、IEEE(Institute of Electrical and Electronics Engineers,电气电子工程师协会)、ISO(International Organization for Standardization,国 一、概述 4 际标准化组织)、EEA(Enterprise Ethereum Alliance,企业以太坊联盟)、EBP(European Blockchain Partnership,欧洲区块链合作组织)5,以及CCSA(China Communications Standards Association,中国通信标准化协会)和TBI(Trusted Blockchain Initiatives,可信区 块链推进计划)等组织纷纷投入到区块链互操作相关标准制定中。 企业层面 ,国外的Microsoft、 IBM、SAP、Oracle等巨头纷纷推出了相应的跨链互操作方案,支持Hyperledger Fabric6、 Corda7、Ethereum8、Quorum9等区块链平台跨链互操作4;国内的微众银行、蚂蚁金 融、百度、趣链科技、纸贵科技等企业也纷纷推出WeCross10、ODATS11、BCP12、 BitXHub13、Zeus14等互操作解决方案。此外,行业还出现了一批以Cosmos15、 Polkadot16为代表的开源互操作项目。 区块链互操作已成为行业关注焦点,但关于互操作的定义和内涵尚未形成共识。本白皮书通过 对互操作的研究,给出区块链互操作概念,明确互操作范围边界,梳理不同部分需要解决的关键问题, 给出区块链互操作参考框架。在上述区块链互操作框架的基础上,对当前产业界已有的各种互操作技术 方案进行梳理分析。 5 区块链互操作白皮书( 1.0版) (一)互操作概念 互操作性英文为Interoperability,是Interaction、Operation和Ability的组合,可译为“相互操 作的能力”,简称互操作性。维基百科对互操作性给出解释:互操作性又可称之为互用性或协同能 力,是指不同系统和组织机构之间相互合作,协同工作的能力17。IEEE(Institute of Electrical & Electronic Engineers,电气与电子工程师协会)于1990年对互操作性给出定义:两个或多个系统 或组成部分之间交换信息,以及对所交换的信息加以使用的能力18。这一概念包含语法互操作性 和语义互操作性两部分:语法互操作性是指具备语法协同的能力,以数据通信为例,即通信双方在 数据格式、通信协议、接口描述等方面保持一致,如XML和SQL;语义互操作性是指两个或多个计 算机系统以语法互操作性为基础,进行数据通信,并对通信数据加以使用。 各方对区块链互操作有不同的认识。WEF(World Economic Forum,世界经济论坛)和德勤 认为,区块链互操作聚焦于不同链系统之间资产和信息的交互,实现方式包括跨链验证、预言机和 API网关三种5。以太坊创始人Vitalik Buterin认为跨链即为互操作,并提出了公证人机制、侧链/中继 链、哈希时间锁定三种跨链互操作技术19。埃森哲公司的David等人指出,区块链互操作是分布式账 本系统能够与多个DLT系统,以及DLT多个子系统之间互联互通的能力20。 不同区块链互操作技术方案的着眼点也不尽相同。Settler21、WeCross、BitXHub等项目致 力于解决跨链互操作等关键技术问题。腾讯云TBaaS、蚂蚁区块链BaaS、飞洛BaaS等区块链即服 务平台致力于解决上层应用与底层链互操作与跨链互操作两类问题。Oraclize22、ChainLink23 等区块链数据服务项目致力于解决链上链下的数据流通问题。 综上所述,业界对区块链互操作的认识分为狭义和广义两种。其中,狭义的互操作是指跨链互 操作,广义的互操作除了跨链互操作,还包含应用层与底层链交互、链上链下交互两方面。 本白皮书认为,区块链互操作是指:区块链系统实例与其他系统实例交换信息,并对所交换信 二、互操作概念与框架 6 息加以使用的能力。其中,其他系统实例指该区块链系统实例以外的所有外部系统实例,具体包括 上层应用系统、其它链系统、以及链下数据系统等,如图1所示。此外,还包括系统不同实例之间的 互操作。 图1.区块链互操作示意图 根据上述定义,区块链互操作包括应用层互操作、链间互操作和链下数据互操作三方面。 (1)应用层互操作:是指上层应用系统实例与底层区块链系统实例之间交换信息,并对所交换 信息加以使用的能力。具体包含两层含义:1)不同应用之间通过底层链实现数据流通与价值共享; 2)上层应用系统实例与底层区块链系统实例之间的对接交互。本白皮书重点描述后者,即聚焦于接 口规范化工作,促进不同区块链系统接口的相互兼容,简化上层应用与底层链之间适配对接工作。 (2)链间互操作:是指不同区块链系统实例之间交换信息,并对所交换信息加以使用的能力, 也可称之为跨链。主要表现在不同区块链系统实例之间进行信息交互的过程,包括同构链互操作和 异构链互操作。 (3)链下数据互操作:是指区块链系统实例和链下的数据系统之间交换信息,并对所交换信息 区块链互操作白皮书( 1.0版) 上层应用 Chain A 11 3 3 2 金融类应用 政务类应用 工业类应用 其它应用 链下数据 金融数据 政务数据 工业数据 其它数据 Node 1 Node 2 Node 3 Chain B Node 1 Node 2 Node 3 7 加以使用的能力。主要表现在区块链系统和外界数据系统之间进行安全交互的过程。 (二)区块链互操作框架 本白皮书明确了区块链互操作的边界范围,梳理了区块链互操作中的关键问题,给出区块链互 操作的参考框架,如图2所示。 图2.区块链互操作框架 区块链互操作根据应用场景可分为三类:1)应用层互操作用于解决上层应用和底层区块链之间 的交互;2)链间互操作用于解决不同区块链之间的交互;3)链下数据互操作用于解决区块链与链 下数据系统的信息可信交互。 完善的数字身份管理体系是区块链互操作的基石。数字身份作为一种基础设施,贯穿应用层 互操作、链间互操作、链下数据互操作,支撑区块链互操作的完成实现。为了更好的实现链间互操 作,同时为了明晰链上数据的权责问题,实现链上身份和链下身份的无缝对接,有必要对数字身份 进行规范,建立行业层面互通互信的数字身份管理体系。 区块链互操作白皮书( 1.0版) 区块链互操作框架 业务开发 合约接口 区块接口 交易接口 事件接口 系统管理 系统运维 错误规范 安全监控 参与方管理 用户管理 节点管理 应用层互操作 数字身份 接入规则 准入机制 适配接入 路由通信 链间路由 链内路由 数据互信 有效性 原子性 确定性 跨链治理 链权限管理 升级治理 审计监管 链间互操作 隐私保护 匿名保护 数据加工 加密保护 可信计算 数据可信 来源可信 传输可信 计算可信 安全监管 明确权责 跨境数据安全 审计监管 链下数据互操作 顶层数字身 份管理系统 数字身份协 议 8 1.应用层互操作 区块链应用系统中,上层应用与底层链主要通过接口层交互,如图3所示。 图3.应用层互操作接口框架 区块链接口种类繁多,不同底层链所支持的接口类型参差不齐,接口实现形式也各不相同, 大大增加了上层应用与底层链的对接成本,提高了区块链的使用门槛,阻碍了区块链更快更好的服 务更多行业。针对该问题,需要从行业角度对接口层进行梳理,从接口标准和接口中间件两方面入 手,解决上层应用与底层链紧耦合的问题。为此,本白皮书通过对区块链接口的梳理,按照使用对 象将接口分为三类: (1)业务开发接口:业务开发接口主要面向业务开发人员,业务包括支付业务、清结算业务、存证 溯源业务等,主要涉及合约接口、交易接口、区块接口、事件接口四类。 (2)参与方管理接口: 参与方管理接口主要面向参与方管理人员,包括用户管理和节点管理两 部分,用户管理指普通用户的管理,如用户认证、权限管理等,节点管理指链节点的准入管理、权 限管理等。 区块链互操作白皮书( 1.0版) 业务开发接口 合约接口 事件接口 区块接口 交易接口 系统管理 系统运维 安全监管 错误规范 参与方管理 用户管理 节点管理 应 用 层 底 层 链 接 口 层 金融应用 密码算法 政务应用 共识机制 工业应用 对等网络 其它应用 存储机制 9 区块链互操作白皮书( 1.0版) (3)系统管理接口:系统管理主要面向系统运维人员,包括系统运维、安全监管、错误规范三 个部分,系统运维指链系统的安装部署、告警、重启等运维相关接口,安全监管指审计监管、数据 合规相关接口,错误规范指错误码、错误信息等接口。对应用层互操作的详细描述见第三章。 2.链间互操作 链间互操作主要解决区块链系统之间互操作难的问题,链间互操作流程及相关的关键技术,如 图4所示。 图4.链间互操作流程与关键技术 链间互操作按操作流程可分为四步,描述如下(链间互操作关键技术详见第四章第三节): (1)接入跨链网络:通信双方所在的链系统接入跨链网络。为了保证跨链网络的安全可控,需 制定相应的底层链准入机制。同时,为了便于底层链方便快捷的接入到跨链网络,跨链网络需提供 通用性、兼容性较好的适配机制。 区块链互操作白皮书( 接入规则 准入机制 适配接入 路由通信 链间路由 链内路由 路由通信 有效性 确定性 原子性 跨链治理 链权限管理 审计监管 升级治理 链间互操作流程 链间互操作关键技术 接入跨链网络 跨链消息传输 执行跨链操作 归档审计 10 (2)跨链消息传输:跨链消息作为链间数据互通、价值流转的载体,同传统的互联网报文一 样,包括消息打包、路由传输、拆包解析等环节。传统互联网通过制定一系列协议,规范报文格 式、路由规则,结合统一的域名系统、地址系统,实现不同AS(Autonomous System,自治系 统)、不同终端的互联互通。同理,链间互操作也需要制定区块链网络资源的管理规范、消息格式 和路由规则的标准规范等,促进不同链消息的互通互认。 (3)执行跨链操作:接收端收到跨链消息后,拆包解析出有效信息,执行相应的跨链操作,如 资产转移、权限审批等。该过程中需保证跨链操作的安全可信执行,具体包括跨链消息的有效性、 执行结果的确定性、跨链操作的原子性。 (4)归档审计:核心跨链操作留痕归档,用于后续的合规审计。跨链网络涉及多条链,参与方 众多,跨链治理是保证跨链网络安全可控、良性健康发展的关键手段,具体包括链权限管理、审计 监管、升级治理等。 3.链下数据互操作 链下数据互操作主要解决链上链下数据的安全可信交互问题。区块链多方共识、难以篡改的特 点可以保证链上数据的安全共享,但在保证与链下系统交互过程中的安全可信方面存在难点。因此 该过程中要格外重视数据可信、隐私保护、安全监管问题。链下数据互操作所处位置及关键问题如 图5所示。 图5.链下数据互操作 区块链互操作白皮书( 1.0版) 数据可信 来源可信 传输可信 计算可信 安全监管 跨境数据安全 数据内容安全 数据权责问题 隐私保护 身份隐私 内容隐私 应 用 层 金融应用 政务应用 工业应用 其它应用 底 层 链 密码算法 共识机制 对等网络 存储机制 数 据 中 心 金融数据 政务数据 企业数据 其它数据 链下数据交互 11 区块链互操作白皮书( 1.0版) 区块链互操作白皮书( 链上链下交互场景中需从数据可信、隐私保护、安全监管三个方面来保证交互过程的可信、安 全、合规。 (1)数据可信包括数据来源可信、数据传输可信、计算可信三个方面,数据来源可信包括可信 第三方数据源,如银行数据、政府数据等具有信任基础的数据源,以及通过共识增信的预言机数据 源等。数据传输过程可信是指数据传输过程的可信,如常见的加密通道传输,专有网络传输等。计 算可信是指链下计算过程的可信,如通过可信执行环境保证链下计算过程的可信。 (2)隐私保护是指重视数据交互过程中的隐私问题,包括身份信息、资产信息等,常见技术手 段包括数据加密、数据加工、零知识证明、可信执行环境等。 (3)安全监管 是指为净化区块链网络环境,保证链系统健康可持续发展,在链上链下数据交互 过程中加强监管,将非法数据拦截在上链之前,具体包括跨境数据安全、数据权责问题、链上内容 安全三个方面。 对链下数据互操作的详细描述见第五章。 12 应用层互操作是指上层应用系统实例与底层区块链系统实例交换信息,并对所交换的信息加以 使用的能力。具体指上层应用系统实例通过底层区块链系统提供的接口,与底层区块链系统进行交 互的过程,如上层应用系统对底层链的身份认证、合约部署、交易发送、数据查询、运维管理、系 统监控等。 (一)需求分析 图6.区块链系统结构示意图 如图6所示,接口层是应用层和底层链之间联结的纽带,底层链通过接口层将所支持的功能暴 露出来,上层应用通过接口层使用底层链提供的服务。接口层在设计实现过程中,通常涉及层次划 三、应用层互操作 区块链互操作白皮书( 1.0版) 应 用 层 供应链金融 政务共享 防伪溯源 电子票据 司法存证 底 层 链 共识机制 密码计算 智能合约 对等网络 消息处理 存储系统 接 口 层 HTTP API SDK RPC Restful 13 区块链互操作白皮书( 1.0版) 分、接口设计、数据结构、编码方式、通信协议等多个方面,设计良好的接口层能够明显降低底层 链的使用门槛,同时又能提供较好的安全性和扩展性。实际应用中,由于不同的区块链团队成立背 景不同、技术偏好不同、聚焦问题不同,这些复杂交织的多重因素导致区块链系统在接口层存在 差异,造成不同区块链系统之间接口层互不兼容的问题,使得应用层与底层链紧耦合,增加了上层 应用与底层链系统适配对接的难度。当前,不同区块链系统接口层不一致主要表现在接口类型离散 化、接口定义差异化、接口实现多样化三个方面。 (1)接口类型离散化 是指不同区块链系统所支持的接口类型存在差异。现阶段,区块链接口种类 繁多,包括账户管理、网络管理、交易处理、区块处理、事件管理、合约管理、配置管理、节点管理、 运维管理等。不同区块链系统所支持的接口类型参差不齐,有些链功能完备,支持的链接口种类丰富; 有些链专注于某一领域,支持的接口类型有限。不同区块链系统所支持的接口类型存在差异,交集部分 偏少,彼此之间存在功能缺失的情况,且随着调研样本空间的扩大,接口类型的离散程度进一步增加。 (2)接口定义差异化是指相同功能的接口在功能描述和范围边界上存在差异。主要表现在以下两 个方面:1)定义描述不同:如Fabric和Corda都提供专门的角色负责链前校验,以保证上链消息的有 效性,Fabric中称之为背书节点,Corda中称之为公证人节点。2)范围边界不同:如账户管理接口中, 部分链在基本账户管理的基础上,还提供了DID(Decentralized ID,去中心化身份)、与链下的LDAP (Lightweight Directory Access Protocol,轻量目录访问协议)等身份管理系统对接等功能接口。 (3)接口实现多样化是指接口实现形式多样化。不同厂商由于技术背景不同、技术偏好不同、面 向的应用场景不同等因素,使得在实际开发中,不同区块链系统的接口层在实现方式上存在差异。常见 的实现方式包括灵活性、扩展性较好的Restful API、HTTP API,高效、可扩展的RPC接口,以及为迎 合不同语言开发者所提供的SDK,如Java SDK、Go SDK、JavaScript SDK、C/C+ SDK、Python SDK、Rust SDK等。本白皮书选取部分区块链系统,对其接口实现方式进行统计,如表1所示。 表1. 不同底层链接口实现方式对比表 区块链技术方案名称 JSON-RPC gRPC Restful API HTTP/S API FISCO BCOS XuperChain Hyperchain UChains TCChain Fabric Z-Ledger 14 由表1可见,不同厂商在接口实现方式上存在差异。厂商在选择接口实现方式时,通常会考虑团 队自身的技术栈、不同实现方式的社区生态等因素,因此,容易出现差异化,这将会增加上层应用 适配不同底层链的工作量与工作难度。 SDK为区块链应用的开发和应用系统的集成提供了辅助工具集。不同编程语言由于类型系统、 接口规范、命名规范、抽象表达能力等方面的差异,决定了SDK不具备跨语言能力。但SDK对上层 应用开发者友好、便于集成的特点,吸引了众多厂商愿意投入成本提供多语言的SDK支持,以吸引 不同语言生态的开发者。以部分区块链系统为例,其SDK支持情况如表2所示。 表2反映如下3个事实:1)在API的基础上,提供SDK是主流共识;2)上层应用开发语言的流行 程度直接影响厂商所支持的SDK语言类型,如Web应用中使用最为广泛的Java、JavaScript以及Go 语言成为厂商支持的首选语言;3)应用场景影响SDK支持程度,如面向嵌入式、底层开发的链系统 提供C/C+、Rust等底层系统语言的SDK支持。此外,调研发现,Swift、Rust等较为小众的语言也 成为部分厂商的支持对象,这和小众语言自身的语言特性以及区块链团队自身的技术栈有关。 应用层接口类型的离散化、接口定义的差异化、接口实现多样化的现状,给上层应用系统的对 接工作带来了三个问题:技术预研工作量大、应用开发难度大、应用系统切换底层链成本高,提高 了区块链的使用门槛,阻碍了区块链赋能各行各业的进程。 (二)互操作现状 为解决不同区块链系统接口不一致带来的接口层互不兼容的问题,BaaS服务提供商、区块链集 成商等纷纷给出了相应的解决方案。解决方案整体上可分为两种技术路线:1)抽象统一型,通过对 不同底层链数据结构的抽象,对外提供统一的抽象接口,对内通过接口转换机制实现抽象接口与不 同底层链接口的适配转换;2)分而治之型,对于能够抽象统一的接口类型,进行抽象统一,如用户 表2. 不同底层链所支持的SDK语言类型 SDK Java JavaScript Go Python C/C+ Other FISCO BCOS XuperChain C# Hyperchain C# UChains TCChain php、C# Fabric Z-Ledger 区块链技术方案名称 区块链互操作白皮书( 1.0版) 15 区块链互操作白皮书( 1.0版) 注册登录接口,对于统一难度大的接口类型,分别提供不同底层链的原生接口。 区块链接口层不一致问题包括数据结构不一致、接口定义不一致、接口参数和返回值不一致、 错误描述不一致等方面。不同底层链系统由于数据结构、共识层面的不一致,造成了接口层面不一 致的现状。在接口标准化方面,仍有部分接口实现标准统一的难度较大。 (三)互操作建议 接口层作为应用层和底层链的通信枢纽,是区块链应用层互操作落地实施的主要载体。接口 层从区块链应用使用角色出发,将使用者划分为应用开发者、系统管理者和系统运维者,分析其需 求,归纳出各个角色相应的互操作接口,如图7所示。 图7.应用层接口框架 1. 业务开发 开发者是区块链应用的重要推动者,是区块链应用的直接使用者和创造者。为了降低应用开发的 难度与工作量,区块链平台通常会提供一系列功能接口供开发者使用,具体应包括以下四种接口。 (1)交易接口:交易作为区块链账本中基本数据单位,是应用开发者使用频次较高的接口类 型,主要包括交易组装、交易发送、交易校验、交易查询等。 应 用 层 App A App B App C 底 层 层 Chain A Chain B Chain C 接口列表 接 口 层 Adapter Adapter A 接口标准 Adapter B Adapter C 业务开发 合约接口 交易接口 区块接口 事件接口 系统管理 系统运维 安全监控 错误规范 参与方管理 用户管理 节点管理 16 (2)区块接口:区块作为区块链系统的关键数据结构,涉及区块签名、区块打包、区块收发、 区块校验、区块查询等接口。 (3)合约接口:智能合约是区块链和上层应用之间的业务层抽象,是链系统支撑复杂业务的关 键支撑技术,接口通常包含部署合约、启动合约、升级合约、停止合约、查询合约等。 (4)事件接口:事件监听是上层应用对所关注业务实现自动化监听的关键技术,涉及订阅事 件、取消订阅等。 2. 参与方管理 区块链作为一个闭环的生态系统,为了提升系统的安全性、数据的隐私性,应配套相应的参 与方管理系统,提供对普通用户和节点用户的管理功能。普通用户指参与链活动的普通用户,是区 块链系统的主要参与者。节点用户是指参与记账、参与共识的节点,节点作为区块链网络的核心支 点,撑起了区块链网路的拓扑结构。前者应提供用户注册、用户认证、用户权限管理、黑名单机制 等服务。后者应提供节点准入控制、节点权限管理、异常节点处理等服务。 3. 系统管理 系统管理接口是面向系统管理人员提供的一系列接口。区块链系统的运维包括对系统的运行状 况的监控、安全审计、图表展示、预警通知、异常处理等。在区块链受到恶意攻击或者发现系统安 全漏洞时,系统管理人员可以迅速采取措施解除风险,保证系统的安全稳定运行。 (四)演进方向 应用层互操作问题的解决一方面依赖于应用程序与底层链之间互操作障碍的识别,另一方面取 决于解决方案的推出。应用层互操作能力可以按照应用范围和复杂程度逐层逐级进行成熟度升级, 逐步从信息交换发展到功能整合,从功能整合进一步升华到跨组织、跨业务互通,实现应用层互操 作能力的全范围覆盖。应用层互操作的发展除了区块链厂商出于业务发展与技术创新不断改进应用 程序与底层链之间的互操作能力之外,还需要行业层面凝聚共识,加快研制应用层互操作相关协议 标准,统一框架模型与应用指南,建设应用层互操作成熟度度量与评估体系,共同推动应用层互操 作发展进程。 区块链互操作白皮书( 1.0版) 17 区块链互操作白皮书( 1.0版) 链间互操作是指不同区块链系统实例之间交换信息,并对所交换信息加以使用的能力,又可称 之为跨链。具体指不同区块链系统实例之间通过协商好的接口、通信协议、共识协议实现信息的安 全可信交互。主要用于解决区块链世界“链级孤岛”问题,实现不同区块链系统之间的数据互通、 价值流动。 (一)需求分析 随着区块链应用广度和深度的不断拓展,催生了一系列的链间互操作需求,包括医药跨平台追 溯、司法跨链仲裁、金融保险跨平台协作、数据跨域授权等。 医药跨平台追溯:目前各省市逐步建立起以区块链技术为基础的医药追溯平台,以实现对医 药生产、物流、流转、使用全流程的追溯监管,全国一盘棋的政策安排对跨省市、跨层级、跨平台 的数据互通提出了新的要求。 司法跨链仲裁:司法领域信息化、现代化进程的不断推进,以“天平链”为代表的区块链司 法应用得到了长足发展。随着区块链应用在司法领域的普及,跨区域、跨层级的不同司法系统之间 互联互通的需求愈发强烈,如跨链取证、跨链仲裁等。 金融保险跨平台协作:当前银行业落地了一些以区块链为基础设施的基金业务,而以保 交所为代表的交易机构同样也在探索区块链应用实践,银行和保交所底层链系统互不兼容的现 实阻碍了二者的协作进程。这就需要一种高效、安全、可信的链间互操作技术来打通二者的交 互壁垒。 数据跨域授权:随着WeIdentity24、Hyperledger Indy25等数字身份认证系统的出现, 多个国家和地区开展了多中心化身份认证系统的应用探索。而随着数字身份认证应用范围的不断拓 展,跨区域、跨行业、跨业务的数字身份认证需求越来越多,跨链认证需求增多和跨链认证难之间 四、链间互操作 18 区块链互操作白皮书( 1.0版) 的矛盾日趋显著。 (二)互操作现状 为了应对链间互操作的挑战,旨在搭建链与链之间可信交互渠道的跨链技术逐渐成为业界关注 的焦点,高效通用的跨链技术是实现万链互联的关键。跨链技术能够连通分散的区块链生态孤岛, 成为区块链整体向外拓展的桥梁纽带。当前,业界在跨链领域已有初步的探索和积累,讨论较多的 跨链技术包括公证人机制、侧链/中继链、哈希时间锁定和分布式私钥控制等。 由表3可见,不同链间互操作技术在互操作能力、原子性、通用性、安全性、扩展性等方面表 现各异。公证人机制借助于已有信任关系的公证人联盟,形成一个相对封闭的联盟网络,支持丰富 的链间互操作业务场景,提供高效的链间互操作服务;其它三种互操作技术不依赖已有信任关系, 在开放网络中,依靠“技术+经济”模型的机制提升系统的安全性,适用于对开放性、扩展性要求较 高的场景。四种技术各有所长,也各有不足,为适应不同应用场景,不同厂商以以上四种技术为基 础,交叉融合,形成了一系列链间互操作方案,如表4所示。 由表4可见,公链领域的链间互操作方案主要面向加密数字货币交易场景,用于解决不同币种 之间的兑换交易。联盟链中的链间互操作方案主要面向实体应用,用于解决不同联盟链之间的互联 互通,跨链网络通常设有准入机制。为了支持大规模的商用,同时为了提升跨链网络的灵活性与效 率,无论是公链,还是联盟链大多采用了以链治链的中继链路线。 表3. 链间互操作技术对比表 技术类型 互操作能力 原子性 通用性 安全性 可扩展性 公证人 侧链/中继链 哈希时间锁定 分布式私钥控制 公证人决定所 支持的互操作 交易类型 支持转账、合 约调用等互操 作交易 主要支持转账 类交易 主要支持转账 类交易 交易原子性由 公证人担保 交易原子性由 合约实现 交易原子性由 哈希锁定和超 时机制实现 交易原子性由 多签算法实现 公证人决定支持的 平台类型 侧链/中继链决定 支持的平台类型 闪电网络支持比特 币网络,雷电网络 支持以太坊 底层链需支持脚本 机制和签名校验, 主流公有链、联盟 链均支持 公证人互信机制保 证网络安全 默克尔证明等保证 跨链交易安全性 哈希算法保证跨链 交易安全性 多签算法保证跨链 交易安全性 需要 不需要 不需要 不需要 公证人决定 可平行扩展 可平行扩展 可平行扩展 是否需要 信任基础 19 (三)互操作建议 图8.链间互操作流程示意图 如图8所示,链间互操作方案按流程可分为四个步骤: (1)接入网络:底层链接入跨链网络; (2)消息传输:发送跨链消息,跨链消息根据既定路由协议,路由传输至目的地; 区块链互操作白皮书( 1.0版) 表4. 链间互操作方案对比表 方案名称 技术路线 类型 项目进展 应用场景 BTC-Relay Ripple Cosmos Polkadot WeCross BCP BitXHub Zeus 侧链 基于HTLC的ILP协议 基于中继链的IBC协议 基于中继链的XCMP协议 中继链+哈希时间锁定+二阶段提交 中继器+二阶段提交+TEE 中继链+跨链网关 中继链+跨链网关+二阶段提交 公链 公链 公链 公链 联盟链 联盟链 联盟链 联盟链 主网已上线 主网已上线 主网已上线 主网未上线 已开源,已投入使用 暂无开源计划 已开源,已投入使用 暂无开源计划 加密数字货币交易,在以太坊上验证 比特币支付 加密数字货币交易,跨境支付 加密数字货币交易为主,行业应用处 于探索期 加密数字货币交易为主,行业应用处 于探索期 以赋能实体经济为主,可应用于司法 跨链仲裁、数字资产交换、数据跨域 授权等领域 以赋能实体经济为主,可应用于数字 资产交换、数据跨网跨域互通、物联 网平台联动、司法仲裁等领域 以赋能实体经济为主,可应用在司法 跨链仲裁、物联网平台联动、数字资 产交换等领域 以赋能实体经济为主,可应用于数据 跨网跨域互通、多级业务协同、联合 征信等多链融合领域 底层链 监管链 跨链网络 1.接入跨链网络 2.跨链消息传输 3.执行跨链操作 4.跨链治理 20 区块链互操作白皮书( 1.0版) (3)执行操作:接收方收到跨链消息后,解析消息并执行跨链操作,对跨链执行结果进行校 验,保证跨链操作的安全、正确执行; (4)跨链治理:跨链网络的治理,包括恶意节点的惩处、异常交易回滚、网络分区恢复、升级 治理、安全审计等。 1. 接入规则 跨链网络出于安全性、通用性的考虑,通常会设计相应的底层链准入机制、以及统一的入网接 口,方便不同底层链适配接入到跨链网络。 如表5所示,在准入规则方面,公链链间互操作方案通常采取代币质押,结合经济激励模型,促 进公链互操作网络的快速拓展,从经济奖惩方面提升网络的安全稳定。为了进一步提升跨链网络的 安全稳定与隐私保护,联盟链多采用登记审核的方式对接入网络的底层链进行入网管理。在接入方 式方面,BTC-Relay、Ripple提供了开放接口及SDK方便其它链的接入,Cosmos、WeCross等 在开放接口、SDK的基础上,还提供了适配器服务,进一步简化底层链的接入工作。在抽象层次方 面,链间互操作方案为了消除不同底层链之间数据结构、报文格式、接口形式等方面的差异,通常 对区块头等关键数据结构进行抽象,统一关键数据结构、报文格式等。 现有链间互操作方案在准入机制、接入方式、抽象层次方面的工作,降低了底层链接入跨链网 络的难度,屏蔽了不同底层链在关键数据结构方面的差异,让异构链之间的互联互通成为可能。但 当前,不同链间互操作方案之间在数据结构、准入机制、接入方式之间存在差异,且彼此间尚不存 在兼容互通的趋势,阻碍了不同跨链网络之间的互联互通。接入规则作为链间互操作的第一步,其 通用性、易用性直接决定了跨链网络的接入门槛,影响跨链网络的规模与生态。 表5. 链间互操作方案关于接入规则实现对比 方案名称 准入规则 接入方式 抽象层次 BTC-Relay 代币质押 开放接口、SDK 抽象区块 Ripple 代币质押 开放接口、SDK 抽象ILP Prepare等部分报文 Cosmos 接入主网代币质押 开放接口、SDK、适配器

注意事项

本文(区块链互操作白皮书.pdf)为本站会员(幸福)主动上传,报告吧仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知报告吧(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2022 报告吧 版权所有
经营许可证编号:宁ICP备17002310号 | 增值电信业务经营许可证编号:宁B2-20200018  | 宁公网安备64010602000642号


收起
展开