区块链和分布式记账技术 互操作 第1部分:跨链技术规范 征求意见稿_第1页
区块链和分布式记账技术 互操作 第1部分:跨链技术规范 征求意见稿_第2页
区块链和分布式记账技术 互操作 第1部分:跨链技术规范 征求意见稿_第3页
区块链和分布式记账技术 互操作 第1部分:跨链技术规范 征求意见稿_第4页
区块链和分布式记账技术 互操作 第1部分:跨链技术规范 征求意见稿_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX区块链和分布式记账技术互操作第1部分:跨链通用技术规范本文件提出了区块链系统间跨链的通用过程、关键组件和技术要求,并描述了相应的测试方法。本文件适用于指导区块链跨链系统的设计、实施、测试和评估。2规范性引用文件本文件没有规范性引用文件。3术语和定义下列术语和定义适用于本文件。3.1区块链blockchain使用密码技术链接将共识确认过的区块按顺序追加形成的分布式账本。[来源:GB/T42752-2023,3.12]3.2共识consensus在分布式节点坚达成区块链数据一致性认可的结果。[来源:GB/T42752-2023,3.7]3.3智能合约smartcontract存储在分布式账本中的计算机程序,智能合约的共识执行结果都记录在分布式账本中。[来源:GB/T42752-2023,3.13]3.4交易transaction工作过程的最小单元,是产生符合规则要求的结果所需的一个或多个动作序列。[来源:GB/T42752-20233.4,有修改]3.5跨链cross-chain将消息从一个区块链真实有效的转移到另一个区块链,并产生预期效果的过程。注2:有效是指另一个区块链收到消息时,一个区块链上的注3:产生预期效果是指一个区块链需要能够确认另一个区块链4通用过程跨链涉及区块链系统、链间互操作组件和客户端三类角色,区块链系统负责自身的交易处理,确保系统内数据的不可伪造、不可篡改和可追溯,链间互操作组件负责跨链交易的传输、跨链交易模型的实现、跨链消息的发送和接收,客户端泛指与区块链进行信息交互的其它信息系统。跨链通用过程见图1。2FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX图1通用过程为方便说明各步骤,将发起方的区块链、链间互操作组件和客户端简称为区块链A、链间互操作组件A和客户端A,目的方的区块链、链间互操作组件和客户端简称为区块链B、链间互操作组件B和客户端B。跨链通用流程包括13个步骤。a)步骤1:链间互操作组件A接收跨链交易请求,或区块链A接收跨链交易请求,请求应包括:1)全局唯一的跨链交易标识;2)区块链A的名称;3)区块链A的标识;4)区块链B的名称;5)区块链B的标识;6)区块链的智能合约名称和合约调用方法;或者交易载体;7)跨链发生时间戳。b)步骤2:链间互操作组件A向客户端A返回跨链交易的响应,或区块链A向客户端A返回跨链交易的响应。c)步骤3:链间互操作组件A调用区块链A的预调用跨链合约,或区块链A执行交易、向链间互操作组件发送来源证明文件。d)步骤4:区块链A执行交易,返回结果给链间互操作组件A。其中,可选地,返回结果包括来源证明文件。来源证明文件包括:交易版本、交易的哈希值、交易类型、时间戳等。或者,链间互操作组件给区块链A返回响应。e)步骤5链间互操作组件A向链间互操作组件B发送发起跨链交易操作消息,消息应包括:1)跨链交易标识;2)跨链交易操作的类型(可选);3)来源证明文件;4)发起方标识;6)目的方的交易执行参数或交易载体;7)数据可信证明。f)步骤6:链间互操作组件B对消息进行验证,调用区块链B的预写入合约。3FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXXg)步骤7:区块链B执行预写入合约,将证明文件返回链间互操作组件B。h)步骤8:链间互操作组件B向链间互操作组件A发送消息,用于通知跨链交易执行结果,消息应包括如下内容:1)跨链交易的标识;2)跨链交易操作的类型(可选);3)跨链交易操作的结果返回信息;4)跨链交易可信证明文件;5)发起方的标识;6)目的方的标识;7)数据可信证明。i)步骤9-1:链间互操作组件A验证消息,并向区块链A发送请求消息,用于最终提交或者回滚请求。可选,请求消息可包括:跨链交易标识;链名或链标识;合约名称;合约确认跨链结果的方法;或跨链执行结果。步骤9-2:区块链A确认结果,并返回OK。j)步骤10-1:链间互操作组件A基于步骤8的验证结果向链间互操作组件B发起交易提交或回滚请求,请求应包括如下内容:1)跨链交易的标识;2)发起方的标识;3)目的方的标识;4)数据可信证明;5)跨链交易操作的类型(可选);6)扩展字段(可选):跨链执行结果;7)扩展字段(可选):交易载体。步骤10-2:跨链互操作组件B确认结果,并返回OK。k)步骤11:链间互操作组件B根据步骤9的消息向区块链B发送提交或回滚请求,完成整个跨链交易流程。l)步骤12(可选):链间互操作组件A向客户端A返回跨链交易的响应,响应包括如下内容:1)跨链交易标识;2)跨链交易操作的结果返回信息。m)步骤13-1:客户端A向区块链B查询跨链交易的执行情况,并得到返回结果。步骤13-2:区块链B确认结果,并返回OK。5关键组件5.1概述链间互操作组件由网络模块、存储模块、验证模块、证书模块、权限模块、交易管理模块和共识管理模块组成,见图2。图2中的各模块分布在一个物理单元中,或者分布在不同的物理单元中。4FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX图2链间互操作组件功能5.2网络模块网络模块提供了互操作组件的网络通信功能。网络模块应符合如下要求:a)支持建立安全加密的网络信道链接;b)支持链间互操作组件与区块链之间、链间互操作组件与链间互操作组件之间进行数据交换;c)支持失败重连;d)支持一个或者多个功能:不同区块链系统的网络访问,支持接收不同区块链应用业务交易,支持对不同区块链系统的交易的格式转换,支持跨链交易传输。5.3存储模块存储模块提供了互操作组件的存储功能。存储模块应满足如下要求:a)存储跨链配置信息、跨链启动数据、跨链交易执行状态、系统操作日志、系统证书、跨链证明文件;b)支持以账本模式加密存储跨链交易数据,账本不可修改、删除;c)支持对存储的状态信息的查询、修改及删除功能;d)支持存储跨链智能合约的信息,存储跨链交易列表信息,包括待执行跨链交易、已完成跨链交易、待重试跨链交易等。5.4验证模块验证模块提供了互操作组件的验证功能。验证模块应满足如下要求:a)支持跨链交易的合法性验证,如参数检查、权限检查、中继签名验证、交易执行结果确认等。b)支持对于消息的身份和有效性验证。5.5证书模块证书模块提供了互操作组件的证书生成、证书管理和认证等功能。若支持证书模块,证书模块满足如下要求:a)应支持为客户端生成用户证书;b)应支持管理用户证书;c)应支持对合法的跨链交易进行背书。d)宜支持跨链过程中身份的认证和管理。5FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX5.6权限管理模块权限模块提供了互操作组件的权限管理功能。权限管理模块满足如下要求:a)支持跨链的权限添加、修改;b)支持跨链的权限查询;c)支持对跨链交易执行权限进行合法性验证。5.7交易模块交易模块提供了互操作组件的与交易有关的功能。交易管理模块应满足如下要求:a)支持进行交易参数验证,包括来自区块链和链间互操作组件的交易验证;b)支持执行交易,将交易写入区块链。5.8共识管理模块共识管理模块提供了互操作组件的共识算法管理功能。若支持共识管理模块,共识管理模块应满足如下要求:a)支持对不同交易进行排序;b)宜支持拜占庭共识算法。6技术要求6.1一致性跨链满足如下一致性要求:a)保障跨链交易在整个流程中的交易一致性;b)支持交易超时处理机制,在交易超时且不满足一致性要求时进行回滚处理;c)支持实时或周期性的交易检查机制;d)允许交易回滚失败时,通过第三方介入的方式保障交易一致性。6.2可追溯性跨链应满足如下可追溯性要求:a)保障跨链交易在整个流程中的交易可追溯性;b)跨链交易在发起方区块链和目的方区块链都可查询;c)跨链交易可在链间互操作组件中查询。6.3性能6.3.1并发性能跨链应满足如下并发性能要求:a)支持链间互操作组件接收区块链并发请求;b)支持链间互操作组件接收链间互操作组件并发请求。6.3.2网络性能跨链应满足如下网络性能要求:a)链间互操作组件占用带宽(静默带宽、跨链交易、签名验签、权限管理等)应在正常范围内;6FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXXb)链间互操作组件在网络服务质量要求(往返时延、丢包率)达到互联网接入质量时功能正常。6.4可用性跨链的可用性要求如下:a)应支持链间互操作组件出现故障后自动回滚;b)应支持无单节点故障,可采用多活或负载均衡方式;c)应支持跨链交易数据和配置的自动备份;d)应支持将数据备份,并支持利用备份数据在系统故障时快速恢复业务环境;e)应支持账本增量或全量备份;f)链间互操作组件宜支持账本备份,可以为其他节点恢复数据。6.5信息安全6.5.1权限跨链的权限应满足如下要求:a)支持交易权限设置,实现读写权限分离,账本访问和链码访问权限分离;b)支持分权分域,根据用户角色设置管理权限,对用户授权遵循最小权限原则;c)支持对跨链交易双方进行身份认证。6.5.2接入安全跨链的接入安全要求如下:a)应支持通过用户数字证书进行身份认证;b)应支持超时断开机制,超时后应断开用户会话或重新鉴别用户身份;c)应支持在用户认证失败达到指定次数后,阻止用户再次发起认证请求;d)宜支持动态口令卡、USBKey、指纹、智能卡认证进行身份认证,其配套设备和系统必须符合国家相关规定;e)宜支持双因子认证。6.5.3数据安全跨链满足如下数据安全要求:a)应支持跨链交易端到端的完整性保护;b)应支持跨链通信端到端传输过程中的加密保护;c)宜支持链间互操作组件账本本地数据的加密存储;d)应支持跨链交易数据只能被目的方获取,其它方无法获取;e)应支持区块链中的非授权数据无法被链间互操作组件访问。7测试方法7.1关键组件测试7.1.1网络模块网络模块的测试方法按表1:表1网络模块测试17FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX27.1.2存储模块存储模块的测试方法按表1:表2存储模块测试127.1.3验证模块验证模块的测试方法按表1:表3验证模块测试127.1.4证书管理模块证书管理模块的测试方法按表1:表4证书管理模块测试1237.1.5权限管理模块权限管理模块的测试方法按表1:表5权限管理模块测试8FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX17.1.6交易模块交易模块的测试方法按表1:表6交易模块测试17.1.7共识管理模块共识管理模块的测试方法按表1:表7共识管理模块测试17.2一致性测试一致性测试方法按表1:表8一致性测试17.3性能测试7.3.1计时方法计时的测试方法按表1:表9计时方法测试17.3.2并发性能并发性能的测试方法按表1:表10并发性能测试9FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX17.3.3网络性能网络性能的测试方法按表1:表11网络性能测试17.4可用性测试可用性的测试方法按表1:表12可用性测试1237.5信息安全测试7.5.1权限权限的测试方法按表1:表13权限测试1权2FORMTEXTGB/TFORMTEXTXXXXX.1—FORMTEXTXXXX7.5.2接入安全接入安全的测试方法按表1:表14接入安全测试127.5.3数据安全数据安全的测试方法按表1:表15数据安全测试123FORMTEXTGB/TFO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论