CN115115360A - 跨链资源转移方法、装置、介质及电子设备 - Google Patents
跨链资源转移方法、装置、介质及电子设备 Download PDFInfo
- Publication number
- CN115115360A CN115115360A CN202110287461.1A CN202110287461A CN115115360A CN 115115360 A CN115115360 A CN 115115360A CN 202110287461 A CN202110287461 A CN 202110287461A CN 115115360 A CN115115360 A CN 115115360A
- Authority
- CN
- China
- Prior art keywords
- resource transfer
- chain
- resource
- certificate
- node
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请的实施例提供了一种跨链资源转移方法、装置、计算机可读介质及电子设备。通过交易公证中继链来获取资源转移请求子链上的节点触发的资源跨链信息,并基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过则基于节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至资源转移处理目标链。本实施例中通过预先在联盟链中注册等级制的证书,并基于联盟链证书特性,通过交易公证中继链对资源转移请求子链中的机构证书、节点证书以及节点身份依次进行验证,提高了基于多个区块链的跨链交易的安全性和可靠性。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种跨链资源转移方法、装置、计算机可读介质及电子设备。
背景技术
在很多区块链的应用场景中,需要进行实时的数据共享。因此为了保证数据的安全性,相关技术中都是在节点获取数据时,先对节点的身份进行验证,并在身份验证通过之后将节点所需的数据发送至该节点中。这种方式身份验证的方法单一且无法保证数据的安全性,尤其是在需要进行跨链的数据同步和数据处理时,节点在不同区块链上可能会有身份伪造的风险,且在不同的区块链中对节点身份验证无法得到可靠的保证,进而无法保证节点身份验证的可靠性,降低了区块链数据同步和处理的安全性。
发明内容
本申请的实施例提供了一种跨链资源转移方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以提高基于多个区块链的跨链交易的安全性和可靠性。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种跨链资源转移方法,本实施例中的方法可以应用于联盟链中,联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,包括:获取资源转移请求子链上的节点触发的资源跨链信息,其中所述资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书;基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过的情况下,基于机构证书对所述资源转移请求子链节点证书进行节点身份验证;在节点身份验证通过的情况下,基于资源转移请求子链节点证书对签名信息进行签名验证处理;若所述签名信息验证通过,则将所述资源跨链信息中的资源数据同步至资源转移处理目标链。
根据本申请实施例的一个方面,提供了一种跨链资源转移方法,本实施例中的方法可以应用于联盟链中,联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,包括:获取资源转移请求;基于资源转移请求子链上的节点的私钥对所述资源转移请求进行签名,得到签名信息;将所述签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书作为资源跨链信息,并将所述资源跨链信息上传至交易公证中继链,以在所述交易公证中继链上基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理,并在验证通过之后将所述资源数据同步至资源转移处理目标链;从所述交易公证中继链上获取资源转移状态,其中,所述资源转移状态为所述资源转移处理目标链对所述资源数据进行资源转移时生成、并将所述资源转移状态同步至所述交易公证中继链。
根据本申请实施例的一个方面,提供了一种跨链资源转移装置,本实施例中的方法可以应用于联盟链中,联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,包括:第一获取单元,用于获取资源转移请求子链上的节点触发的资源跨链信息,其中所述资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书;第一验证单元,用于基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;第二验证单元,用于在机构身份验证通过的情况下,基于机构证书对所述资源转移请求子链节点证书进行节点身份验证;第三验证单元,用于在节点身份验证通过的情况下,基于资源转移请求子链节点证书对签名信息进行签名验证处理;第一同步单元,用于若所述签名信息验证通过,则将所述资源跨链信息中的资源数据同步至资源转移处理目标链。
在本申请的一些实施例中,基于前述方案,所述第一获取单元包括:获取单元,用于获取联盟链中的资源转移请求子链上的资源转移事件;所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;解析单元,用于在获取到跨链的目标资源转移事件时,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的资源跨链信息。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置还包括:提取单元,用于从所述资源跨链信息中提取资源转移地址;检索单元,用于基于所述资源转移地址,在预设的跨链合约地址中进行遍历检索,确定所述资源转移地址在所述跨链合约地址中是否存在对应的资源转移处理目标链的地址;判定单元,用于若所述资源转移地址在所述跨链合约地址中存在对应的资源转移处理目标链的地址,则判定所述目标资源转移事件为跨链的目标资源转移事件。
在本申请的一些实施例中,基于前述方案,所述第一同步单元用于基于所述资源转移地址,在资源转移请求子链中确定所述资源转移地址对应的资源转移处理目标链;获取并验证所述资源转移处理目标链中的节点的身份信息;若所述资源转移处理目标链中的节点的身份信息验证通过,则基于所述资源转移地址,将所述资源数据同步至所述资源转移处理目标链上的节点中。
在本申请的一些实施例中,基于前述方案,所述解析单元用于在获取到跨链的目标资源转移事件时,基于各所述资源转移请求子链预先签订的智能合约,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的所述签名信息、所述资源数据、所述机构证书以及所述节点证书。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置还用于:获取所述资源转移处理目标链基于所述资源数据生成的资源转移状态;记录所述资源转移状态。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置还用于:若所述资源转移状态为成功转移状态,则将所述资源转移状态同步至所述资源转移请求子链中的节点,以使所述资源转移请求子链中的节点基于所述资源转移状态对本次资源转移进行上链存证。
根据本申请实施例的一个方面,提供了一种跨链资源转移装置,本实施例中的跨链资源转移装置可以应用于联盟链中,所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,包括:第二获取单元,用于获取资源转移请求;签名单元,用于基于资源转移请求子链上的节点的私钥对所述资源转移请求进行签名,得到签名信息;第二同步单元,用于将所述签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书作为资源跨链信息,并将所述资源跨链信息上传至交易公证中继链,以在所述交易公证中继链上基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理,并在验证通过之后将所述资源数据同步至资源转移处理目标链;第三获取单元,用于从所述交易公证中继链上获取资源转移状态,其中,所述资源转移状态为所述资源转移处理目标链对所述资源数据进行资源转移时生成、并将所述资源转移状态同步至所述交易公证中继链。
在本申请的一些实施例中,基于前述方案,所述第三获取单元用于基于预设的证书与摘要运算之间的关联关系,确定所述节点证书对应的目标摘要运算;基于所述目标摘要运算对所述资源转移请求进行摘要处理,确定所述资源转移请求对应的交易摘要;基于所述交易摘要,从所述交易公证中继链中获取本次资源转移对应的资源转移状态。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置还用于:基于机构私钥生成机构证书请求文件;将所述机构证书请求文件提交至联盟链,以使所述联盟链基于所述根证书对所述机构证书请求文件进行验证以生成机构证书;所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;从所述联盟链中获取所述机构证书。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置还用于:基于节点私钥生成节点证书请求文件;将所述节点证书请求文件发送至机构节点,以使所述机构节点通过预先获取的机构证书对节点证书请求文件进行签发,生成节点证书;获取所述机构节点发送的节点证书。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的跨链资源转移方法。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的跨链资源转移方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的跨链资源转移方法。
在本申请的一些实施例所提供的技术方案中,通过联盟链中的交易公证中继链来获取资源转移请求子链上的节点触发的资源跨链信息,并基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于资源转移请求子链的节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链。本实施例中通过预先在联盟链中注册等级制的证书,并基于联盟链证书特性,通过联盟链中的交易公证中继链来对资源转移请求子链中的机构证书、节点证书以及节点身份依次进行验证,提高了基于多个区块链的跨链交易的安全性和可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本申请实施例的技术方案的示例性***架构的示意图;
图2示意性示出了根据本申请的一个实施例的数据共享***;
图3示意性示出了根据本申请的一个实施例的区块链的区块构成示意图;
图4示意性示出了根据本申请的一个实施例的跨链资源转移方法的流程图;
图5a示意性示出了根据本申请的一个实施例的跨链验证的时序图;
图5b示意性示出了根据本申请的一个实施例的跨链验证的流程图;
图6示意性示出了根据本申请的一个实施例的联盟链的组成架构图;
图7示意性示出了根据本申请的一个实施例的跨链资源转移方法的流程图;
图8示意性示出了根据本申请的一个实施例的生成机构证书的示意图;
图9示意性示出了根据本申请的一个实施例的生成机构证书的时序图;
图10示意性示出了根据本申请的一个实施例的生成节点证书的示意图;
图11示意性示出了根据本申请的一个实施例的生成节点证书的时序图;
图12示意性示出了根据本申请的一个实施例的跨链资源转移装置的框图;
图13示意性示出了根据本申请的一个实施例的跨链资源转移装置的框图;
图14示出了适于用来实现本申请实施例的电子设备的计算机***的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
参见图1所示的基于联盟链的数据共享***,在本申请实施例中,联盟链包括用于请求转移资源的资源转移请求子链,即资源转移请求子链、用于交易公证的交易公证中继链,即交易公证中继链以及处理转移资源的资源转移处理目标链,即资源转移处理目标链。
在本申请一实施例中,资源转移请求子链和交易公证中继链之间、以及交易公证中继链和资源转移处理目标链之间通过中继的服务连接。本实施例中通过中继的服务来在资源转移请求子链和交易公证中继链之间、以及交易公证中继链和资源转移处理目标链之间提供数据传递的功能,以保证跨链数据处理的效率和安全性。
在本申请一实施例中,在资源转移请求子链需要进行数据同步时,通过基于资源转移请求子链上的节点的私钥对资源转移请求进行签名,得到签名信息;将签名信息、待转移的资源数据、资源转移请求子链对应的机构证书以及资源转移请求子链上的节点的节点证书作为资源跨链信息,并将资源跨链信息上传至联盟链中的交易公证中继链,以在交易公证中继链上基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于机构证书对资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于资源转移请求子链节点证书对签名信息进行签名验证处理,并在验证通过之后将资源数据同步至联盟链中的资源转移处理目标链;从交易公证中继链上获取资源转移状态,其中,资源转移状态为资源转移处理目标链对资源数据进行资源转移时生成、并将资源转移状态同步至交易公证中继链。
在本申请一实施例中,通过交易公证中继链获取资源转移请求子链上的节点触发的资源跨链信息,其中资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、资源转移请求子链对应的机构证书以及资源转移请求子链上的节点的节点证书;基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链。
上述方案中,通过联盟链中的交易公证中继链来获取资源转移请求子链上的节点触发的资源跨链信息,并基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链。本实施例中通过预先在联盟链中注册等级制的证书,并基于联盟链证书特性,通过联盟链中的交易公证中继链来对资源转移请求子链中的机构证书、节点证书以及节点身份依次进行验证,提高了基于多个区块链的跨链交易的安全性和可靠性。
参见图2所示的数据共享***,该数据共享***可以应用于图1中的资源转移处理目标链、交易公证中继链或者资源转移请求子链中,用于在各个连种实现数据共享。
在本申请一实施例中,数据共享***100是指用于进行节点与节点之间数据共享的***,该数据共享***中可以包括多个节点101,多个节点101可以是指数据共享***中各个客户端。每个节点101在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护该数据共享***内的共享数据。为了保证数据共享***内的信息互通,数据共享***中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当数据共享***中的任意节点接收到输入信息时,数据共享***中的其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得数据共享***中全部节点上存储的数据均一致。
对于数据共享***中的每个节点,均具有与其对应的节点标识,而且数据共享***中的每个节点均可以存储有数据共享***中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至数据共享***中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明。
节点名称 | 节点标识 |
节点1 | 117.114.151.174 |
节点2 | 117.116.189.145 |
… | … |
节点N | 119.123.789.258 |
数据共享***中的每个节点均存储一条相同的区块链。区块链由多个区块组成,参见图3,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
在生成区块链中的各个区块时,参见图3,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据数据共享***中其他节点的节点标识,将新生成的区块分别发送给其所在的数据共享***中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图4示出了根据本申请的一个实施例的跨链资源转移方法的流程图,该跨链资源转移方法可以由交易公证中继链上的服务器等其他计算机设备来执行。参照图4所示,该跨链资源转移方法至少包括步骤S410至步骤S450,详细介绍如下:
在步骤S410中,获取资源转移请求子链上的节点触发的资源跨链信息,其中资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、资源转移请求子链对应的机构证书以及资源转移请求子链上的节点的节点证书。
如图5a所示,本实施例中在进行跨链业务时,资源转移请求子链A对应业务平台用户会发起跨链交易,跨链交易信息会被记录在资源转移请求子链上,后续中继(relayer A)会获取资源转移请求子链中的跨链交易,取出跨链交易信息,然后提供给交易公证中继链M,而交易公证中继链M需要对这边交易信息进行验证,并在验证通过之后通过中继(relayer B)服务将交易数据同步至资源转移处理目标链B。
如图6所示,本实施例中证书结构中包括至少4种角色,分别是联盟链委员会对应的根证书、联盟链成员机构对应的机构证书、联盟链参与方(节点和SDK)对应的节点证书等。具体的,本实施例中根证书rootCA,即ca.crt文件是数据和身份信任的根源,由共识成员多签决定同步根证书,根证书在联盟区块链中是委员会持有的证书,会基于机构节点的签名信息agency.key签发机构证书agency.crt给下属各个机构对应的区块链管理节点,机构管理节点会基于各个节点的签名信息node.key给机构下的每个节点颁发节点证书node.crt。
在本申请一实施例中,步骤S410中获取资源转移请求子链上的节点触发的资源跨链信息,包括步骤S411~步骤S412:
步骤S411,获取联盟链中的资源转移请求子链上的资源转移事件;所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;
步骤S412,在获取到跨链的目标资源转移事件时,对目标资源转移事件进行解析,确定目标资源转移事件中的资源跨链信息。
具体的,如图5a所示,本实施例中的联盟链中的交易公证中继链M对应的中继先对联盟链中的资源转移请求子链A上的资源转移事件进行获取,以在获取到跨链的目标资源转移事件时,对目标资源转移事件进行解析,从而确定目标资源转移事件中的资源跨链信息。
可选的,本实施例中在获取资源转移请求子链上的资源转移事件的时候,可以通过基于网络地址的侦听的方式来进行。
在本申请一实施例中,步骤S412中在获取到跨链的目标资源转移事件时,对目标资源转移事件进行解析,确定目标资源转移事件中的资源跨链信息,包括:在获取到跨链的目标资源转移事件时,基于各资源转移请求子链预先签订的智能合约,对目标资源转移事件进行解析,确定目标资源转移事件中的签名信息、资源数据、机构证书以及节点证书。
本申请一实施例中,用户基于资源转移请求子链发起跨链交易请求,比如需要发送数据至资源转移处理目标链上。资源转移请求子链A通过获取的方式获取到跨链交易,并将获取到的交易信息上链。其中资源转移请求子链会将连接资源转移请求子链节点node所需的证书ca.crt、agency.crt,node.crt和node.key提供给中继(relayer A)。中继在通过获取的方式获取到跨链的目标资源转移事件之后,基于联盟链中各个资源转移请求子链预先签订的智能合约,对目标资源事件进行解析,以确定其中的各种数据,例如签名信息、资源数据、机构证书以及节点证书。之后中继基于证书与节点进行SSL双向认证后方可链接节点发起区块链相关交易。
在本申请一实施例中,步骤S412中在获取到跨链的目标资源转移事件时,对目标资源转移事件进行解析,确定目标资源转移事件中的资源跨链信息之前,跨链资源转移方法还包括步骤S4121~步骤S4122:
步骤S4121,从资源跨链信息中提取资源转移地址。
具体的,本实施例中在获取到资源跨链信息之后,可以基于预设的资源跨链信息的序列构成方式,对资源跨链信息进行解析,确定其中的文本构成信息。之后从资源跨链信息中定位资源转移地址对应于序列中的位置,之后提取出该资源转移地址。
除此之外,还可以通过文字识别的方式,基于预设的资源转移地址的文字形式和数值大小,从资源跨链信息中提取出对应的地址信息,将该地址信息作为资源转移地址。
可选的,本实施例中的资源转移地址可以包括资源转移处理目标链的标识或者地址、资源转移处理目标链中的目标节点的标识或者地址等等,除此之外,还可以为资源转移处理目标链对应的机构名称等等。
步骤S4122,基于资源转移地址,在预设的跨链合约地址中进行遍历检索,确定资源转移地址在跨链合约地址中是否存在对应的资源转移处理目标链的地址;若资源转移地址在跨链合约地址中存在对应的资源转移处理目标链的地址,则判定目标资源转移事件为跨链的目标资源转移事件。
在本申请一实施例中,在从资源跨链信息中提取出资源转移地址之后,基于资源转移地址在预设的跨链合约地址中进行遍历检索,确定资源转移地址在跨链合约地址中是否存在对应的资源转移处理目标链的地址;若资源转移地址在跨链合约地址中存在对应的资源转移处理目标链的地址,则说明当前的资源转移地址对应的区块链属于跨链的交易链,即资源转移处理目标链。判定当前的目标资源转移事件为跨链的目标资源转移事件,同时,资源跨链信息中提取出的资源转移地址为资源转移处理目标链对应的地址。
在步骤S420~步骤S440中,本实施例中基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于节点证书验证签名信息。
在本申请一实施例中,在具体的验证过程中,本实施例中具体通过验证证书的合法性,来信任中继(relayer)以及其发送的信息。比如存在三级证书根证书(rootCA)、机构证书(AgencyCA)、节点证书(nodeCA),那么注册一条联盟链到交易公证中继链平台的时候,把rootCA存储在跨链上,中继(relayer)持有nodeCA,用自己的私钥签名跨链信息,把签名、跨链信息、AgencyCA和nodeCA都发给交易公证中继链;交易公证中继链收到之后,用rootCA验证AgencyCA,验证机构证书是否由根证书ca.crt签发;之后通过AgencyCA验证nodeCA,验证节点证书是否由机构证书agency.crt签发;最后再用nodeCA验证nodeKey签名,若以上验证都成功,则表示中继发送给交易公证中继链的数据是真实有效且存在的。即可信任跨链信息,然后执行跨链流程。
在步骤S450中,若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链。
在本申请一实施例中,在签名信息验证通过之后,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链中,实现基于跨链身份验证的跨链交易,以通过上述方案保证了在跨链交易过程中。
在本申请一实施例中,步骤S450中,将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链的过程,具体包括:基于资源转移地址,在联盟链的资源转移请求子链中确定资源转移地址对应的资源转移处理目标链;获取并验证资源转移处理目标链中的节点的身份信息;若资源转移处理目标链中的节点的身份信息验证通过,则基于资源转移地址,将资源数据同步至资源转移处理目标链上的节点中。
在本申请一实施例中,在将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链时,通过中继(relayer B)服务来获取交易公证中继链跨链交易事件;具体会根据交易公证中继链中的交易信息过滤出需要跨资源转移处理目标链的交易。具体的,可根据信息中的to地址进行判断,to地址表示跨链合约对应的地址。同时,本实施中对获取到的资源转移处理目标链中的节点的身份信息进行验证,在身份信息验证通过之后,根据此地址可判断是有跨链交易发起,将资源数据同步至资源转移处理目标链上的节点中。
具体的,在交易公证中继链把资源转移请求子链上管理合约吐出的信息搬运到交易公证中继链上时,首先交易公证中继链用自己的节点证书签名跨链信息的摘要,其中摘要类型可以根据证书确定;然后调用跨链SDK接口将机构证书和自己的节点证书签名,并将跨链信息发交易到跨链。最后根据交易摘要来获取交易状态,若失败,需要视情况处理。
在本申请一实施例中,在将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链之后,跨链资源转移方法还包括:获取资源转移处理目标链基于资源数据生成的资源转移状态;记录资源转移状态。
本实施例中在将资源数据同步至资源转移处理目标链之后,在资源转移处理目标链中生成资源转移状态。并通过从资源转移处理目标链中获取资源转移状态,以在交易公证中继链中将资源转移状态上链存储,或者将资源转移状态同步至资源转移请求子链中。
进一步的,若资源转移状态为成功转移状态,则将资源转移状态同步至资源转移请求子链中的节点,以使资源转移请求子链中的节点基于资源转移状态对本次资源转移进行上链存证,便于后期追溯。若资源转移状态为失败状态,则可以对资源转移请求子链进行同步,以保证数据状态的一致性,也可以不在资源转移请求子链中进行数据同步,以通过这种方式指示资源转移请求子链继续进行资源转移操作。
整个跨链资源转移方法的流程如图5b所示,本实施例中在步骤S510中,通过资源转移请求子链对应的中继服务侦听资源转移请求子链上的跨链交易事件;在步骤S520中,基于侦听到的跨链交易事件构造跨链交易信息,之后在步骤S530中,基于交易公证中继链的身份信息对跨链交易信息进行签名,生成签名的跨链交易信息;在步骤S540中将签名的跨链交易信息转发至交易公证中继链;以在中继链中基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链;步骤S550中由目标链通过中继链服务对中继链的交易进行侦听,并基于侦听到的信息构造跨链交易信息;步骤S560中将跨链交易信息转发至资源转移处理目标链,并将交易状态回传至交易公证中继链。并本实施例中通过预先在联盟链中注册等级制的证书,并基于联盟链证书特性,通过联盟链中的交易公证中继链来对资源转移请求子链中的机构证书、节点证书以及节点身份依次进行验证,提高了基于多个区块链的跨链交易的安全性和可靠性。
图7示出了根据本申请的一个实施例的跨链资源转移方法的流程图,该跨链资源转移方法可以由资源转移请求子链上的服务器等其他计算机设备来执行。参照图7所示,该跨链资源转移方法至少包括步骤S710至步骤S740,详细介绍如下:
步骤S710,获取资源转移请求。
在本申请一实施例中,通过资源转移请求子链来获取用户触发的资源转移请求。本实施例中的资源转移请求可以为通过在机构之间进行数据同步或者数据更新的请求。
示例性的,在实际应用中,A机构对于用户B权益的授权,需要通过C机构基于该用户B的身份信息来调取对应的用户数据,并将用户数据同步至A机构,这种情况下,需要由用户B对应的节点发起数据请求,即资源转移请求,至A机构对应的资源转移请求子链上的节点,以使得A机构对应的资源转移请求子链上的节点可以基于获取到的资源转移请求向C机构对应的资源转移处理目标链请求数据授权。
步骤S720,基于资源转移请求子链上的节点的私钥对资源转移请求进行签名,得到签名信息。
在本申请一实施例中,在获取到资源转移请求之后,构建跨链交易信息rawInfo;之后基于联盟链中资源转移请求子链上的节点的私钥(node.key)对资源转移请求进行签名,以得到签名信息sign。
本实施例中通过基于资源转移请求子链中的节点的私钥对资源转移请求进行签名,以保证资源转移请求的私密性。同时,通过在资源转移请求中加签的方式,添加进资源转移请求子链的身份信息,提高了资源转移请求的辨识度和安全性。
步骤S730,将签名信息、待转移的资源数据、资源转移请求子链对应的机构证书以及资源转移请求子链上的节点的节点证书作为资源跨链信息,并将资源跨链信息上传至联盟链中的交易公证中继链,以在交易公证中继链上基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于机构证书对资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于资源转移请求子链节点证书对签名信息进行签名验证处理,并在验证通过之后将资源数据同步至联盟链中的资源转移处理目标链;
在本申请一实施例中,在得到签名信息之后,将获取到的交易信息和签名信息(sign)、待转移的资源数据,即交易数据rawInfo、节点证书和机构证书发送至交易公证中继链平台。
进一步,本实施例中可以基于设定的数据压缩方式,对签名信息、待转移的资源数据、资源转移请求子链对应的机构证书以及资源转移请求子链上的节点的节点证书进行压缩,得到对应的资源跨链信息,以保证资源跨链信息的精简性。
如图8和图9所示,在本申请一实施例中,跨链资源转移方法还包括:基于机构私钥生成机构证书请求文件;将机构证书请求文件提交至联盟链,以使联盟链基于根证书对机构证书请求文件进行验证以生成机构证书;从联盟链中获取机构证书。
具体的,本实施例中通过联盟链成员机构在本地生成机构私钥agency.key;之后由agency.key生成证书请求文件agency.csr;并将生成的证书请求文件agency.csr提交至联盟委员会,联盟链委员会使用ca.key对证书请求文件agency.csr进行签发,得到联盟链成员机构证书agency.crt,并通过联盟链委员会将联盟链成员机构证书agency.crt发送至对应成员机构。上述方案中通过基于机构私钥在联盟委员会中进行验证的方式,保证了机构证书的公正性和安全性,进而在之后的资源同步过程中保证数据的安全性。
进一步,本实施例中跨链资源转移方法还包括:基于节点私钥生成节点证书请求文件;将节点证书请求文件发送至机构节点,以使机构节点通过机构证书对节点证书请求文件进行签发生成节点证书;获取机构节点发送的节点证书。
具体的,如图10和图11所示,在生成节点证书时,先由节点在本地生成节点私钥node.key,之后基于node.key生成节点证书请求文件node.csr,并将证书请求文件node.csr提交至联盟成员机构。通过联盟成员机构使用机构私钥agency.key对证书请求文件node.csr进行签发,得到节点/SDK证书node.crt,最后由联盟链成员机构将节点证书node.crt发送至对应实体机构。通过上述颁发节点证书的方式,提高了节点证书的权威性,以及基于联盟成员机构的从属关系,以便于之后在进行跨链交易时,基于节点证书来验证各个资源转移请求子链中的节点的身份,提高身份验证的安全性和可靠性。
步骤S740,从交易公证中继链上获取资源转移状态,其中,资源转移状态为资源转移处理目标链对资源数据进行资源转移时生成、并将资源转移状态同步至交易公证中继链。
在本申请一实施例中,在将资源跨链信息上传至联盟链中的交易公证中继链,以在交易公证中继链上基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于机构证书对资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于资源转移请求子链节点证书对签名信息进行签名验证处理,并在验证通过之后将资源数据同步至联盟链中的资源转移处理目标链。通过从交易公证中继链上获取资源转移状态,以将资源转移状态上链,便于之后的数据追溯。
步骤S740中从交易公证中继链上获取资源转移状态的过程,包括:基于预设的证书与摘要运算之间的关联关系,确定节点证书对应的目标摘要运算;基于目标摘要运算对资源转移请求进行摘要处理,确定资源转移请求对应的交易摘要;基于交易摘要,从交易公证中继链中获取本次资源转移对应的资源转移状态。
进一步的,本实施例中预先设有证书与摘要运算之间的关联关系,以通过该关联关系来确定节点证书对应的目标摘要运算。并基于目标摘要运算对资源转移请求进行摘要处理,确定资源转移请求对应的交易摘要;最后基于交易摘要,从交易公证中继链中获取本次资源转移对应的资源转移状态。通过上述确定摘要运算,并基于资源转移请求对应的交易摘要进行状态获取的方式,避免了其余非安全设备对交易状态监控的风险,提高了交易状态的安全性。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的跨链资源转移方法。可以理解的是,装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。对于本申请装置实施例中未披露的细节,请参照本申请上述的跨链资源转移方法的实施例。
图12示出了根据本申请的一个实施例的跨链资源转移装置的框图。
参照图12所示,根据本申请的一个实施例的跨链资源转移装置1200,包括:第一获取单元1210,用于获取资源转移请求子链上的节点触发的资源跨链信息,其中,所述资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书;
第一验证单元1220,用于基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;
第二验证单元1230,用于在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证;
第三验证单元1240,用于在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理;
第一同步单元1250,用于若所述签名信息验证通过,则将所述资源跨链信息中的资源数据同步至资源转移处理目标链。
在本申请的一些实施例中,基于前述方案,所述第一获取单元1210包括:获取单元,用于获取联盟链中的资源转移请求子链上的资源转移事件;解析单元,用于在获取到跨链的目标资源转移事件时,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的资源跨链信息。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置1200还包括:提取单元,用于从所述资源跨链信息中提取资源转移地址;检索单元,用于基于所述资源转移地址,在预设的跨链合约地址中进行遍历检索,确定所述资源转移地址在所述跨链合约地址中是否存在对应的资源转移处理目标链的地址;判定单元,用于若所述资源转移地址在所述跨链合约地址中存在对应的资源转移处理目标链的地址,则判定所述目标资源转移事件为跨链的目标资源转移事件。
在本申请的一些实施例中,基于前述方案,所述第一同步单元1250用于基于所述资源转移地址,在资源转移请求子链中确定所述资源转移地址对应的资源转移处理目标链;获取并验证所述资源转移处理目标链中的节点的身份信息;若所述资源转移处理目标链中的节点的身份信息验证通过,则基于所述资源转移地址,将所述资源数据同步至所述资源转移处理目标链上的节点中。
在本申请的一些实施例中,基于前述方案,还包括在获取到跨链的目标资源转移事件时,基于各所述资源转移请求子链预先签订的智能合约,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的所述签名信息、所述资源数据、所述机构证书以及所述节点证书。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置1200还用于:获取所述资源转移处理目标链基于所述资源数据生成的资源转移状态;记录所述资源转移状态。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置1200还用于:若所述资源转移状态为成功转移状态,则将所述资源转移状态同步至所述资源转移请求子链中的节点,以使所述资源转移请求子链中的节点基于所述资源转移状态对本次资源转移进行上链存证。
上述方案中,通过联盟链中的交易公证中继链来获取资源转移请求子链上的节点触发的资源跨链信息,并基于预存的根证书对资源跨链信息中的机构证书进行机构身份验证,在机构身份验证通过之后,基于机构证书对节点证书进行节点身份验证,若节点身份验证通过,则基于节点证书验证签名信息;若签名信息验证通过,则将资源跨链信息中的资源数据同步至联盟链中的资源转移处理目标链。本实施例中通过预先在联盟链中注册等级制的证书,并基于联盟链证书特性,通过联盟链中的交易公证中继链来对资源转移请求子链中的机构证书、节点证书以及节点身份依次进行验证,提高了基于多个区块链的跨链交易的安全性和可靠性。
图13示出了根据本申请的一个实施例的跨链资源转移装置的框图。
参照图13所示,根据本申请的一个实施例的跨链资源转移装置1300,包括:第二获取单元1310,用于获取资源转移请求;签名单元,用于基于资源转移请求子链上的节点的私钥对所述资源转移请求进行签名,得到签名信息;第二同步单元1320,用于将所述签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书作为资源跨链信息,并将所述资源跨链信息上传至交易公证中继链,以在所述交易公证中继链上基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理,并在验证通过之后将所述资源数据同步至资源转移处理目标链;第三获取单元1330,用于从所述交易公证中继链上获取资源转移状态,其中,所述资源转移状态为所述资源转移处理目标链对所述资源数据进行资源转移时生成、并将所述资源转移状态同步至所述交易公证中继链。
在本申请的一些实施例中,基于前述方案,所述第三获取单元1330用于基于预设的证书与摘要运算之间的关联关系,确定所述节点证书对应的目标摘要运算;基于所述目标摘要运算对所述资源转移请求进行摘要处理,确定所述资源转移请求对应的交易摘要;基于所述交易摘要,从所述交易公证中继链中获取本次资源转移对应的资源转移状态。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置1300还用于:基于机构私钥生成机构证书请求文件;将所述机构证书请求文件提交至联盟链,以使所述联盟链基于所述根证书对所述机构证书请求文件进行验证以生成机构证书;联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;从所述联盟链中获取所述机构证书。
在本申请的一些实施例中,基于前述方案,所述跨链资源转移装置1300还用于:基于节点私钥生成节点证书请求文件;将所述节点证书请求文件发送至机构节点,以使所述机构节点通过预先获取的机构证书对节点证书请求文件进行签发,生成节点证书;获取所述机构节点发送的节点证书。
图14示出了适于用来实现本申请实施例的电子设备的计算机***的结构示意图。
需要说明的是,图14示出的电子设备的计算机***1400仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图14所示,计算机***1400包括中央处理单元(Central Processing Unit,CPU)1401,其可以根据存储在只读存储器(Read-Only Memory,ROM)1402中的程序或者从储存部分1408加载到随机访问存储器(Random Access Memory,RAM)1403中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 1403中,还存储有***操作所需的各种程序和数据。CPU 1401、ROM 1402以及RAM 1403通过总线1404彼此相连。输入/输出(Input/Output,I/O)接口1405也连接至总线1404。
以下部件连接至I/O接口1405:包括键盘、鼠标等的输入部分1406;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1407;包括硬盘等的储存部分1408;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1409。通信部分1409经由诸如因特网的网络执行通信处理。驱动器1410也根据需要连接至I/O接口1405。可拆卸介质1411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1410上,以便于从其上读出的计算机程序根据需要被安装入储存部分1408。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1409从网络上被下载和安装,和/或从可拆卸介质1411被安装。在该计算机程序被中央处理单元(CPU)1401执行时,执行本申请的***中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种跨链资源转移方法,其特征在于,所述方法包括:
获取资源转移请求子链上的节点触发的资源跨链信息,其中,所述资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书;
基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;
在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证;
在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理;
若所述签名信息验证通过,则将所述资源跨链信息中的资源数据同步至资源转移处理目标链。
2.根据权利要求1所述的方法,其特征在于,获取资源转移请求子链上的节点触发的资源跨链信息,包括:
获取联盟链中的资源转移请求子链上的资源转移事件;所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;
在获取到跨链的目标资源转移事件时,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的资源跨链信息。
3.根据权利要求2所述的方法,其特征在于,在获取到跨链的目标资源转移事件时,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的资源跨链信息之前,所述方法还包括:
从所述资源跨链信息中提取资源转移地址;
基于所述资源转移地址,在预设的跨链合约地址中进行遍历检索,确定所述资源转移地址在所述跨链合约地址中是否存在对应的资源转移处理目标链的地址;
若所述资源转移地址在所述跨链合约地址中存在对应的资源转移处理目标链的地址,则判定所述目标资源转移事件为跨链的目标资源转移事件。
4.根据权利要求3所述的方法,其特征在于,将所述资源跨链信息中的资源数据同步至资源转移处理目标链,包括:
基于所述资源转移地址,在资源转移请求子链中确定所述资源转移地址对应的资源转移处理目标链;
获取并验证所述资源转移处理目标链中的节点的身份信息;
若所述资源转移处理目标链中的节点的身份信息验证通过,则基于所述资源转移地址,将所述资源数据同步至所述资源转移处理目标链上的节点中。
5.根据权利要求2所述的方法,其特征在于,在获取到跨链的目标资源转移事件时,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的资源跨链信息,包括:
在获取到跨链的目标资源转移事件时,基于各所述资源转移请求子链预先签订的智能合约,对所述目标资源转移事件进行解析,确定所述目标资源转移事件中的所述签名信息、所述资源数据、所述机构证书以及所述节点证书。
6.根据权利要求1所述的方法,其特征在于,在将所述资源跨链信息中的资源数据同步至资源转移处理目标链之后,所述方法还包括:
获取所述资源转移处理目标链基于所述资源数据生成的资源转移状态;
记录所述资源转移状态。
7.根据权利要求6所述的方法,其特征在于,获取所述资源转移处理目标链基于所述资源数据生成的资源转移状态之后,所述方法还包括:
若所述资源转移状态为成功转移状态,则将所述资源转移状态同步至所述资源转移请求子链中的节点,以使所述资源转移请求子链中的节点基于所述资源转移状态对本次资源转移进行上链存证。
8.一种跨链资源转移方法,其特征在于,所述方法包括:
获取资源转移请求;
基于资源转移请求子链上的节点的私钥对所述资源转移请求进行签名,得到签名信息;
将所述签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书作为资源跨链信息,将所述资源跨链信息上传至交易公证中继链,以在所述交易公证中继链上基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理,并在验证通过之后将所述资源数据同步至资源转移处理目标链;
从所述交易公证中继链上获取资源转移状态,其中,所述资源转移状态为所述资源转移处理目标链对所述资源数据进行资源转移时生成、并将所述资源转移状态同步至所述交易公证中继链。
9.根据权利要求8所述的方法,其特征在于,从所述交易公证中继链上获取资源转移状态,包括:
基于预设的证书与摘要运算之间的关联关系,确定所述节点证书对应的目标摘要运算;
基于所述目标摘要运算对所述资源转移请求进行摘要处理,确定所述资源转移请求对应的交易摘要;
基于所述交易摘要,从所述交易公证中继链中获取本次资源转移对应的资源转移状态。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
基于机构私钥生成机构证书请求文件;
将所述机构证书请求文件提交至联盟链,以使所述联盟链基于所述根证书对所述机构证书请求文件进行验证以生成机构证书;所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链;
从所述联盟链中获取所述机构证书。
11.根据权利要求9所述的方法,其特征在于,所述方法还包括:
基于节点私钥生成节点证书请求文件;
将所述节点证书请求文件发送至机构节点,以使所述机构节点通过预先获取的机构证书对节点证书请求文件进行签发,生成节点证书;
获取所述机构节点发送的节点证书。
12.一种跨链资源转移装置,其特征在于,所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,所述跨链资源转移装置包括:
第一获取单元,用于获取资源转移请求子链上的节点触发的资源跨链信息,其中,所述资源跨链信息包括对资源转移请求进行签名得到的签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书;
第一验证单元,用于基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;
第二验证单元,用于在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证;
第三验证单元,用于在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理;
第一同步单元,用于若所述签名信息验证通过,则将所述资源跨链信息中的资源数据同步至资源转移处理目标链。
13.一种跨链资源转移装置,其特征在于,所述联盟链包括资源转移请求子链、交易公证中继链以及资源转移处理目标链,所述跨链资源转移装置包括:
第二获取单元,用于获取资源转移请求;
签名单元,用于基于资源转移请求子链上的节点的私钥对所述资源转移请求进行签名,得到签名信息;
第二同步单元,用于将所述签名信息、待转移的资源数据、所述资源转移请求子链对应的机构证书以及资源转移请求子链节点证书作为资源跨链信息,将所述资源跨链信息上传至交易公证中继链,以在所述交易公证中继链上基于预存的根证书对所述资源跨链信息中的机构证书进行机构身份验证;在机构身份验证通过的情况下,基于所述机构证书对所述资源转移请求子链节点证书进行节点身份验证,在节点身份验证通过的情况下,基于所述资源转移请求子链节点证书对所述签名信息进行签名验证处理,并在验证通过之后将所述资源数据同步至资源转移处理目标链;
第三获取单元,用于从所述交易公证中继链上获取资源转移状态,其中,所述资源转移状态为所述资源转移处理目标链对所述资源数据进行资源转移时生成、并将所述资源转移状态同步至所述交易公证中继链。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11中任一项所述的跨链资源转移方法。
15.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至11中任一项所述的跨链资源转移方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287461.1A CN115115360A (zh) | 2021-03-17 | 2021-03-17 | 跨链资源转移方法、装置、介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287461.1A CN115115360A (zh) | 2021-03-17 | 2021-03-17 | 跨链资源转移方法、装置、介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115115360A true CN115115360A (zh) | 2022-09-27 |
Family
ID=83323804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110287461.1A Pending CN115115360A (zh) | 2021-03-17 | 2021-03-17 | 跨链资源转移方法、装置、介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115115360A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116975158A (zh) * | 2023-09-25 | 2023-10-31 | 腾讯科技(深圳)有限公司 | 请求处理方法、装置、计算机设备和存储介质 |
-
2021
- 2021-03-17 CN CN202110287461.1A patent/CN115115360A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116975158A (zh) * | 2023-09-25 | 2023-10-31 | 腾讯科技(深圳)有限公司 | 请求处理方法、装置、计算机设备和存储介质 |
CN116975158B (zh) * | 2023-09-25 | 2024-01-26 | 腾讯科技(深圳)有限公司 | 请求处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110377239B (zh) | 数据签名方法、装置、服务器、***及存储介质 | |
CN113098907B (zh) | 一种区块链的群组划分方法与装置 | |
CN108965230A (zh) | 一种安全通信方法、***及终端设备 | |
CN110675153A (zh) | 基于区块链的数据校验方法及装置、存储介质及电子设备 | |
CN112291372B (zh) | 区块链的异步落账方法、装置、介质及电子设备 | |
CN111625869A (zh) | 数据处理方法及数据处理装置 | |
KR20060031583A (ko) | 타임 스탬프 서비스 시스템, 타임 스탬프 정보 검증 서버장치, 및 컴퓨터 소프트웨어 | |
CN110417790A (zh) | 区块链实名制排队***及方法 | |
CN112115205A (zh) | 基于数字证书认证的跨链信任方法、装置、设备以及介质 | |
CN112311779B (zh) | 应用于区块链***的数据访问控制方法及装置 | |
CN112235301B (zh) | 访问权限的验证方法、装置和电子设备 | |
CN114760071B (zh) | 基于零知识证明的跨域数字证书管理方法、***和介质 | |
CN112862487A (zh) | 一种数字证书认证方法、设备及存储介质 | |
CN111833190A (zh) | 年金数据处理方法、装置、介质及电子设备 | |
CN112231755A (zh) | 一种基于区块链的数据授权方法、装置及*** | |
CN114024723B (zh) | 基于esop***的线上签署方法及装置、设备、介质 | |
CN114172655A (zh) | 一种安全多方计算数据***、方法、设备及数据处理终端 | |
CN115115360A (zh) | 跨链资源转移方法、装置、介质及电子设备 | |
CN112769854A (zh) | 一种支持多种数字身份信息的安全协议认证方法和*** | |
CN115701078A (zh) | 跨链交易处理方法、装置、电子设备以及存储介质 | |
CN112926981B (zh) | 用于区块链的交易信息处理方法、装置、介质及电子设备 | |
CN116186749A (zh) | 基于区块链的业务处理方法、装置、电子设备和可读介质 | |
CN116186786A (zh) | 基于区块链的业务处理方法、装置、电子设备和可读介质 | |
CN114329368A (zh) | 交易账户的管理方法、装置、计算机可读介质及电子设备 | |
CN115222392A (zh) | 基于区块链的业务访问方法、装置、介质及电子设备 |
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 |