基于区块链的支付方法、系统以及计算机可读存储介质技术方案

技术编号:18290247 阅读:55 留言:0更新日期:2018-06-24 05:16
本发明专利技术公开了一种基于区块链的支付方法、系统以及计算机可读存储介质,该方法包括步骤:当发卡行服务器接收到生成支付授权码的生成指令后,将发卡行服务器所接收的生成指令发送给与发卡行服务器对应的发卡行区块链节点;控制智能合约从发卡行区块链节点中获取生成指令,根据生成指令生成支付授权码,并将支付授权码同步到联盟链内的各个区块链节点中;当收单行区块链节点获取到支付授权码,且接收到支付指令后,通过与收单行区块链节点对应的收单行服务器,基于智能合约验证支付授权码;若支付授权码验证成功,则通过联盟链通知发卡行服务器扣取与支付指令对应的金额。本发明专利技术降低了收单行服务器的支付成本,以及降低发卡行服务器的接入成本。

【技术实现步骤摘要】
基于区块链的支付方法、系统以及计算机可读存储介质
本专利技术涉及区块链
,尤其涉及一种基于区块链的支付方法、系统以及计算机可读存储介质。
技术介绍
现有的微信支付方案为:①用户选择刷卡支付付款并打开微信,进入“我”->“钱包”->“收付款”条码界面;②收银员在商户系统操作生成支付订单,用户确认支付金额;③收银员用扫码设备扫描用户的条码或者二维码后,收银系统接收到支付请求;④收银系统接收到支付请求后,根据验证密码规则判断是否验证用户的支付密码,若不需要验证支付密码,则根据支付请求直接执行扣款操作;若需要验证支付密码,则提示用户输入密码;若用户输入密码成功,则执行扣款操作,并提示用户成功消费;否则,提示用户消费失败。现有的微信支付方案在微信产品体系内是闭环的一种支付方式,在发卡侧,各个发卡行服务器的移动支付方案难与微信支付打通,在收单侧,各个收单行服务器用“微信支付”进行代理收单,微信服务商需要收取收单行服务商一定的代理费用。由此可知,这种中心化的支付方案,收单行服务器和发卡行服务器中的资源无法共享。
技术实现思路
本专利技术的主要目的在于提供一种基于区块链的支付方法、系统以及计算机可读存储介质,旨在解决现有的收单行服务器和发卡行服务器中的资源无法共享的技术问题。为实现上述目的,本专利技术提供一种基于区块链的支付方法,所述基于区块链的支付方法包括步骤:当发卡行服务器接收到生成支付授权码的生成指令后,将所述发卡行服务器所接收的所述生成指令发送给与所述发卡行服务器对应的发卡行区块链节点;控制运行在区块链中的智能合约从所述发卡行区块链节点中获取所述生成指令,根据所述生成指令生成支付授权码,并将所述支付授权码同步到联盟链内的各个区块链节点中,其中,所述联盟链中至少包括一个所述收单行区块链节点和一个所述发卡行区块链节点;当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码;若所述支付授权码验证成功,则通过所述联盟链通知所述发卡行服务器扣取与所述支付指令对应的金额。优选地,所述当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码的步骤包括:当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,控制所述收单行服务器触发调用智能合约验证接口的调用请求,并将所述调用请求发送给所述智能合约;当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码。优选地,所述当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码的步骤包括:当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口检测所述支付授权码是否已存在所述智能合约中,其中,当生成支付授权码后,所述智能合约存储所述支付授权码;若所述支付授权码已存在所述智能合约中,则判断所述支付授权码是否被使用过,以及是否处于有效期内;若所述支付授权码未被使用过,并处于有效期内,则确认所述支付授权码验证成功;若所述支付授权码未存在所述智能合约中,则确认所述支付收授权码验证失败;若所述支付授权码已存在所述智能合约中,但所述支付授权码已被使用和/或未处于有效期内,则确认所述支付授权码验证失败。优选地,所述当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码的步骤包括:当所述智能合约接收到所述调用请求后,控制所述智能合约获取发送所述调用请求的区块链节点的CA证书;根据所述CA证书检测发送所述调用请求的区块链节点是否存在调用权限;若发送所述调用请求的区块链节点存在调用权限,则根据所述调用请求,通过所述验证接口验证所述支付授权码。优选地,所述根据所述CA证书检测发送所述调用请求的区块链节点是否存在调用权限的步骤包括:根据所述CA证书检测发送所述调用请求的区块链节点是否为收单行区块链节点;若发送所述调用请求的区块链节点为收单行区块链节点,则确认发送所述调用请求的区块链节点存在调用权限;若发送所述调用请求的区块链节点为发卡行区块链节点,则确认发送所述调用请求的区块链节点未存在调用权限。优选地,所述控制运行在区块链中的智能合约从所述发卡行区块链节点中获取所述生成指令,根据所述生成指令生成支付授权码,并将所述支付授权码同步到联盟链内的各个区块链节点中的步骤之前,还包括:当所述发卡行区块链节点接收到所述生成指令后,控制所述发卡行区块链节点获取发送所述生成指令的所述发卡行服务器的网络之间互连的协议IP地址;检测所述IP地址是否存在预设的IP白名单中;若所述IP地址存在所述IP白名单中,则存储所述生成指令,以供所述智能合约获取所述生成指令。优选地,所述当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码的步骤之后,还包括:若所述支付授权码验证失败,则通过所述收单行服务器和所述发卡行服务器发送第一提示信息给用户所持终端,以根据所述第一提示信息提示用户支付失败。优选地,所述若所述支付授权码验证成功,则通过所述联盟链通知所述发卡行服务器扣取与所述支付指令对应的金额的步骤之后,还包括:当成功扣取与所述支付指令对应的金额后,则通过所述发卡行服务器发送第二提示信息给用户所持终端,以根据所述第二提示信息提示用户支付成功。此外,为实现上述目的,本专利技术还提供一种基于区块链的支付系统,所述基于区块链的支付系统包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的基于区块链的支付程序,所述基于区块链的支付程序被所述处理器执行时实现如上所述的基于区块链的支付方法的步骤。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于区块链的支付程序,所述基于区块链的支付程序被处理器执行时实现如上所述的基于区块链的支付方法的步骤。本专利技术通过当发卡行服务器接收到生成支付授权码的生成指令后,将所述发卡行服务器所接收的所述生成指令发送给与所述发卡行服务器对应的发卡行区块链节点;控制运行在区块链中的智能合约从所述发卡行区块链节点中获取所述生成指令,根据所述生成指令生成支付授权码,并将所述支付授权码同步到联盟链内的各个区块链节点中,其中,所述联盟链中至少包括一个所述收单行区块链节点和一个所述发卡行区块链节点;当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码;若所述支付授权码验证成功,则通过所述联盟链通知所述发卡行服务器扣取与所述支付指令对应的金额。通过联盟链实现在发卡行服务器和收单行服务器共享支付授权码,通过联盟链连接发卡行区块链节点和收单行区块链节点,形成一个多中心化的支付体系,且每个发卡行服务器和收单行服务器在联盟链中都存在对应的区块链节点,在支付过程中,不需要借助第三方进行支付操作,发卡行服务器和收单行服务器可以使用自己的区本文档来自技高网...
基于区块链的支付方法、系统以及计算机可读存储介质

【技术保护点】
1.一种基于区块链的支付方法,其特征在于,所述基于区块链的支付方法包括以下步骤:当发卡行服务器接收到生成支付授权码的生成指令后,将所述发卡行服务器所接收的所述生成指令发送给与所述发卡行服务器对应的发卡行区块链节点;控制运行在区块链中的智能合约从所述发卡行区块链节点中获取所述生成指令,根据所述生成指令生成支付授权码,并将所述支付授权码同步到联盟链内的各个区块链节点中,其中,所述联盟链中至少包括一个所述收单行区块链节点和一个所述发卡行区块链节点;当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码;若所述支付授权码验证成功,则通过所述联盟链通知所述发卡行服务器扣取与所述支付指令对应的金额。

【技术特征摘要】
1.一种基于区块链的支付方法,其特征在于,所述基于区块链的支付方法包括以下步骤:当发卡行服务器接收到生成支付授权码的生成指令后,将所述发卡行服务器所接收的所述生成指令发送给与所述发卡行服务器对应的发卡行区块链节点;控制运行在区块链中的智能合约从所述发卡行区块链节点中获取所述生成指令,根据所述生成指令生成支付授权码,并将所述支付授权码同步到联盟链内的各个区块链节点中,其中,所述联盟链中至少包括一个所述收单行区块链节点和一个所述发卡行区块链节点;当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码;若所述支付授权码验证成功,则通过所述联盟链通知所述发卡行服务器扣取与所述支付指令对应的金额。2.如权利要求1所述的基于区块链的支付方法,其特征在于,所述当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,通过与所述收单行区块链节点对应的收单行服务器,基于所述智能合约验证所述支付授权码的步骤包括:当所述收单行区块链节点获取到所述支付授权码,且接收到支付指令后,控制所述收单行服务器触发调用智能合约验证接口的调用请求,并将所述调用请求发送给所述智能合约;当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码。3.如权利要求2所述的基于区块链的支付方法,其特征在于,所述当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码的步骤包括:当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口检测所述支付授权码是否已存在所述智能合约中,其中,当生成支付授权码后,所述智能合约存储所述支付授权码;若所述支付授权码已存在所述智能合约中,则判断所述支付授权码是否被使用过,以及是否处于有效期内;若所述支付授权码未被使用过,并处于有效期内,则确认所述支付授权码验证成功;若所述支付授权码未存在所述智能合约中,则确认所述支付收授权码验证失败;若所述支付授权码已存在所述智能合约中,但所述支付授权码已被使用和/或未处于有效期内,则确认所述支付授权码验证失败。4.如权利要求2所述的基于区块链的支付方法,其特征在于,所述当所述智能合约接收到所述调用请求后,控制所述智能合约根据所述调用请求,通过所述验证接口验证所述支付授权码的步骤包括:当所述智能合约接收到所述调用请求后,控制所述智能合约获取发送所述调用请求的区块链节点的CA证书;根据所述CA证书检测发送所述...

【专利技术属性】
技术研发人员:苏小康李斌张开翔张俊麒肖克范瑞彬姚辉亚
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1