首页 / 专利库 / 银行与财务事项 / 加密货币地址 / 交易方法、设备和存储介质

交易方法、设备和存储介质

阅读:735发布:2020-05-26

专利汇可以提供交易方法、设备和存储介质专利检索,专利查询,专利分析的服务。并且本 发明 提供一种交易方法、设备和存储介质,该方法包括:根据第二随机数生成签名的交易 请求 信息并发送至第一 区 块 链 的 节点 以在第一区块链上生成第一合约;获取若干第一哈希值;其中,第一哈希值为第一随机数的哈希值;根据第二随机数和若干第一哈希值生成第二哈希值;向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态;向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值 锁 定请求交易的 加密 货币 ;其中, 加密货币 由第一合约验证第一随机数的持有者身份无误后解锁并发放给该持有者,收款请求信息根据第一随机数生成。本发明无需签名即可认证身份,缩短了交易时间。,下面是交易方法、设备和存储介质专利的具体信息内容。

1.一种交易方法,其特征在于,包括:
根据第二随机数生成签名的交易请求信息并发送至第一链的节点以在所述第一区块链上生成第一合约;
获取若干第一哈希值;其中,所述第一哈希值为第一随机数的哈希值;
根据所述第二随机数和所述若干第一哈希值生成第二哈希值;
向所述第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态;
向所述第一合约发送所述第二随机数,以供所述第一合约进行验证,并在验证通过后通过所述第二哈希值定请求交易的加密货币
其中,所述加密货币由所述第一合约根据接收的收款请求信息验证所述第一随机数的持有者身份无误后解锁并发放给所述持有者,所述收款请求信息根据所述第一随机数生成。
2.根据权利要求1所述的方法,其特征在于,所述第一随机数根据收款方的签名信息生成;
所述解锁配置为具有预定冻结期的延时解锁;
当所述第一合约在所述冻结期内收到根据所述签名信息生成的撤销发放请求信息,并根据所述签名信息验证收款方的身份无误时,所述第一合约撤销解锁和发放给所述持有者的操作。
3.根据权利要求1所述的方法,其特征在于,所述第一随机数配置为收款方的地址或公钥。
4.根据权利要求1所述的方法,其特征在于,所述根据第二随机数和所获取的第一哈希值生成第二哈希值包括:
根据第二随机数、所获取的第一哈希值,以及以下至少一项生成第二哈希值:对应于所述第一哈希值的收款方地址,退款地址;
其中,所述交易请求信息包括所述收款方地址和/或所述退款地址。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述交易请求信息指定
6.根据权利要求1-4任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述第一合约随机分配。
7.一种交易方法,其特征在于,包括:
生成第一随机数和第一哈希值;其中,所述第一哈希值为所述第一随机数的哈希值;
向支付终端发送所述第一哈希值,以供所述支付终端根据第二随机数和所获取的若干第一哈希值生成第二哈希值,向第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态,向所述第一合约发送所述第二随机数,以供所述第一合约进行验证,并在验证通过后通过所述第二哈希值锁定所述交易请求信息请求交易的加密货币;其中,所述第一合约由所述支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在所述第一区块链上生成;
根据所述第一随机数生成收款请求信息并发送至所述第一合约,以供所述第一合约根据所述收款请求信息验证所述第一随机数的持有者身份无误后解锁并发放所述加密货币。
8.根据权利要求7所述的方法,其特征在于,所述生成第一随机数包括:
通过第一私钥签名生成签名信息,根据所述签名信息生成第一随机数。
9.根据权利要求8所述的方法,其特征在于,所述解锁配置为具有预定冻结期的延时解锁;
所述方法还包括:
同步所述第一区块链的数据以监测是否有第三方通过盗用所述第一随机数向所述第一合约请求收款:
是,则在所述冻结期内根据所述签名信息生成撤销发放请求信息并发送至所述第一合约,以供所述第一合约根据所述签名信息验证收款方的身份无误后撤销解锁和发放给所述第三方的操作。
10.根据权利要求7所述的方法,其特征在于,所述第一随机数配置为收款方的地址或公钥。
11.根据权利要求7所述的方法,其特征在于,所述第二哈希值根据所述第二随机数、所述支付终端所获取的第一哈希值,以及以下至少一项生成:对应于所述第一哈希值的收款方地址,退款地址;
其中,所述交易请求信息包括所述收款方地址和/或所述退款地址。
12.根据权利要求7-11任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述交易请求信息指定。
13.根据权利要求7-11任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述第一合约随机分配。
14.一种交易方法,其特征在于,包括:
接收支付终端发送的签名的交易请求信息,根据所述交易请求信息在第一区块链上生成第一合约;其中,所述交易请求信息根据第二随机数生成;
接收所述支付终端发送的第二随机数和若干第一哈希值,根据所述第二随机数和所述若干第一哈希值触发所述第一合约进入验证状态;其中,所述第二哈希值由所述支付终端根据第二随机数和所获取的若干第一哈希值生成,所述第一哈希值为第一随机数的哈希值;
接收所述支付终端发送的第二随机数,通过所述第一合约进行验证,并在验证通过后通过所述第二哈希值锁定所述交易请求信息请求交易的加密货币;
接收收款请求信息,根据所述收款请求信息验证所述第一随机数的持有者身份无误后解锁所述加密货币并发放给所述持有者;其中,所述收款请求信息根据所述第一随机数生成。
15.根据权利要求14所述的方法,其特征在于,所述第一随机数根据收款方的签名信息生成;所述解锁配置为具有预定冻结期的延时解锁;
所述接收收款请求信息,根据所述收款请求信息验证所述第一随机数的持有者身份无误后解锁所述加密货币并发放给所述持有者包括:
接收收款请求信息,根据所述收款请求信息验证所述第一随机数的持有者身份:
若验证通过,则等待预定的冻结期,并在所述冻结期内监测是否收到根据所述签名信息生成的撤销发放请求信息:
是,则根据所述签名信息验证收款方的身份:若验证无误,则撤销解锁和发放给所述持有者的操作;
否,则在度过所述冻结期后解锁所述加密货币并发放给所述持有者。
16.根据权利要求14所述的方法,其特征在于,所述第一随机数配置为收款方的地址或公钥。
17.根据权利要求14所述的方法,其特征在于,所述第二哈希值根据所述第二随机数、所述支付终端所获取的第一哈希值,以及以下至少一项生成:对应于所述第一哈希值的收款方地址,退款地址;
其中,所述交易请求信息包括所述收款方地址和/或所述退款地址。
18.根据权利要求14-17任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述交易请求信息指定。
19.根据权利要求14-17任一项所述的方法,其特征在于,所述第一随机数对应的收款数额由所述第一合约随机分配。
20.一种交易方法,其特征在于,包括:
根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在所述第一区块链上生成第一合约;
获取若干地址;
根据所述第二随机数和所述若干地址生成第二哈希值;
向所述第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态;
向所述第一合约发送所述第二随机数,以供所述第一合约进行验证,并在验证通过后通过所述第二哈希值锁定所述交易请求信息请求交易的加密货币;
其中,所述加密货币由所述第一合约根据接收的收款请求信息验证收款的地址无误后解锁并转账至所述地址。
21.一种交易方法,其特征在于,包括:
向支付终端发送地址,以供所述支付终端根据第二随机数和所获取的若干地址生成第二哈希值,向第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态,向所述第一合约发送所述第二随机数,以供所述第一合约进行验证,并在验证通过后通过所述第二哈希值锁定所述交易请求信息请求交易的加密货币;其中,所述第一合约由所述支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在所述第一区块链上生成;
根据所述地址生成收款请求信息并发送至所述第一合约,以供所述第一合约验证收款的地址无误后解锁所述加密货币并转账至所述地址。
22.一种交易方法,其特征在于,包括:
接收支付终端发送的签名的交易请求信息,根据所述交易请求信息在第一区块链上生成第一合约;其中,所述交易请求信息根据第二随机数生成;
接收所述支付终端发送的第二随机数和若干地址,根据所述第二随机数和所述若干地址触发所述第一合约进入验证状态;其中,所述第二哈希值由所述支付终端根据第二随机数和所获取的若干地址生成,所述第一哈希值为第一随机数的哈希值;
接收所述支付终端发送的第二随机数,通过所述第一合约进行验证,并在验证通过后通过所述第二哈希值锁定所述交易请求信息请求交易的加密货币;
接收收款请求信息,根据所述收款请求信息验证收款的地址无误后解锁所述加密货币并转账至所述地址。
23.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-22中任一项所述的方法。
24.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-22中任一项所述的方法。

说明书全文

交易方法、设备和存储介质

技术领域

[0001] 本申请涉及互联网金融技术领域,具体涉及一种交易方法、设备和存储介质。

背景技术

[0002] 当前在链系统中,普遍采用利用公私钥对进行签名验证的方法进行身份认证。例如,用户甲发送一项需要通过身份认证的信息时,首先需要通过所持有的私钥对该信息进行签名,生成签名信息,再将该信息和签名信息发送至认证节点,认证节点接收到明文的信息和签名信息后,需要获取用户甲的公钥,对签名信息进行解密,并与明文信息进行比对验证,最终完成身份认证。
[0003] 在上述身份认证过程中,由于非对称加密算法的加解密较为复杂,导致耗时较长,而在区块链系统中进行一笔交易通常需要进行多次签名验证,导致交易耗时也较长。发明内容
[0004] 鉴于现有技术中的上述缺陷或不足,期望提供一种只需在发起交易时进行一次签名认证即可认证身份,从而缩短交易时间的交易方法、设备和存储介质。
[0005] 第一方面,本发明提供一种适用于支付终端的交易方法,包括:
[0006] 根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成第一合约;
[0007] 获取若干第一哈希值;其中,第一哈希值为第一随机数的哈希值;
[0008] 根据第二随机数和若干第一哈希值生成第二哈希值;
[0009] 向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态;
[0010] 向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值定交易请求信息请求交易的加密货币
[0011] 其中,加密货币由第一合约根据接收的收款请求信息验证第一随机数的持有者身份无误后解锁并发放给该持有者,收款请求信息根据第一随机数生成。
[0012] 第二方面,本发明提供一种适用于收款终端的交易方法,包括:
[0013] 生成第一随机数和第一哈希值;其中,第一哈希值为第一随机数的哈希值;
[0014] 向支付终端发送第一哈希值,以供支付终端根据第二随机数和所获取的若干第一哈希值生成第二哈希值,向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态,向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;其中,第一合约由支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成;
[0015] 根据第一随机数生成收款请求信息并发送至第一合约,以供第一合约根据收款请求信息验证第一随机数的持有者身份无误后解锁并发放加密货币。
[0016] 第三方面,本发明提供一种适用于区块链节点的交易方法,包括:
[0017] 接收支付终端发送的签名的交易请求信息,根据交易请求信息在第一区块链上生成第一合约;其中,交易请求信息根据第二随机数生成;
[0018] 接收支付终端发送的第二随机数和若干第一哈希值,根据第二随机数和若干第一哈希值触发第一合约进入验证状态;其中,第二哈希值由支付终端根据第二随机数和所获取的若干第一哈希值生成,第一哈希值为第一随机数的哈希值;
[0019] 接收支付终端发送的第二随机数,通过第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0020] 接收收款请求信息,根据收款请求信息验证第一随机数的持有者身份无误后解锁加密货币并发放给该持有者;其中,收款请求信息根据第一随机数生成。
[0021] 第四方面,本发明提供另一种适用于支付终端的交易方法,包括:
[0022] 根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成第一合约;
[0023] 获取若干地址;
[0024] 根据第二随机数和该若干地址生成第二哈希值;
[0025] 向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态;
[0026] 向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0027] 其中,加密货币由第一合约根据接收的收款请求信息验证收款的地址无误后解锁并转账至地址。
[0028] 第五方面,本发明提供另一种适用于收款终端的交易方法,包括:
[0029] 向支付终端发送地址,以供支付终端根据第二随机数和所获取的若干地址生成第二哈希值,向第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态,向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;其中,第一合约由支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成;
[0030] 根据地址生成收款请求信息并发送至第一合约,以供第一合约验证收款的地址无误后解锁加密货币并转账至地址。
[0031] 第六方面,本发明提供另一种适用于区块链节点的交易方法,包括:
[0032] 接收支付终端发送的签名的交易请求信息,根据交易请求信息在第一区块链上生成第一合约;其中,交易请求信息根据第二随机数生成;
[0033] 接收支付终端发送的第二随机数和若干地址,根据第二随机数和若干地址触发第一合约进入验证状态;其中,第二哈希值由支付终端根据第二随机数和所获取的若干地址生成,第一哈希值为第一随机数的哈希值;
[0034] 接收支付终端发送的第二随机数,通过第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0035] 接收收款请求信息,根据收款请求信息验证收款的地址无误后解锁加密货币并转账至地址。
[0036] 第七方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的交易方法。
[0037] 第八方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的交易方法。
[0038] 本发明诸多实施例提供的交易方法、设备和存储介质在签名发起交易后,通过配置由第二随机数和收款方提供的身份验证信息所生成的第二哈希值锁定待交易的加密资产,使得区块链上的智能合约可以通过支付方提供的第二随机数实现快速验证支付方的身份,而无需进行多次签名验证,实现了只需在发起交易时进行一次签名认证即可认证身份,缩短了交易时间;
[0039] 本发明一些实施例提供的交易方法、设备和存储介质通过哈希锁定的方式生成收款方的身份验证信息,只需向智能合约提供第一随机数即可解锁收款,为交易的灵活性提供了便利;
[0040] 本发明一些实施例提供的交易方法、设备和存储介质进一步通过将第一随机数配置为根据收款方的签名信息生成,并为解锁配置了冻结期,从而使收款方在第一随机数被盗用时可以在冻结期内向智能合约发送签名信息以供验证收款方的身份并撤销解锁和发放的操作,为收款方进一步提供了安全保障;
[0041] 本发明一些实施例提供的交易方法、设备和存储介质进一步通过将第一随机数配置为收款方的地址或公钥,从而指定了固定的收款地址,在牺牲交易灵活性的同时保障了交易的安全性;
[0042] 本发明一些实施例提供的交易方法、设备和存储介质进一步通过在生成第二哈希值时指定对应的收款方地址和/或退款地址,进一步增强了交易的安全性和便利性;
[0043] 本发明一些实施例提供的交易方法、设备和存储介质通过将收款方地址配置为收款方的身份验证信息,保障了交易的安全性。附图说明
[0044] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0045] 图1为本发明一实施例的交易场景示意图。
[0046] 图2为本发明一实施例提供的一种适用于支付终端的交易方法的流程图
[0047] 图3为本发明一优选实施例的交易场景示意图。
[0048] 图4为本发明另一优选实施例的交易场景示意图。
[0049] 图5为本发明一实施例提供的一种适用于收款终端的交易方法的流程图。
[0050] 图6为图5所示方法的一种优选实施方式的流程图。
[0051] 图7为本发明一实施例提供的一种适用于区块链节点的交易方法的流程图。
[0052] 图8为图7所示方法的一种优选实施方式中步骤S35的流程图。
[0053] 图9为本发明一实施例提供的另一种适用于支付终端的交易方法的流程图。
[0054] 图10为本发明一实施例提供的另一种适用于收款终端的交易方法的流程图。
[0055] 图11为本发明一实施例提供的另一种适用于区块链节点的交易方法的流程图。
[0056] 图12为本发明一实施例提供的一种设备的结构示意图。

具体实施方式

[0057] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
[0058] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0059] 图1为本发明一实施例的交易场景示意图。图2为本发明一实施例提供的一种适用于支付终端的交易方法的流程图。
[0060] 如图1和图2所示,在本实施例中,本发明提供一种适用于支付终端的交易方法,包括:
[0061] S11:根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成第一合约;
[0062] S13:获取若干第一哈希值;其中,第一哈希值为第一随机数的哈希值;
[0063] S15:根据第二随机数和若干第一哈希值生成第二哈希值;
[0064] S17:向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态;
[0065] S19:向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0066] 其中,加密货币由第一合约根据接收的收款请求信息验证第一随机数的持有者身份无误后解锁并发放给该持有者,收款请求信息根据第一随机数生成。
[0067] 具体地,以图1所示场景中,用户甲向用户乙支付10个第一加密货币xxx为例:
[0068] 在步骤S11中,用户甲的支付终端100生成第二随机数r2,并打包生成签名的交易请求信息sign(10xxx,hash(r2),T1),其中,T1为交易类别参数,用于触发相应类别的交易的合约,支付终端100将该交易请求信息发送至第一区块链的节点301,从而在第一区块链上触发生成对应于T1类别的第一合约。
[0069] 用户乙的收款终端200生成第一随机数r1,以及第一哈希值 H1=hash(r1),并将第一哈希值H1发送至用户甲的支付终端100。
[0070] 在步骤S13中,用户甲的支付终端100接收第一哈希值H1。在本实施例中,用户甲只向用户乙进行支付,并且不进行找零,因此只获取一项第一哈希值;在另一些实施例中,用户甲同时向多个用户进行支付,或需要进行找零时,则分别接收各收款用户的收款终端发送的第一哈希值,或,额外生成用于进行找零收款的第一哈希值。
[0071] 在本实施例中,该支付终端100通过接收收款终端发送的信息获取第一哈希值H1,在更多实施例中,还可以通过以下任意一种或多种不同的方式,或本领域技术人员可以理解的更多不同方式进行获取:收款终端200将第一哈希值H1写入区块链或存储在约定的其它位置以供支付终端100获取;支付终端100自动生成用于进行找零收款的第一哈希值H1;等等。
[0072] 在步骤S15中,用户甲的支付终端100生成第二随机数r2,并根据第二随机数r2和第一哈希值H1生成第二哈希值H2=hash(r2,H1)。
[0073] 在步骤S17中,用户甲的支付终端100向第一合约发送第二哈希值H2和第一哈希值H1,从而触发第一合约进入验证状态。
[0074] 在步骤S19中,用户甲的支付终端100向第一合约发送包括第二随机数r2的验证请求信息;第一合约根据第二哈希值H2和第一哈希值 H1对第二随机数r2进行验证,验算H2和hash(r2,H1)是否相等:
[0075] 是,则r2正确,验证无误,通过第二哈希值H2锁定用户甲地址上的10个第一加密货币,第一合约进入解锁状态;
[0076] 否,则r2错误,验证失败,第一合约继续等待支付方的验证请求信息。
[0077] 在第一合约进入解锁状态后,用户乙的收款终端200可以根据第一随机数r1生成收款请求信息并发送至第一合约;
[0078] 第一合约收到收款请求信息后,通过验算H2和hash(r2,hash(r1)) 是否相等来验证用户乙是否第一随机数的持有者:
[0079] 验证无误,则解锁该10个第一加密货币,并转账至用户乙的地址,完成交易。
[0080] 用户乙还可以在收款前将第一随机数r1转让给用户丁,用户丁在获取第一随机数r1之后同样可以通过上述过程解锁并获取该10个第一加密货币。
[0081] 上述实施例以用户甲向用户乙支付10个第一加密货币为例,在另一实施例中,用户甲还可以同时向多个用户进行支付,例如,分别向用户A、B、C支付5个、3个、2个第一加密货币,交易过程与上述过程基本相同,区别在于:
[0082] 用户A、B、C的收款终端分别通过第一随机数r1-A、r1-B、r1-C生成第一哈希值H1-A、H1-B、H1-C;
[0083] 在步骤S13中,分别接收用户A、B、C的收款终端分别发送的第一哈希值H1-A、H1-B、H1-C;
[0084] 在步骤S15中,根据第二随机数r2和各项第一哈希值H1-A、H1-B、 H1-C生成第二哈希值:H2=hash(r2,H1-A,H1-B,H1-C);
[0085] 在步骤S17中,交易请求信息指定各项第一哈希值H1-A、H1-B、 H1-C所对应的各项第一随机数的收款数额;
[0086] 在第一合约通过第二哈希值H2锁定该10个第一加密货币之后,用户A可以根据第一随机数r1-A生成收款请求信息并发送至第一合约;
[0087] 第一合约收到收款请求信息后,通过验算H2和hash(r2,hash(r1-A), H1-B,H1-C)是否相等来验证用户乙是否第一随机数的持有者:
[0088] 验证无误,则解锁交易请求信息指定的5个第一加密货币,并转账至用户A的地址,完成交易。
[0089] 用户A同样可以将第一随机数r1-A转让给用户D,以供用户D进行解锁和收款。
[0090] 用户B和用户C可以以同样的方式进行收款或转让第一随机数。
[0091] 在上述实施例中,第一随机数对应的收款数额由交易请求信息指定;在另一实施例中,第一随机数对应的收款数额还可以配置为由第一合约随机分配,例如,第一合约随机将用户甲支付的10个第一加密货币分配给用户A、B、C。
[0092] 在上述实施例中,第一合约配置为智能合约,在更多实施例中,还可以根据不同需求将第一合约配置为任意的基类合约、内置合约,或其它本领域常用的不同合约,可实现相同的技术效果。
[0093] 在本实施例中,支付终端100和收款终端200配置为不同的用户端,在另一实施例中,还可以将各用户的用户端配置为兼具支付功能和收款功能的相同用户端,可实现相同的技术效果。
[0094] 上述实施例通过配置由第二随机数和收款方提供的身份验证信息所生成的第二哈希值锁定待交易的加密资产,使得区块链上的智能合约可以通过支付方提供的第二随机数实现快速验证支付方的身份,而无需再对签名信息进行解密和比对,实现了无需签名即可认证身份,缩短了交易时间;
[0095] 同时还通过哈希锁定的方式生成收款方的身份验证信息,只需向智能合约提供第一随机数即可解锁收款,为交易的灵活性提供了便利。
[0096] 图3为本发明一优选实施例的交易场景示意图。如图3所示,在一优选实施例中,第一随机数根据收款方的签名信息生成,上述解锁配置为具有预定冻结期的延时解锁;当第一合约在冻结期内收到根据签名信息生成的撤销发放请求信息,并根据签名信息验证收款方的身份无误时,第一合约撤销解锁和发放给持有者的操作。
[0097] 具体地,以用户丙盗取用户乙的第一随机数r1,并试图进行收款为例:
[0098] 第一随机数r1是根据用户乙的签名信息生成的:r1=hash(sign(m));
[0099] 用户丙的收款终端400根据所盗取的第一随机数r1生成收款请求信息并发送至第一合约;
[0100] 第一合约在验证成功之后,进入预定的冻结期;
[0101] 此时,用户乙的收款终端200通过同步第一区块链的数据,监测到了用户丙的收款操作,根据签名信息sign(m)生成撤销发放请求信息并发送至第一合约;
[0102] 第一合约接收撤销发放请求信息后,获取用户乙的公钥以验证签名信息sign(m)是否无误,并验证r1和hash(sign(m))是否相同:
[0103] 是,则证明用户乙是真实的收款方,撤销解锁和发放给用户丙的操作;
[0104] 否,则证明用户乙并不是真实的收款方,继续等待,若在冻结期内未收到通过验证的撤销发放请求信息,则在度过冻结期后解锁加密货币并发放给用户丙。
[0105] 上述实施例进一步通过将第一随机数配置为根据收款方的签名信息生成,并为解锁配置了冻结期,从而使收款方在第一随机数被盗用时可以在冻结期内向智能合约发送签名信息以供验证收款方的身份并撤销解锁和发放的操作,为收款方进一步提供了安全保障。
[0106] 在一优选实施例中,还可以将第一随机数配置为收款方的地址或公钥。具体地,当第一随机数配置为收款方的地址时,第一合约在解锁时还需要验证第一随机数和收款地址是否相同;当第一随机数配置为收款方的公钥时,第一合约在解锁时可以根据公钥计算获得地址,并验证是否与收款地址相同。
[0107] 上述实施例进一步通过将第一随机数配置为收款方的地址或公钥,从而指定了固定的收款地址,在牺牲交易灵活性的同时保障了交易的安全性。
[0108] 图4为本发明另一优选实施例的交易场景示意图。如图4所示,在一优选实施例中,步骤S15包括:
[0109] 根据第二随机数、所获取的第一哈希值,以及以下至少一项生成第二哈希值:对应于第一哈希值的收款方地址,退款地址;
[0110] 其中,交易请求信息包括收款方地址和/或退款地址。
[0111] 具体地,图4与图2所示实施例的区别在于,图4所示的实施例可以进一步指定第一随机数对应的收款方地址add乙:H2=hash(r2,H1, add乙),交易请求信息包括收款方地址add乙;
[0112] 或,进一步指定因超时等原因导致交易失败后的退款地址add甲: H2=hash(r2,H1,add甲),交易请求信息包括退款地址add甲;
[0113] 或,同时指定收款方地址add乙和退款地址add甲:H2=hash(r2, H1,add乙,add甲),交易请求信息包括收款方地址add乙和退款地址 add甲。
[0114] 其中,收款方地址add乙的获取方式与第一哈希值的获取方式相同,退款地址add甲由用户甲的支付终端100在生成第二哈希值时指定;
[0115] 在未指定退款地址add甲时,退款地址默认为支付地址。
[0116] 上述实施例进一步通过在生成第二哈希值时指定对应的收款方地址和/或退款地址,进一步增强了交易的安全性和便利性。
[0117] 图5为本发明一实施例提供的一种适用于收款终端的交易方法的流程图。图5所示方法可配合图2所示的方法执行。
[0118] 如图5所示,在本实施例中,本发明还提供一种适用于收款终端的交易方法,包括:
[0119] S21:生成第一随机数和第一哈希值;其中,第一哈希值为第一随机数的哈希值;
[0120] S23:向支付终端发送第一哈希值,以供支付终端根据第二随机数和所获取的若干第一哈希值生成第二哈希值,向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态,向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;其中,第一合约由支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成;
[0121] S25:根据第一随机数生成收款请求信息并发送至第一合约,以供第一合约根据收款请求信息验证第一随机数的持有者身份无误后解锁并发放加密货币。
[0122] 图5所示方法的交易原理可参照图2所示的方法,此处不再赘述。
[0123] 在一优选实施例中,步骤S21中通过第一私钥签名生成签名信息,并根据签名信息生成第一随机数。第一合约在解锁收款时还通过获取收款方的公钥来验证签名信息。
[0124] 图6为图5所示方法的一种优选实施方式的流程图。图6所示的方法可配合图3所示场景中支付终端100执行的方法执行。
[0125] 如图6所示,在一优选实施例中,解锁配置为具有预定冻结期的延时解锁;
[0126] 上述方法还包括:
[0127] S27:同步第一区块链的数据以监测是否有第三方通过盗用第一随机数向第一合约请求收款:
[0128] 是,则执行步骤S29:在冻结期内根据签名信息生成撤销发放请求信息并发送至第一合约,以供第一合约根据签名信息验证收款方的身份无误后撤销解锁和发放给第三方的操作。
[0129] 图6所示方法的交易原理可参照上述配合图3场景所阐述的方法,此处不再赘述。
[0130] 在一优选实施例中,第一随机数配置为收款方的地址或公钥。
[0131] 在一优选实施例中,第二哈希值根据第二随机数、支付终端所获取的第一哈希值,以及以下至少一项生成:对应于第一哈希值的收款方地址,退款地址。其中,交易请求信息包括收款方地址和/或退款地址。
[0132] 在一优选实施例中,第一随机数对应的收款数额由交易请求信息指定。
[0133] 在一优选实施例中,第一随机数对应的收款数额由第一合约随机分配。
[0134] 上述各项优选实施例的交易原理可参照图2-4所示的方法,此处不再赘述。
[0135] 图7为本发明一实施例提供的一种适用于区块链节点的交易方法的流程图。图7所示的方法可配合图2和图5所示的方法执行。
[0136] 如图7所示,在本实施例中,本发明还提供一种适用于区块链节点的交易方法,包括:
[0137] S31:接收支付终端发送的签名的交易请求信息,根据交易请求信息在第一区块链上生成第一合约;其中,交易请求信息根据第二随机数生成;
[0138] S32:接收支付终端发送的第二随机数和若干第一哈希值,根据第二随机数和若干第一哈希值触发第一合约进入验证状态;其中,第二哈希值由支付终端根据第二随机数和所获取的若干第一哈希值生成,第一哈希值为第一随机数的哈希值;
[0139] S33:接收支付终端发送的第二随机数,通过第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0140] S35:接收收款请求信息,根据收款请求信息验证第一随机数的持有者身份无误后解锁加密货币并发放给该持有者;其中,收款请求信息根据第一随机数生成。
[0141] 具体地,图7所示方法的交易原理可参照图2所示的方法,此处不再赘述。
[0142] 图8为图7所示方法的一种优选实施方式中步骤S35的流程图。图8所示的方法可配合图3和图6所示的方法执行。
[0143] 如图8所示,在一优选实施例中,第一随机数根据收款方的签名信息生成,解锁配置为具有预定冻结期的延时解锁;步骤S35包括:
[0144] S351:接收收款请求信息,根据收款请求信息验证第一随机数的持有者身份:
[0145] 若验证通过,则执行步骤S352:等待预定的冻结期,并在冻结期内监测是否收到根据签名信息生成的撤销发放请求信息:
[0146] 是,则执行步骤S353:根据签名信息验证收款方的身份:若验证无误,则执行步骤S355:撤销解锁和发放给第一随机数持有者的操作;
[0147] 否,则执行步骤S354:在度过冻结期后解锁加密货币并发放给第一随机数的持有者。
[0148] 图8所示方法的交易原理可参照图3所示的方法,此处不再赘述。
[0149] 图9为本发明一实施例提供的另一种适用于支付终端的交易方法的流程图。如图9所示,在另一实施例中,本发明还提供另一种适用于支付终端的交易方法,包括:
[0150] S41:根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成第一合约;
[0151] S43:获取若干地址;
[0152] S45:根据第二随机数和该若干地址生成第二哈希值;
[0153] S47:向第一合约发送第二随机数和若干第一哈希值以触发第一合约进入验证状态;
[0154] S49:向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0155] 其中,加密货币由第一合约根据接收的收款请求信息验证收款的地址无误后解锁并转账至地址。
[0156] 具体地,图9所示的方法与图2所示的方法的交易原理基本相同,区别仅在于:在图9所示的方法中,直接将收款方的地址,而非第一随机数作为收款方的身份验证信息。
[0157] 图10为本发明一实施例提供的另一种适用于收款终端的交易方法的流程图。图10所示的方法可配合图9所示的方法执行。
[0158] 如图10所示,在另一实施例中,本发明还提供另一种适用于收款终端的交易方法,包括:
[0159] S51:向支付终端发送地址,以供支付终端根据第二随机数和所获取的若干地址生成第二哈希值,向第一合约发送所述第二随机数和所述若干第一哈希值以触发所述第一合约进入验证状态,向第一合约发送第二随机数,以供第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;其中,第一合约由支付终端根据第二随机数生成签名的交易请求信息并发送至第一区块链的节点以在第一区块链上生成;
[0160] S53:根据地址生成收款请求信息并发送至第一合约,以供第一合约验证收款的地址无误后解锁加密货币并转账至地址。
[0161] 与图9所示方法相似地,图10所示的方法与图5所示的方法的交易原理基本相同,区别仅在于:在图10所示的方法中,直接将收款方的地址,而非第一随机数作为收款方的身份验证信息。
[0162] 图11为本发明一实施例提供的另一种适用于区块链节点的交易方法的流程图。图11所示的方法可配合图9和图10所示的方法执行。
[0163] 如图11所示,在另一实施例中,本发明还提供另一种适用于区块链节点的交易方法,包括:
[0164] S61:接收支付终端发送的签名的交易请求信息,根据交易请求信息在第一区块链上生成第一合约;其中,交易请求信息根据第二随机数生成;
[0165] S62:接收支付终端发送的第二随机数和若干地址,根据第二随机数和若干地址触发第一合约进入验证状态;其中,第二哈希值由支付终端根据第二随机数和所获取的若干地址生成,第一哈希值为第一随机数的哈希值;
[0166] S63:接收支付终端发送的第二随机数,通过第一合约进行验证,并在验证通过后通过第二哈希值锁定交易请求信息请求交易的加密货币;
[0167] S65:接收收款请求信息,根据收款请求信息验证收款的地址无误后解锁加密货币并转账至地址。
[0168] 与图9和图10所示方法相似地,图11所示的方法与图7所示的方法的交易原理基本相同,区别仅在于:在图11所示的方法中,直接将收款方的地址,而非第一随机数作为收款方的身份验证信息。
[0169] 上述实施例在实现无需签名即可认证身份,缩短交易时间的同时,还通过将收款方地址配置为收款方的身份验证信息,进一步保障了交易的安全性。
[0170] 图12为本发明一实施例提供的一种设备的结构示意图。
[0171] 如图12所示,作为另一方面,本申请还提供了一种设备1200,包括一个或多个中央处理单元(CPU)1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。在 RAM1203中,还存储有设备1200操作所需的各种程序和数据。 CPU1201、ROM1202以及RAM1203通过总线1204彼此相连。输入/ 输出(I/O)接口1205也连接至总线1204。
[0172] 以下部件连接至I/O接口1205:包括键盘鼠标等的输入部分 1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如 LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209 经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至 I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
[0173] 特别地,根据本公开的实施例,上述任一实施例描述的交易方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行交易方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。
[0174] 作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的交易方法。
[0175] 附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
[0176] 描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
[0177] 以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈