首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

基于区块链的发票作废方法和装置、电子设备 

申请/专利权人:创新先进技术有限公司

申请日:2018-12-27

公开(公告)日:2024-04-05

公开(公告)号:CN110046900B

主分类号:G06Q20/40

分类号:G06Q20/40;G06Q30/018;G06Q30/04;G06Q40/04

优先权:

专利状态码:有效-授权

法律状态:2024.04.05#授权;2020.10.30#专利申请权的转移;2020.10.30#专利申请权的转移;2019.08.16#实质审查的生效;2019.07.23#公开

摘要:本说明书一个或多个实施例提供一种基于区块链的发票作废方法和装置、电子设备,所述方法包括:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。

主权项:1.一种基于区块链的发票作废方法,所述方法包括:获取在所述区块链中完成存证的交易;调用发布在所述区块链上的智能合约中声明的交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用所述智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。

全文数据:基于区块链的发票作废方法和装置、电子设备技术领域本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种基于区块链的发票作废方法和装置、电子设备。背景技术区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,利用区块链技术来搭建去中心化系统,并在区块链的分布式数据库中收录各种执行程序进行自动执行,已在众多的领域中广泛的进行应用。发明内容本说明书提出一种基于区块链的发票作废方法,所述方法包括:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。可选地,所述智能合约中还声明了针对所述发票作废方的权限验证逻辑;所述确定所述发票作废方是否具有所述目标发票的作废权限,包括:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。可选地,所述作废请求中携带所述发票作废方的用户标识;所述确定所述发票作废方是否具有所述目标发票的作废权限,包括:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。可选地,所述作废请求中携带所述目标发票的发票标识;所述方法还包括:基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。可选地,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。可选地,所述对所述目标发票进行作废处理,包括:将所述目标发票的状态由有效状态更新为无效状态。本说明书还提出一种基于区块链的发票作废方法,所述方法包括:获取在所述区块链中完成存证的交易;确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。可选地,所述智能合约中还声明了交易匹配逻辑;所述确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易,包括:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。可选地,所述方法还包括:基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。可选地,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。可选地,所述对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理,包括:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。本说明书还提出一种基于区块链的发票作废装置,所述装置包括:接收模块,用于接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;第一确定模块,用于响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;作废模块,用于在所述发票作废方具有所述目标发票的作废权限时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。可选地,所述智能合约中还声明了针对所述发票作废方的权限验证逻辑;所述第一确定模块具体用于:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。可选地,所述作废请求中携带所述发票作废方的用户标识;所述第一确定模块具体用于:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。可选地,所述作废请求中携带所述目标发票的发票标识;所述装置还包括:第二确定模块,用于基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。可选地,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。可选地,所述作废模块具体用于:将所述目标发票的状态由有效状态更新为无效状态。本说明书还提出一种基于区块链的发票作废装置,所述装置包括:获取模块,用于获取在所述区块链中完成存证的交易;第一确定模块,用于确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;作废模块,用于在所述交易为所述支付交易对应的退款交易时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。可选地,所述智能合约中还声明了交易匹配逻辑;所述第一确定模块具体用于:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。可选地,所述装置还包括:第二确定模块,用于基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。可选地,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。可选地,所述作废模块具体用于:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。本说明书还提出一种电子设备,所述电子设备包括:处理器;用于存储机器可执行指令的存储器;其中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。本说明书还提出一种电子设备,所述电子设备包括:处理器;用于存储机器可执行指令的存储器;其中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:获取在所述区块链中完成存证的交易;确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。在上述技术方案中,可以在发票作废方发起针对在区块链中存证的某张发票的作废请求时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该发票作废方进行作废权限验证,并在确定该发票作废方具有该发票的作废权限时,对该发票进行作废处理。或者,可以在确定在区块链中完成存证的某笔交易为已在该区块链中存证的支付交易对应的退款交易时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该区块链中存证的与该支付交易相关的发票进行作废处理。这样,在实现对区块链中存证的发票进行作废处理的同时,也可以保证在区块链上流转的发票的数据安全性。附图说明图1是本说明书一示例性实施例示出的一种基于区块链的发票作废方法的流程图;图2是本说明书一示例性实施例示出的另一种基于区块链的发票作废方法的流程图;图3是本说明书一示例性实施例示出的一种基于区块链的发票作废装置所在电子设备的硬件结构图;图4是本说明书一示例性实施例示出的一种基于区块链的发票作废装置的框图;图5是本说明书一示例性实施例示出的另一种基于区块链的发票作废装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本说明书旨在提供一种对在区块链中存证的发票进行作废处理的技术方案。在一种实现方式中,当用户需要对在区块链中存证的某张发票进行作废处理时,可以由该用户称为发票作废方通过客户端发起针对该发票称为目标发票的作废请求。该区块链中的节点设备在接收到该作废请求后,可以对该作废请求进行响应。具体地,可以先确定该发票作废方是否具有该目标发票的作废权限。对于某张发票来说,通常仅允许该发票的发票开具方或可信第三方例如:税务局或工商局等对该发票进行作废处理,以保证该发票的数据安全性,避免该发票被恶意作废。在这种情况下,可以先确定发起该作废请求的该发票作废方是否具有该目标发票的作废权限。如果该发票作废方是该发票的发票开具方或可信第三方,则可以确定该发票作废方具有该发票的作废权限。在确定了该发票作废方具有该发票的作废权限后,该节点设备可以调用发布在该区块链上的智能合约中声明的发票作废逻辑,对在该区块链中存证的该目标发票进行作废处理。在另一种实现方式中,用户可以在完成一笔支付或退款后,将该支付交易或退款交易在区块链中存证。该区块链中的节点设备可以获取在该区块链中完成存证的交易,并判断该交易是否为已在该区块链中存证的某笔支付交易对应的退款交易。举例来说,可以将该交易中的交易对象和交易内容例如:交易金额、交易物品等与已在该区块链中存证的各笔支付交易的交易对象和交易内容进行匹配。如果该交易的付款方为已在该区块链中存证的某笔支付交易的收款方,该交易的收款方为该支付交易的付款方,且该交易的交易内容与该支付交易的交易内容相同,则可以确定该交易为该支付交易对应的退款交易。在确定了该交易为已在该区块链中存证的某笔支付交易对应的退款交易后,该节点设备可以调用发布在该区块链上的智能合约中声明的发票作废逻辑,对在该区块链中存证的与该支付交易相关的目标发票进行作废处理。在上述技术方案中,可以在发票作废方发起针对在区块链中存证的某张发票的作废请求时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该发票作废方进行作废权限验证,并在确定该发票作废方具有该发票的作废权限时,对该发票进行作废处理。或者,可以在确定在区块链中完成存证的某笔交易为已在该区块链中存证的支付交易对应的退款交易时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该区块链中存证的与该支付交易相关的发票进行作废处理。这样,在实现对区块链中存证的发票进行作废处理的同时,也可以保证在区块链上流转的发票的数据安全性。下面通过具体实施例对本说明书进行描述。请参考图1,图1是本说明书一示例性实施例示出的一种基于区块链的发票作废方法的流程图。该方法可以应用于区块链中的节点设备,包括如下步骤:步骤102,接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;步骤104,响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;步骤106,如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。在本说明书中描述的区块链,具体可以包括任意类型的区块链网络;例如,在实际应用中,可以采用共有链、私有链、或者联盟链中的任意一种。由于在区块链中存储的数据具有不可篡改的特性,因此将数据存储在区块链中来做数据存证,即将数据作为证据存储在区块链中,已经成为业界目前的主流趋势。在本实施例中,可以将发票在区块链中存证。发票作废方在需要对在该区块链中存证的目标发票进行作废处理时,可以通过其所使用的客户端发起一笔用于作废该目标发票的交易,即通过客户端发起针对该目标发票的作废请求。其中,区块链中的交易,存在狭义的交易以及广义的交易之分。狭义的交易是指用户向区块链发布的一笔价值转移;例如,在传统的比特币区块链网络中,交易可以是用户在区块链中发起的一笔转账。而广义的交易是指用户向区块链发布的一笔具有业务意图的业务数据;例如,运营方可以基于实际的业务需求搭建一个联盟链,依托于联盟链部署一些与价值转移无关的其它类型的在线业务比如,租房业务、车辆调度业务、保险理赔业务、信用服务、医疗服务等,而在这类联盟链中,交易可以是用户在联盟链中发布的一笔具有业务意图的业务消息或者业务请求。该区块链中的节点设备在接收到该作废请求后,可以对该作废请求进行响应。具体地,可以先确定该发票作废方是否具有该目标发票的作废权限。如果确定该发票作废方具有该目标发票的作废权限,则可以调用发布在该区块链上的智能合约中声明的发票作废逻辑,对该目标发票进行作废处理。其中,发票作废逻辑具体可以是声明在该智能合约中的,与对发票进行作废处理的执行逻辑相关的程序代码例如:一些可供调用的程序方法或者函数。在实际应用中,上述智能合约中还可以声明针对上述发票作废方的权限验证逻辑。在这种情况下,可以调用该智能合约中声明的权限验证逻辑,确定该发票作废方是否具有上述目标发票的作废权限。其中,权限验证逻辑具体可以是声明在该智能合约中的,与对发票作废方的作废权限进行验证的执行逻辑相关的程序代码。需要说明的是,以上描述的用于对发票进行作废处理的智能合约,和用于对发票作废方的作废权限进行验证的智能合约,可以整合为一个智能合约在上述区块链上进行部署,也可以作为两个不同的智能合约在该区块链上进行部署,本说明书对此不作限定。在示出的一种实施方式中,上述发票作废方通过其所使用的客户端发起的针对上述目标发票的作废请求,其中可以包括该发票作废方的用户标识,从而可以基于该发票作废方的用户标识,确定该发票作废方是否具有该目标发票的作废权限。具体地,可以将该发票作废方的用户标识与该目标发票的发票开具方的用户标识进行匹配,以确定该发票作废方是否为该目标发票的发票开具方。如果该发票作废方的用户标识与该目标发票的发票开具方的用户标识相同,则可以确定该发票作废方为该目标发票的发票开具方,从而可以确定该发票作废方具有该目标发票的作废权限。或者,可以将该发票作废方的用户标识与可信第三方的用户标识进行匹配,以确定该发票作废方是否为可信第三方。如果该发票作废方的用户标识与可信第三方的用户标识相同,则可以确定该发票作废方为可信第三方,从而可以确定该发票作废方具有该目标发票的作废权限。相应地,如果确定该发票作废方既不是该目标发票的发票开具方,也不是可信第三方,则可以确定该发票作废方不具有该目标发票的作废权限。在这种情况下,可以不对该目标发票进行后续的作废处理。其中,用户标识可以是纳税人识别号,也可以是税务局或工商局等可信第三方的机构代码;或者,用户标识可以是为个人、企业或者税务局等机构分配的用户编号,且为不同的用户分配的用户编号不同,本说明书对此不作限定。举例来说,用户标识可以是纳税人识别号。在接收到包含该发票作废方的用户标识的针对该目标发票的作废请求后,可以先从该目标发票中获取发票开具方的纳税人识别号,再将获取到的发票开具方的纳税人识别号与该发票作废方的用户标识进行匹配。如果两者相同,则可以确定该发票作废方为该目标发票的发票开具方,从而可以确定该发票作废方具有该目标发票的作废权限。或者,用户标识也可以是税务局或工商局等可信第三方的机构代码。在接收到包含该发票作废方的用户标识的针对该目标发票的作废请求后,可以将各个可信第三方的机构代码与该发票作废方的用户标识进行匹配。如果该发票作废方的用户标识与某个可信第三方的机构代码相同,则可以确定该发票作废方为该可信第三方,从而可以确定该发票作废方具有该目标发票的作废权限。在另一个例子中,在将发票在上述区块链中存证时,可以同时将具有该发票的作废权限的该发票的发票开具方或可信第三方的用户标识在该区块链中对应存证。在接收到包含该发票作废方的用户标识的针对该目标发票的作废请求后,可以将该发票作废方的用户标识与该目标发票对应的用户标识进行匹配。如果该发票作废方的用户标识与该目标发票对应的某个用户标识相同,则可以确定该发票作废方具有该目标发票的作废权限。例如,假设某个可信第三方的用户标识为用户标识1,发票1的发票开具方的用户标识为用户标识2,发票2的发票开具方的用户标识为用户标识2,则可以采用如下表1所示的形式,将发票以及具有该发票的作废权限的该发票的发票开具方或可信第三方的用户标识在该区块链中存证:表1在接收到包含用户标识1的针对发票1的作废请求后,可以根据上表1,确定发起该作废请求的发票作废方具有发票1的作废权限;而在接收到包含用户标识3的针对发票1的作废请求后,则可以根据上表1,确定发起该作废请求的发票作废方不具有发票1的作废权限;以此类推。在示出的一种实施方式中,上述发票作废方通过其所使用的客户端发起的针对上述目标发票的作废请求,其中可以包括该目标发票的发票标识,从而可以基于该目标发票的发票标识,先确定该目标发票是否已在该区块链中存证,再在确定该目标发票已在该区块链中存证时,确定该发票作废方是否具有该目标发票的作废权限,以避免该目标发票未在该区块链中存证时的无效操作,减少设备资源消耗。具体地,在将发票在该区块链中存证时,可以同时将该发票的发票标识在该区块链中对应存证。在接收到包含该目标发票的发票标识的针对该目标发票的作废请求后,可以将该目标发票的发票标识与已在该区块链中存证的各张发票的发票标识进行匹配。如果该发票的发票标识与已在该区块链中存证的某张发票的发票标识相同,则可以确定该区块链中存储有与该发票标识对应的发票,并将该发票确定为该目标发票。后续,可以确定该发票作废方是否具有该目标发票的作废权限。相应地,如果确定该区块链中未存储与该发票标识对应的发票,则不再需要确定该发票作废方是否具有该目标发票的作废权限。其中,发票标识可以是针对发票内容进行hash计算得到的hash值;或者,也可以是针对发票内容中的唯一性信息例如:发票号码和发票代码等进行hash计算得到的hash值。举例来说,假设发票1的发票标识为发票标识1,发票2的发票标识为发票标识2,则可以采用如下表2所示的形式,将发票1、发票标识1以及发票2、发票标识2在该区块链中存证:发票发票标识发票1发票标识1发票2发票标识2…………表2假设该区块链中仅存证了发票1和发票2,则在接收到包含发票标识1的针对发票1的作废请求后,可以根据上表2,确定该区块链中存储有发票标识1对应的发票1,并将发票1确定为该目标发票;而在接收到包含发票标识3的针对发票3的作废请求后,则可以根据上表2,确定该区块链中未存储发票标识3对应的发票3;以此类推。在示出的一种实施方式中,由于在区块链中存储的数据具有不可篡改的特性,因此可以通过将上述目标发票的状态由有效状态更新为无效状态,以实现对该目标发票的作废处理。举例来说,在将该目标发票在该区块链中存证时,还可以为该目标发票设置用于表征该目标发票有效的状态标识,即此时该目标发票的状态为有效状态。后续,在确定需要对该目标发票进行作废处理时,可以将该目标发票的状态标识更新为表征该目标发票无效的状态标识,即将该目标发票的状态由有效状态更新为无效状态。其中,状态标识具体可以是为发票设置的一个特定字节,本说明书对此不作限定。在上述技术方案中,可以在发票作废方发起针对在区块链中存证的某张发票的作废请求时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该发票作废方进行作废权限验证,并在确定该发票作废方具有该发票的作废权限时,对该发票进行作废处理。这样,在实现对区块链中存证的发票进行作废处理的同时,也可以保证在区块链上流转的发票的数据安全性。请参考图2,图2是本说明书一示例性实施例示出的另一种基于区块链的发票作废方法的流程图。该方法可以应用于区块链中的节点设备,包括如下步骤:步骤202,获取在所述区块链中完成存证的交易;步骤204,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;步骤206,如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。在本实施例中,用户可以在完成一笔支付或退款后,将该支付交易或退款交易在区块链中存证。区块链中的节点设备可以获取在该区块链中完成存证的交易,并判断该交易是否为已在该区块链中存证的某笔支付交易对应的退款交易。具体地,可以按照一定的时间间隔,定期获取新增的在该区块链中完成存证的交易,并针对各笔交易,分别判断该交易是否为已在该区块链中存证的某笔支付交易对应的退款交易;或者,也可以在新增一笔在该区块链中完成存证的交易时,即刻判断该交易是否为已在该区块链中存证的某笔支付交易对应的退款交易,本说明书对此不做限定。在实际应用中,可以将获取到的该交易中的交易对象和交易内容等交易信息与已在该区块链中存证的各笔支付交易的相应的交易信息进行匹配。其中,交易对象包括交易的付款方和收款方,交易内容则可以包括交易金额、交易物品等。如果该交易的付款方为已在该区块链中存证的某笔支付交易的收款方,该交易的收款方为该支付交易的付款方,且该交易的交易内容与该支付交易的交易内容相同,则可以确定该交易为该支付交易对应的退款交易。如果确定获取到的该交易为已在该区块链中存证的某笔支付交易对应的退款交易,则可以调用发布在该区块链上的智能合约中声明的发票作废逻辑,对在该区块链中存证的与该支付交易相关的目标发票进行作废处理。其中,发票作废逻辑具体可以是声明在该智能合约中的,与对发票进行作废处理的执行逻辑相关的程序代码。在实际应用中,上述智能合约中还可以声明交易匹配逻辑。在这种情况下,可以调用该智能合约中声明的权限验证逻辑,确定获取到的上述交易是否为已在上述区块链中存证的某笔支付交易对应的退款交易。其中,交易匹配逻辑具体可以是声明在该智能合约中的,与对交易中的交易信息进行匹配的执行逻辑相关的程序代码。需要说明的是,以上描述的用于对发票进行作废处理的智能合约,和用于对交易中的交易信息进行匹配的智能合约,可以整合为一个智能合约在上述区块链上进行部署,也可以作为两个不同的智能合约在该区块链上进行部署,本说明书对此不作限定。在示出的一种实施方式中,在确定了获取到的上述交易为已在上述区块链中存证的某笔支付交易对应的退款交易后,可以基于该交易对应的发票标识,先确定与该支付交易相关的目标发票是否已在该区块链中存证,再在确定该目标发票已在该区块链中存证时,调用发布在该区块链上的智能合约中声明的发票作废逻辑,对该目标发票进行作废处理,以避免该目标发票未在该区块链中存证时的无效操作,减少设备资源消耗。具体地,在将针对某笔支付交易开具的发票在该区块链中存证时,可以同时将该发票的发票标识在该区块链中对应存证。此外,还可以将该发票的发票标识与该支付交易的对应关系在该区块链中存证。在确定了获取到与该笔支付交易对应的退款交易后,可以获取该支付交易对应的发票标识,并将该发票标识与已在该区块链中存证的各张发票的发票标识进行匹配。如果该发票的发票标识与已在该区块链中存证的某张发票的发票标识相同,则可以确定该区块链中存储有与该发票标识对应的发票,并将该发票确定为该目标发票。后续,可以对该目标发票进行作废处理。相应地,如果确定该区块链中未存储与该发票标识对应的发票,则不再需要对在该区块链中存证的与该支付交易相关的目标发票进行作废处理。其中,发票标识可以是针对发票内容进行hash计算得到的hash值;或者,也可以是针对发票内容中的唯一性信息例如:发票号码和发票代码等进行hash计算得到的hash值。在实际应用中,也可以直接将针对某笔支付交易开具的发票与该支付交易在该区块链中对应存证。这样,在确定了获取到与该笔支付交易对应的退款交易后,可以直接确定该区块链中是否存储有与该支付交易相关的目标发票。在示出的一种实施方式中,由于在区块链中存储的数据具有不可篡改的特性,因此可以通过将上述目标发票的状态由有效状态更新为无效状态,以实现对该目标发票的作废处理。举例来说,在将该目标发票在该区块链中存证时,还可以为该目标发票设置用于表征该目标发票有效的状态标识,即此时该目标发票的状态为有效状态。后续,在确定需要对该目标发票进行作废处理时,可以将该目标发票的状态标识更新为表征该目标发票无效的状态标识,即将该目标发票的状态由有效状态更新为无效状态。其中,状态标识具体可以是为发票设置的一个特定字节,本说明书对此不作限定。在上述技术方案中,可以在确定在区块链中完成存证的某笔交易为已在该区块链中存证的支付交易对应的退款交易时,通过调用发布在该区块链上的智能合约中相应的逻辑,实现对该区块链中存证的与该支付交易相关的发票进行作废处理。这样,在实现对区块链中存证的发票进行作废处理的同时,也可以保证在区块链上流转的发票的数据安全性。与前述基于区块链的发票作废方法的实施例相对应,本说明书还提供了基于区块链的发票作废装置的实施例。本说明书基于区块链的发票作废装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本说明书基于区块链的发票作废装置所在电子设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该基于区块链的发票作废的实际功能,还可以包括其他硬件,对此不再赘述。请参考图4,图4是本说明书一示例性实施例示出的一种基于区块链的发票作废装置的框图。该装置40可以应用于图3所示的电子设备,包括:接收模块401,用于接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;第一确定模块402,用于响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;作废模块403,用于在所述发票作废方具有所述目标发票的作废权限时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。在本实施例中,所述智能合约中还可以声明针对所述发票作废方的权限验证逻辑;所述第一确定模块402具体可以用于:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。在本实施例中,所述作废请求中可以携带所述发票作废方的用户标识;所述第一确定模块402具体可以用于:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。在本实施例中,所述作废请求中可以携带所述目标发票的发票标识;所述装置40还可以包括:第二确定模块404,用于基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块405,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。在本实施例中,所述发票标识可以包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。在本实施例中,所述作废模块403具体可以用于:将所述目标发票的状态由有效状态更新为无效状态。请参考图5,图5是本说明书一示例性实施例示出的另一种基于区块链的发票作废装置的框图。该装置50可以应用于图3所示的电子设备,包括:获取模块501,用于获取在所述区块链中完成存证的交易;第一确定模块502,用于确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;作废模块503,用于在所述交易为所述支付交易对应的退款交易时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。在本实施例中,所述智能合约中还可以声明交易匹配逻辑;所述第一确定模块502具体可以用于:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。在本实施例中,所述装置50还可以包括:第二确定模块504,用于基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块505,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。在本实施例中,所述发票标识可以包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。在本实施例中,所述作废模块503具体可以用于:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。上述实施例阐明的系统、装置、模块或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。与上述基于区块链的发票作废方法实施例相对应,本说明书还提供了一种电子设备的实施例。该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。在本实施例中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。在本实施例中,所述智能合约中还声明了针对所述发票作废方的权限验证逻辑;通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。在本实施例中,所述作废请求中携带所述发票作废方的用户标识;通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。在本实施例中,所述作废请求中携带所述目标发票的发票标识;通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器还被促使:基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。在本实施例中,所述发票标识可以包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。在本实施例中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:将所述目标发票的状态由有效状态更新为无效状态。与上述基于区块链的发票作废方法实施例相对应,本说明书还提供了另一种电子设备的实施例。该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。在本实施例中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:获取在所述区块链中完成存证的交易;确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。在本实施例中,所述智能合约中还声明了交易匹配逻辑;通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。在本实施例中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器还被促使:基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。在本实施例中,所述发票标识可以包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。在本实施例中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

权利要求:1.一种基于区块链的发票作废方法,所述方法包括:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。2.根据权利要求1所述的方法,所述智能合约中还声明了针对所述发票作废方的权限验证逻辑;所述确定所述发票作废方是否具有所述目标发票的作废权限,包括:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。3.根据权利要求1所述的方法,所述作废请求中携带所述发票作废方的用户标识;所述确定所述发票作废方是否具有所述目标发票的作废权限,包括:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。4.根据权利要求1所述的方法,所述作废请求中携带所述目标发票的发票标识;所述方法还包括:基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。5.根据权利要求4所述的方法,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。6.根据权利要求1所述的方法,所述对所述目标发票进行作废处理,包括:将所述目标发票的状态由有效状态更新为无效状态。7.一种基于区块链的发票作废方法,所述方法包括:获取在所述区块链中完成存证的交易;确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。8.根据权利要求7所述的方法,所述智能合约中还声明了交易匹配逻辑;所述确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易,包括:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。9.根据权利要求7所述的方法,所述方法还包括:基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;如果所述区块链中存储有与所述发票标识对应的发票,则将所述发票确定为所述目标发票。10.根据权利要求9所述的方法,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。11.根据权利要求7所述的方法,所述对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理,包括:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。12.一种基于区块链的发票作废装置,所述装置包括:接收模块,用于接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;第一确定模块,用于响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;作废模块,用于在所述发票作废方具有所述目标发票的作废权限时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。13.根据权利要求12所述的装置,所述智能合约中还声明了针对所述发票作废方的权限验证逻辑;所述第一确定模块具体用于:调用所述智能合约中声明的所述权限验证逻辑,确定所述发票作废方是否具有所述目标发票的作废权限。14.根据权利要求12所述的装置,所述作废请求中携带所述发票作废方的用户标识;所述第一确定模块具体用于:基于所述用户标识,确定所述发票作废方是否为所述目标发票的发票开具方或可信第三方;如果所述发票作废方为所述目标发票的发票开具方或可信第三方,则确定所述发票作废方具有所述目标发票的作废权限。15.根据权利要求12所述的装置,所述作废请求中携带所述目标发票的发票标识;所述装置还包括:第二确定模块,用于基于所述发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。16.根据权利要求15所述的装置,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。17.根据权利要求12所述的装置,所述作废模块具体用于:将所述目标发票的状态由有效状态更新为无效状态。18.一种基于区块链的发票作废装置,所述装置包括:获取模块,用于获取在所述区块链中完成存证的交易;第一确定模块,用于确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;作废模块,用于在所述交易为所述支付交易对应的退款交易时,调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。19.根据权利要求18所述的装置,所述智能合约中还声明了交易匹配逻辑;所述第一确定模块具体用于:调用所述智能合约中声明的所述交易匹配逻辑,确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易。20.根据权利要求18所述的装置,所述装置还包括:第二确定模块,用于基于所述支付交易对应的发票标识,确定所述区块链中是否存储有与所述发票标识对应的发票;第三确定模块,用于在所述区块链中存储有与所述发票标识对应的发票时,将所述发票确定为所述目标发票。21.根据权利要求20所述的装置,所述发票标识包括:针对发票内容进行hash计算得到的hash值;或者,针对发票内容中的唯一性信息进行hash计算得到的hash值。22.根据权利要求18所述的装置,所述作废模块具体用于:将在所述区块链中存证的与所述支付交易相关的目标发票的状态由有效状态更新为无效状态。23.一种电子设备,所述电子设备包括:处理器;用于存储机器可执行指令的存储器;其中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:接收发票作废方发起的针对在所述区块链中存证的目标发票的作废请求;响应于所述作废请求,确定所述发票作废方是否具有所述目标发票的作废权限;如果所述发票作废方具有所述目标发票的作废权限,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对所述目标发票进行作废处理。24.一种电子设备,所述电子设备包括:处理器;用于存储机器可执行指令的存储器;其中,通过读取并执行所述存储器存储的与基于区块链的发票作废的控制逻辑对应的机器可执行指令,所述处理器被促使:获取在所述区块链中完成存证的交易;确定所述交易是否为已在所述区块链中存证的支付交易对应的退款交易;如果所述交易为所述支付交易对应的退款交易,则调用发布在所述区块链上的智能合约中声明的发票作废逻辑,对在所述区块链中存证的与所述支付交易相关的目标发票进行作废处理。

百度查询: 创新先进技术有限公司 基于区块链的发票作废方法和装置、电子设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。