CN109034924B - 电子票据生成方法、装置、存储介质和计算机设备 - Google Patents

电子票据生成方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN109034924B
CN109034924B CN201810936830.3A CN201810936830A CN109034924B CN 109034924 B CN109034924 B CN 109034924B CN 201810936830 A CN201810936830 A CN 201810936830A CN 109034924 B CN109034924 B CN 109034924B
Authority
CN
China
Prior art keywords
bill
electronic
electronic bill
identification
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810936830.3A
Other languages
English (en)
Other versions
CN109034924A (zh
Inventor
蔡弋戈
秦青
戴传兵
张建俊
郑罗海
卢吉光
王宗友
屠海涛
周开班
蓝虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhishuilian Technology Co ltd
Original Assignee
Shenzhen Zhishuilian Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Zhishuilian Technology Co ltd filed Critical Shenzhen Zhishuilian Technology Co ltd
Priority to CN201910682701.0A priority Critical patent/CN110428292B/zh
Priority to CN201810936830.3A priority patent/CN109034924B/zh
Priority to CN201910689619.0A priority patent/CN110400188B/zh
Publication of CN109034924A publication Critical patent/CN109034924A/zh
Application granted granted Critical
Publication of CN109034924B publication Critical patent/CN109034924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing

Abstract

本申请涉及一种电子票据生成方法、装置、计算机可读存储介质和计算机设备,所述方法包括:接收开票请求;所述开票请求携带票据信息;所述票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;生成与所述票据信息对应的电子票据开票查询码;根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,并将所述电子票据写入数据区块;响应于所述开票请求,反馈所述电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。本申请提供的方案可以大大降低发票开具的成本。

Description

电子票据生成方法、装置、存储介质和计算机设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种电子票据生成方法、装置、计算机可读存储介质和计算机设备。
背景技术
发票是企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,为消费者提供的消费凭证。企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,应当开具发票并依法根据发票进行纳税。
传统发票开具方式,通常是企业或个人购买专用的税控设备,通过专用的税控设备才能进行开票,税控设备的购买、维护和使用都会产生成本费用,导致开票成本高昂。
发明内容
基于此,有必要针对传统的发票开具成本高昂的技术问题,提供一种电子票据生成方法、装置、计算机可读存储介质和计算机设备。
一种电子票据生成方法,应用于区块链网络中的区块链节点,所述方法包括:
接收开票请求;所述开票请求携带票据信息;所述票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;
生成与所述票据信息对应的电子票据开票查询码;
根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,并将所述电子票据写入数据区块;
响应于所述开票请求,反馈所述电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。
一种电子票据生成装置,包括:
接收模块,用于接收开票请求;所述开票请求携带票据信息;所述票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;
生成模块,用于生成与所述票据信息对应的电子票据开票查询码;
所述生成模块还用于根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,并将所述电子票据写入数据区块;
反馈模块,用于响应于所述开票请求,反馈所述电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
上述电子票据生成方法、装置、计算机可读存储介质和计算机设备,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
一种电子票据生成方法,包括:
获取接收方标识和资源转移份额;
获取与当前的开票方标识关联的电子票据标识;
根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息;
将所述票据信息上传至区块链节点;上传的所述票据信息用于指示所述区块链节点生成与所述票据信息对应的电子票据开票查询码,并根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,将所述电子票据写入数据区块;
接收所述区块链节点回传的电子票据开票查询码。
一种电子票据生成装置,包括:
获取模块,用于获取接收方标识和资源转移份额;
所述获取模块还用于获取与当前的开票方标识关联的电子票据标识;
生成模块,用于根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息;
上传模块,用于将所述票据信息上传至区块链节点;上传的所述票据信息用于指示所述区块链节点生成与所述票据信息对应的电子票据开票查询码,并根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,将所述电子票据写入数据区块;
接收模块,用于接收所述区块链节点回传的电子票据开票查询码。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
上述电子票据生成方法、装置、计算机可读存储介质和计算机设备,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与所述票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
附图说明
图1为一个实施例中电子票据生成方法的应用环境图;
图2为一个实施例中电子票据生成方法的流程示意图;
图3为一个实施例中生成与票据信息对应的电子票据开票查询码步骤的流程示意图;
图4为一个实施例中反馈电子票据标识步骤的流程示意图;
图5为一个实施例中共识算法的原理示意图;
图6为另一个实施例中电子票据生成方法的流程示意图;
图7为一个实施例中电子票据生成方法的流程示意图;
图8为另一个实施例中电子票据生成方法的流程示意图;
图9为一个实施例中关于电子票据的数据处理系统的部署图;
图10为了一个实施例中区块链电子发票的流转界面示意图;
图11为另一个实施例中区块链电子发票的流转界面示意图;
图12为又一个实施例中区块链电子发票的流转界面示意图;
图13为还一个实施例中区块链电子发票的流转界面示意图;
图14为一个实施例中电子票据生成装置的结构框图;
图15为另一个实施例中电子票据生成装置的结构框图;
图16为一个实施例中电子票据生成装置的结构框图;
图17为另一个实施例中电子票据生成装置的结构框图;
图18为一个实施例中计算机设备的结构框图;
图19为另一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中电子票据生成方法的应用环境图。参照图1,该电子票据生成方法应用于关于电子票据的数据处理系统。该关于电子票据的数据处理系统包括开票方设备110和区块链网络,区块链网络中包括多个区块链节点,具体包括有与税局服务器对应的区块链节点、与开票企业对应的开票方区块链节点120、与电子票据公用服务器对应的区块链节点以及与报销企业对应的区块链节点等。这些区块链节点间两两可以进行数据传递。开票方设备110可以是终端也可以是服务器。开票方设备110和开票方区块链节点120通过网络连接。终端具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑和笔记本电脑等中的至少一种。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种电子票据生成方法。本实施例主要以该方法应用于上述图1中的开票方区块链节点120来举例说明。参照图2,该电子票据生成方法具体包括如下步骤:
S202,接收开票请求;开票请求携带票据信息;票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。
其中,开票请求用于开具电子票据,开票请求中携带有票据信息。票据信息是用来生成电子票据的信息,包括开票方标识、电子票据标识、接收方标识和资源转移份额。电子票据标识用于唯一标识一张电子票据,具体可以包括电子票据的票据代码和票据号码。电子票据是电子化存储的票据,比如可存储于存储介质或计算机设备中。
开票方标识是与发起开票请求的设备对应的标识,用于唯一标识开票方。开票方具体可以是销售企业,开票方在向消费者出售商品、提供服务或者从事其他经营活动时,需为消费者提供消费凭证,也就是电子票据。开票方标识具体可以是销售方名称、销售方的纳税人识别号或销售方的开户账号等。
接收方标识用于唯一标识电子票据接收方。接收方具体可以是消费个人或消费企业。当消费个人或消费企业在销售企业进行消费后,销售企业可为消费个人或消费企业提供消费凭证,也就是电子票据。接收方标识具体可以是购买方名称、购买方的纳税人识别号或购买方的开户账号等。资源转移份额是消费者消费的具体资源份额。
区块链节点是区块链网络中的一个数据处理节点。区块链网络是运行区块链技术的载体和组织方式。区块链技术,简称BT(Blockchain technology),也被称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据记录。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
具体地,当个人或企业在完成消费后,可提供接收方标识和资源转移份额至开票方设备。开票方设备根据开票方标识、与开票方标识关联的、且处于未使用状态的电子票据标识、接收方标识和资源转移份额,共同生成票据信息。开票方设备可向区块链节点发送携带有票据信息的开票请求。区块链节点接收开票请求。
在一个实施例中,开票方设备上传数据的区块链节点,可以是与开票方设备对应的区块链节点。在其他实施例中,开票方设备上传数据的区块链节点,还可以与其他权限角色的计算机设备对应。其中,与开票方设备对应的区块链节点,可以是开票方自己的设备构成的区块链节点,也可以是开票方授权的第三方代理设备构成的区块链节点。
在一个实施例中,开票方设备通过与开票方设备对应的私钥对票据信息进行签名,得到关于票据信息的签名数据。开票方设备向区块链节点发送的开票请求中携带有关于票据信息的签名数据、以及票据信息。区块链节点接收开票请求后,通过区块链节点本地缓存的与开票方标识对应的公钥对签名数据进行验证,当验证通过后,才继续执行后续的步骤。
S204,生成与票据信息对应的电子票据开票查询码。
其中,电子票据开票查询码用于查询电子票据,与电子票据唯一对应。电子票据开票查询码具体可以是字符串、二维码或条形码等。具体地,区块链节点可通过哈希算法对票据信息进行哈希运算,得到电子票据开票查询码。常用的哈希算法比如,MD5(MessageDigest Algorithm,消息摘要算法第五版)、SHA1(Secure Hash Algorithm,安全哈希算法)和SHA2等,本实施例在此不做具体限定。
在一个实施例中,区块链节点可采用加密算法对票据信息进行加密,得到票据密文。再根据票据密文生成对应的电子票据开票查询码。其中,加密算法,比如对称加密算法和非对称加密算法等。对称加密算法,比如DES(Data Encryption Standard,对称算法)、AES(Advanced Encryption Standard,高级加密标准)或IDEA(International DataEncryption Algorithm,国际数据加密算法)等。非对称加密算法,比如RSA(Rivest、Shamir、Adleman,加密算法)、DSA(Digital Signature Algorithm,数字签名算法)或ECC(Elliptic curve cryptography,椭圆曲线加密算法)等。
在一个实施例中,区块链节点可提取开票请求中的票据信息,对票据信息进行哈希运算,得到票据信息的哈希值。或者,区块链节点也可对票据密文进行哈希运算,得到相应的票据哈希值。
在一个实施例中,区块链节点可直接将票据哈希值作为电子票据开票查询码。在另一个实施例中,区块链节点根据票据哈希值、以及包括有开票方设备私钥签名的签名数据共同生成电子票据开票查询码。
在一个实施例中,为保障开票方和区块链节点双方都认可电子票据开票查询码的真实性。步骤S204,也就是生成与票据信息对应的电子票据开票查询码的步骤具体包括以下步骤:
S302,根据票据信息生成票据哈希值。
具体地,区块链节点可通过哈希算法对票据信息进行哈希运算,得到票据哈希值。
S304,将票据哈希值发送至与开票方标识对应的开票方设备;发送的票据哈希值用于指示开票方设备对票据哈希值进行签名得到签名数据。
具体地,区块链节点可将票据哈希值发送至与开票方标识对应的开票方设备。开票方设备在接收到票据哈希值后,采用开票方设备本地的私钥对票据哈希值进行签名,得到签名数据,并将签名数据回传至区块链节点。
在一个实施例中,开票方设备在接收到票据哈希值后,可采用相同的哈希算法对票据信息进行哈希运算,以验证区块链节点发送的票据哈希值的真实性。当验证通过后,再采用开票方设备本地的私钥对票据哈希值进行签名,得到签名数据。
S306,接收开票方设备返回的签名数据。
S308,当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
具体地,区块链节点接收到开票方设备返回的签名数据后,通过在区块链节点本地处缓存的与开票方标识对应的公钥对签名数据进行验证。当签名数据通过验证后,区块链节点对票据哈希值和签名数据进行哈希运算,生成电子票据开票查询码。
在一个实施例中,区块链节点在接收到开票方设备返回的签名数据后,可将签名数据和票据信息传递至所在区块链网络中的其他区块链节点,这些区块链节点在达成共识后,区块链节点才根据票据哈希值和签名数据生成电子票据开票查询码。
上述实施例中,根据票据信息生成票据哈希值,再通过开票方设备对票据哈希值进行签名得到的签名数据,共同生成票据开票查询码,可以保障区块链节点和开票方设备均认可电子票据开票查询码的真实性,进而保障了电子票据的真实性。
S206,根据票据信息生成与电子票据开票查询码对应的电子票据,并将电子票据写入数据区块。
其中,电子票据是电子化存储的票据。数据区块是区块链节点中用来存储数据的存储模块。
具体地,区块链节点生成电子票据开票查询码后,可将票据信息和电子票据开票查询码进行关联,以生成电子票据。区块链节点可将生成的电子票据写入数据区块。
在一个实施例中,区块链节点可根据票据信息生成电子票据,并将电子票据与电子票据开票查询码进行关联,这样,电子票据开票查询码可以认为是电子票据的索引,用来查找相应的电子票据。
在一个实施例中,区块链节点可根据票据信息和电子票据开票查询码关联生成电子票据。这样,通过电子票据查询码进行查询时,可以查询到与电子票据查询码对应的票据信息。
在一个实施例中,区块链节点在生成电子票据开票查询码之前会将相应的票据信息等发送至所在区块链网络中的其他区块链节点,这些区块链节点在达成共识后,区块链节点才生成电子票据开票查询码。此时,区块链节点可在新区块生成时将电子票据直接写入数据区块。这样,区块链节点在票据信息通过区块链网络达成共识后,才根据票据信息生成电子票据开票查询码,可以保障电子票据开票查询码的真实性和可靠性。
在一个实施例中,区块链节点可在生成电子票据后,将电子票据发送至所在区块链网络中的其他区块链节点,这些区块链节点在达成共识后,区块链节点才将电子票据写入数据区块。
S208,响应于开票请求,反馈电子票据开票查询码;电子票据开票查询码用于查询电子票据。
具体地,区块链节点响应于开票请求,向开票方标识对应的开票方设备反馈电子票据开票查询码,电子票据开票查询码用于查询电子票据。开票方设备在接收到电子票据开票查询码后,可将相应的电子票据开票查询码反馈至消费者。
在一个实施例中,区块链节点响应于开票请求,向开票方标识对应的开票方设备反馈电子票据开票查询码、以及表示开票成功的反馈信息。其中,表示开票成功的反馈信息具体可以是表示开票成功的反馈代码,如0000或1111等。
在一个实施例中,开票方设备在接收到区块链节点反馈的电子票据开票查询码后,可根据电子票据开票查询码从区块链网络中的区块链节点上查找相应的电子票据。开票方设备可从电子票据中提取出票据信息,并将票据信息反馈至消费者。
在一个实施例中,消费者可通过电子票据公用服务器存储票据信息,并通过与消费者标识登录电子票据公用服务器,以查看与消费者标识关联的票据信息。
在一个实施例中,写入数据区块中的电子票据包括加密的票据密文。当区块链节点采用与开票方设备对应的公钥进行加密时,开票方设备即可根据开票方设备对应的私钥对从区块链网络中获取的电子票据进行相应的解密,以得到票据信息。
在一个实施例中,写入数据区块中的电子票据包括加密的票据密文。区块链节点在将电子票据开票查询码反馈至开票方设备时,可同时反馈相应的解密密钥,以便开票方设备可根据相应的解密密钥解密电子票据得到票据信息。相应的,开票方设备可将相应的解密密钥和电子票据开票查询码传递给消费者。
在一个具体的实施例中,电子票据为区块链电子发票;电子票据标识为区块链电子发票编号;开票方标识为企业标识。
其中,区块链电子发票是基于区块链技术处理的电子发票。区块链电子发票编号具体可以包括发票代码和发票号码。企业标识用于唯一标识一个企业,可以是企业在税局注册后,由税局为企业分配的唯一标识。
具体地,纸质发票在电子化后,在未开具电子发票前,可以认为不再存在空白发票的概念。那么,开票企业在税局申领可以进行发票开具的区块链电子发票编号,在需要开具区块链电子发票时,将开票方标识、区块链电子发票编号、接收方标识、以及资源转移份额上传至区块链节点,以生成区块链电子发票。
上述电子票据生成方法,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
在一个实施例中,电子票据生成方法还包括反馈电子票据标识的步骤,该步骤具体包括:
S402,接收电子票据标识领用请求;电子票据标识领用请求携带开票方标识。
其中,电子票据标识领用请求用于获取可用的电子票据标识。具体地,当开票方需开具发票时,区块链节点可获取由开票方设备触发的电子票据领用请求,该电子票据领用请求中携带有开票方标识。
S404,确定区块链节点中与开票方标识关联的、且处于未使用状态的电子票据标识。
具体地,当区块链节点接收到电子票据标识领用请求时,可从电子票据标识领用请求中提取出开票方标识,在区块链网络中查找与开票方标识关联的、且处于未使用状态的电子票据标识。
在一个实施例中,区块链节点可将属于开票方的电子票据标识与开票方标识进行关联存储至数据区块中。当区块链节点接收到来自于开票方设备发起的电子票据标识领用请求时,在数据区块中查找与请求方标识关联的电子票据标识。区块链节点可从与开票方标识关联的电子票据标识中筛选出处于未使用状态的电子票据标识。
在一个实施例中,当区块链节点将处于未使用状态的电子票据标识反馈至开票企业后,区块链节点可将该电子票据标识的票据状态标记为已使用状态。
S406,响应于电子票据标识领用请求,反馈确定的电子票据标识。
具体地,区块链节点响应于电子票据标识领用请求,向开票方设备反馈确定的与开票方标识关联的、且处于未使用状态的电子票据标识。
在一个实施例中,开票方设备获取了与开票方标识关联的、且处于未使用状态的电子票据标识后,再根据获取的接收方标识和资源转移份额,生成票据信息。开票方设备向区块链节点发送携带有票据信息的开票请求。
上述实施例中,接收携带有开票方标识的电子票据标识领用请求,响应于该请求,反馈与开票方标识关联的、且处于未使用状态的电子票据标识。可使得开票方从区块链节点处获取与开票方标识关联的、且处于未使用状态的电子票据标识,因而开票企业无需提前申领空白发票。这样大大提高了发票开具的效率、且减少了开票的成本。
在一个实施例中,电子票据生成方法还包括电子票据开具条件验证的步骤,该步骤具体包括:从区块链节点查询与开票方标识对应的电子票据开具条件;根据电子票据开具条件,验证票据信息的合法性。步骤S308,也就是当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码的步骤包括:当签名数据通过验证、且票据信息通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
其中,电子票据开具条件,是用于按电子票据开具控制周期来限定电子票据开具的约束条件。电子票据开具条件,也可以称作电子票据开具智能合约。电子票据开具控制周期是用于控制电子票据开票数据的时间长度,如一个或多个自然日、自然周、自然月、或者自然年等。控制电子票据开票数据,比如控制电子票据的开票数量或者单张电子票据的开票金额等。举例说明,电子票据开具条件具体如:A企业(开票方)在一个自然月内的可开具增值税电子票据的开票数量为300张,单张电子票据的开票金额最大为壹仟元。
在一个实施例中,与开票方标识对应的电子票据开具条件,是由电子票据管理服务器,根据与开票方标识对应的开票方特征数据自定义设置的,并上传至区块链网络中,以供各区块链节点在需要时查询使用。其中,开票方特征数据包括开票方基础数据和/或开票方行为数据。开票方基础数据是反映开票方基本特征的数据。开票方行为数据是反映开票方行为特征的数据。
举例说明,当开票方标识所标识的开票方为企业用户时,开票方基础数据比如:企业姓名、企业类型或者经营范围等。开票方行为数据比如:企业开票数据、企业报票数据以及企业纳税数据等。
可以理解,与开票方标识对应设置的电子票据开具条件是可更新的。开票方可通过电子票据管理服务器进行实名注册,完成注册后,电子票据管理服务器可根据注册数据中的开票方基础数据首次设置与开票方标识对应的电子票据开具条件。比如,设置开票企业每月可开具增值税电子发票300张。此后,电子票据管理服务器可根据更新的开票方基础数据和/或开票方行为数据自行更新与开票方标识对应的电子票据开具条件,也可响应于通过开票方标识发起的请求,更新与开票方标识对应的电子票据开具条件。
在一个实施例中,区块链节点在接收到开票请求后,提取开票请求中的票据信息。区块链节点可在区块链网络中查询与开票方标识对应的电子票据开具条件。区块链节点根据查询到的电子票据开具条件,验证票据信息的合法性。比如,验证开票方在电子票据开具控制周期内的开票数量是否符合电子票据开具条件,或者单张电子票据的开票金额是否符合电子票据开具条件等。
当票据信息符合电子票据开具条件、且验证签名数据确实为开票方设备所发出的,区块链节点可将票据信息和签名数据传递至所在区块链网络中的其他区块链节点,以完成共识。这些区块链节点在达成共识后,也就是当签名数据通过验证、且票据信息通过验证后,区块链节点根据票据哈希值和签名数据生成电子票据开票查询码。
其中,区块链网络中的共识算法常用的有POW(Proof of Work,工作量证明)、POS(Proof of Stake,权益证明)、DPOS(Delegated Proof of Stake,委任权益证明)、及PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)等等。
在一个具体的实施例中所采用的共识算法具体是基于一致性算法(如:Raft)和拜占庭容错算法(如:Bft)的共识算法(Bft-Raft)。当然本发明的其他实施例中也可以采用其他共识算法,本发明实施例在此不作限制。
举例说明,图5示出了一个实施例中共识算法的原理示意图。参考图5,客户端(Client,具体可以是如图9中所示的区块链电子发票应用平台)发起共识请求(Request),并将共识请求发送至处于领导状态的区块链节点(主节点Leader A)。其中,处于领导状态的区块链节点由区块链网络中的各区块链节点共同选举得到。继续进入Append Entity(添加实体)阶段,由Leader A将共识请求所对应的共识内容(或对共识内容进行处理后得到的中间数据)广播至区块链网络中其他未处于领导状态的区块链节点(跟从节点Follower B、Follower C、Follower D…);继续进入Append Response(追加响应)阶段,由各跟从节点将接收到的共识内容广播至其他各区块链节点,并在接收到预设数量(2f+1)的其他区块链节点所广播的共识内容一致时,进入Commit(确认)阶段,各跟从节点再将确认结果反馈至主节点。主节点在接收到预设数量(2f+1)的其他区块链节点反馈确认通过时,则判定完成共识向Client反馈(Reply)共识完成的结果。其中,3f+1≤N,N是区块链网络中区块链节点的数量。f是区块链网络中作恶区块链节点的数量。
上述实施例中,通过电子票据开具条件验证票据信息的合法性,当签名数据通过验证、且票据信息通过验证后,才根据票据哈希值和签名数据生成电子票据开票查询码,可以保障生成的电子票据的合法性。
在一个实施例中,电子票据生成方法还包括对票据信息进行加密的步骤,该步骤具体包括:生成与票据信息对应的票据对称密钥;通过票据对称密钥加密票据信息,得到票据密文;获取与开票方标识对应的开票方公钥;通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。根据票据信息生产与电子票据开票查询码对应的电子票据的步骤具体包括:根据票据密文、第一票据对称密钥密文、以及电子票据开票查询码生成电子票据。
其中,票据对称密钥是电子票据的密钥,是一种对称密钥。用该票据对称密钥对票据信息进行加密,得到票据密文后,可通过该票据对称密钥对票据密文进行解密,得到票据信息。
开票方公钥是与开票方标识关联的密钥对中的公钥。其中,开票方设备可生成与开票方标识对应的密钥对,包括开票方公钥和开票方私钥。开票方设备可自行保存开票方私钥,将开票方公钥进行公开。区块链节点可缓存与开票方标识对应的开票方公钥。可以理解的是,通过开票方公钥加密数据,可通过相应的开票方私钥进行解密。同样地,通过开票方私钥加密数据,可通过相应的开票方公钥进行解密。
具体地,区块链节点在获取票据信息后,可随机生成与票据信息对应的票据对称密钥。通过票据对称密钥加密票据信息,得到票据密文。再查找与开票方标识对应的开票方公钥。区块链节点通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。
进一步地,区块链节点可将票据密文、第一票据对称密钥密文、以及电子票据开票查询码进行关联,以生成电子票据,再将电子票据写入数据区块。
在上述实施中,当区块链网络中存储的电子票据是加密的数据。当开票方收到区块链节点反馈的电子票据开票查询码后,可从区块链网络中查找与该电子票据开票查询码对应的电子票据。采用与开票方标识对应的开票方私钥解密电子票据中的第一票据对称密钥密文,得到票据对称密钥,再通过票据对称密钥解密票据密文,即可得到明文的票据信息。
上述实施例中,通过对称加密的方式加密票据信息,得到票据密文,再通过与开票方标识对应的开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。根据票据密文、第一票据对称密钥密文、以及电子票据开票查询码生成电子票据,使得只有拥有开票方私钥的开票方才可获得电子票据的明文数据,保障了电子票据的数据安全性。
在一个实施例中,电子票据生成方法还包括通过消费者公钥加密的步骤,该步骤具体包括:获取与票据信息对应的消费者标识;查找与消费者标识对应的消费者公钥;通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。根据票据信息生成与电子票据开票查询码对应的电子票据的步骤具体包括:根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据。
其中,消费者标识用来唯一标识消费者。消费者标识具体可以是用户名和密码、消费者的证件编号、或者消费者的注册码等。消费者公钥是与消费者标识关联的密钥对中的公钥。其中,消费者可通过已注册的消费者标识登录电子票据公用服务器,通过电子票据公用服务器生成与消费者标识对应的密钥对,包括消费者公钥和消费者私钥。电子票据公用服务器可帮消费者保存消费者私钥,将消费者公钥进行公开。区块链节点可缓存与消费者标识对应的消费者公钥。可以理解的是,通过消费者公钥加密数据,可通过相应的消费者私钥进行解密。同样地,通过消费者私钥加密数据,可通过相应的消费者公钥进行解密。
在一个实施例中,票据信息还包括消费者标识。区块链节点可根据消费者标识从本地缓存的密钥中查找与开票方标识对应的开票方公钥。区块链节点通过开票方公钥加密票据对称密钥,得到第二票据对称密钥密文。
进一步地,区块链节点可将票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码进行关联,以生成电子票据,再将电子票据写入数据区块。
在一个实施例中,票据信息中未包括消费者标识。区块链节点将电子票据开票查询码反馈至开票方设备,开票方设备再将电子票据开票查询码、及电子票据的所有权传递至消费者。消费者可将传递的电子票据暂存至电子票据公用服务器。电子票据公用服务器获取消费者标识,将消费者标识上传至区块链节点。区块链节点获取消费者标识,并查找与消费者标识对应的消费者公钥,通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。再根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码更新电子票据。
在上述实施例中,电子票据中包括采用开票方公钥加密的第一票据对称密钥密文、采用消费者公钥加密的第二票据对称密钥密文,这样开票方和消费者均可通过各自的私钥,对电子票据进行解密,得到电子票据明文,也就是票据信息。
上述实施例中,通过与消费者标识对应的消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据,使得只有拥有开票方私钥的开票方、以及拥有消费者公钥的消费者才可获得电子票据的明文数据,保障了电子票据的数据安全性。
在一个具体地实施例中,电子票据生成方法具体包括以下步骤:
S602,接收电子票据标识领用请求;电子票据标识领用请求携带开票方标识。
S604,确定区块链节点中与开票方标识关联的、且处于未使用状态的电子票据标识。
S606,响应于电子票据标识领用请求,反馈确定的电子票据标识。
S608,接收开票请求;开票请求携带票据信息;票据信息包括开票方标识、与开票方标识关联的且处于未使用状态的电子票据标识、接收方标识和资源转移份额。
S610,从区块链节点查询与开票方标识对应的电子票据开具条件。
S612,根据电子票据开具条件,验证票据信息的合法性。
S614,根据票据信息生成票据哈希值。
S616,将票据哈希值发送至与开票方标识对应的开票方设备;发送的票据哈希值用于指示开票方设备对票据哈希值进行签名得到签名数据。
S618,接收开票方设备返回的签名数据。
S620,当签名数据通过验证、且票据信息通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
S622,生成与票据信息对应的票据对称密钥。
S624,通过票据对称密钥加密票据信息,得到票据密文。
S626,获取与开票方标识对应的开票方公钥。
S628,通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。
S630,获取与票据信息对应的消费者标识。
S632,查找与消费者标识对应的消费者公钥。
S634,通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。
S636,根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据,并将电子票据写入数据区块。
S638,响应于开票请求,反馈电子票据开票查询码;电子票据开票查询码用于查询电子票据。
上述电子票据生成方法,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
图6为一个实施例中电子票据生成方法的流程示意图。应该理解的是,虽然图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图7所示,在一个实施例中,提供了一种电子票据生成方法。本实施例主要以该方法应用于上述图1中的开票方设备110来举例说明。参照图7,该电子票据生成方法具体包括如下步骤:
S702,获取接收方标识和资源转移份额。
其中,接收方标识用于唯一标识电子票据接收方。接收方具体可以是消费个人或消费企业。当消费个人或消费企业在销售企业进行消费后,销售企业可为消费个人或消费企业提供消费凭证,也就是电子票据。接收方标识具体可以是购买方名称、购买方的纳税人识别号或购买方的开户账号等。资源转移份额是消费者消费的具体资源份额。
在一个实施例中,开票方设备可展示票据信息输入界面,获取输入至票据信息输入界面中的接收方标识和资源转移份额。或者,开票方可在终端上展示票据信息输入界面,开票方所在的终端可将票据信息输入界面中的接收方标识和资源转移份额发送至开票方设备。
在一个实施例中,当消费者通过支付应用进行消费后,支付应用对应的服务器可将交易信息上传至区块链网络。开票设备可直接从区块链网络中获取与消费者标识对应的接收方标识和资源转移份额。其中,交易信息是消费者(或消费企业)和销售企业之间进行资源转移的相关信息,比如进行交易的物品明细、金额、时间、地点、消费者标识和销售企业标识等等。
S704,获取与当前的开票方标识关联的电子票据标识。
具体地,开票企业可以从区块链节点处获取与当前的开票方标识关联的电子票据标识。
在一个实施例中,开票方设备向区块链节点发送电子票据标识领用请求;电子票据标识领用请求携带开票方标识;电子票据标识领用请求用于指示区块链节点查询与开票方标识关联的、且处于未使用状态的电子票据标识;接收区块链节点反馈的电子票据标识。
具体地,当开票方需开具发票时,可向区块链节点发送携带开票方标识电子票据标识领用请求。区块链节点在区块链网络中查找与开票方标识关联的、且处于未使用状态的电子票据标识,并向开票方设备反馈确定的与开票方标识关联的、且处于未使用状态的电子票据标识。
在一个实施例中,当区块链节点中与开票方标识关联的电子票据标识均标记为已使用状态时,上述电子票据生成方法还包括电子票据标识申领的步骤,该步骤具体包括:接收区块链节点反馈的反馈信息,反馈信息表示未查询到与开票方标识关联的、且处于未使用状态的电子票据标识;响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求;电子票据标识申领请求用于指示电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
其中,电子票据管理服务器是对电子票据的流转过程进行管理的服务器,比如税局端所提供的服务器。电子票据标识申领请求用于向电子票据管理服务器申请领取可用的电子票据标识。其中,开票方在向电子票据管理服务器申领电子票据标识之前,需在在电子票据流转管理服务器中注册成功才可。
电子票据申领条件,是用于按电子票据开具控制周期来限定电子票据申领的约束条件。电子票据开票控制周期是用于控制电子票据开票数据的时间长度,如一个或多个自然日、自然周、自然月、或者自然年等。控制电子票据开票数据,比如控制电子票据的开票数量或者单张电子票据的开票金额等。
具体地,当开票方设备向区块链节点发送电子票据标识领用请求后,区块链节点在区块链网络中未查找与开票方标识关联的、且处于未使用状态的电子票据标识时,区块链节点向开票方设备反馈相应的反馈信息。开票方设备响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求。电子票据管理服务器按照电子票据申领条件为开票方分配未使用的电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
上述实施例中,当区块链节点反馈未查询到与开票方标识关联的、且处于未使用状态的电子票据标识的反馈信息时,向电子票据管理服务器发起电子票据标识申领请求。这样,通过电子票据管理服务器分配未使用的电子票据标识并上链,避免了开票方人工申领纸质票据带来的耗时,从而提高了票据申领效率。而且,将电子票据标识与开票方标识关联上链,通过区块链保证了票据申领数据的安全性和可靠性。
S706,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
具体地,开票方设备可将开票方标识、电子票据标识、接收方标识、以及资源转移份额进行关联,按预设票据格式生成票据信息。
S708,将票据信息上传至区块链网络中的区块链节点;上传的票据信息用于指示区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块。
具体地,开票企业可将票据信息上传至区块链网络中的区块链节点。区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块。其中,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块的步骤可参考上述步骤S204-S206的具体实施方式。
在一个实施例中,在区块链网络中可存在与开票方设备对应的开票方区块链节点。在开票方设备意图将数据写入区块链网络中时,可直接通过对应的开票方区块链节点所提供的接口,将数据传输至开票方区块链节点,由该开票方区块链节点协同区块链节点中的其他区块链节点进行共识后,将数据写入数据区块。
在一个实施例中,可以理解,电子票据管理服务器首次将分配至开票方设备的电子票据标识上传至相应的区块链节点,该区块链节点协同其他的区块链节点达成共识后,将分配至开票方设备的电子票据标识写入数据区块。开票方设备对应的区块链节点根据开票方设备上传的票据信息生成电子票据,该区块链节点协同其他的区块链节点达成共识后,将生成的电子票据写入数据区块后,电子票据管理服务器对应的区块链节点即与开票方设备对应的区块链节点形成一条区块链。
需要说明的是,不同的开票方设备对应的区块链节点与电子票据管理服务器对应的区块链节点形成的是不同的区块链,不同的区块链之间可以独立运行,互不影响。
S710,接收区块链节点回传的电子票据开票查询码;电子票据开票查询码用于查询电子票据。
具体地,区块链节点向开票方标识对应的开票方设备反馈电子票据开票查询码,电子票据开票查询码用于查询电子票据。开票方设备在接收到电子票据开票查询码后,可将相应的电子票据开票查询码反馈至消费者。相应的,接收区块链节点回传的电子票据开票查询码的步骤可以参考上述步骤S208的具体实施方式。
上述电子票据生成方法,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
在一个实施例中,步骤S706具体包括:从区块链节点中查询与开票方标识对应的电子票据开具条件;按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
其中,电子票据开具条件,是用于按电子票据开具控制周期来限定电子票据开具的约束条件。电子票据开具条件,也可以称作电子票据开具智能合约。开票方设备在需要开具发票时,可从相应的区块链节点中查询与开票方标识对应的电子票据开具条件。按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
举例说明,电子票据开具条件包括单张电子票据的开票金额,比如,A企业(开票方)开具增值税电子票据的单张电子票据的开票金额最大为壹仟元。当资源转移份额为壹仟伍佰时,则需要两个未使用的电子票据标识。比如,开票方标识A、电子票据标识1、接收方标识、以及资源转移份额玖佰,关联生成一份票据信息;开票方标识A、电子票据标识2、接收方标识、以及资源转移份额陆佰,生成另一份票据信息。
上述实施例中,从区块链节点中查询与开票方标识对应的电子票据开具条件,按照查询到的电子票据开具条件,生成票据信息,保障了票据信息的准确性和合法性。
在一个具体的实施例中,参考图8,电子票据生成方法包括:
S802,获取接收方标识和资源转移份额。
S804,向区块链节点发送电子票据标识领用请求;电子票据标识领用请求携带开票方标识;电子票据标识领用请求用于指示区块链节点查询与开票方标识关联的、且处于未使用状态的电子票据标识。
S806,接收区块链节点反馈的电子票据标识。
S808,接收区块链节点反馈的反馈信息,反馈信息表示未查询到与开票方标识关联的、且处于未使用状态的电子票据标识。
S810,响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求;电子票据标识申领请求用于指示电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
S812,从区块链节点中查询与开票方标识对应的电子票据开具条件。
S814,按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
S816,将票据信息上传至区块链网络中的区块链节点;上传的票据信息用于指示区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块。
S818,接收区块链节点回传的电子票据开票查询码;电子票据开票查询码用于查询电子票据。
上述电子票据生成方法,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
图8为一个实施例中电子票据生成方法的流程示意图。应该理解的是,虽然图8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
参考图9,在一个具体的实施例中关于电子票据的数据处理系统的部署图。在具体的区块链电子发票应用场景中,参考图9,区块链网络中至少包括4个区块链节点来形成联盟链,分别为与税局服务器对应的区块链节点,与开票企业对应的区块链节点、与电子票据公用服务器对应的区块链节点以及与报销企业对应的区块链节点。通常情况下,各角色的设备与对应的区块链节点进行交互。其中,电子票据公用服务器用于替消费者保存已开具的区块链电子发票,电子票据公用服务器具体可以是微信服务器等。
税局服务器一方面通过反向代理服务向外提供访问接口(对税局终端的内部接口,以及对企业用户的外部接口)供各角色的设备进行访问,托管各角色的身份密钥,管理各角色的特征数据。另一方面通过同步工具实时从对应的区块链节点中的区块链网络模块中同步写入区块链网络(或共识完待写入)的数据,以对各角色的区块链电子发票相关数据进行查询与统计。
区块链网络中的各区块链节点一方面通过反向代理服务向外提供访问接口,供相应的设备进行访问(如,开票企业的设备访问开票企业对应的区块链节点等)。另一方面通过区块链电子发票应用平台接收对应设备通过反向代理服务发送的数据(如,开票企业的设备向开票企业对应的区块链节点上传数据,即通过反向代理服务提供的接口将数据传递至区块链电子发票应用平台等)。区块链电子发票应用平台再将数据传递至区块链网络模块。各个区块链节点的区块链网络模块共同构成共识网络,在共识网络中达成共识后,再将数据写入区块链网络模块。区块链节点中还包括缓存数据库,用于缓存各种数据,如从系统中心服务器获取的企业公钥等。
该部署图可还包括区块链网络模块系统中心服务器,保存各企业的企业标识与公钥的映射,与税局服务器相隔离,主要用于进行身份鉴权(如,限制只有税局才能发行发票,更改与企业相关的约束条件)。后续一些需要中心化的操作,统一放到这个系统中心服务器执行。
其中,反向代理服务具体可以是nginx。区块链电子发票应用平台实现了区块链电子发票的主要业务逻辑,并且对外暴露开发sdk(Software Development Kit,软件开发工具包)和api(Application Programming Interface,应用程序编程)接口,供第三方通过反向代理服务接入进行交互。区块链网络模块具体可基于腾讯底层区块链技术(trustSQL)实现。缓存区域具体可通过mysql数据库实现。可以理解,本实施例用于举例说明,不对具体实现中所采用的实现方式进行限定。
在具体的应用场景中,电子票据具体可以是区块链电子发票,电子票据管理服务器具体可以是税局服务器,开票方设备具体可以是电子票据开票方(电子票据报票方)对应的终端或者服务器,电子票据公用服务器具体可以是用于提供源自于区块链节点的电子票据的公共存储服务,比如,微信服务器。可以理解,开票企业既可以作为电子票据开票方开具电子票据,又可以作为电子票据报票方报销电子票据。
根据上述具体应用场景,举例说明电子票据生成方法的具体步骤。消费者在开票企业处进行了消费,开票企业可根据消费者消费的金额开具相应的发票。消费者提供发票抬头,也就是报销方标识给到开票企业。开票企业将开票方标识、区块链电子发票编号、接收方标识、以及消费金额关联上传到区块链网络中的区块链节点,区块链节点生成区块链电子发票(也可称作数字发票),并将区块链电子发票的电子票据开票查询码反馈给开票方企业,至此开票企业将开具的区块链电子发票或电子票据开票查询码给到消费者,完成此次开票。
可以理解的是,在区块链网络中,可存在与KA(key Account,关键客户)纳税企业对应的区块链节点,也可存在与第三方代理设备对应的区块链节点。第三方代理设备供中小型企业接入区块链网络。
下面通过两个具体应用场景来作具体说明:
业务场景一为停车场收费场景。
对于中小企业而言,可通过第三方代理设备开具区块链电子发票。如果纳税人未打通停车系统或者还是由岗亭收取现金等时,则可通过小票打印机打印开票二维码交于用户,用户通过扫描开票二维码提交信息以进行区块链电子发票的开具。参考图10,图10示出了一个实施例中区块链电子发票的流转界面示意图。用户可通过移动应用(比如微信)扫描开票二维码,进入步骤1:通过第三方代理设备提供的应用(比如微信开票小程序)进入开票界面,用户可在开票界面录入发票抬头等相关信息。进入步骤2:申请开票,第三方代理设备提供的应用将相应的信息通过第三方代理设备上传至区块链网络中的区块链节点中,以生成电子票据,并将相应的电子票据的明文信息反馈至用户。进入步骤3:用户可收到微信提示的“新发票提醒”。进入步骤4,用户可将新发票插入到微信卡包中。微信服务器替用户保存收到的区块链电子发票。
对于KA纳税企业,通过打通停车系统,用户可通过移动终端扫码提交抬头即可进行发票开具。参考图11,图11为另一个实施例中区块链电子发票的流转界面示意图。图11中步骤1-7具体展示用户通过移动应用(微信)完成支付并收取到开票企业开具的发票的完整过程。首先,步骤1,停车场所在的企业可出示付款码,用户可通过移动应用扫描付款码进入付款界面。然后进入步骤2,用户可在付款界面中绑定用户的车牌号、及发票抬头。接着进入步骤3,开票企业调用与用户车牌号相应的车辆的停车记录,生成相应金额的支付链接。步骤3.1,用户可查看相应的待支付的订单详情。步骤4,用户向商家支付相应的金额。支付完成后进入步骤5,用户可查看订单详情。开票企业可将订单详情中的发票信息上传至区块链网络中的区块链节点中,以生成电子票据,并将相应的电子票据的明文信息反馈至用户。进入步骤6,用户可收到微信提示的“新发票提醒”。进入步骤7,用户可将新发票插入到微信卡包中。微信服务器替用户保存收到的区块链电子发票。
业务场景二为餐饮收费场景。
对于KA纳税企业,通过打通自由订单系统,用户扫码提交抬头即可进行发票开具。参考图12,图12为又一个实施例中区块链电子发票的流转界面示意图。图12中步骤1-5具体展示用户通过移动应用(微信)完成支付并收取到开票企业开具的发票的完整过程。首先,步骤1,开票企业可在用户支付完后产生的订单票据中出示开票二维码,用户可通过移动应用扫描开票二维码进入开票界面。然后进入步骤2,用户可在开票界面中填写发票抬头及收票信息。接着进入步骤3,开票企业可将发票信息上传至区块链网络中的区块链节点中,以生成电子票据,并将相应的电子票据的明文信息反馈至用户。进入步骤4,用户可收到微信提示的“新发票提醒”。进入步骤5,用户可将新发票插入到微信卡包中。微信服务器替用户保存收到的区块链电子发票。
对于中小企业而言,可通过第三方代理设备开具区块链电子发票。第三方代理设备可提供标准服务,比如提供用于开票的应用程序,用户可登陆该应用程序填写发票信息。参考图13,图13示出了还一个实施例中区块链电子发票的流转界面示意图。进入步骤1:用户可通过移动应用(比如微信)扫描第三方代理设备提供的开票应用二维码以进入开票小程序。进入步骤2:用户可在开票应用提供的开票界面录入金额和商品类型。进入步骤3:用户可在开票应用提供的开票界面录入发票抬头等相关信息。进入步骤4:申请开票,第三方代理设备提供的应用将相应的信息发送至商户进行确认。进入步骤5和步骤6,商户审核区块链电子发票相关的信息。当审核通过后通过第三方代理设备将发票信息上传至区块链网络中的区块链节点中,以生成电子票据,并将相应的电子票据的明文信息反馈至用户。进入步骤7:用户可收到微信提示的“新发票提醒”。进入步骤8,用户可将新发票插入到微信卡包中。微信服务器替用户保存收到的区块链电子发票。
如图14所示,在一个实施例中,提供了一种电子票据生成装置1400,包括:接收模块1401、生成模块1402和反馈模块1403。
接收模块1401,用于接收开票请求;开票请求携带票据信息;票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。
生成模块1402,用于生成与票据信息对应的电子票据开票查询码。
生成模块1402还用于根据票据信息生成与电子票据开票查询码对应的电子票据,并将电子票据写入数据区块。
反馈模块1403,用于响应于开票请求,反馈电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,电子票据生成装置1400还包括确定模块1404。
接收模块1401还用于接收电子票据标识领用请求;电子票据标识领用请求携带开票方标识。
确定模块1404,用于确定区块链节点中与开票方标识关联的、且处于未使用状态的电子票据标识。
反馈模块1403还用于响应于电子票据标识领用请求,反馈确定的电子票据标识。
在一个实施例中,生成模块1402还用于根据票据信息生成票据哈希值;将票据哈希值发送至与开票方标识对应的开票方设备;发送的票据哈希值用于指示开票方设备对票据哈希值进行签名得到签名数据;接收开票方设备返回的签名数据;当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
在一个实施例中,电子票据生成装置1400还包括查询模块1405和验证模块1406。
查询模块1405,用于从区块链节点查询与开票方标识对应的电子票据开具条件。
验证模块1406,用于根据电子票据开具条件,验证票据信息的合法性。
生成模块1402还用于当签名数据通过验证、且票据信息通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
参考图15,在一个实施例中,电子票据生成装置1400还包括加密模块1407和获取模块1408。
生成模块1402还用于生成与票据信息对应的票据对称密钥。
加密模块1407,用于通过票据对称密钥加密票据信息,得到票据密文。
获取模块1408,用于获取与开票方标识对应的开票方公钥。
加密模块1407还用于通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。
生成模块1402还用于根据票据密文、第一票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,获取模块1408还用于获取与票据信息对应的消费者标识;查询模块还用于查找与消费者标识对应的消费者公钥;加密模块还用于通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文;生成模块还用于根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,电子票据为区块链电子发票;电子票据标识为区块链电子发票编号;开票方标识为企业标识。
上述电子票据生成装置,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
如图16所示,在一个实施例中,提供了一种电子票据生成装置1600,包括:获取模块1601、生成模块1602、上传模块1603和接收模块1604。
获取模块1601,用于获取接收方标识和资源转移份额。
获取模块1601还用于获取与当前的开票方标识关联的电子票据标识。
生成模块1602,用于根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
上传模块1603,用于将票据信息上传至区块链网络中的区块链节点;上传的票据信息用于指示区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块。
接收模块1604,用于接收区块链节点回传的电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,获取模块1601还用于向区块链节点发送电子票据标识领用请求;电子票据标识领用请求携带开票方标识;电子票据标识领用请求用于指示区块链节点查询与开票方标识关联的、且处于未使用状态的电子票据标识;接收区块链节点反馈的电子票据标识。
参考图17,在一个实施例中,电子票据生成装置1600还包括请求发起模块1605。
接收模块1604还用于接收区块链节点反馈的反馈信息,反馈信息表示未查询到与开票方标识关联的、且处于未使用状态的电子票据标识。
请求发起模块1605,用于响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求;电子票据标识申领请求用于指示电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
在一个实施例中,生成模块1602还用于从区块链节点中查询与开票方标识对应的电子票据开具条件;按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
上述电子票据生成装置,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
图18示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的开票方设备110。如图18所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现电子票据生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行电子票据生成方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
图19示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的区块链节点120。如图19所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器以及网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现电子票据生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行电子票据生成方法。
本领域技术人员可以理解,图18以及图19中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的电子票据生成装置可以实现为一种计算机程序的形式,计算机程序可在如图18或者图19所示的计算机设备上运行。计算机设备的存储器中可存储组成该电子票据生成装置的各个程序模块,比如,图14所示的接收模块、生成模块和反馈模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的电子票据生成方法中的步骤。还比如,图16所示的获取模块、生成模块、上传模块和接收模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的电子票据生成方法中的步骤。
例如,图18所示的计算机设备可以通过如图12所示的电子票据生成装置中的接收模块执行步骤S202。计算机设备可通过生成模块执行步骤S204和S206。计算机设备可通过反馈模块执行步骤S208。
例如,图19所示的计算机设备可以通过如图16所示的电子票据生成装置中的获取模块执行步骤S702和S704。计算机设备可通过生成模块执行步骤S706。计算机设备可通过上传模块执行步骤S708。计算机设备可通过接收模块执行步骤S710。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:接收开票请求;开票请求携带票据信息;票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;生成与票据信息对应的电子票据开票查询码;根据票据信息生成与电子票据开票查询码对应的电子票据,并将电子票据写入数据区块;响应于开票请求,反馈电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,计算机程序使得处理器还执行以下步骤:接收电子票据标识领用请求;电子票据标识领用请求携带开票方标识;确定区块链节点中与开票方标识关联的、且处于未使用状态的电子票据标识;响应于电子票据标识领用请求,反馈确定的电子票据标识。
在一个实施例中,计算机程序使得处理器在执行生成与票据信息对应的电子票据开票查询码的步骤时具体执行以下步骤:根据票据信息生成票据哈希值;将票据哈希值发送至与开票方标识对应的开票方设备;发送的票据哈希值用于指示开票方设备对票据哈希值进行签名得到签名数据;接收开票方设备返回的签名数据;当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
在一个实施例中,计算机程序使得处理器还执行以下步骤:从区块链节点查询与开票方标识对应的电子票据开具条件;根据电子票据开具条件,验证票据信息的合法性。计算机程序使得处理器在执行当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码的步骤时具体执行以下步骤:当签名数据通过验证、且票据信息通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
在一个实施例中,计算机程序使得处理器还执行以下步骤:生成与票据信息对应的票据对称密钥;通过票据对称密钥加密票据信息,得到票据密文;获取与开票方标识对应的开票方公钥;通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。计算机程序使得处理器在执行根据票据信息生成与电子票据开票查询码对应的电子票据的步骤时具体执行以下步骤:根据票据密文、第一票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,计算机程序使得处理器还执行以下步骤:获取与票据信息对应的消费者标识;查找与消费者标识对应的消费者公钥;通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。计算机程序使得处理器在执行根据票据信息生成与电子票据开票查询码对应的电子票据的步骤时具体执行以下步骤:根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,电子票据为区块链电子发票;电子票据标识为区块链电子发票编号;开票方标识为企业标识。
上述计算机设备,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取接收方标识和资源转移份额;获取与当前的开票方标识关联的电子票据标识;根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息;将票据信息上传至区块链网络中的区块链节点;上传的票据信息用于指示区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块;接收区块链节点回传的电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,计算机程序使得处理器在执行获取与当前的开票方标识关联的电子票据标识的步骤时具体执行以下步骤:向区块链节点发送电子票据标识领用请求;电子票据标识领用请求携带开票方标识;电子票据标识领用请求用于指示区块链节点查询与开票方标识关联的、且处于未使用状态的电子票据标识;接收区块链节点反馈的电子票据标识。
在一个实施例中,计算机程序使得处理器还执行以下步骤:接收区块链节点反馈的反馈信息,反馈信息表示未查询到与开票方标识关联的、且处于未使用状态的电子票据标识;响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求;电子票据标识申领请求用于指示电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
在一个实施例中,计算机程序使得处理器在执行根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息的步骤时具体执行以下步骤:从区块链节点中查询与开票方标识对应的电子票据开具条件;按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
上述计算机设备,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:接收开票请求;开票请求携带票据信息;票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;生成与票据信息对应的电子票据开票查询码;根据票据信息生成与电子票据开票查询码对应的电子票据,并将电子票据写入数据区块;响应于开票请求,反馈电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,计算机程序使得处理器还执行以下步骤:接收电子票据标识领用请求;电子票据标识领用请求携带开票方标识;确定区块链节点中与开票方标识关联的、且处于未使用状态的电子票据标识;响应于电子票据标识领用请求,反馈确定的电子票据标识。
在一个实施例中,计算机程序使得处理器在执行生成与票据信息对应的电子票据开票查询码的步骤时具体执行以下步骤:根据票据信息生成票据哈希值;将票据哈希值发送至与开票方标识对应的开票方设备;发送的票据哈希值用于指示开票方设备对票据哈希值进行签名得到签名数据;接收开票方设备返回的签名数据;当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
在一个实施例中,计算机程序使得处理器还执行以下步骤:从区块链节点查询与开票方标识对应的电子票据开具条件;根据电子票据开具条件,验证票据信息的合法性。计算机程序使得处理器在执行当签名数据通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码的步骤时具体执行以下步骤:当签名数据通过验证、且票据信息通过验证后,根据票据哈希值和签名数据生成电子票据开票查询码。
在一个实施例中,计算机程序使得处理器还执行以下步骤:生成与票据信息对应的票据对称密钥;通过票据对称密钥加密票据信息,得到票据密文;获取与开票方标识对应的开票方公钥;通过开票方公钥加密票据对称密钥,得到第一票据对称密钥密文。计算机程序使得处理器在执行根据票据信息生成与电子票据开票查询码对应的电子票据的步骤时具体执行以下步骤:根据票据密文、第一票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,计算机程序使得处理器还执行以下步骤:获取与票据信息对应的消费者标识;查找与消费者标识对应的消费者公钥;通过消费者公钥加密票据对称密钥,得到第二票据对称密钥密文。计算机程序使得处理器在执行根据票据信息生成与电子票据开票查询码对应的电子票据的步骤时具体执行以下步骤:根据票据密文、第一票据对称密钥密文、第二票据对称密钥密文、以及电子票据开票查询码生成电子票据。
在一个实施例中,电子票据为区块链电子发票;电子票据标识为区块链电子发票编号;开票方标识为企业标识。
上述计算机可读存储介质,通过区块链网络中的区块链节点接收携带有票据信息的开票请求,其中,票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额。区块链节点根据票据信息生成对应的电子票据开票查询码,再根据票据信息生成与电子票据开票查询码对应的电子票据,同时将电子票据写入数据区块。将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:获取接收方标识和资源转移份额;获取与当前的开票方标识关联的电子票据标识;根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息;将票据信息上传至区块链网络中的区块链节点;上传的票据信息用于指示区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块;接收区块链节点回传的电子票据开票查询码;电子票据开票查询码用于查询电子票据。
在一个实施例中,计算机程序使得处理器在执行获取与当前的开票方标识关联的电子票据标识的步骤时具体执行以下步骤:向区块链节点发送电子票据标识领用请求;电子票据标识领用请求携带开票方标识;电子票据标识领用请求用于指示区块链节点查询与开票方标识关联的、且处于未使用状态的电子票据标识;接收区块链节点反馈的电子票据标识。
在一个实施例中,计算机程序使得处理器还执行以下步骤:接收区块链节点反馈的反馈信息,反馈信息表示未查询到与开票方标识关联的、且处于未使用状态的电子票据标识;响应于反馈信息,向电子票据管理服务器发起电子票据标识申领请求;电子票据标识申领请求用于指示电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
在一个实施例中,计算机程序使得处理器在执行根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息的步骤时具体执行以下步骤:从区块链节点中查询与开票方标识对应的电子票据开具条件;按照查询到的电子票据开具条件,根据开票方标识、电子票据标识、接收方标识、以及资源转移份额,生成票据信息。
上述计算机可读存储介质,根据开票方标识、与当前的开票方标识关联的电子票据标识、接收方标识、以及资源转移份额,生成票据信息。再将票据信息上传至区块链网络中的区块链节点,区块链节点生成与票据信息对应的电子票据开票查询码,并根据票据信息生成与电子票据开票查询码对应的电子票据,将电子票据写入数据区块,最后再将用于查询电子票据的电子票据开票查询码回传,以在区块链节点上完成发票的开具。这样,企业或个人仅需将票据信息上传至区块链网络中的区块链节点,通过区块链节点完成发票的开具,企业或个人无需购买专用税控设备,也无需开具纸档发票,大大降低了发票开具的成本,且提高了发票开具的效率。并且,区块链节点将电子票据写入数据区块,可以保障电子票据的安全性和可靠性,进而保障了企业或个人接收的电子票据开票查询码的真实性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (20)

1.一种电子票据生成方法,应用于区块链网络中的区块链节点,所述方法包括:
接收开票请求;所述开票请求携带票据信息;所述票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;
从所述区块链节点查询与所述开票方标识对应的电子票据开具条件;所述电子票据开具条件用于按电子票据开具控制周期来限定电子票据开具的约束条件,所述电子票据开具控制周期是用于控制电子票据开票数据的时间长度;
根据所述电子票据开具条件,验证所述票据信息的合法性;
根据所述票据信息生成票据哈希值,将所述票据哈希值发送至与所述开票方标识对应的开票方设备;发送的票据哈希值用于指示所述开票方设备对所述票据哈希值进行签名得到签名数据;
接收所述开票方设备返回的所述签名数据;
当所述签名数据通过验证、且所述票据信息通过验证后,根据所述票据哈希值和所述签名数据生成电子票据开票查询码;
根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,并将所述电子票据写入数据区块;
响应于所述开票请求,反馈所述电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收电子票据标识领用请求;所述电子票据标识领用请求携带开票方标识;
确定区块链节点中与所述开票方标识关联的、且处于未使用状态的电子票据标识;
响应于所述电子票据标识领用请求,反馈确定的所述电子票据标识。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
生成与所述票据信息对应的票据对称密钥;
通过所述票据对称密钥加密所述票据信息,得到票据密文;
获取与所述开票方标识对应的开票方公钥;
通过所述开票方公钥加密所述票据对称密钥,得到第一票据对称密钥密文;
所述根据所述票据信息生成与所述电子票据开票查询码对应的电子票据包括:
根据所述票据密文、所述第一票据对称密钥密文、以及所述电子票据开票查询码生成电子票据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取与所述票据信息对应的消费者标识;
查找与所述消费者标识对应的消费者公钥;
通过所述消费者公钥加密所述票据对称密钥,得到第二票据对称密钥密文;
所述根据所述票据信息生成与所述电子票据开票查询码对应的电子票据包括:
根据所述票据密文、所述第一票据对称密钥密文、所述第二票据对称密钥密文、以及所述电子票据开票查询码生成电子票据。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述电子票据为区块链电子发票;所述电子票据标识为区块链电子发票编号;所述开票方标识为企业标识。
6.一种电子票据生成方法,包括:
获取接收方标识和资源转移份额;
获取与当前的开票方标识关联的电子票据标识;
根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息;
将所述票据信息上传至区块链网络中的区块链节点;上传的所述票据信息用于指示所述区块链节点查询与所述开票方标识对应的电子票据开具条件,根据所述电子票据开具条件,验证所述票据信息的合法性,并且根据所述票据信息生成票据哈希值,将所述票据哈希值发送至与所述开票方标识对应的开票方设备,并接收所述开票方设备对所述票据哈希值进行签名得到签名数据;当所述签名数据通过验证、且所述票据信息通过验证后,根据所述票据哈希值和所述签名数据生成电子票据开票查询码,并根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,将所述电子票据写入数据区块;其中,所述电子票据开具条件用于按电子票据开具控制周期来限定电子票据开具的约束条件,所述电子票据开具控制周期是用于控制电子票据开票数据的时间长度;
接收所述区块链节点回传的电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。
7.根据权利要求6所述的方法,其特征在于,所述获取与当前的开票方标识关联的电子票据标识包括:
向所述区块链节点发送电子票据标识领用请求;所述电子票据标识领用请求携带开票方标识;所述电子票据标识领用请求用于指示所述区块链节点查询与所述开票方标识关联的、且处于未使用状态的电子票据标识;
接收所述区块链节点反馈的所述电子票据标识。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述区块链节点反馈的反馈信息,所述反馈信息表示未查询到与所述开票方标识关联的、且处于未使用状态的电子票据标识;
响应于所述反馈信息,向电子票据管理服务器发起电子票据标识申领请求;所述电子票据标识申领请求用于指示所述电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
9.根据权利要求6至8中任一项所述的方法,其特征在于,所述根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息,包括:
从所述区块链节点中查询与开票方标识对应的电子票据开具条件;
按照查询到的所述电子票据开具条件,根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息。
10.一种电子票据生成装置,包括:
接收模块,用于接收开票请求;所述开票请求携带票据信息;所述票据信息包括开票方标识、电子票据标识、接收方标识和资源转移份额;
查询模块,用于从区块链网络中的区块链节点查询与所述开票方标识对应的电子票据开具条件;所述电子票据开具条件用于按电子票据开具控制周期来限定电子票据开具的约束条件,所述电子票据开具控制周期是用于控制电子票据开票数据的时间长度;
验证模块,用于根据所述电子票据开具条件,验证所述票据信息的合法性;
生成模块,用于根据所述票据信息生成票据哈希值,将所述票据哈希值发送至与所述开票方标识对应的开票方设备;发送的票据哈希值用于指示所述开票方设备对所述票据哈希值进行签名得到签名数据;接收所述开票方设备返回的所述签名数据;当所述签名数据通过验证、且所述票据信息通过验证后,根据所述票据哈希值和所述签名数据生成电子票据开票查询码;
所述生成模块还用于根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,并将所述电子票据写入数据区块;
反馈模块,用于响应于所述开票请求,反馈所述电子票据开票查询码;所述电子票据开票查询码用于查询所述电子票据。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括确定模块:
所述接收模块,还用于接收电子票据标识领用请求;所述电子票据标识领用请求携带开票方标识;
确定模块,用于确定区块链节点中与所述开票方标识关联的、且处于未使用状态的电子票据标识;
所述反馈模块,还用于响应于所述电子票据标识领用请求,反馈确定的所述电子票据标识。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括加密模块和获取模块:
所述生成模块,还用于生成与所述票据信息对应的票据对称密钥;
所述加密模块,用于通过所述票据对称密钥加密所述票据信息,得到票据密文;
所述获取模块,用于获取与所述开票方标识对应的开票方公钥;
所述加密模块,用于通过所述开票方公钥加密所述票据对称密钥,得到第一票据对称密钥密文;
所述生成模块,还用于根据所述票据密文、所述第一票据对称密钥密文、以及所述电子票据开票查询码生成电子票据。
13.根据权利要求12所述的装置,其特征在于,所述获取模块,还用于获取与所述票据信息对应的消费者标识;
所述查询模块,还用于查找与所述消费者标识对应的消费者公钥;
所述加密模块,还用于通过所述消费者公钥加密所述票据对称密钥,得到第二票据对称密钥密文;
所述生成模块,还用于根据所述票据密文、所述第一票据对称密钥密文、所述第二票据对称密钥密文、以及所述电子票据开票查询码生成电子票据。
14.根据权利要求10至13中任一项所述的装置,其特征在于,所述电子票据为区块链电子发票;所述电子票据标识为区块链电子发票编号;所述开票方标识为企业标识。
15.一种电子票据生成装置,包括:
获取模块,用于获取接收方标识和资源转移份额;
所述获取模块还用于获取与当前的开票方标识关联的电子票据标识;
生成模块,用于根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息;
上传模块,用于将所述票据信息上传至区块链节点;上传的所述票据信息用于指示所述区块链节点查询与所述开票方标识对应的电子票据开具条件,根据所述电子票据开具条件,验证所述票据信息的合法性,并且根据所述票据信息生成票据哈希值,将所述票据哈希值发送至与所述开票方标识对应的开票方设备,并接收所述开票方设备对所述票据哈希值进行签名得到签名数据;当所述签名数据通过验证、且所述票据信息通过验证后,根据所述票据哈希值和所述签名数据生成电子票据开票查询码,并根据所述票据信息生成与所述电子票据开票查询码对应的电子票据,将所述电子票据写入数据区块;其中,所述电子票据开具条件用于按电子票据开具控制周期来限定电子票据开具的约束条件,所述电子票据开具控制周期是用于控制电子票据开票数据的时间长度;
接收模块,用于接收所述区块链节点回传的电子票据开票查询码。
16.根据权利要求15所述的装置,其特征在于,所述获取模块,还用于向所述区块链节点发送电子票据标识领用请求;所述电子票据标识领用请求携带开票方标识;所述电子票据标识领用请求用于指示所述区块链节点查询与所述开票方标识关联的、且处于未使用状态的电子票据标识;接收所述区块链节点反馈的所述电子票据标识。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括请求发起模块,其中:
所述接收模块,还用于接收所述区块链节点反馈的反馈信息,所述反馈信息表示未查询到与所述开票方标识关联的、且处于未使用状态的电子票据标识;
请求发起模块,用于响应于所述反馈信息,向电子票据管理服务器发起电子票据标识申领请求;所述电子票据标识申领请求用于指示所述电子票据管理服务器按照电子票据申领条件分配电子票据标识,并将分配的电子票据标识和开票方标识关联上传至区块链节点。
18.根据权利要求15至17中任一项所述的装置,其特征在于,所述生成模块,还用于从所述区块链节点中查询与开票方标识对应的电子票据开具条件;按照查询到的所述电子票据开具条件,根据所述开票方标识、所述电子票据标识、所述接收方标识、以及所述资源转移份额,生成票据信息。
19.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至9中任一项所述方法的步骤。
20.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至9中任一项所述方法的步骤。
CN201810936830.3A 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备 Active CN109034924B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910682701.0A CN110428292B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备
CN201810936830.3A CN109034924B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备
CN201910689619.0A CN110400188B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810936830.3A CN109034924B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201910682701.0A Division CN110428292B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备
CN201910689619.0A Division CN110400188B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN109034924A CN109034924A (zh) 2018-12-18
CN109034924B true CN109034924B (zh) 2023-04-07

Family

ID=64631814

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201910689619.0A Active CN110400188B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备
CN201810936830.3A Active CN109034924B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备
CN201910682701.0A Active CN110428292B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910689619.0A Active CN110400188B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910682701.0A Active CN110428292B (zh) 2018-08-16 2018-08-16 电子票据生成方法、装置、存储介质和计算机设备

Country Status (1)

Country Link
CN (3) CN110400188B (zh)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109801117A (zh) * 2018-12-20 2019-05-24 航天信息股份有限公司 一种用于对电子票据进行赋码的方法及系统
CN110019326A (zh) * 2018-12-25 2019-07-16 阿里巴巴集团控股有限公司 基于区块链的发票真伪验证方法及装置和电子设备
CN109889343B (zh) * 2018-12-29 2023-04-14 航天信息股份有限公司 电子发票流转控制方法、装置及系统
CN109872201A (zh) * 2019-02-28 2019-06-11 浪潮软件集团有限公司 一种支持多开票端的发票管理方法、系统及发票系统
CN109949111B (zh) * 2019-03-06 2023-12-08 深圳市智税链科技有限公司 电子票据标识分配方法、电子票据生成方法、装置及系统
CN110189184B (zh) * 2019-04-26 2024-04-26 深圳市智税链科技有限公司 一种电子发票存储方法和装置
CN110084655B (zh) * 2019-05-05 2023-06-23 腾讯科技(深圳)有限公司 电子票据处理方法、装置、计算机设备及计算机存储介质
CN110136276A (zh) * 2019-05-16 2019-08-16 江苏因为信息科技有限公司 一种停车税控系统
CN110245943B (zh) * 2019-05-20 2021-04-23 创新先进技术有限公司 基于判断条件的收据存储方法和节点
CN110378755B (zh) * 2019-06-21 2023-02-07 深圳壹账通智能科技有限公司 电子发票生成方法、装置、计算机设备和存储介质
CN110517049A (zh) * 2019-07-25 2019-11-29 初建刚 一种基于二维码及区块链的票据防伪识别方法与装置
CN110458631B (zh) * 2019-07-31 2020-11-10 创新先进技术有限公司 基于区块链的票据号码分配方法、装置及电子设备
US11049115B2 (en) * 2019-07-31 2021-06-29 Advanced New Technologies Co., Ltd. Blockchain-based bill write-off method, apparatus, electronic device, and storage medium
CN110471986B (zh) * 2019-07-31 2020-08-04 阿里巴巴集团控股有限公司 基于区块链的票据实名领取方法、装置及电子设备
US10956903B2 (en) 2019-07-31 2021-03-23 Advanced New Technologies Co., Ltd. Obtaining a blockchain-based, real-name, electronic bill
CN110599276B (zh) * 2019-08-08 2021-07-06 腾讯科技(深圳)有限公司 票据报销方法、装置和设备及计算机存储介质
CN110457957B (zh) * 2019-08-22 2024-04-12 腾讯科技(深圳)有限公司 电子票据的信息处理方法、装置、电子设备及介质
CN110599269A (zh) * 2019-09-16 2019-12-20 腾讯科技(深圳)有限公司 票据生成方法、装置、计算机可读存储介质和计算机设备
CN110599267A (zh) * 2019-09-16 2019-12-20 腾讯科技(深圳)有限公司 电子发票开票方法、装置、计算机可读存储介质和计算机设备
CN110599137A (zh) * 2019-09-16 2019-12-20 腾讯科技(深圳)有限公司 电子票据数据处理方法、装置和计算机设备
CN110597834A (zh) * 2019-09-16 2019-12-20 腾讯科技(深圳)有限公司 电子票据数据处理方法、装置和计算机设备
CN110633963B (zh) * 2019-09-16 2023-12-12 腾讯科技(深圳)有限公司 电子票据处理方法、装置、计算机可读存储介质和设备
CN110599266B (zh) * 2019-09-16 2021-07-06 腾讯科技(深圳)有限公司 电子票据数据处理方法、装置、计算机设备和存储介质
CN110619511A (zh) * 2019-09-18 2019-12-27 腾讯科技(深圳)有限公司 电子票据处理方法、装置、可读存储介质和计算机设备
CN110599273B (zh) * 2019-09-20 2021-07-06 腾讯科技(深圳)有限公司 数据处理方法、装置、节点设备及存储介质
CN110598457B (zh) * 2019-09-24 2023-11-24 腾讯科技(深圳)有限公司 一种票据处理方法、装置、处理设备及计算机存储介质
CN110738536A (zh) * 2019-10-14 2020-01-31 腾讯科技(深圳)有限公司 一种基于区块链网络的数据处理方法、装置及存储介质
CN110909383A (zh) * 2019-11-15 2020-03-24 深圳市网心科技有限公司 一种电子发票管理方法、装置及电子设备和存储介质
CN111026789B (zh) * 2019-11-29 2020-12-15 蚂蚁区块链科技(上海)有限公司 基于区块链的电子票据查询方法及装置、电子设备
CN111027086B (zh) * 2019-12-16 2021-04-20 支付宝(杭州)信息技术有限公司 一种私有数据保护方法和系统
CN111274506A (zh) * 2019-12-18 2020-06-12 航天信息股份有限公司 一种基于二维码的发票开具系统
CN111062766B (zh) * 2019-12-20 2024-02-09 中国银联股份有限公司 一种基于区块链的电子发票的开具方法及装置
CN113127559B (zh) * 2019-12-31 2024-02-09 航天信息股份有限公司 一种财税区块链的账本建立方法、装置及计算机设备
CN111310202A (zh) * 2020-01-20 2020-06-19 腾讯科技(深圳)有限公司 用于区块链网络的信息处理方法、区块链节点设备及介质
CN111292144B (zh) * 2020-01-22 2021-12-21 腾讯科技(深圳)有限公司 一种基于区块链网络的票据处理方法、装置及存储介质
CN111260421B (zh) * 2020-02-11 2023-07-18 中国银联股份有限公司 一种基于区块链的电子发票管控方法及装置
CN111369307A (zh) * 2020-02-27 2020-07-03 腾讯科技(深圳)有限公司 电子发票管理方法及装置
CN111476617B (zh) * 2020-04-03 2021-06-25 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机设备及介质
CN111274831B (zh) * 2020-04-24 2024-03-29 杭州趣链科技有限公司 基于rfid的信息流转系统及方法、设备和存储介质
CN111598635B (zh) * 2020-05-18 2021-09-28 腾讯科技(深圳)有限公司 票据信息处理方法及装置、设备、可读存储介质
CN111770081B (zh) * 2020-06-28 2021-11-05 国网江苏省电力有限公司信息通信分公司 基于角色认证的大数据机密文件访问方法
CN111914033A (zh) * 2020-08-17 2020-11-10 上海联恬信息技术有限公司 一种电子票据出票方法、装置、设备及存储介质
CN112488777B (zh) * 2020-10-31 2024-01-16 远光软件股份有限公司 一种票据处理的方法及相关装置
CN112132588B (zh) * 2020-11-26 2021-06-15 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、路由设备及存储介质
CN113031883A (zh) * 2021-02-26 2021-06-25 广东核电合营有限公司 标牌数据打印方法、装置、计算机设备和存储介质
CN112801797A (zh) * 2021-03-30 2021-05-14 支付宝(杭州)信息技术有限公司 使用链下可信设备进行票据数据处理的方法和装置
CN113469758B (zh) * 2021-06-11 2024-03-22 深圳前海星际同辉科技有限公司 区块链与税务系统的开票方法、装置、设备和存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104767613B (zh) * 2014-01-02 2018-02-13 腾讯科技(深圳)有限公司 签名验证方法、装置及系统
CN107767192B (zh) * 2016-08-19 2021-12-07 方正国际软件(北京)有限公司 一种电子票据的验证方法、装置及系统
CN106412037A (zh) * 2016-09-19 2017-02-15 中国银联股份有限公司 基于区块链结构的安全性电子文件处理系统及方法
CN106355488A (zh) * 2016-09-28 2017-01-25 深圳市喜悦智慧数据有限公司 一种基于征信的税控方法及系统
CN106530021A (zh) * 2016-10-31 2017-03-22 青岛瑞宏科技有限公司 一种电子发票开票系统装置
CN106780033A (zh) * 2016-12-16 2017-05-31 杭州云象网络技术有限公司 一种基于联盟链的数字票据交易系统构建方法
WO2018112945A1 (zh) * 2016-12-23 2018-06-28 深圳前海达闼云端智能科技有限公司 查询电子票的状态信息的方法、装置及区块链节点
CN108256929A (zh) * 2016-12-28 2018-07-06 航天信息股份有限公司 一种基于二维码的电子发票开具方法及系统
CN106952094B (zh) * 2017-03-10 2018-09-04 腾讯科技(深圳)有限公司 电子票据管理方法及装置
CN106952124A (zh) * 2017-03-16 2017-07-14 北京牛链科技有限公司 基于分布式记账的电子发票管理系统和方法
CN107528877B (zh) * 2017-06-09 2020-07-28 中国银联股份有限公司 基于区块链结构的安全性电子文件处理系统及方法
CN107369008A (zh) * 2017-07-17 2017-11-21 北京京东金融科技控股有限公司 用于提高票据交易安全性的管理方法、装置及系统
CN108305106A (zh) * 2018-01-31 2018-07-20 复旦大学 一种基于区块链的电子发票登记方法
CN108364203A (zh) * 2018-02-07 2018-08-03 深圳壹账通智能科技有限公司 电子发票生成方法、系统、计算机设备和存储介质
CN108288222A (zh) * 2018-03-05 2018-07-17 数字乾元科技有限公司 基于区块链的财税处理系统及方法

Also Published As

Publication number Publication date
CN110400188B (zh) 2021-08-13
CN110400188A (zh) 2019-11-01
CN110428292A (zh) 2019-11-08
CN109034924A (zh) 2018-12-18
CN110428292B (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
CN109034924B (zh) 电子票据生成方法、装置、存储介质和计算机设备
CN110428293B (zh) 关于电子票据的数据处理方法、装置、存储介质和设备
CN109165943B (zh) 关于电子票据的数据处理方法、装置、存储介质和设备
CN109255084B (zh) 电子票据查询方法、装置、存储介质和计算机设备
CN108961030B (zh) 关于电子票据的数据处理方法、装置、系统、介质和设备
EP3607728B1 (en) Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain
CN109191272B (zh) 关于电子票据的数据处理方法、装置、存储介质和设备
CN109087078B (zh) 关于电子票据的数据处理方法、装置、存储介质和设备
CN110599266B (zh) 电子票据数据处理方法、装置、计算机设备和存储介质
CN110378755B (zh) 电子发票生成方法、装置、计算机设备和存储介质
CN110599137A (zh) 电子票据数据处理方法、装置和计算机设备
US20150356523A1 (en) Decentralized identity verification systems and methods
US20190139039A1 (en) Electronic payment method and electronic device using id-based public key cryptography
CN110633963A (zh) 电子票据处理方法、装置、计算机可读存储介质和设备
CN111160998B (zh) 基于区块链的点评数据处理方法、装置及点评系统
CN111597562B (zh) 基于区块链的链上数据验证方法、装置、设备和存储介质
CN109948370A (zh) 一种基于区块链的业务处理方法、装置和电子设备
CN115456613A (zh) 数字藏品交易方法及设备
CN110349322B (zh) 一种发票数据验证方法、装置及设备
CA3173536A1 (en) Cryptosystem, systems, methods and applications for zero-knowledge anonymously-individualized marketing and loyalty management based on end-to-end encrypted transfer of statements like receipts or script
CN110599268A (zh) 电子票据生成方法、装置、计算机设备和存储介质
CN110599270B (zh) 电子票据生成方法、装置和计算机设备
CN111915300A (zh) 一种基于区块链完成数字签收的方法、系统及存储介质
CN110599347A (zh) 票据处理方法、装置、计算机可读存储介质和计算机设备
CN110599270A (zh) 电子票据生成方法、装置和计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20190121

Address after: 518000 Tencent Building 2401, Maling Community Science and Technology Center, Yuehai Street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: SHENZHEN ZHISHUILIAN TECHNOLOGY Co.,Ltd.

Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors

Applicant before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant