首页 / 专利库 / 银行与财务事项 / 智能合约 / 基于区块链的资产转移方法、装置及硬件设备

基于链的资产转移方法、装置及硬件设备

阅读:914发布:2020-05-11

专利汇可以提供基于链的资产转移方法、装置及硬件设备专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 区 块 链 的资产转移方法、装置及 硬件 设备,涉及区块链技术领域,用于保证区块链中资产转移的安全性。主要技术方案为:接收第一区块链系统中第一交易方发送的触发执行 智能合约 请求 后,对第一交易方的签名进行验证;若验证通过,对第一交易方的钱包加密地址以及智能合约进行解密,获取第一交易方的钱包地址以及智能合约中的通证内容;通过第二交易方的钱包地址以及第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过通证加密密钥对第一交易方的钱包地址及通证内容进行加密,得到加密通证;将包含加密通证的智能合约发送给第二交易方,使得第二交易方执行第一交易方与第二交易方之间的交易。,下面是基于链的资产转移方法、装置及硬件设备专利的具体信息内容。

1.一种基于链的资产转移方法,应用于中心节点,其特征在于,所述方法包括:
获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
2.根据权利要求1所述的基于区块链的资产转移方法,其特征在于,所述通过所述第二交易方的加密地址以及所述第一交易方的加密地址,当前时间点确定通证加密密钥,包括:
获取所述当前时间点,并对所当前时间点进行四舍五入确定到分钟;
对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及经过所述四舍五入的当前时间点进行拼接得到所述通证加密密钥。
3.根据权利要求2所述的基于区块链的资产转移方法,其特征在于,所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易,包括:
确定接收到所述智能合约的时间点,并对所述智能合约的时间点进行四舍五入确定到分钟;
对经过四舍五入确定到分钟的智能合约的时间点与预置时间进行相减得到目标时间;
通过对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及所述目标时间进行拼接得到所述通证解密密钥;
通过所述通证解密密钥对所述智能合约中的加密通证进行解密,获取加密通证中的第一交易方的钱包地址及通证内容;
依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
4.根据权利要求3所述的基于区块链的资产转移方法,其特征在于,所述依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易之前,所述方法还包括:
将所述智能合约广播给所述第一区块链系统及第二区块链系统中的其他交易节点;
检测是否获取到预置数量的其他交易节点对所述智能合约的签名认证;
若获取到预置数量的其他交易节点对所述智能合约的签名认证,则依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
5.根据权利要求1所述的基于区块链的资产转移方法,其特征在于,在所述第一交易方的签名验证通过之后,对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容之前,所述方法还包括:
获取所述第一交易方和第二交易方分别对应的CA数字证书;并验证所述第一交易方和第二交易方分别对应的CA数字证书是否得到认证;
若所述第一交易方和第二交易方分别对应的CA数字证书得到认证,则分别获取所述数字证书中第一交易方和第二交易方分别包含的用户身份信息;
验证所述第一交易方和所述第二交易方分别对应的用户身份信息是否成功;
若所述第一交易方和所述第二交易方分别对应的用户身份信息均验证成功,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容。
6.一种基于区块链的资产转移装置,其特征在于,所述装置包括:
获取模块,用于获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
验证模块,用于当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
所述获取模块,若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
解密模块,用于对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
加密模块,用于通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
执行模块,用于将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
7.根据权利要求6所述的基于区块链的资产转移装置,其特征在于,所述加密模块包括:
获取单元,用于获取所述当前时间点,并对所当前时间点进行四舍五入确定到分钟;
确定单元,用于对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及经过所述四舍五入的当前时间点进行拼接得到所述通证加密密钥。
8.根据权利要求7所述的基于区块链的资产转移装置,其特征在于,所述执行模块包括:
确定单元,用于确定接收到所述智能合约的时间点,并对所述智能合约的时间点进行四舍五入确定到分钟;
计算单元,用于对经过四舍五入确定到分钟的智能合约的时间点与预置时间进行相减得到目标时间;
所述确定单元,还用于通过对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及所述目标时间进行拼接得到所述通证解密密钥;
获取单元,用于通过所述通证解密密钥对所述智能合约中的加密通证进行解密,获取加密通证中的第一交易方的钱包地址及通证内容;
执行单元,用于依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
9.根据权利要求8所述的基于区块链的资产转移装置,其特征在于,所述装置还包括:
广播模块,用于将所述智能合约广播给所述第一区块链系统及第二区块链系统中的其他交易节点;
所述验证模块,还用于检测是否获取到预置数量的其他交易节点对所述智能合约的签名认证;
所述执行模块,还用于若获取到预置数量的其他交易节点对所述智能合约的签名认证,则依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
10.根据权利要求6所述的基于区块链的资产转移装置,其特征在于,
所述获取模块,还用于获取所述第一交易方和第二交易方分别对应的CA数字证书;并验证所述第一交易方和第二交易方分别对应的CA数字证书是否得到认证;
所述获取模块,还用于若所述第一交易方和第二交易方分别对应的CA数字证书得到认证,则分别获取所述数字证书中第一交易方和第二交易方分别包含的用户身份信息;
所述验证模块,还用于验证所述第一交易方和所述第二交易方分别对应的用户身份信息是否成功;
所述获取模块,还用于若所述第一交易方和所述第二交易方分别对应的用户身份信息均验证成功,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容。
11.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至
5任一项所述基于区块链的资产转移方法。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述基于区块链的资产转移方法。

说明书全文

基于链的资产转移方法、装置及硬件设备

技术领域

[0001] 本发明涉及区块链技术领域,尤其涉及一种基于区块链的资产转移方法、装置及硬件设备。

背景技术

[0002] 区块链是一种与传统集中记账方式不同的记录技术,参与到区块链系统上的节点,可能不属于同一组织、彼此无须信任;区块链数据由所有节点共同维护,每个参与维护的节点都能获得一份完整记录的拷贝。与传统的记账技术相比,其特点包括:维护一条不断增长的链,只可能添加记录,而发生过的记录不可篡改;无须集中控制而能达成共识等特点。
[0003] 跨链是指通过技术手段,将原本不同的、独立的区块链上的信息、价值进行交换和流通。区块链对交易的确认,一是确认交易已经发生并且上链,写入了区块账本;二是该交易已经获得了系统足够多区块的确认,这样节点作恶和产生双重支付等导致交易无效的概率非常低。区块链系统本身是较为封闭的系统,缺乏主动获取外部信息的机制,因此要确认另外一条链的交易状态并非一件容易的事,从而如何保证跨链的资产转移安全是目前亟需解决的问题。

发明内容

[0004] 本发明提供一种基于区块链的资产转移方法、装置、计算机设备及存储介质,用于保证区块链系统资产转移的安全性。
[0005] 本发明实施例提供一种基于区块链的资产转移方法,所述方法包括:
[0006] 获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
[0007] 当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
[0008] 若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
[0009] 对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
[0010] 通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
[0011] 将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
[0012] 本发明实施例提供一种基于区块链的资产转移装置,所述装置包括:
[0013] 获取模块,用于获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
[0014] 验证模块,用于当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
[0015] 所述获取模块,若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
[0016] 解密模块,用于对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
[0017] 所述加密模块,还用于通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
[0018] 发送模块,用于将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
[0019] 一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于区块链的资产转移方法。
[0020] 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于区块链的资产转移装置。
[0021] 本发明提供的一种基于区块链的资产转移方法、装置、计算机设备及存储介质,获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址;当接收到第一区块链系统中第一交易方发送的触发执行智能合约请求后,对第一交易方的签名进行验证;若验证通过,则对第一交易方的钱包加密地址以及智能合约进行解密,获取第一交易方的钱包地址以及智能合约中的通证内容;对第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;通过第二交易方的钱包地址以及第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;将包含加密通证的智能合约发送给第二区块链系统中的第二交易方,以使得第二交易方对智能合约中的加密通证进行解密以执行第一交易方与第二交易方之间的交易。由于本发明第一区块链系统及第二区块链中的交易节点在发起交易后,会依次验证发起交易的第一交易方,并在验证通过之后生成新的通证加密秘钥,并依据该通证加密秘钥对第一交易方的钱包地址及通证内容进行加密,然后将加密后的通证发送给第二区块链系统中的第二交易方,使得第二交易方依据加密后的通证执行与第二交易方之间的交易,从而保证块链系统资产转移的安全性。附图说明
[0022] 为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0023] 图1是本发明一实施例中基于区块链的资产转移方法的一流程图
[0024] 图2是本发明一实施例中确定通证加密密钥方法的一流程图;
[0025] 图3是本发明一实施例中执行智能合约的具体流程图;
[0026] 图4是本发明一实施例中基于区块链的资产转移装置的一原理框图
[0027] 图5是本发明一实施例中计算机设备的一示意图。

具体实施方式

[0028] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0029] 在一实施例中,如图1所示,提供一种基于区块链的资产转移方法,应用于中心节点,该中心节点连接于第一区块链系统和第二区块链系统,包括如下步骤:
[0030] S10,获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址。
[0031] 其中,第一区块链系统和第二区块链系统是不同的区块链系统,他们之间交易节点的交易是需要进行跨链交易的,具体的可通过本发明实施例中的执行主体中心节点实现第一区块链系统与第二区块链系统之间的跨链交易。所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方,交易节点的秘钥是其所在区块链系统中的私钥,通过该私钥对钱包地址进行加密得到钱包加密地址,每个交易节点的钱包地址用于表示对应交易方所在账号的地址,通过该账号的地址可实现支付往来交易等,本发明实施例不做具体限定。
[0032] 需要说明的是,在获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址之前,各个区块链系统还需要通过部署脚本部署区块链系统,然后依据区块链系统中节点的日志确定节点服务是否部署成功。具体的,在通过部署脚本部署区块链系统之后,获取区块链系统中各个节点分别对应的日志,然后通过对各节点的日志进行分析确定每个节点是否启动成功,如果区块链系统中所有节点均已经启动成功,则各区块链系统可向中心节点发送各个交易节点的钱包加密地址。
[0033] 需要参与智能合约的用户必须先注册成为区块链的用户,即交易方向区块链发送注册账号申请后,区块链系统返回给交易方一对公钥和私钥。公钥做为用户在区块链上的账户地址,私钥做为操作该账户的唯一钥匙。然后,交易方中的两个以上的用户根据需要共同商定了一份承诺合约,合约中包含了双方的权利和义务,这些权利和义务以电子化的方式设计记录下来,参与者分别用各自私钥进行签名,以确保合约的有效性,签名后的智能合约将会在区块链网络中广播出去。
[0034] S20,当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对第一交易方的签名进行验证。
[0035] 在本发明实施例中,在接收到第一区块链系统中的第一交易方发送的触发执行智能合约请求后,通过第一交易方的私钥对第一交易方的签名进行验证,若签名验证通过,则跳转到步骤S30继续执行。
[0036] S30,若第一交易方的签名验证通过,则对第一交易方的钱包加密地址以及所述智能合约进行解密,获取第一交易方的钱包地址以及智能合约中的通证内容。
[0037] 对于本发明实施例,对第一交易方的钱包加密地址以及智能合约进行解密的秘钥均为第一交易方对应的私钥。对钱包加密地址进行解密得到第一交易方的钱包地址,对智能合约进行解密得到智能合约中包含的通证内容,通证内容是交易双方进行具体交易的依据。其中,所述通证内容包括第二交易方、交易金额和交易类型等,本发明实施例不做具体限定。需要说明的是,通证内容中记录的第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象,即跨链交易中另一个区块链中需要与第一交易进行交易的交易对象。
[0038] 在本发明体用的另一个实施例中,在所述第一交易方的签名验证通过之后,对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容之前,所述方法还包括:获取所述第一交易方和第二交易方分别对应的CA数字证书;并验证所述第一交易方和第二交易方分别对应的CA数字证书是否得到认证;若所述第一交易方和第二交易方分别对应的CA数字证书得到认证,则分别获取所述数字证书中第一交易方和第二交易方分别包含的用户身份信息;验证所述第一交易方和所述第二交易方分别对应的用户身份信息是否成功;若所述第一交易方和所述第二交易方分别对应的用户身份信息均验证成功,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容。
[0039] 其中,CA数字证书内含公钥,用户通过验证CA的签字从而信任CA,任何人都可以得到CA数字证书,用以验证它所签发的证书。CA数字证书将该公钥与申请者的用户身份信息绑在一起,并为之签字后,便形成证书发给申请者。
[0040] 在本发明实施例中,所述获取所述第一交易方和第二交易方分别对应的CA(电子认证服务)数字证书之前,所述方法还包括:所述第一交易方和所述第二交易方分别向权威机构服务器发送CA数字证书获取请求,所述CA数字证书获取请求中包含用户身份信息,以使所述权威机构服务器根据所述用户身份信息对用户进行KYC(Know your custome,即充分了解你的客户)审核;所述第一交易方和所述第二交易方接收所述权威机构服务器发送的CA数字证书,所述CA数字证书中包括用户身份信息,所述CA数字证书是经过KYC审核通过的证书。
[0041] 在第一交易方和第二交易方分别对应的CA数字证书得到认证后,则分别从第一交易方和第二交易方的CA数字证书中获取用户身份信息,即通过各CA数字证书分别对应的公钥对CA数字证书进行解密,并从中获取第一交易方和第一交易方分别包含的用户身份信息。验证第一交易方和第二交易方的用户身份信息是否成功,是为了进一步确定第一交易方和第二交易方是否为可信用户,若第一交易方和第二交易方均为可信用户,则对第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容。
[0042] S40,对第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址。
[0043] 对于本发明实施例,在对第一交易方的钱包加密地址以及所述智能合约进行解密,获取第一交易方的钱包地址以及智能合约中的通证内容之后,确定通证内容中与第一交易方对应的第二交易方,然后获取第二交易方的钱包加密地址,并通过第二交易方的私钥对钱包加密地址进行解密得到第二交易方的钱包地址。
[0044] S50,通过第二交易方的钱包地址以及第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过通证加密密钥对第一交易方的钱包地址及通证内容进行加密,得到加密通证。
[0045] 具体的,如图2所示,所述通过所述第二交易方的加密地址以及所述第一交易方的加密地址,当前时间点确定通证加密密钥,包括:
[0046] S501,获取当前时间点,并对所当前时间点进行四舍五入确定到分钟。
[0047] 其中,当前时间点为第一区块链系统当前运行的时间点,该当前时间点确定到秒。例如,当前时间点为2019年11月11日13:00:20,则对该当前时间点进行四舍五入得到的时间为13:00。需要说明的是,当前时间点进行的四舍五入操作是分钟后面的秒超过30秒,则对分钟加一;如果分钟后面的秒少于30秒,则将秒舍弃,分钟数据保持不变。
[0048] S502,对第二交易方的钱包地址以及第一交易方的钱包地址,以及经过四舍五入的当前时间点进行拼接得到通证加密密钥。
[0049] 在本发明实施中,在对第二交易方的钱包地址以及第一交易方的钱包地址,以及经过四舍五入的当前时间点进行拼接得到通证加密密钥的过程中,具体可根据第二交易方的钱包地址、第一交易方的钱包地址,经过四舍五入的当前时间点顺序进行拼接,还可以根据经过四舍五入的当前时间点、经过四舍五入的当前时间点的顺序进行拼接得到通知加密秘钥,本发明实施例不做限定。
[0050] 对于本发明实施例中,中心节点在接收到第一区块链中的第一交易方发送的执行智能合约请求后,对第一交易方的签名进行验证,并在验证通过后对获取第一交易方及第二交易方的钱包地址以及经过四舍五入的当前时间点,对第二交易方的钱包地址以及第一交易方的钱包地址,以及经过四舍五入的当前时间点进行拼接得到通证加密密钥,以便于通过通证加密密钥对第一交易方的钱包地址及通证内容进行加密,得到加密通证,从而保证包含加密通证的智能合约的安全性,进而保证块链系统资产转移的安全性。
[0051] S60,将包含加密通证的智能合约发送给第二区块链系统中的第二交易方,以使得第二交易方对所述智能合约中的加密通证进行解密以执行第一交易方与所述第二交易方之间的交易。
[0052] 具体的,第二交易方在接收到中心节点发送的智能合约后,需要对智能合约中的加密通证进行解密,以获取加密通证中的通证内容,以便于根据通证内容执行第一交易方与第二交易方之间的交易。
[0053] 在本发明提供的一个实施例中,所述依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易之前,所述方法还包括:将所述智能合约广播给所述第一区块链系统及第二区块链系统中的其他交易节点;检测是否获取到预置数量的其他交易节点对所述智能合约的签名认证;若获取到预置数量的其他交易节点对所述智能合约的签名认证,则依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。其中,预置数量可以根据实际需求进行设定,如可以根据区块链系统中交易节点的总数进行确认,具体的可将预置数量设置成区块链系统中半数的交易节点数,本发明实施例不做具体限定。
[0054] 在本发明实施例中,将智能合约广播给所述第一区块链系统及第二区块链系统中的其他交易节点;检测是否获取到预置数量的其他交易节点对所述智能合约的签名认证;若获取到预置数量的其他交易节点对所述智能合约的签名认证,则方可依据通证内容及第一交易方及第二交易方的钱包地址执行智能合约中的内容,可进一步的保证区块链系统中资产转移的安全性。
[0055] 具体的如图3所示,所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易,包括:
[0056] S601,确定接收到智能合约的时间点,并对智能合约的时间点进行四舍五入确定到分钟。
[0057] 具体的,第二交易方接收到中心节点发送的智能合约之后,确定接收到智能合约的时间,然后该接收到智能合约的时间点进行四舍五入确定到以分钟为单位。例如,智能合约的时间点为2019年11月11日13:00:40,则对该时间点进行四舍五入得到的时间为13:01。
[0058] S602,对经过四舍五入确定到分钟的智能合约的时间点与预置时间进行相减得到目标时间。
[0059] 其中,该预置时间可以根据实际需求进行设定,如在实际交易中要求转账交易需要在1分钟内完成,若1分钟内没有完成,则需要重新发起申请,则在本发明实施例中可将该预置时间设置为1分钟。例如,进行四舍五入得到的时间为13:01,预置时间为1分钟,则可得到目标时间为13:00。
[0060] S603,通过对第二交易方的钱包地址以及第一交易方的钱包地址,以及目标时间进行拼接得到通证解密密钥。
[0061] 需要要说明的是,依据第二交易方的钱包地址以及第一交易方的钱包地址,以及目标时间进行拼接得到通证解密密钥中的拼接顺序需要与步骤S502中得到通证加密秘钥的顺序相同,以此保证得到与通证加密秘钥对应的通证解密秘钥,从而通过通证解密秘钥可实现对加密通证的解密。
[0062] S604,通过通证解密密钥对智能合约中的加密通证进行解密,获取加密通证中的第一交易方的钱包地址及通证内容。
[0063] 其中,通证内容包含交易金额、交易类型、交易方式、交易时间等内容,本发明实施例不做具体限定。
[0064] S605,依据通证内容以及第一交易方的钱包地址执行第一交易方与第二交易方之间的交易。
[0065] 在本发明实施例中,在通过通证解密密钥对智能合约中的加密通证进行解密,获取加密通证中的第一交易方的钱包地址及通证内容之后,依据通证内容以及第一交易方的钱包地址执行第一交易方与第二交易方之间的交易。例如,第一交易方和第二交易方之间的交易为转账交易,通证内容中的转账金额为100元,转账方位第一交易方,被转账方为第二交易方,则通过第一交易方的钱包地址从中获取到100元,转移到第二交易方的钱包地址中,从而实现第一交易方与第二交易方之间的转账交易。
[0066] 本发明提供的一种基于区块链的资产转移方法,获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址;当接收到第一区块链系统中第一交易方发送的触发执行智能合约请求后,对第一交易方的签名进行验证;若验证通过,则对第一交易方的钱包加密地址以及智能合约进行解密,获取第一交易方的钱包地址以及智能合约中的通证内容;对第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;通过第二交易方的钱包地址以及第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;将包含加密通证的智能合约发送给第二区块链系统中的第二交易方,以使得第二交易方对智能合约中的加密通证进行解密以执行第一交易方与第二交易方之间的交易。由于本发明第一区块链系统及第二区块链中的交易节点在发起交易后,会依次验证发起交易的第一交易方,并在验证通过之后生成新的通证加密秘钥,并依据该通证加密秘钥对第一交易方的钱包地址及通证内容进行加密,然后将加密后的通证发送给第二区块链系统中的第二交易方,使得第二交易方依据加密后的通证执行与第二交易方之间的交易,从而保证块链系统资产转移的安全性。
[0067] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0068] 在本发明提供的一实施例中,提供一种基于区块链的资产转移装置,该基于区块链的资产转移装置与上述实施例中基于区块链的资产转移方法一一对应。如图4所示,基于区块链的资产转移装置包括:获取模块10、验证模块20、解密模块30、加密模块40、执行模块50。各功能模块详细说明如下:
[0069] 获取模块10,用于获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
[0070] 验证模块20,用于当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
[0071] 所述获取模块10,若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
[0072] 解密模块30,用于对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
[0073] 加密模块40,用于通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
[0074] 执行模块50,用于将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
[0075] 具体的,所述加密模块40包括:
[0076] 获取单元41,用于获取所述当前时间点,并对所当前时间点进行四舍五入确定到分钟;
[0077] 确定单元42,用于对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及经过所述四舍五入的当前时间点进行拼接得到所述通证加密密钥。
[0078] 具体的,所述执行模块50包括:
[0079] 确定单元51,用于确定接收到所述智能合约的时间点,并对所述智能合约的时间点进行四舍五入确定到分钟;
[0080] 计算单元52,用于对经过四舍五入确定到分钟的智能合约的时间点与预置时间进行相减得到目标时间;
[0081] 所述确定单元51,还用于通过对所述第二交易方的钱包地址以及所述第一交易方的钱包地址,以及所述目标时间进行拼接得到所述通证解密密钥;
[0082] 获取单元53,用于通过所述通证解密密钥对所述智能合约中的加密通证进行解密,获取加密通证中的第一交易方的钱包地址及通证内容;
[0083] 执行单元54,用于依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
[0084] 进一步的,所述装置还包括:
[0085] 广播模块60,用于将所述智能合约广播给所述第一区块链系统及第二区块链系统中的其他交易节点;
[0086] 验证模块20,还用于检测是否获取到预置数量的其他交易节点对所述智能合约的签名认证;
[0087] 所述执行模块50,还用于若获取到预置数量的其他交易节点对所述智能合约的签名认证,则依据所述通证内容以及所述第一交易方的钱包地址执行所述第一交易方与所述第二交易方之间的交易。
[0088] 所述获取模块10,还用于获取所述第一交易方和第二交易方分别对应的CA数字证书;并验证所述第一交易方和第二交易方分别对应的CA数字证书是否得到认证;
[0089] 所述获取模块10,还用于若所述第一交易方和第二交易方分别对应的CA数字证书得到认证,则分别获取所述数字证书中第一交易方和第二交易方分别包含的用户身份信息;
[0090] 所述验证模块20,还用于验证所述第一交易方和所述第二交易方分别对应的用户身份信息是否成功;
[0091] 所述获取模块10,还用于若所述第一交易方和所述第二交易方分别对应的用户身份信息均验证成功,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容。
[0092] 关于基于区块链的资产转移装置的具体限定可以参见上文中对于基于区块链的资产转移方法的限定,在此不再赘述。上述基于区块链的资产转移装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0093] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口数据库。其中,该计算机设备的处理器用于提供计算和控制能。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于区块链的资产转移方法。
[0094] 在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
[0095] 获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
[0096] 当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
[0097] 若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
[0098] 对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
[0099] 通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
[0100] 将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
[0101] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0102] 获取第一区块链系统及第二区块链系统发送的各个交易节点的钱包加密地址,所述钱包加密地址是依据所在交易节点的秘钥加密得到的;每个所述交易节点均对应一个交易方;
[0103] 当接收到所述第一区块链系统中第一交易方发送的触发执行智能合约请求后,对所述第一交易方的签名进行验证;
[0104] 若所述第一交易方的签名验证通过,则对所述第一交易方的钱包加密地址以及所述智能合约进行解密,获取所述第一交易方的钱包地址以及所述智能合约中的通证内容,所述通证内容包括第二交易方、交易金额和交易类型,所述第二交易方为所述第二区块链系统中与所述第一交易方对应的交易对象;
[0105] 对所述第二交易方的钱包加密地址进行解密获取第二交易方的钱包地址;
[0106] 通过所述第二交易方的钱包地址以及所述第一交易方的钱包地址,当前时间点确定通证加密密钥,并通过所述通证加密密钥对所述第一交易方的钱包地址及通证内容进行加密,得到加密通证;
[0107] 将包含所述加密通证的智能合约发送给所述第二区块链系统中的第二交易方,以使得所述第二交易方对所述智能合约中的加密通证进行解密以执行所述第一交易方与所述第二交易方之间的交易。
[0108] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0109] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
[0110] 以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈