CN112583917A - 一种基于cscp的混合链构建方法 - Google Patents

一种基于cscp的混合链构建方法 Download PDF

Info

Publication number
CN112583917A
CN112583917A CN202011458029.6A CN202011458029A CN112583917A CN 112583917 A CN112583917 A CN 112583917A CN 202011458029 A CN202011458029 A CN 202011458029A CN 112583917 A CN112583917 A CN 112583917A
Authority
CN
China
Prior art keywords
chain
transaction
cross
certificate
cscp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011458029.6A
Other languages
English (en)
Other versions
CN112583917B (zh
Inventor
臧铖
陈嘉俊
郭东升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Zheshang Bank Co Ltd
Original Assignee
China Zheshang Bank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Zheshang Bank Co Ltd filed Critical China Zheshang Bank Co Ltd
Priority to CN202011458029.6A priority Critical patent/CN112583917B/zh
Publication of CN112583917A publication Critical patent/CN112583917A/zh
Application granted granted Critical
Publication of CN112583917B publication Critical patent/CN112583917B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于CSCP的混合链构建方法,本发明是一种去中心化的链间通信方案,每个区块链组织具有至少一个跨链通信代理节点,代理节点和原生态的区块链所有节点均能够连接;通过跨链标准交互协议CSCP统一信息格式,实现联盟链、私有链、公有链以及其他跨链协议区块链网络的融合链协议交互;CSCP协议将不同架构的区块链消息转换成统一标准的跨链总线消息,有效地打通各个区块链网络的价值孤岛,在进行业务处理时具有很高的吞吐率,并能够满足信息交互的真实可靠、价值对等、事务一致性等要求。不同的区块链平台上的资产和流量,包括公有链、联盟链、私有链以及其他跨链区块链网络将能够以原生链的身份加入进来,构建更大的区块链生态。

Description

一种基于CSCP的混合链构建方法
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于CSCP的混合链构建方法。
背景技术
区块链最大价值是实现信息价值的传递,但是大多区块链平台具有很强的排他性,导致在如今的区块链网络中,会存在许多的价值孤岛,特别针对许可链和非许可链来讲,链间交互面临着架构不一致、接口不统一、共识不一致等等问题,并且普遍存在执行速度不断降低,交易延迟不断增大的问题,导致交易规模和交易速度远远达不到商业应用高并发、高响应速度的需求。这些原因大大限制了区块链的进一步发展。
发明内容
针对当前公链、跨链无法解决核心痛点的问题,本发明提出一种基于CSCP的混合链构建方法。
本发明的目的是通过以下技术方案实现的:一种基于CSCP的混合链构建方法,包括:
每个区块链组织具有至少一个跨链通信代理节点,代理节点和原生态的区块链所有节点均能够连接,通过代理节点实现混合链的构建,代理节点负责区块链各方之间的注册、消息签名、交易路由、验证签名、验证交易存在性、保证事务一致性;
通过跨链标准交互协议CSCP统一信息格式,实现联盟链、私有链、公有链以及其他跨链协议区块链网络的融合链协议交互;
CSCP协议将不同架构的区块链消息转换成统一标准的跨链总线消息,主要字段包括:version,协议版本;SourceChainID,来源链地址;DestChainID,目的链地址;CrosschainPayload,跨链交易内容;Timestamp,时间戳;signature,代理节点签名;Cert,跨链交易节点证书;Proof,存在性验证信息;OriginInfo,跨链交易原始交易信息;extra,用户扩展字段;其中CrosschainPayload通过json序列化成字节类型,根据跨链交易的区块链架构而定,当传递到目的链时通过json解析出对应的结构;
CSCP协议上定义了标准接口,用于不同区块链之间的信息交互,包括:交易转换接口、交易发送接口、交易接收接口、交易验证接口、注册链接口、更新链接口、注销链接口,其中交易转换接口用于针对不同架构的链能够将异构的交易消息通过CSCP协议适配各自的架构。
进一步地,所述跨链标准交互协议CSCP是一条支持混合链生态的基础协议,采用去中心化管理,去中心化数据存储,实现链上资产互通;不同区块链平台上的资产和流量,能够以原生链的身份加入进来,构建更大的区块链生态。
进一步地,区块链各方或其代理节点上设有证书管理模块,用来生成和管理相关的CA证书和数字证书,证书管理模块的功能具体如下:
a、证书签发:通过证书管理模块生成根证书root.ca及根证书私钥root.priv;当混合链中不同区块链之间发起通信时,需要注册身份信息,由目的链的根证书root.ca签发跨链证书crosschain.cert及跨链证书私钥crosschain.priv到源链;
b、证书检查:证书管理模块提供证书检查服务,检查内容包括证书是否由目的链代理节点的root.ca证书签发的跨链证书、摘要签名是否合法;
c、证书撤销:当用户个人身份信息发生变化,或者私钥丢失、泄露或者疑似泄露时,证书用户可以向证书管理模块提出证书撤销请求,证书管理模块生成证书撤销列表,该列表中列举着所有在有效期内但被撤销的数字证书,在证书验证时根据证书撤销列表检查跨链交易的证书是否被撤销。
进一步地,不同区块链平台构建混合链的流程包括以下步骤:
(1)证书颁发:通过证书管理模块给跨链代理节点颁发证书及公私钥对;
(2)链注册:源链向目的链进行跨链注册,主要包括源链的身份信息、验证规则,注册成功后,目的链的验证引擎会生成对该链的验证规则,并把源链的身份信息、链信息存储到目的链的注册表里,进行持久化存储;
(3)身份及验证规则管理:验证规则用于验证跨链交易的存在性和有效性,在混合链中不同区块链进行通信时能够验证链的身份,并匹配相应链的验证规则对交易存在性和有效性进行验证;
(4)检查阶段:检查产生该跨链交易的源链是否已经注册过,是否具有相关权限;
(5)验证阶段:通过交易的源链身份信息,在目的链的注册表里匹配验证规则,然后将交易权限信息、验证信息、验证规则、跨链交易输入到验证引擎进行验证;
(6)执行阶段:跨链交易通过验证后执行交易并返回结果。
进一步地,通过注册信息进行权限控制管理,注册时可以指定链的权限信息,包括链的访问权限、合约读写权限、数据读写权限、信息获取范围;在交易验证阶段可以进行验证,能够进行灵活的权限管控。
进一步地,在执行阶段通过非对称秘钥签名和验签保证交易消息的有效性。
进一步地,跨链交易的存在性证明由默克尔证明来实现,将源链生成的跨链交易证明构造为默克尔树结构,目的链接收源链发送的跨链交易证明后,通过默克尔证明方法来验证跨链交易的存在性。
进一步地,通过跨链事务锁定和事务提交回滚保证跨链事务一致性,包括:
源链通过其代理节点向目的链发起跨链交易;在源链的代理节点和目的链的代理节点执行以下操作:
源链的代理节点生成跨链交易证明和跨链交易摘要签名,锁定事务α,向目的链的代理节点发起跨链事务请求;
目的链的代理节点收到跨链事务请求后,验证锁定的事务α,如果验证通过则锁定事务β,生成事务β锁定证明,并将事务β锁定证明发送给源链的代理节点;
源链的代理节点接收并验证事务β锁定证明,如果验证通过则向目的链发起跨链交易请求,所述跨链交易请求中包括跨链交易证明和跨链交易摘要签名;
目的链的代理节点接收跨链交易请求,并验证跨链交易证明和跨链交易摘要签名,如果验证通过则解锁事务β,提交跨链事务,并向源链的代理节点返回提交跨链事务凭证;
源链的代理节点接收并验证提交跨链事务凭证,如果验证通过则解锁事务α,实现事务α和事务β的一致性操作;
在验证过程中,目的链的代理节点在门限时间内验证事务β是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务β;源链的代理节点在门限时间内验证事务α是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务α;
通过事务锁定和交互,保证事务α和事务β同时解锁或者同时未解锁。
进一步地,事务锁定和回滚具体如下:
源链生成随机内容s,计算哈希值H=Hash(s),并将随机内容s的哈希值H和门限时间T0发送到目的链;
源链用哈希值H和门限时间T0锁定事务α;
目的链收到随机内容s的哈希值H,并用门限时间T1和H锁定事务β,其中T1<T0;
目的链发送事务β锁定证明和门限时间T1到源链;
源链发送H的原始内容s到目的链,目的链如果在门限时间T1内收到s,则解锁事务β,源链获取事务β锁定的信息,否则进行事务回滚;
目的链发送H的原始内容s到源链,源链如果在门限时间T0内收到s,则解锁事务α,目的链获取事务α锁定的信息,否则进行事务回滚。
进一步地,混合链消息传递过程通过跨链代理节点进行,包括以下步骤:
源链发送跨链消息到其代理节点;
源链的代理节点将源链消息类型转换为CSCP;
源链的代理节点对CSCP消息签名,将CSCP消息发送到目的链的代理节点;
目的链的代理节点接收到CSCP消息,对CSCP消息进行签名验证、身份验证、权限验证、存在性验证后,将CSCP消息转换成目的链格式的交易消息,
将跨链交易发送到目的链;
目的链处理跨链消息并返回处理结果。
本发明的有益效果是:本发明通过设计一种跨链标准交互协议CSCP,能够统一信息格式,所以能够兼容公有链、联盟链、私有链以及其他跨链协议区块链网络,有效地打通各个区块链网络的价值孤岛,在进行业务处理时具有很高的吞吐率,相比单链的性能有着很大提高,并能够满足信息交互的真实可靠、价值对等、事务一致性等要求。本发明混合链构建方案是一种去中心化的链间通信方案,每个区块链组织自己进行跨链的身份管理、交易证明、事务一致性保证、链间路由等。不同的区块链平台上的资产和流量,包括公有链、联盟链、私有链以及其他跨链区块链网络将能够以原生链的身份加入进来,构建更大的区块链生态。
附图说明
图1是本发明实施例提供的混合链架构图;
图2是本发明实施例提供的混合链构建示意图;
图3是本发明实施例提供的公有链、联盟链、私有链及其他跨链区块链网络共同构建混合链生态示意图;
图4是本发明实施例提供的混合链信息交互流程图;
图5是本发明实施例提供的默克尔树结构图;
图6是本发明实施例提供的事务锁定和回滚流程图;
图7是本发明实施例提供的混合链消息传递流程图。
具体实施方式
为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
本发明设计一种基于CSCP的混合链构建方法,混合链架构如图1所示。本发明通过设计一种跨链标准交互协议CSCP(crosschain standard communication protocol),能够统一信息格式,所以能够兼容公有链、联盟链、私有链以及其他跨链协议区块链网络,有效地打通各个区块链网络的价值孤岛,在进行业务处理时具有很高的吞吐率,相比单链的性能有着很大提高,并能够满足信息交互的真实可靠、价值对等、事务一致性等要求。
本发明主要通过跨链通信代理节点crossagent实现混合链的构建,其主要功能包括:证书管理模块、链间通信协议CSCP、跨链通信总线接口等。图2为混合链构建图。证书管理模块设置在区块链各方或其代理节点上,证书管理模块主要负责证书签发、管理等功能,依靠密码学确保链间交互安全。crossagent负责链间通信、链的身份注册管理、交易真实性验证、事务一致性保证等功能,是CSCP协议的具体实现。
本发明混合链构建方案是一种去中心化的链间通信方案,每个区块链组织自己进行跨链的身份管理、交易证明、事务一致性保证、链间路由等。不同于中继链方式,中继链是一种中心化的链间管理模式,有悖于区块链去中心化思想。
本发明提出的CSCP是一条支持混合链生态的基础协议,实现了联盟链、私有链、公有链、其它跨链区块链网络的融合链协议交互。它采用去中心化管理,去中心化数据存储,实现链上资产互通,能够推动全球聚合去中心化交易、网格链化治理、应用价值流动。不同的区块链平台上的资产和流量,包括公有链、联盟链、私有链以及其他跨链区块链网络将能够以原生链的身份加入进来,构建更大的区块链生态,如图3所示。
在现有区块链技术下,数据存储采用链式本地存储,导致无法平行扩展,共识机制采用同步式状态机模型导致无法高效处理交易,同时受限于网络中单节点的性能极限,因此单链架构无法满足应用的性能、容量、用户体验及其他要求。基于CSCP的混合链的优势在于适用应用场景众多,处理性能及吞吐率远远优于单一链,其应用包括但不限于公链与公链之间、跨链与跨链之间、公链与联盟链之间的代币交易和流量交互,最典型如去中心化交易所、金融支付、溯源联盟链、节点奖励模式等。能够有效的解决现在区块链世界中价值以及数据孤岛问题,打造一个真正的区块链网格生态。
混合链通信双方通过代理节点crossagent进行通信。具体地:
crossagent为混合链之间通信的代理节点,它和原生态的区块链所有节点均可连接,提供一定的容错能力,当发起跨链交易,由crossagent的发送接口把跨链消息传递到目的链的crossagent节点,然后再传递到目的链上进行相关操作。通信过程采用TLS加密,可以确保信息传递安全性。crossagent主要负责区块链各方之间的注册、消息签名、交易路由、验证签名、验证交易存在性、保证事务一致性等。
CSCP为混合链网络通信基础协议,能够满足不同区块链之间的跨链调用,该协议把不同架构的区块链消息转换成统一标准的跨链总线消息,该协议主要字段如下所示:
Figure BDA0002829982600000071
Figure BDA0002829982600000081
其中跨链交易内容CrosschainPayload通过json序列化成字节类型,可以根据跨链交易的区块链架构而定,当传递到目的链时通过json解析出对应的结构。
CSCP协议上定义了标准接口,可以用于不同区块链之间的信息交互。主要有:
交易转换接口TxToCSCP\CSCPToTx,针对不同架构的链能够将异构的交易消息通过总线标准协议CSCP适配各自的架构;
交易发送接口SendTx,用于源链向目的链发送信息;
交易接收接口ReceiveTX,用于目的链接收跨链交易;
交易验证接口VerifyCSCP,用于验证交易信息;
注册链接口RegistChain,用于身份注册;
更新链接口UpdateChain,用于更新链身份信息;
注销链接口DeleteChain,用于注销链身份信息。
混合链间传递信息关键逻辑流程如图4所示,包括以下步骤:
(1)证书颁发
证书管理模块给混合链跨链代理节点颁发证书及公私钥对。具体颁发规则为:假设链A与链B之间相互通信,那么A链crossagent根证书向B链颁发跨链证书及公私钥对、B链crossagent根证书向A链颁发跨链证书及公私钥对,并把证书及公私钥对部署在跨链通信代理节点crossagent上。那么B链可以用根证书去验证A链发过来的消息的跨链证书,同样A链可以用根证书去验证B链发送过来的消息的跨链证书;同时也会对消息摘要签名进行验证,进而达到跨链权限管理以及保证通信安全。
本发明设计并实现了证书管理模块certManage,主要用来生成和管理相关的CA证书和数字证书,包括证书签发、公私钥生成、证书检查、证书撤销等功能。具体如下:
a、证书签发:crossagent节点通过certManage生成根证书root.ca及根证书私钥root.priv。当混合链中不同区块链之间发起通信时,需要注册身份信息,首先由目的链的根证书root.ca签发跨链证书crosschain.cert及跨链证书私钥crosschain.priv到源链。
b、证书检查:certManage提供证书检查服务,检查内容包括证书是否由目的链crossagent的root.ca证书签发的跨链证书、摘要签名是否合法等。
c、证书撤销:当用户个人身份信息发生变化,或者私钥丢失、泄露或者疑似泄露时,证书用户可以向CertManage提出证书的撤销请求,certManage会生成证书撤销列表,该列表中列举着所有在有效期内但被撤销的数字证书。在证书验证时会根据证书撤销列表检查跨链交易的证书是否被撤销。
(2)链注册
源链会向目的链进行跨链注册,主要包括源链的身份信息、验证规则等,注册成功后,目的链的验证引擎会生成对该链的验证规则,后续按照这个验证规则对跨链交易的合法性进行验证。针对不同架构的区块链,会生成不同的验证规则。并把源链的身份信息、链信息存储到目的链的注册表里,进行持久化存储。目的链crossagent的验证引擎会对源链注册的信息进行核对。
通过注册信息进行权限控制管理,注册时可以指定链的权限信息,比如链的访问权限、合约读写权限、数据读写权限、信息获取范围等。在交易验证阶段可以进行验证,能够灵活的进行权限管控,保证链间数据安全以及隔离性,精细化、定制化的权限管理策略也能够更好的满足应用场景。注册信息内容如下表所示:
Figure BDA0002829982600000091
Figure BDA0002829982600000101
crossagent支持链更新和注销操作,总体流程如注册流程类似,更新和注销信息经过检查验证后,会更新注册表内容。
(3)身份及验证规则管理
验证规则是供验证引擎对跨链交易验证存在性和有效性所用的。由于每个链的异构性导致每个链的验证规则也是不一样的,crossagent的验证引擎无法为每个链提供统一的验证规则,因此就需要源链向目的链注册时,由目的链的crossagent进行相应验证规则的部署、注册,并记录注册链的身份信息到注册表里。在混合链中不同区块链进行通信时能够验证链的身份,并匹配相应链的验证规则对交易存在性和有效性进行验证,验证通过后执行相关交易。
(4)检查阶段
跨链交易的检查工作包括:产生该跨链交易的源链是否已经注册过,是否具有相关权限(包括链的访问权限、合约读写权限、数据读写权限、信息获取范围等)。
(5)验证阶段
检查通过的跨链交易进入验证阶段,验证阶段由验证引擎进行执行,通过交易的源链身份信息,在目的链的注册表里匹配验证规则,然后将交易权限信息、验证信息(存在性和有效性)、验证规则、跨链交易输入到验证引擎,然后进行验证。验证通过后,交易将进入执行阶段。
(6)执行阶段
跨链交易通过验证后进入执行阶段,执行阶段设计了交易有效性、交易存在性证明和事务一致性保证的方法。
6.1、交易有效性
通过非对称秘钥签名和验签保证交易消息的有效性。
6.2、交易存在性
本发明中,跨链交易的存在性证明是由默克尔证明来实现的。将链A生成的跨链交易证明构造为默克尔树结构,链B接收链A发送的跨链交易证明后,通过默克尔证明方法来验证跨链交易的存在性。
默克尔树的结构如图5所示,每个非叶子节点通过其子节点的哈希值来进行标注,树的根节点叫作默克尔根(merkle root)。图5所示是某区块X的默克尔树结构,如果要验证交易Tx_D是否在该区块中,无需获取整个区块,只需要提供交易Tx_D,H_AB,H_C以及merkleroot即可。具体过程如下:
a、根据交易Tx_D计算哈希,得到H_D;
b、根据H_C和H_D计算哈希,得到H_CD;
c、根据H_AB和H_CD计算哈希,得到H_ABCD;
d、对比H_ABCD和merkle root,如果相同,则证明区块中存在交易Tx_D,否则说明不存在。
混合链之间通信需要存在性证明,在交易信息中需要带有验证信息,证明信息是指验证过程中用到的初始哈希值,即H_AB、H_C、merkle root和Tx_D。
6.3、事务一致性
区块链通过共识机制保证了节点之间的一致性,针对单链内部的事务保证,共识算法能够保证其状态是确定的,所有的交易执行结果在所有集群中均是一致的。但是在跨链交互当中,一方面,链间状态并没有相互同步,如果链内部采用的共识协议不同的话,节点内部共识状态也无法作为事务提交的标志。但是跨链交互又需要获取链之间的交易和状态数据,那么跨链交互过程当中的事务保证则成为了一个关键点。
为了实现混合链间跨链事务一致性,本发明设计了跨链事务锁方案,跨链事务交互流程如下:
a、链A通过其代理节点向链B发起跨链交易;
b、在链A的代理节点和链B的代理节点执行以下操作:
1、链A的代理节点生成跨链交易证明和跨链交易摘要签名,锁定事务α,向链B的代理节点发起跨链事务请求;
2、链B的代理节点收到跨链事务请求后,验证锁定的事务α,如果验证通过则锁定事务β,生成事务β锁定证明,并将事务β锁定证明发送给链A的代理节点;
3、链A的代理节点接收并验证事务β锁定证明,如果验证通过则向链B发起跨链交易请求,所述跨链交易请求中包括跨链交易证明和跨链交易摘要签名;
4、链B的代理节点接收跨链交易请求,并验证跨链交易证明和跨链交易摘要签名,如果验证通过则解锁事务β,提交跨链事务,并向链A的代理节点返回提交跨链事务凭证;
5、链A的代理节点接收并验证提交跨链事务凭证,如果验证通过则解锁事务α,实现事务α和事务β的一致性操作。
在验证过程中:
链B的代理节点在门限时间内验证事务β是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务β;
链A的代理节点在门限时间内验证事务α是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务α;
通过事务锁定和交互,保证事务α和事务β同时解锁或者同时未解锁。
在一个实施例中,如图6所示,事务锁定和回滚的具体流程如下(均在代理节点上执行):
1、链A生成随机内容s,计算哈希值H=Hash(s),并将随机内容s的哈希值H和门限时间T0发送到链B;
2、链A用哈希值H和门限时间T0锁定事务α,α锁定的可以是跨链交互相关的价值资产信息;
3、链B收到随机内容s的哈希值H,并用门限时间T1时间(T1<T0)和H锁定事务β,事务β锁定的可以是跨链交互相关的价值资产信息;
4、链B发送事务β锁定证明和门限时间T1到链A;
5、链A发送H的原始内容s到链B,链B如果在门限时间T1内收到s,则解锁事务β,链A获取事务β锁定的价值资产,否则进行事务回滚;
6、链B发送H的原始内容s(s由步骤5中的链A发来)到链A,如果链A在门限时间T0内收到s,则解锁事务α,链B获取事务α锁定的价值资产,否则进行事务回滚。
本发明通过哈希值实现事务锁定和回滚,利用哈希计算的特点,正向计算(由s计算H)较简单,但是逆向计算(由H计算s)很难实现,可以有效防止攻击。
(7)结果返回
目的链将执行结构及执行状态信息构建成返回信息发送到源链。
在混合链消息传递过程中,通过跨链代理节点crossagent进行,消息传递主要流程如图7所示。
1、链A发送跨链消息到代理节点crossagent;
2、链A的crossagent把A链消息类型转换为总线标准通信消息CSCP;
3、链A的crossagent对CSCP消息签名;
4、链A的crossagen将CSCP消息发送到B链的crossagent;
5、链B的crossagent接收到CSCP消息;
6、链B的crossagent对CSCP消息进行签名验证;
7、链B的crossagent对CSCP消息进行身份验证;
8、链B的crossagent对CSCP消息进行权限验证;
9、链B的crossagent对CSCP消息进行存在性验证;
10、链B的crossagent将CSCP消息转换成B链格式的交易消息;
11、链B的crossagent将跨链交易发送到B链;
12、链B处理跨链消息;
13、链B返回处理结果。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中基于CSCP的混合链构建方法中的步骤。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中基于CSCP的混合链构建方法中的步骤。其中,存储介质可以为非易失性存储介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

Claims (10)

1.一种基于CSCP的混合链构建方法,其特征在于,包括:
每个区块链组织具有至少一个跨链通信代理节点,代理节点和原生态的区块链所有节点均能够连接,通过代理节点实现混合链的构建,代理节点负责区块链各方之间的注册、消息签名、交易路由、验证签名、验证交易存在性、保证事务一致性;
通过跨链标准交互协议CSCP统一信息格式,实现联盟链、私有链、公有链以及其他跨链协议区块链网络的融合链协议交互;
CSCP协议将不同架构的区块链消息转换成统一标准的跨链总线消息,主要字段包括:version,协议版本;SourceChainID,来源链地址;DestChainID,目的链地址;CrosschainPayload,跨链交易内容;Timestamp,时间戳;signature,代理节点签名;Cert,跨链交易节点证书;Proof,存在性验证信息;OriginInfo,跨链交易原始交易信息;extra,用户扩展字段;其中CrosschainPayload通过json序列化成字节类型,根据跨链交易的区块链架构而定,当传递到目的链时通过json解析出对应的结构;
CSCP协议上定义了标准接口,用于不同区块链之间的信息交互,包括:交易转换接口、交易发送接口、交易接收接口、交易验证接口、注册链接口、更新链接口、注销链接口,其中交易转换接口用于针对不同架构的链能够将异构的交易消息通过CSCP协议适配各自的架构。
2.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,所述跨链标准交互协议CSCP是一条支持混合链生态的基础协议,采用去中心化管理,去中心化数据存储,实现链上资产互通;不同区块链平台上的资产和流量,能够以原生链的身份加入进来,构建更大的区块链生态。
3.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,区块链各方或其代理节点上设有证书管理模块,用来生成和管理相关的CA证书和数字证书,证书管理模块的功能具体如下:
a、证书签发:通过证书管理模块生成根证书root.ca及根证书私钥root.priv;当混合链中不同区块链之间发起通信时,需要注册身份信息,由目的链的根证书root.ca签发跨链证书crosschain.cert及跨链证书私钥crosschain.priv到源链;
b、证书检查:证书管理模块提供证书检查服务,检查内容包括证书是否由目的链代理节点的root.ca证书签发的跨链证书、摘要签名是否合法;
c、证书撤销:当用户个人身份信息发生变化,或者私钥丢失、泄露或者疑似泄露时,证书用户可以向证书管理模块提出证书撤销请求,证书管理模块生成证书撤销列表,该列表中列举着所有在有效期内但被撤销的数字证书,在证书验证时根据证书撤销列表检查跨链交易的证书是否被撤销。
4.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,不同区块链平台构建混合链的流程包括以下步骤:
(1)证书颁发:通过证书管理模块给跨链代理节点颁发证书及公私钥对;
(2)链注册:源链向目的链进行跨链注册,主要包括源链的身份信息、验证规则,注册成功后,目的链的验证引擎会生成对该链的验证规则,并把源链的身份信息、链信息存储到目的链的注册表里,进行持久化存储;
(3)身份及验证规则管理:验证规则用于验证跨链交易的存在性和有效性,在混合链中不同区块链进行通信时能够验证链的身份,并匹配相应链的验证规则对交易存在性和有效性进行验证;
(4)检查阶段:检查产生该跨链交易的源链是否已经注册过,是否具有相关权限;
(5)验证阶段:通过交易的源链身份信息,在目的链的注册表里匹配验证规则,然后将交易权限信息、验证信息、验证规则、跨链交易输入到验证引擎进行验证;
(6)执行阶段:跨链交易通过验证后执行交易并返回结果。
5.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,通过注册信息进行权限控制管理,注册时可以指定链的权限信息,包括链的访问权限、合约读写权限、数据读写权限、信息获取范围;在交易验证阶段可以进行验证,能够进行灵活的权限管控。
6.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,在执行阶段通过非对称秘钥签名和验签保证交易消息的有效性。
7.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,跨链交易的存在性证明由默克尔证明来实现,将源链生成的跨链交易证明构造为默克尔树结构,目的链接收源链发送的跨链交易证明后,通过默克尔证明方法来验证跨链交易的存在性。
8.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,通过跨链事务锁定和事务提交回滚保证跨链事务一致性,包括:
源链通过其代理节点向目的链发起跨链交易;在源链的代理节点和目的链的代理节点执行以下操作:
源链的代理节点生成跨链交易证明和跨链交易摘要签名,锁定事务α,向目的链的代理节点发起跨链事务请求;
目的链的代理节点收到跨链事务请求后,验证锁定的事务α,如果验证通过则锁定事务β,生成事务β锁定证明,并将事务β锁定证明发送给源链的代理节点;
源链的代理节点接收并验证事务β锁定证明,如果验证通过则向目的链发起跨链交易请求,所述跨链交易请求中包括跨链交易证明和跨链交易摘要签名;
目的链的代理节点接收跨链交易请求,并验证跨链交易证明和跨链交易摘要签名,如果验证通过则解锁事务β,提交跨链事务,并向源链的代理节点返回提交跨链事务凭证;
源链的代理节点接收并验证提交跨链事务凭证,如果验证通过则解锁事务α,实现事务α和事务β的一致性操作;
在验证过程中,目的链的代理节点在门限时间内验证事务β是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务β;源链的代理节点在门限时间内验证事务α是否解锁,如果已解锁则跨链交易已执行;否则回滚跨链事务,释放事务α;
通过事务锁定和交互,保证事务α和事务β同时解锁或者同时未解锁。
9.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,事务锁定和回滚具体如下:
源链生成随机内容s,计算哈希值H=Hash(s),并将随机内容s的哈希值H和门限时间T0发送到目的链;
源链用哈希值H和门限时间T0锁定事务α;
目的链收到随机内容s的哈希值H,并用门限时间T1和H锁定事务β,其中T1<T0;
目的链发送事务β锁定证明和门限时间T1到源链;
源链发送H的原始内容s到目的链,目的链如果在门限时间T1内收到s,则解锁事务β,源链获取事务β锁定的信息,否则进行事务回滚;
目的链发送H的原始内容s到源链,源链如果在门限时间T0内收到s,则解锁事务α,目的链获取事务α锁定的信息,否则进行事务回滚。
10.根据权利要求1所述的一种基于CSCP的混合链构建方法,其特征在于,混合链消息传递过程通过跨链代理节点进行,包括以下步骤:
源链发送跨链消息到其代理节点;
源链的代理节点将源链消息类型转换为CSCP;
源链的代理节点对CSCP消息签名,将CSCP消息发送到目的链的代理节点;
目的链的代理节点接收到CSCP消息,对CSCP消息进行签名验证、身份验证、权限验证、存在性验证后,将CSCP消息转换成目的链格式的交易消息,将跨链交易发送到目的链;
目的链处理跨链消息并返回处理结果。
CN202011458029.6A 2020-12-10 2020-12-10 一种基于cscp的混合链构建方法 Active CN112583917B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011458029.6A CN112583917B (zh) 2020-12-10 2020-12-10 一种基于cscp的混合链构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011458029.6A CN112583917B (zh) 2020-12-10 2020-12-10 一种基于cscp的混合链构建方法

Publications (2)

Publication Number Publication Date
CN112583917A true CN112583917A (zh) 2021-03-30
CN112583917B CN112583917B (zh) 2022-09-06

Family

ID=75131509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011458029.6A Active CN112583917B (zh) 2020-12-10 2020-12-10 一种基于cscp的混合链构建方法

Country Status (1)

Country Link
CN (1) CN112583917B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259328A (zh) * 2021-04-22 2021-08-13 深圳前海益链网络科技有限公司 电网内外网数据交互***
CN113256290A (zh) * 2021-05-14 2021-08-13 杭州链网科技有限公司 去中心化加密通讯与交易***
CN113452781A (zh) * 2021-06-28 2021-09-28 上海计算机软件技术开发中心 一种区块链跨链***和方法
CN113783949A (zh) * 2021-08-26 2021-12-10 浙商银行股份有限公司 一种基于合约管理的跨链去中心化方法
CN113904875A (zh) * 2021-12-06 2022-01-07 湖南宸瀚信息科技有限责任公司 一种基于区块链的多链融合权限管制***
CN115190162A (zh) * 2022-06-27 2022-10-14 杭州溪塔科技有限公司 区块链中的代理服务配置方法及代理服务***
CN115330161A (zh) * 2022-08-03 2022-11-11 国网江苏省电力有限公司南通供电分公司 基于区块链技术的电力基建分包商信用管理方法及***
CN115982208A (zh) * 2022-08-24 2023-04-18 淮阴工学院 基于区块链跨链协同的冷链产品关联性查询方法及装置

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170331896A1 (en) * 2016-05-13 2017-11-16 De La Rue International Limited Methods and systems for processing assets
CN108764925A (zh) * 2018-05-31 2018-11-06 李沁福 一种基于区块链技术的综合业务平台
CN108900585A (zh) * 2018-06-15 2018-11-27 浙江华信区块链科技服务有限公司 跨链事务一致性实现方法
US20190007484A1 (en) * 2017-06-30 2019-01-03 Verizon Patent And Licensing Inc. Scalable and secure vehicle to everything communications
CN109145205A (zh) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 一种基于区块链的跨链数据操作方法和装置
CN110061851A (zh) * 2019-04-28 2019-07-26 广州大学 一种去中心化的跨信任域认证方法及***
CN110266655A (zh) * 2019-05-30 2019-09-20 中国工商银行股份有限公司 一种基于区块链的跨链互联方法、设备以及***
CN110650189A (zh) * 2019-09-20 2020-01-03 深圳供电局有限公司 一种基于中继的区块链的交互***及方法
CN111245840A (zh) * 2020-01-14 2020-06-05 北京工业大学 一种区块链间跨链信息传输控制***
CN111598566A (zh) * 2020-04-30 2020-08-28 厦门潭宏信息科技有限公司 基于混合跨链的网络支付***
CN111666323A (zh) * 2020-05-15 2020-09-15 西安纸贵互联网科技有限公司 区块链的跨链互通方法及***
CN111784518A (zh) * 2020-06-30 2020-10-16 北京海益同展信息科技有限公司 一种区块链跨链处理方法、装置、计算机设备及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170331896A1 (en) * 2016-05-13 2017-11-16 De La Rue International Limited Methods and systems for processing assets
US20190007484A1 (en) * 2017-06-30 2019-01-03 Verizon Patent And Licensing Inc. Scalable and secure vehicle to everything communications
CN108764925A (zh) * 2018-05-31 2018-11-06 李沁福 一种基于区块链技术的综合业务平台
CN108900585A (zh) * 2018-06-15 2018-11-27 浙江华信区块链科技服务有限公司 跨链事务一致性实现方法
CN109145205A (zh) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 一种基于区块链的跨链数据操作方法和装置
CN110061851A (zh) * 2019-04-28 2019-07-26 广州大学 一种去中心化的跨信任域认证方法及***
CN110266655A (zh) * 2019-05-30 2019-09-20 中国工商银行股份有限公司 一种基于区块链的跨链互联方法、设备以及***
CN110650189A (zh) * 2019-09-20 2020-01-03 深圳供电局有限公司 一种基于中继的区块链的交互***及方法
CN111245840A (zh) * 2020-01-14 2020-06-05 北京工业大学 一种区块链间跨链信息传输控制***
CN111598566A (zh) * 2020-04-30 2020-08-28 厦门潭宏信息科技有限公司 基于混合跨链的网络支付***
CN111666323A (zh) * 2020-05-15 2020-09-15 西安纸贵互联网科技有限公司 区块链的跨链互通方法及***
CN111784518A (zh) * 2020-06-30 2020-10-16 北京海益同展信息科技有限公司 一种区块链跨链处理方法、装置、计算机设备及存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259328A (zh) * 2021-04-22 2021-08-13 深圳前海益链网络科技有限公司 电网内外网数据交互***
CN113259328B (zh) * 2021-04-22 2023-01-10 国网青海省电力公司 电网内外网数据交互***
CN113256290A (zh) * 2021-05-14 2021-08-13 杭州链网科技有限公司 去中心化加密通讯与交易***
CN113452781A (zh) * 2021-06-28 2021-09-28 上海计算机软件技术开发中心 一种区块链跨链***和方法
CN113783949A (zh) * 2021-08-26 2021-12-10 浙商银行股份有限公司 一种基于合约管理的跨链去中心化方法
CN113904875A (zh) * 2021-12-06 2022-01-07 湖南宸瀚信息科技有限责任公司 一种基于区块链的多链融合权限管制***
CN115190162A (zh) * 2022-06-27 2022-10-14 杭州溪塔科技有限公司 区块链中的代理服务配置方法及代理服务***
CN115190162B (zh) * 2022-06-27 2023-11-28 杭州溪塔科技有限公司 区块链中的代理服务配置方法及代理服务***
CN115330161A (zh) * 2022-08-03 2022-11-11 国网江苏省电力有限公司南通供电分公司 基于区块链技术的电力基建分包商信用管理方法及***
CN115982208A (zh) * 2022-08-24 2023-04-18 淮阴工学院 基于区块链跨链协同的冷链产品关联性查询方法及装置
CN115982208B (zh) * 2022-08-24 2023-09-29 淮阴工学院 基于区块链跨链协同的冷链产品关联性查询方法及装置

Also Published As

Publication number Publication date
CN112583917B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
CN112583917B (zh) 一种基于cscp的混合链构建方法
CN110266655B (zh) 一种基于区块链的跨链互联方法、设备以及***
CN112615915B (zh) 一种在私有链之间构建联盟链的方法
CN110650189B (zh) 一种基于中继的区块链的交互***及方法
US20230316273A1 (en) Data processing method and apparatus, computer device, and storage medium
Huang et al. Scalable and redactable blockchain with update and anonymity
CN112529706B (zh) 一种去中心化异构公有链资产交换方法
CN110288480B (zh) 一种区块链的私密交易方法及装置
CN111598566A (zh) 基于混合跨链的网络支付***
CN112507393B (zh) 一种保障区块链跨链事务一致性的方法
Zhang et al. BTCAS: A blockchain-based thoroughly cross-domain authentication scheme
CN113328997B (zh) 联盟链跨链***及方法
CN114499898B (zh) 一种区块链跨链安全接入方法及装置
WO2021258549A1 (zh) 一种流水线友好的签名和验签方法、设备及存储介质
CN112396421A (zh) 一种基于区块链通证的身份认证***及方法
JP2022523217A (ja) 投票集計を伴うトポロジードリブンビザンチンフォールトトレラント合意プロトコル
CN112118231A (zh) 一种基于区块链技术的可信身份管理方法
JP2022551874A (ja) セキュアな共生(Symbiosis)マイニングのための方法および装置
Mao et al. A survey on cross-chain technology: Challenges, development, and prospect
CN112581128B (zh) 一种具有存在证明的异构许可链价值交换方法
CN115174570A (zh) 一种基于动态委员会的跨链共识方法及***
CN112615838B (zh) 一种可扩展的区块链跨链通信方法
Oh et al. Algorithm based on Byzantine agreement among decentralized agents (BADA)
Sui et al. Monet: A fast payment channel network for scriptless cryptocurrency monero
Xie et al. HCVC: A high-capacity off-chain virtual channel scheme based on bidirectional locking mechanism

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant