掌桥专利:专业的专利平台
掌桥专利
首页

一种基于区块链的条件支付方法和系统

文献发布时间:2023-06-19 18:34:06


一种基于区块链的条件支付方法和系统

技术领域

本说明书涉及条件支付技术领域,特别涉及一种基于区块链的条件支付方法和系统。

背景技术

在一些支付交易的相关业务场景中,需要实现在满足指定条件时发起支付交易的功能,也即条件支付。例如,满足指定日期发起账户的支付交易、账户余额满足一定条件发起账户的支付交易、账户的支付交易要满足跳过给定时间窗口等,其中日期、账户余额等都为与指定条件相关的账户状态。由于需要对与指定条件相关的账户状态进行管理,判断账户状态是否满足指定条件,以及需要在指定条件满足时及时发起支付交易,而若通过某个中心化的机构(例如银行或其它机构)实现前述功能会存在中心化风险,且条件支付的各个参与方(例如账户的所属用户、其他相关用户等)难以获知条件支付的推进状态。

因此,亟需一种基于区块链的条件支付方法和系统,以更好地实现条件支付功能。

发明内容

本说明书实施例的一个方面提供一种基于区块链的条件支付方法,实现于区块链系统,所述方法包括:在区块链上部署条件支付智能合约,条件支付智能合约包括存储数据和与条件支付对应的触发逻辑代码,存储数据包括与条件支付对应的支付条件;调用条件支付智能合约执行触发逻辑代码,从而实现获取区块链上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的目标交易,目标交易与目标账户相关。

本说明书实施例的另一个方面提供一种基于区块链的条件支付系统,实现于区块链系统,所述系统包括:条件支付智能合约部署模块,用于在区块链上部署条件支付智能合约,条件支付智能合约包括存储数据和与条件支付对应的触发逻辑代码,存储数据包括与条件支付对应的支付条件;条件支付智能合约执行模块,用于调用条件支付智能合约执行触发逻辑代码,从而实现获取区块链上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的目标交易,目标交易与目标账户相关。

本说明书实施例的另一个方面提供一种基于区块链的条件支付装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现本说明书实施例提供的一种基于区块链的条件支付方法。

本说明书实施例的另一个方面提供另一种基于区块链的条件支付方法,条件支付包括多个参与方,所述方法应用于任一参与方,所述方法包括:通过监听区块链上的区块或者调用区块链上的智能合约进行信息查询,从而实现:查询与条件支付相关的交易状态信息;基于交易状态信息确定条件支付的反馈信息,并反馈信息到区块链上。

本说明书实施例的另一个方面提供另一种基于区块链的条件支付系统,条件支付包括多个参与方,所述系统应用于任一参与方,所述系统包括:查询模块,用于通过监听区块链上的区块或者调用区块链上的智能合约进行信息查询,从而实现:查询与条件支付相关的交易状态信息;反馈模块,用于基于交易状态信息确定条件支付的反馈信息,并发送反馈信息到区块链上。

本说明书实施例的另一个方面提供一种基于区块链的条件支付装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现本说明书实施例提供的另一种基于区块链的条件支付方法。

附图说明

本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:

图1是根据本说明书的一些实施例所示的基于区块链的条件支付系统的示例性应用场景图;

图2是根据本说明书的一些实施例所示的基于区块链的条件支付方法的示例性流程图;

图3是根据本说明书的一些实施例所示的条件支付智能合约执行方法的示例性示意图;

图4是根据本说明书的另一些实施例所示的基于区块链的条件支付方法的示例性流程图;

图5是根据本说明书的一些实施例所示的基于区块链的条件支付系统的示例性模块图;

图6是根据本说明书的另一些实施例所示的基于区块链的条件支付系统的示例性模块图。

具体实施方式

为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。

如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。

本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

条件支付是指在满足指定条件时发起支付交易的功能。例如,在账户状态满足指定条件时,发起账户的支付交易。其中,账户状态可以包括各种可能的账户相关状态,例如账户余额、时间、账户交易次数、账户历史交易金额等。作为示例,条件支付可以是:满足指定日期发起账户的支付交易、账户余额满足一定条件发起账户的支付交易、账户的支付交易要满足跳过给定时间窗口等,其中日期、账户余额等都为账户相关状态。

条件支付的实现需要对与指定条件相关的账户状态进行管理,判断账户状态是否满足指定条件,以及需要在指定条件满足时及时发起支付交易。在一些实施例中,可以通过某个中心化的机构(例如银行或其它机构)来实现前述的功能,但该种方式会存在中心化风险(例如条件支付的各个参与方对于条件支付的状态的感知只来于中心化的机构,若该机构侧有问题例如未按约定执行条件支付等参与方难以获知),并且条件支付的各个参与方(例如账户的所属用户、其他相关用户等)难以获知条件支付的进行状态(例如当前账户状态是否满足指定条件、条件支付的支付交易是否已经执行、条件支付的支付交易执行的时间等)。

基于此,本说明书一些实施例提出了一种基于区块链的条件支付方法和系统,通过在区块链上部署条件支付智能合约,并调用条件支付智能合约自动实现获取与条件支付相关的目标账户的账户状态、判断账户状态是否满足条件支付对应的支付条件(即条件支付中发起目标账户的支付交易需满足的指定条件)、在账户状态满足支付条件时触发条件支付对应的目标交易。以及,本说明书另一些实施例还提出了另一种基于区块链的条件支付方法和系统,条件支付的各参与方通过区块链获知条件支付相关的交易状态信息,以及确定条件支付的反馈信息发送到区块链上,从而可对条件支付的进行状态进行确认和共识。

图1是根据本说明书的一些实施例所示的基于区块链的条件支付系统的示例性应用场景图。

场景100可以包括区块链系统110、区块链120、条件支付智能合约130、条件支付的参与方140。

区块链120是分布式、去中心化的数据库,区块链120可以由区块链系统110实现。区块链系统110可以包括通过网络互连的多个节点,每个节点上都包括一个区块链副本。

区块链120上可以存储账户信息、交易信息等各种数据,任意用户也可以在区块链120写入数据和/或读取数据。区块链120可以由多个用于存储数据的区块组成,当有数据写入区块链时可以通过创建新的区块来对数据进行存储。区块链120上写入的数据可以由区块链系统110中的多个节点进行共识和确认。区块链带有金融属性,在上面可以进行交易,交易过程会被记录在区块链上。区块链的数据具有不可纂改、全程留痕、可以追溯等特点,被应用于各个数据存证场景。

智能合约是由计算机程序定义并自动执行的承诺协议。智能合约可以包括计算机代码,还可以包括一些存储的数据。智能合约由合约发起方创建(即编写),合约发起方可以根据需求创建智能合约。智能合约可以部署于区块链上(例如将智能合约作为一个合约账户部署于区块链上),并可在接收到调用智能合约的指令后进行运行(即执行)。

区块链系统110中各节点的功能可以由节点的处理设备实现。处理设备可以包含一个或多个子处理设备(例如,单核处理设备或多核多芯处理设备)。在一些实施例中,处理设备可以包括各类型的处理器、系统、平台等或以上任意组合。

在区块链120上可以部署条件支付智能合约130,条件支付智能合约130可以在被调用时实现条件支付。例如,条件支付智能合约130可以在被调用时实现:获取区块链120上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的与目标账户相关的目标交易。

条件支付可以涉及参与方140,例如账户的所属用户、银行等其他相关用户。参与方140可以包括多个参与方,例如参与方140-1、……、参与方140-n。其中,各参与方可以是区块链系统110中的节点,也可以是区块链系统110之外的用户。各参与方的功能可以由参与方的处理设备实现。

各参与方可以访问区块链120以查询区块链120上的数据。例如,各参与方可以通过监听区块链120上的区块或者调用区块链120上的智能合约进行信息查询,从而实现:查询与条件支付相关的交易状态信息。

各参与方还可以访问区块链120以发送信息给区块链120。例如,各参与方可以发送反馈信息到区块链120以便将反馈信息写入区块链120进行存储。又例如,各参与方可以将反馈信息发送给区块链120上的智能合约(例如条件支付智能合约130),以便智能合约接收到反馈信息后进行存储和/或触发执行某些指令。

以上场景100的各组成部分之间的信息传递关系仅作为示例,本申请并不局限于此。

应当注意应用场景仅仅是为了说明的目的而提供,并不意图限制本说明书的范围。对于本领域的普通技术人员来说,可以根据本说明书的描述,做出多种修改或变化。例如,场景100还可以包括存储设备。又例如,场景100可以在其他设备上实现以实现类似或不同的功能。然而,变化和修改不会背离本说明书的范围。

图2是根据本说明书的一些实施例所示的基于区块链的条件支付方法的示例性流程图。

流程200可以实现于区块链系统,例如流程200可以实现于区块链系统110中的任一个或多个节点。在一些实施例中,流程200可以由基于区块链的条件支付系统500实现。

步骤202,在区块链上部署条件支付智能合约。

在一些实施例中,步骤202可以由条件支付智能合约部署模块510执行。

条件支付智能合约是指用于实现条件支付的智能合约。条件支付智能合约的发起方可以是条件支付的参与方,例如银行、账户的所属用户或其他用户等。

条件支付智能合约可以包括存储数据和计算机代码,其中,计算机代码可以包括与条件支付对应的触发逻辑代码。触发逻辑代码是指可以触发其执行以实现条件支付的计算机代码。存储数据可以包括条件支付对应的支付条件。条件支付智能合约的计算机代码、支付条件都可以由发起方根据条件支付的需求进行编写。

一个条件支付可以对应一个或多个支付条件,例如,用于在账户A的账户状态满足支付条件时,执行账户A向账户B转账10000的支付交易的一个条件支付所对应的支付条件可以包括:账户A的账户余额大于指定金额、账户A的账户交易次数大于指定次数、发起账户A的支付交易日期为指定日期等。

在一些实施例中,存储数据中还可以包括条件支付智能合约的发起方信息,例如发起方身份ID等信息。

条件支付智能合约创建好后可以通过各种可行的智能合约部署方法来将其部署在区块链上。例如,在一些实施例中,可以由合约发起方通过用于部署智能合约的功能模块将条件支付智能合约部署于区块链上。

步骤204,调用所述条件支付智能合约执行触发逻辑代码,从而实现:获取所述区块链上与所述条件支付相关的目标账户的账户状态,响应于所述账户状态满足所述支付条件,触发所述条件支付对应的目标交易,所述目标交易与所述目标账户相关。

在一些实施例中,步骤204可以由条件支付智能合约执行模块520执行。

条件支付智能合约在区块链上成功部署后,可以调用执行其中的计算机代码。例如,可以通过条件支付智能合约接口调用执行其中的计算机代码。

条件支付智能合约可以通过各种可行的方式进行调用以执行触发逻辑代码,例如通过处理设备或区块链中的其他智能合约调用条件支付智能合约。

在一些实施例中,可以通过处理设备(例如区块链系统110中的节点对应的处理设备,或者区块链系统110之外的其他处理设备)按预设频率调用条件支付智能合约执行触发逻辑代码。预设频率可以按需设置,例如频率为1次/秒。

关于调用条件支付智能合约执行的更多内容可以参见图3及其相关描述。

调用条件支付智能合约执行触发逻辑代码可以实现:获取区块链上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的目标交易。

其中,目标账户是指与条件支付相关的账户。例如,以用于在账户A的账户状态满足支付条件时,执行账户A向账户B转账10000的支付交易的一个条件支付为例,目标账户为账户A。

在一些实施例中,可以在调用条件支付智能合约执行触发逻辑代码时发送需要查询账户状态的账户ID,例如目标账户的账户ID,以及条件支付智能合约可以获取所接收账户ID的账户状态,从而获取目标账户的账户状态。在一些实施例中,还可以在调用条件支付智能合约执行触发逻辑代码时,通过条件支付智能合约确定目标账户,然后获取目标账户的账户状态。

在一些实施例中,可以根据存储数据中的支付条件确定目标账户。例如,可以在调用条件支付智能合约执行触发逻辑代码时,由条件支付智能合约执行查询存储数据中的支付条件,并根据支付条件确定目标账户。作为示例,查询到支付条件包括账户A的账户余额大于指定金额,则可以根据该支付条件确定目标账户为账户A。

在一些实施例中,执行触发逻辑代码时,可以通过各种可行方式实现获取区块链上的账户的账户状态。例如,可以由条件支付智能合约直接执行查询区块链上的账户的账户状态,从而实现获取账户的账户状态。又例如,可以由条件支付智能合约调用其他智能合约(例如账户管理智能合约,关于账户管理智能合约的更多内容参见图3及其相关描述)执行查询区块链上的账户的账户状态,并由其他智能合约将账户的账户状态反馈给条件支付智能合约,从而获取账户的账户状态。

目标交易是指条件支付中所指定的交易,该交易与目标账户相关。例如,以用于在账户A的账户状态满足支付条件时,执行账户A向账户B转账10000的支付交易的一个条件支付为例,目标交易为账户A向账户B转账10000。

触发条件支付对应的目标交易可以通过各种可行的在区块链上触发交易执行的方法实现。例如,可以由条件支付智能合约(例如条件支付智能合约作为合约账户)在区块链上发起目标交易,进而可以在区块链上实现触发目标交易执行。又例如,可以由条件支付智能合约调用区块链上可以执行交易的其他智能合约(例如账户管理智能合约,关于账户管理智能合约的更多内容参见图3及其相关描述),从而触发其他智能合约执行目标交易。

条件支付的状态信息可以是指条件支付的进行状态信息,条件支付的进行状态可以包括但不限于:条件支付智能合约处于未执行状态、条件支付智能合约处于已执行状态以及目标账户的账户状态是否满足指定条件、条件支付对应的目标交易是否已经执行、条件支付对应的目标交易的执行信息(例如执行时间、执行交易的账户、交易金额等)等交易状态信息。

在一些实施例中,条件支付的状态信息可以记录在条件支付智能合约的存储数据中和/或记录在区块链的区块上,以及条件支付的状态信息可以随条件支付的进行状态自动更新。

通过前述实施例,可以在区块链上可信地记录条件支付的状态信息,从而条件支付的各参与方可通过区块链获知条件支付的进行状态,进而可以实现对条件支付的进行状态进行确认和共识,例如可以对部署的条件支付智能合约、条件支付智能合约进行过程等进行确认(例如确认是否合法等)和共识,保证条件支付可安全可信地进行。

在一些实施例中,条件支付的各参与方还可以发送反馈信息给条件支付智能合约,条件支付智能合约可以对接收到的反馈信息进行存储,以及当反馈信息包括报错信息时,条件支付智能合约还可执行关闭条件支付对应的目标交易(此时,发送反馈信息给条件支付智能合约即可以实现调用条件支付智能合约执行该功能)。关于条件支付的各参与方发送反馈信息的更多具体内容可以参见图5及其相关说明。

通过前述实施例,可以通过条件支付智能合约接收条件支付的参与方发送的反馈信息,来实现更好地对条件支付的进行状态进行确认和共识。以及,可以通过在反馈信息包括报错信息时条件支付智能合约自动执行关闭条件支付对应的目标交易,来实现更好地保证条件支付安全可信地进行。

图3是根据本说明书的一些实施例所示的条件支付智能合约执行方法的示例性示意图。

在一些实施例中,可以在区块链上部署账户管理智能合约,账户管理智能合约是指用于实现管理区块链上的账户的智能合约,其中,管理账户可以包括:监听账户的账户状态、查询账户的账户状态、对账户进行指定处理(例如对账户执行交易)等。

账户管理智能合约的发起方可以是条件支付的参与方或其他用户,例如银行、账户的所属用户或其他用户等。

账户管理智能合约包括计算机代码,其中,计算机代码可以包括账户管理代码。账户管理代码是指可以触发其执行以管理区块链上的账户(例如目标账户,或者区块链上的各个账户)的计算机代码。

账户管理智能合约在区块链上成功部署后,可以调用执行其中的计算机代码,例如与条件支付智能合约类似的,可以通过账户管理智能合约接口调用执行其中的计算机代码。

账户管理智能合约可以通过各种可行的方式进行调用,例如通过处理设备或区块链上的其他智能合约调用账户管理智能合约。

在一些实施例中,可以调用账户管理智能合约执行账户管理代码,从而实现:响应于区块链上的账户的账户状态发生变化,调用条件支付智能合约执行触发逻辑代码。

作为示例,在区块链上,可以执行交易的其他智能合约在对区块链上的账户(例如目标账户,或者区块链上的各个账户)执行交易后,账户的账户状态(例如账户余额、账户交易次数等)变化,这时还执行该其他智能合约调用账户管理智能合约,以通知账户管理智能合约某账户的账户状态发生变化,以及进而可以执行账户管理智能合约的账户管理代码。

通过前述实施例,可以通过账户管理智能合约实现监听区块链上的账户(例如目标账户,或者区块链上的各个账户)的账户状态,从而在账户状态发生变化时,自动调用条件支付智能合约执行触发逻辑代码。

在一些实施例中,调用账户管理智能合约执行账户管理代码还可以实现:对所述区块链上的账户(例如目标账户,或者区块链上的各个账户)进行指定处理(例如对账户执行交易),从而令账户的账户状态(例如账户余额、账户交易次数等)发生变化。

作为示例,处理设备或区块链上的其他智能合约通过调用管理智能合约执行账户管理代码实现:对区块链上的账户(例如目标账户A)执行交易,进而响应于目标账户A的账户状态发生变化,调用条件支付智能合约执行触发逻辑代码。

通过前述实施例,可以通过账户管理智能合约执行对区块链上的账户(例如目标账户,或者区块链上的各个账户)的指定处理(例如对账户执行交易),从而令账户的账户状态发生变化,由此实现由账户管理智能合约执行账户的账户状态变动,进而可以使得账户管理智能合约能够更方便和更及时地获知账户状态变动,并及时响应于目标账户A的账户状态发生变化,调用条件支付智能合约执行触发逻辑代码。

图4是根据本说明书的另一些实施例所示的基于区块链的条件支付方法的示例性流程图。

在一些实施例中,条件支付可以包括多个参与方,流程400可以应用于任一参与方。在一些实施例中,流程400可以由基于区块链的条件支付系统600实现。

步骤402,通过监听所述区块链上的区块或者调用所述区块链上的智能合约进行信息查询,从而实现:查询与所述条件支付相关的交易状态信息。

在一些实施例中,步骤402可以由查询模块610执行。

如图2中所述,条件支付的交易状态信息可以记录在区块链上,例如可以记录在区块链的区块上和/或智能合约中。

参与方可以通过监听区块链上的区块或者调用区块链上的智能合约进行信息查询,从而实现查询与条件支付相关的交易状态信息,例如目标账户的账户状态是否满足指定条件、条件支付对应的目标交易是否已经执行、条件支付对应的目标交易的执行信息(例如执行时间、执行交易的账户、交易金额等)等交易状态信息。

步骤404,基于所述交易状态信息确定所述条件支付的反馈信息,并发送所述反馈信息到所述区块链上。

在一些实施例中,步骤404可以由反馈模块620执行。

在一些实施例中,条件支付的反馈信息可以包括以下中的一种或多种:条件支付所对应目标交易的确认信息、条件支付所对应目标交易对应的链下交易信息(例如链下交易的执行时间、交易单号等相关信息)、条件支付所对应目标交易的报错信息等。

其中,目标交易对应的链下交易是指:参与方对链下账户执行与区块链上的目标交易所对应的交易。链下账户是指:在区块链之外,参与方拥有的与目标交易所针对链上账户对应的账户(例如参与方的本地系统上的账户)。

在一些实施例中,银行、账户所属用户等参与方可以基于交易状态信息确定是否有与本方相关的目标交易,以及在有与本方相关的目标交易时,参与方对链下账户执行目标交易对应的链下交易,并可将目标交易的确认信息和/或链下交易信息作为反馈信息。其中,本方有与目标交易所针对链上账户对应的链下账户即可表示该目标交易与本方相关,例如,银行bank1有账户A,银行bank1基于交易状态信息确定在区块链系统上执行了关于账户A的目标交易,则银行bank1确定有本方相关的目标交易。

在一些实施例中,参与方可以从区块链获取条件支付智能合约的发起方信息,以及参与方可以确定发起方信息是否满足条件支付发起要求,并可在发起方信息不满足条件支付发起要求时,将报错信息(例如“拒绝对账户A的目标交易,发起方无目标账户A的交易权限”)确定为反馈信息。其中,条件支付发起要求可以包括发起者是否有目标账户的交易权限或管理权限等要求。

在一些实施例中,参与方发送所述反馈信息到所述区块链上可以包括:将反馈信息发送到区块链上以便在区块链的区块中进行存储、将反馈信息发送给区块链上的智能合约(例如条件支付智能合约)以便智能合约接收到反馈信息后进行存储和/或触发执行某些指令。

通过前述实施例,可以实现各参与方有效地对条件支付进行确认、对条件支付发起方进行鉴权,从而更好地保证条件支付安全可信地进行。

应当注意的是,上述有关各流程的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,对本说明书有关流程步骤的改变,如添加预处理步骤、存储步骤、其他数据处理步骤等。

图5是根据本说明书一些实施例所示的基于区块链的条件支付系统的示例性模块图。

基于区块链的条件支付系统500可以实现于区块链系统。例如,基于区块链的条件支付系统500可以实现于区块链系统110中的任一个或多个节点。

如图5所示,系统500可以包括条件支付智能合约部署模块510、条件支付智能合约执行模块520。

在一些实施例中,条件支付智能合约部署模块510可以用于在区块链上部署条件支付智能合约,条件支付智能合约包括存储数据和与条件支付对应的触发逻辑代码,存储数据包括与条件支付对应的支付条件。

在一些实施例中,条件支付智能合约执行模块520可以用于调用条件支付智能合约执行触发逻辑代码,从而实现获取区块链上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的目标交易,目标交易与目标账户相关。

在一些实施例中,条件支付智能合约执行模块520还可以用于调用所述账户管理智能合约执行所述账户管理代码,从而实现:响应于所述区块链上的账户的所述账户状态发生变化,调用所述条件支付智能合约执行所述触发逻辑代码。

在一些实施例中,条件支付智能合约执行模块520还可以用于调用所述账户管理智能合约执行所述账户管理代码实现:对所述区块链上的所述账户进行指定处理,从而令所述账户的所述账户状态发生变化。

在一些实施例中,条件支付智能合约执行模块520还可以用于实现所述条件支付智能合约接收所述条件支付的参与方发送的反馈信息,以及当所述反馈信息包括报错信息,所述条件支付智能合约关闭所述目标交易。

关于以上所示的系统的各模块的具体描述,可以参考本说明书流程图部分,例如图2、图3及其相关说明。

图6是根据本说明书另一些实施例所示的基于区块链的条件支付系统的示例性模块图。

基于区块链的条件支付系统600可以应用于条件支付的任一参与方。

如图6所示,系统600可以包括查询模块610、反馈模块620。

在一些实施例中,查询模块610可以用于通过监听区块链上的区块或者调用区块链上的智能合约进行信息查询,从而实现查询与条件支付相关的交易状态信息。在一些实施例中,所述区块链上部署有用于实现所述条件支付的条件支付智能合约,查询模块610还可以用于从所述区块链获取所述条件支付智能合约的发起方信息。

在一些实施例中,反馈模块620可以用于基于交易状态信息确定条件支付的反馈信息,并发送反馈信息到区块链上。在一些实施例中,当所述发起方信息不满足所述条件支付发起要求,所述反馈信息包括报错信息。

关于以上所示的系统的各模块的具体描述,可以参考本说明书流程图部分,例如图4及其相关说明。

应当理解,图5和图6所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上对于基于区块链的条件支付系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,查询模块610和反馈模块620可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。

本说明书实施例还提供一种基于区块链的条件支付装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现基于区块链的条件支付方法。所述方法包括:在区块链上部署条件支付智能合约,条件支付智能合约包括存储数据和与条件支付对应的触发逻辑代码,存储数据包括与条件支付对应的支付条件;调用条件支付智能合约执行触发逻辑代码,从而实现获取区块链上与条件支付相关的目标账户的账户状态,响应于账户状态满足支付条件,触发条件支付对应的目标交易,目标交易与目标账户相关。

本说明书实施例还提供另一种基于区块链的条件支付装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现另一种基于区块链的条件支付方法。所述方法包括:通过监听区块链上的区块或者调用区块链上的智能合约进行信息查询,从而实现:查询与条件支付相关的交易状态信息;基于交易状态信息确定条件支付的反馈信息,并反馈信息到区块链上。

本说明书实施例可能带来的有益效果包括但不限于:(1)通过在区块链上部署条件支付智能合约,并调用条件支付智能合约自动实现获取与条件支付相关的目标账户的账户状态、判断账户状态是否满足条件支付对应的支付条件、在账户状态满足支付条件时触发条件支付对应的目标交易,从而可以基于区块链实现自动执行条件支付,以及实现去中心化的账户状态管理、判断账户状态是否满足指定条件、在支付条件满足时及时发起支付交易,避免中心化风险;(2)通过条件支付的各参与方从区块链获知条件支付的交易状态信息,以及确定条件支付的反馈信息发送到区块链上,进而实现各参与方可更好地对条件支付的进行状态进行确认和共识,保证条件支付可安全可信地进行。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。

同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。

此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。

计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。

本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。

此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。

针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。

最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。

相关技术
  • 一种基于区块链技术的智能支付系统及其方法
  • 基于区块链系统的支付方法、介质和区块链系统
  • 一种基于区块链的离线支付方法、装置、设备和存储介质
  • 一种基于区块链的智慧化工园区信用支付与流转方法
  • 一种基于区块链的安全支付系统
  • 基于区块链的条件支付数据处理系统、各相关节点及方法
  • 跨境支付系统及基于区块链支付系统的跨境支付方法
技术分类

06120115617222