CN110599270B - 电子票据生成方法、装置和计算机设备 - Google Patents
电子票据生成方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN110599270B CN110599270B CN201910872716.3A CN201910872716A CN110599270B CN 110599270 B CN110599270 B CN 110599270B CN 201910872716 A CN201910872716 A CN 201910872716A CN 110599270 B CN110599270 B CN 110599270B
- Authority
- CN
- China
- Prior art keywords
- signature
- bill
- signed
- string
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012795 verification Methods 0.000 claims abstract description 23
- 230000001960 triggered effect Effects 0.000 claims abstract description 9
- 238000004590 computer program Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/04—Billing or invoicing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Finance (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请涉及一种电子票据生成方法、装置和计算机设备,其中的方法可应用于区块链中的区块链节点,包括:接收代理服务器发送的开票请求,所述开票请求携带票据信息;所述开票请求是由开票方设备触发的;根据所述票据信息生成待签名串,并将所述待签名串发送至所述开票方设备;向所述开票方设备发送所述票据信息;接收第一签名,所述第一签名为所述开票方设备在对所述票据信息的核对无误时,根据所述待签名串生成的;对所述第一签名进行校验,当校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。本申请提供的方案可以降低发票开具的成本。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种电子票据生成方法、装置和计算机设备。
背景技术
发票是企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,为消费者提供的消费凭证。企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,应当开具发票并依法根据发票进行纳税。
传统技术中,企业或者个人在开具电子发票时,通常需要购买专用的税控设备,通过专用的税控设备才能进行开票,税控设备的购买、维护和使用都会产生成本费用,导致开票成本高昂。
发明内容
基于此,有必要针对传统的发票开具成本高昂的技术问题的技术问题,提供一种电子票据生成方法、装置和计算机设备。
一种电子票据生成方法,应用于区块链中的区块链节点,所述方法包括:
接收代理服务器发送的开票请求,所述开票请求携带票据信息;所述开票请求是由开票方设备触发的;
根据所述票据信息生成待签名串,并将所述待签名串发送至所述开票方设备;
向所述开票方设备发送所述票据信息;
接收第一签名,所述第一签名为所述开票方设备在对所述票据信息的核对无误时,根据所述待签名串生成的;
对所述第一签名进行校验,当校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
一种电子票据生成装置,所述装置包括:
开票请求接收模块,用于接收代理服务器发送的开票请求,所述开票请求携带票据信息;所述开票请求是由开票方设备触发的;
待签名串生成模块,用于根据所述票据信息生成待签名串,并将所述待签名串发送至所述开票方设备;
票据信息发送模块,用于向所述开票方设备发送所述票据信息;
第一签名接收模块,用于接收第一签名,所述第一签名为所述开票方设备在对所述票据信息的核对无误时,根据所述待签名串生成的;
第一签名校验模块,用于对所述第一签名进行校验,当校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
上述电子票据生成方法、装置和计算机设备,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是开票方设备触发代理服务器进行发送的,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。进一步,由于向开票方设备发送了待签名串,在接收到根据待签名串生成的第一签名时,通过对第一签名进行校验可以确认开票方设备对开票信息进行了核对,从而可以有效地避免代理服务商对票据信息进行篡改,保证了电子票据的安全性和可靠性。
一种电子票据生成方法,所述方法包括:
触发代理服务器向区块链节点发送开票请求,所述开票请求携带票据信息;所述开票请求用于指示所述区块链节点根据所述票据信息生成待签名串;
接收所述待签名串;
接收所述区块链节点发送的所述票据信息;
在对所述票据信息的核对无误时,根据所述待签名串生成第一签名;
向所述区块链节点发送所述第一签名,以使得所述区块链节点对所述第一签名进行校验,并在校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
一种电子票据生成装置,所述装置包括:
开票请求触发模块,用于触发代理服务器向区块链节点发送开票请求,所述开票请求携带票据信息;所述开票请求用于指示所述区块链节点根据所述票据信息生成待签名串;
待签名串接收模块,用于接收所述待签名串;
票据信息接收模块,用于接收所述区块链节点发送的所述票据信息;
第一签名生成模块,用于在对所述票据信息的核对无误时,根据所述待签名串生成第一签名;
第一签名发送模块,用于向所述区块链节点发送所述第一签名,以使得所述区块链节点对所述第一签名进行校验,并在校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述电子票据生成方法的步骤。
上述电子票据生成方法、装置和计算机设备,上述电子票据生成方法,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是可以通过触发代理服务器进行发送,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。同时,由于开票方设备可以对票据信息进行核对并对待签名串进行签名,区块链节点只有在校验签名成功时,才会将电子发票写入区块,可以有效地避免代理服务商对票据信息进行篡改,从而最大程度地保证了电子票据的安全性和可靠性。
附图说明
图1为一个实施例中电子票据生成方法的应用环境图;
图2为一个实施例中电子票据生成方法的流程示意图;
图3为另一个实施例中电子票据生成方法的流程示意图;
图4为又一个实施例中电子票据生成方法的流程示意图;
图5为又一个实施例中电子票据生成方法的流程示意图;
图6为一个实施例中电子票据生成方法的时序图;
图7为又一个实施例中电子票据生成装置的结构框图;
图8为另一个实施例中电子票据生成装置的结构框图;
图9为另一个实施例中电子票据生成装置的结构框图;
图10为另一个实施例中电子票据生成装置的结构框图;
图11为一个实施例中计算机设备的结构框图;
图12为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中电子票据生成方法的应用环境图。参照图1,该电子票据生成方法应用于电子票据生成系统。该电子票据生成系统包括开票方设备110、代理服务器120和区块链,开票方设备110可以是服务器或者终端,区块链中包括多个区块链节点,例如代理服务器对应的区块链节点130,代理服务器120为代理开具区块链电子票据的代理服务商对应的服务器。终端具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑和笔记本电脑等中的至少一种。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。开票方设备110与代理服务器120通过网络连接,代理服务器120与区块链节点130通过网络进行连接。
如图2所示,在一个实施例中,提供了一种电子票据生成方法。本实施例主要以该方法应用于上述图1中的区块链节点130来举例说明。参照图2,该电子票据生成方法具体包括如下步骤:
S202,接收代理服务器发送的开票请求,开票请求携带票据信息;开票请求是由开票方设备触发的。
其中,票据信息是用来生成电子票据的信息。在一个实施例中,票据信息可以包括开票方标识、电子票据标识、接收方标识和资源转移份额。电子票据标识用于唯一标识一张电子票据,具体可以包括电子票据的票据代码和票据号码。电子票据是电子化存储的票据,比如可存储于存储介质或计算机设备中。开票方标识是与开票方设备对应的标识,用于唯一标识开票方。开票方具体可以是销售企业或个人,开票方在向消费者出售商品、提供服务或者从事其他经营活动时,需为消费者提供消费凭证,也就是电子票据。开票方标识具体可以是销售方名称、销售方的纳税人识别号或销售方的开户账号等。
接收方标识用于唯一标识电子票据接收方。接收方具体可以是消费个人或消费企业。当消费个人或消费企业在销售企业进行消费后,销售企业可为消费个人或消费企业提供消费凭证,也就是电子票据。接收方标识具体可以是购买方名称、购买方的纳税人识别号或购买方的开户账号等。资源转移份额是消费者消费的具体资源份额。资源份额具体可以是消费金额。
区块链节点是区块链中的一个数据处理节点。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
具体地,当个人或企业在完成消费后,可提供接收方标识和资源转移份额至开票方设备。开票方设备可以根据开票方标识、电子票据标识、接收方标识和资源转移份额,共同生成票据信息。开票方设备可向代理服务器发送携带票据信息的开票委托请求,该开票委托请求可以触发代理服务器生成开票请求。代理服务器在接收到开票委托请求后,解析该开票委托请求得到其中的票据信息,生成携带该票据信息的开票请求,并发送至区块链节点。区块链节点接收该开票请求。可以理解的是,开票请求还可以携带代理服务商标识,代理服务商标识用于唯一标识代理服务器对应的代理服务商。
S204,根据票据信息生成待签名串,并将待签名串发送至开票方设备。
其中,待签名串是指需要开票方设备进行签名的数字串,待签名串可以由区块链节点通过隔离见证算法对票据信息进行计算得到。隔离见证算法的作用是可以提前算好待签名串,不用即时放在区块链上,而不采用隔离见证算法,待签名串需要放在区块链上。在一个实施例中,待签名串可以是根据票据信息进行哈希计算得到的。常用的哈希算法比如,MD5(Message Digest Algorithm,消息摘要算法第五版)、SHA1(Secure Hash Algorithm,安全哈希算法)和SHA2等,本实施例在此不做具体限定。
区块链节点在根据票据信息生成待签名串后,需要将待签名串发送至开票方设备。在一个实施例中,区块链节点可以根据票据信息对应的开票方标识直接将待签名串发送至开票方设备。在另一个实施例中,由于开票请求携带了代理服务器商标识,区块链节点可以根据代理服务商标识将待签名串返回至代理服务器,由代理服务器发送至开票方设备。
S206,向开票方设备发送票据信息。
具体地,由于区块链节点接收到的开票请求是由代理服务器发送的,为了防止代理服务器篡改票据信息,区块链节点在生成电子票据并写入区块链之前,可以先将代理服务器发送的开票请求所携带的票据信息发送至对应的开票方设备,使得开票方可以对票据信息进行核对。
在一个实施例中,区块链节点可以根据票据信息对应的开票方标识主动向开票方设备发送票据信息。在另一个实施例中,为避免在开票方不方便接收票据信息时对开票方进行不必要的打扰,区块链节点可以在接收到开票方设备发送的票据查询请求后,根据票据查询请求向开票方设备反馈对应的票据信息。
S208,接收第一签名,第一签名为开票方设备在对票据信息的核对无误时,根据待签名串生成的。
具体地,开票方设备在接收到待签名串以及票据信息后,进入对票据信息的核对流程,在对票据信息的核对无误时,通过开票方设备对应的私钥对待签名串进行签名,得到签名数据。该签名数据包括待签名串及其对应的第一签名。在进行签名时,开票方设备首先通过哈希函数对待签名串进行计算得到对应的摘要,然后通过开票方设备对应的私钥对得到的摘要进行加密,得到第一签名。
在一个实施例中,开票方设备在进入对票据信息的核对流程时,可以在界面对票据信息进行显示,并显示对应的确认按钮,开票方在对票据信息进行人工核对后,点击确认按钮,开票方设备在接收在对确认按钮的点击操作后,判定对票据信息的核对无误。
在另一个实施例中,开票方设备在向代理服务器发送携带票据信息的开票委托请求时,可以将其中的票据信息进行缓存。开票方设备在进入对票据信息的核对流程时,根据接收到的票据信息对应的电子票据标识查找之前缓存的票据信息,将二者进行比对,当比对一致时,判定对票据信息的核对无误。本实施例中,由于开票方设备可以自动核对票据信息,节省了人工核对的时间,提高了核对效率。
进一步,开票方设备将签名数据发送至区块链节点,区块链节点对签名数据进行接收。在一个实施例中,开票方设备可以直接通过网络将签名数据发送至对应的区块链节点。在另一个实施例中,开票方设备可以将签名数据发送至代理服务器,由代理服务器将签名数据再发送至对应的区块链节点。
S210,对第一签名进行校验,当校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
其中,电子票据是电子化存储的票据。数据区块是区块链节点中用来存储数据的存储模块。
具体地,区块链节点在接收到包含第一签名的签名数据时,通过使用与开票方设备同样的哈希函数对签名数据中的待签名串进行计算,得到对应的第一摘要,然后使用开票方标识对应的公钥对第一签名进行解密,得到第二摘要,将第一摘要与第二摘要进行比对,若相同,则判定对第一签名校验成功,在校验成功时,区块链节点生成与票据信息对应的电子票据,并将电子票据写入数据区块。写入成功后,区块链节点可向开票方设备发送开票成功的反馈信息。其中,表示开票成功的反馈信息可以是表示开票成功的反馈代码,如0000或111等。
在一个实施例中,区块链节点可以生成一个电子票据查询码,将票据信息与查询码进行关联,以生成电子票据,并在将电子票据成功写入区块链后,将电子票据查询码反馈至开票方设备,后续开票方设备可通过该电子票据查询码查询电子票据。其中,电子票据查询码可以是区块链节点根据票据信息进行哈希运算得到的。
在一个实施例中,区块链节点在生成电子票据后,将电子票据发送至所在区块链网络中的其他区块链节点,这些区块链节点在达成共识后,区块链节点将电子票据写入数据区块。
上述电子票据生成方法,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是开票方设备触发代理服务器进行发送的,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。进一步,由于向开票方设备发送了待签名串,在接收到根据待签名串生成的第一签名时,通过对第一签名进行校验可以确认开票方设备对开票信息进行了核对,从而可以有效地避免代理服务商对票据信息进行篡改,保证了电子票据的安全性和可靠性。
在一个实施例中,在S206之前,该方法还包括:接收开票方设备发送的票据信息查询请求,票据信息查询请求携带票据获取信息;S206包括:响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息。
其中,票据获取信息用于获取对应的票据信息。本实施例中,开票方设备在接收到待签名串后,可以向区块链节点发起携带票据获取信息的票据信息查询请求,区块链节点可以响应该票据信息查询请求,根据票据获取信息获取到由代理服务器发送的开票方设备对应的票据信息,然后发送至开票方设备。由于票据信息是响应于开票方设备的请求发送的,可以更好地满足开票方的需求,避免对开票方设备造成不必要的打扰。
在一个实施例中,在根据票据信息生成待签名串之后,该方法还包括:根据待签名串生成第二签名;将待签名串发送至开票方设备,包括:将待签名串及第二签名发送至代理服务器,以使得代理服务器将待签名串及第二签名发送至开票方设备。
其中,第二签名用于确定开票方设备接收到的待签名串是由区块链节点生成的,防止待签名串在发送的过程中被篡改。本实施例中,区块链节点在生成待签名串后,对待签名串进行签名,得到签名数据,该签名数据中包括待签名串及对应的第二签名。具体地,在对待签名串进行签名时,区块链节点可以通过哈希函数对待签名串进行哈希运算得到待签名串对应的摘要,然后采用自己的私钥对该摘要进行加密,得到第二签名。
本实施例中,还包括对第二签名进行校验的步骤。在一个实施例中,对第二签名进行校验的步骤可以是开票方设备执行的,开票方设备可以存储区块链节点的公钥,在对待签名串进行签名得到第一签名之前可以使用区块链节点的公钥先对第二签名进行校验,当校验成功时,才对待签名串进行签名。在另一个实施例中,对第二签名进行校验的步骤可以是区块链节点执行的,开票方设备在对待签名串进行签名之前可以将第二签名发送至区块链节点进行校验。
本实施例中,由于根据待签名串生成了第二签名,该第二签名可以防止待签名串在发送的过程中被篡改,保证了开票方设备在对待签名串签名得到的第一签名为与开票方所需要开具电子票据的票据信息对应的正确的签名,从而保证了生成的电子票据的准确性。
在一个实施例中,如图3所示,提供了一种电子票据生成方法,包括以下步骤:
S302,接收代理服务器发送的开票请求,开票请求携带票据信息;开票请求是由开票方设备触发的。
S304,根据票据信息生成待签名串,根据待签名串生成第二签名,将待签名串及第二签名发送至代理服务器,以使得代理服务器将待签名串及第二签名发送至开票方设备。
S306,接收开票方设备发送的票据信息查询请求,票据信息查询请求携带票据获取信息及第二签名。
可以理解的是,由于第二签名是对待签名串进行签名得到,因此,票据信息查询请求中必然也携带待签名串。
S308,对第二签名进行校验。
具体地,区块链节点可以采用与对待签名串进行签名时相同的哈希函数对票据信息查询请求携带的待签名串进行哈希运算,得到待签名串对应的摘要,然后采用自己的私钥对票据信息查询请求携带的第二签名进行解密,得到第二签名对应的摘要,比较这两个摘要,如果相同,则说明对第二签名校验成功;否则,说明对第二签名校验失败。
S310,当对第二签名校验成功时,响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息。
具体地,当对第二签名校验成功时,说明待签名串在发送的过程中并没有被篡改,此时,代理服务商可以对票据信息查询请求进行响应,以向开票方设备反馈开票方设备所需要查询的票据信息。可以理解的是,当对第二签名校验失败时,区块链节点不会对票据信息查询请求进行响应,此时,区块链节点可以直接向开票方设备返回查询失败的反馈信息以及查询失败的原因,以告知开票方设备待签名串被篡改。
S312,接收第一签名,第一签名为开票方设备在对票据信息的核对无误时,根据待签名串生成的。
S314,对第一签名进行校验,当校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
本实施例中,区块链节点只有在对第二签名校验成功时,才向开票方设备发送票据信息,防止因为待签名串被篡改导致开票方设备进行了错误的签名,从而保证了生成的电子票据的准确性。同时,由于第二签名是区块链节点校验的,开票方设备不需要保存区块链节点的公钥,节省了存储空间。
在一个实施例中,S204之后,该方法还包括:存储待签名串与票据信息之间的关联关系;票据获取信息包括待签名串;响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息,包括:根据关联关系及待签名串查询票据信息,将查询到的票据信息发送至开票方设备。
具体地,区块链节点在根据票据信息生成待签名串后,存储待签名串与票据信息之间的关联关系,此时,待签名串可以作为票据信息的索引。这样,区块链节点在接收到携带该待签名的票据信息查询请求时,就可以以该待签名串为索引查询到与之关联的票据信息,并发送至开票方设备。
本实施例中,由于事先存储了待签名串与票据信息之间的关联关系,区块链节点可以以待签名串为索引查询到对应的票据信息,从而可以快速的向开票方设备反馈票据信息。
在一个实施例中,S204之后,该方法还包括:对票据信息进行加密;将待签名串发送至开票方设备,包括:将加密后的票据信息及待签名串发送至开票方设备;票据获取信息包括加密后的票据信息;响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息,包括:对加密后的票据信息进行解密,将解密得到的票据信息发送至开票方设备。
具体地,区块链节点在生成待签名串后,可以对票据信息进行加密,然后将加密后的票据信息及待签名串发送至开票方设备,开票方设备在查询票据信息时,可以在票据信息查询请求中携带该加密后的票据信息,这样,区块链节点就可以通过对该加密后的票据信息进行解密来获取开票方设备所需要查询的票据信息,并发送至开票方设备。
在一个实施例中,区块链节点可以将票据信息进行序列化以实现对票据信息的加密,在对加密后的票据信息进行解密时,区块链节点可以对序列化后的票据信息进行反序列化以获取开票方所需要的票据信息。
在另一个实施例中,区块链节点可以采用自身的公钥对票据信息进行加密,得到加密的票据信息,在解密时,区块链节点可以采用自身的私钥对票据信息进行解密以获取开票方所需要的票据信息。
本实施例中,区块链节点在向开票方设备发送待签名串时,可以同时发送加密的票据信息,当开票方设备需要查询票据信息时,只需要对该加密的票据信息进行解密即可,由于不需要事先存储票据信息与待签名串之间的关联关系,可以节省区块链节点的存储空间。
在一个具体的实施例中,电子票据为可以区块链电子发票;电子票据标识为区块链电子发票编号;开票方标识为企业标识。
在一个具体的实施例中,如图4所示,电子票据生成方法包括以下步骤:
S402,接收代理服务器发送的开票请求,开票请求携带票据信息;开票请求是由开票方设备触发的。
S404,根据票据信息生成待签名串,根据待签名串生成第二签名,存储第二签名与待签名串之间的关联关系。
S406,将待签名串及第二签名发送至代理服务器,以使得代理服务器将待签名串及第二签名发送至开票方设备。
S408,接收开票方设备发送的票据信息查询请求,票据信息查询请求携带待签名串及第二签名。
S410,对第二签名进行校验。
S412,当对第二签名校验成功时,响应于票据信息查询请求,根据待签名串向开票方设备发送票据信息。
S414,接收第一签名,第一签名为开票方设备在对票据信息的核对无误时,根据待签名串生成的。
S416,对第一签名进行校验,当校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
上述电子票据生成方法,由于可以在接收到代理服务器发送开票请求后,为开票方设备生成电子票据并写入数据区块,开票方设备不需要直接接入区块链网络,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。同时,由于生成了待签名串,通过校验开票方设备根据待签名串生成的第一签名可以确认开票方设备对票据信息的核对无误,并且,由于在向开票方设备发送待签名串时,根据待签名串生成了第二签名,通过校验第二签名可以确认待签名串未并被篡改,从而最大程度地保证了电子票据的安全性和可靠性。
在一个实施例中,如图5所示,提供了一种电子票据生成方法。本实施例主要以该方法应用于上述图1中的开票方设备110来举例说明。参照图5,该电子票据生成方法具体包括如下步骤:
S502,触发代理服务器向区块链节点发送开票请求,开票请求携带票据信息;开票请求用于指示区块链节点根据票据信息生成待签名串。
S504,接收待签名串。
在一个实施例中,开票方设备接收的待签名串是由区块链节点直接发送的。在另一个实施例中,区块链节点可以直接将待签名串返回至代理服务器,由代理服务器将待签名串发送至开票方设备。
S506,接收区块链节点发送的票据信息。
在一个实施例中,开票方设备接收的票据信息可以是区块链节点主动发送的。在另一个实施例中,开票方设备可以向区块链节点发送票据信息查询请求,区块链节点可以响应该票据信息查询请求以向开票方设备发送票据信息。
S508,在对票据信息的核对无误时,根据待签名串生成第一签名。
S510,向区块链节点发送第一签名,以使得区块链节点对第一签名进行校验,并在校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
上述电子票据生成方法,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是可以通过触发代理服务器进行发送,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。同时,由于开票方设备可以对票据信息进行核对并对待签名串进行签名,区块链节点只有在校验签名成功时,才会将电子发票写入区块,可以有效地避免代理服务商对票据信息进行篡改,从而最大程度地保证了电子票据的安全性和可靠性。
在一个实施例中,在接收区块链节点发送的票据信息之前,该方法还包括:向区块链节点发送携带票据获取信息的票据信息查询请求,票据信息查询请求用于指示区块链节点根据票据获取信息返回票据信息。
本实施例中,由于票据信息是响应于开票方设备的请求发送的,可以更好地满足开票方的需求,避免对开票方设备造成不必要的打扰。
在一个实施例中,开票请求还用于指示区块链节点根据待签名串生成第二签名,将待签名串及第二签名发送至代理服务器;接收待签名串,包括:接收代理服务器发送的待签名串及第二签名;票据信息查询请求还携带第二签名;票据信息查询请求还用于指示区块链节点对第二签名进行校验,当对第二签名校验成功时,根据票据获取信息返回票据信息。
本实施例中,区块链节点只有在对第二签名校验成功时,才向开票方设备发送票据信息,防止因为待签名串被篡改导致开票方设备进行了错误的签名,从而保证了生成的电子票据的准确性。同时,由于第二签名是区块链节点校验的,开票方设备不需要保存区块链节点的公钥,节省了存储空间。
在一个实施例中,票据获取信息包括待签名串;开票请求还用于指示区块链节点存储待签名串与票据信息之间的关联关系;票据信息查询请求还用于指示区块链节点根据关联关系及待签名串查询票据信息,返回查询到的票据信息。
本实施例中,由于事先存储了待签名串与票据信息之间的关联关系,区块链节点可以以待签名串为索引查询到对应的票据信息,从而可以快速的向开票方设备反馈票据信息。
在一个实施例中,开票请求还用于指示区块链节点对票据信息进行加密,将加密后的票据信息发送至开票方设备;票据信息查询请求还用于指示区块链节点对加密后的票据信息进行解密,返回解密得到的票据信息。
本实施例中,区块链节点在向开票方设备发送待签名串时,可以同时发送加密的票据信息,当开票方设备需要查询票据信息时,只需要对该加密的票据信息进行解密即可,由于不需要事先存储票据信息与待签名串之间的关联关系,可以节省区块链节点的存储空间。
在一个实施例中,如图6所示,提供了一种电子票据生成方法。本实施例中,以该方法应用于图1中的电子票据生成系统来举例说明。参照图6,该电子票据生成方法包括:
S602,开票方设备向代理服务器发送票据信息,以触发代理服务器生成携带票据信息的开票请求。
S604,代理服务器向区块链节点发送携带票据信息的开票请求。
S606,区块链节点根据票据信息生成待签名串及第二签名,将待签名串及第二签名至代理服务器。
S608,代理服务器向开票方设备发送待签名串及第二签名。
S610,开票方设备向区块链节点发送携带待签名串及第二签名的票据信息查询请求,以查询票据信息。
S612,区块链节点校验第二签名。
S614,当校验成功时,区块链节点获取票据信息,并返回至开票方设备。
S616,开票方设备核对票据信息。
S618,当对票据信息的核对无误时,开票方设备对待签名串进行签名,得到第一签名。
S620,开票方设备将第一签名及待签名串发送至代理服务器。
S622,代理服务器将第一签名及待签名串发送至区块链节点。
S624,区块链节点校验第一签名,校验成功后,根据票据信息生成电子票据,将电子票据写入数据区块。
S626,区块链节点向代理服务器发送开票成功的反馈信息。
S628,代理服务器向开票方设备发送开票成功的反馈信息。
本实施例中,开票方设备可以通过触发代理服务器向区块链节点发送开票请求,区块链节点可以在接收到开票请求后为开票方设备生成电子票据并写入数据区块,需要开票的个人或企业不需要直接接入区块链网络,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。同时,由于区块链节点生成了待签名串,通过校验开票方设备根据待签名串生成的第一签名可以确认开票方设备对票据信息进行了核对,并且,由于区块链节点在向开票方设备发送待签名串时,根据待签名串生成了第二签名,通过校验第二签名可以确认待签名串未并被篡改,从而最大程度地保证了电子票据的安全性和可靠性。
应该理解的是,虽然图2-图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种电子票据生成装置700,该装置包括:
开票请求接收模块702,用于接收代理服务器发送的开票请求,开票请求携带票据信息;开票请求是由开票方设备触发的;
待签名串生成模块704,用于根据票据信息生成待签名串,并将待签名串发送至开票方设备;
票据信息发送模块706,用于向开票方设备发送票据信息;
第一签名接收模块708,用于接收第一签名,第一签名为开票方设备在对票据信息的核对无误时,根据待签名串生成的;
第一签名校验模块710,用于对第一签名进行校验,当校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
上述电子票据生成装置,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是开票方设备触发代理服务器进行发送的,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。进一步,由于向开票方设备发送了待签名串,在接收到根据待签名串生成的第一签名时,通过对第一签名进行校验可以确认开票方设备对开票信息进行了核对,从而可以有效地避免代理服务商对票据信息进行篡改,保证了电子票据的安全性和可靠性。
在一个实施例中,如图8所示,该装置还包括:查询请求接收模块712,用于接收开票方设备发送的票据信息查询请求,票据信息查询请求携带票据获取信息;票据信息发送模块还用于响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息。
在一个实施例中,待签名串生成模块还用于根据待签名串生成第二签名,将待签名串及第二签名发送至代理服务器,以使得代理服务器将待签名串及第二签名发送至开票方设备。
在一个实施例中,票据信息查询请求还携带第二签名;如图8所示,该装置还包括:第二签名校验模块714,用于对第二签名进行校验;票据信息发送模块还用于当对第二签名校验成功时,响应于票据信息查询请求,根据票据获取信息向开票方设备发送票据信息。
在一个实施例中,待签名串生成模块还用于存储待签名串与票据信息之间的关联关系;票据获取信息包括待签名串;票据信息发送模块还用于根据关联关系及待签名串查询票据信息,将查询到的票据信息发送至开票方设备。
在一个实施例中,待签名串生成模块还用于对票据信息进行加密,将加密后的票据信息及待签名串发送至开票方设备;票据获取信息包括加密后的票据信息;票据信息发送模块还用于对加密后的票据信息进行解密,将解密得到的票据信息发送至开票方设备。
在一个实施例中,如图9所示,提供了一种电子票据生成装置900,该装置包括:
开票请求触发模块902,用于触发代理服务器向区块链节点发送开票请求,开票请求携带票据信息;开票请求用于指示区块链节点根据票据信息生成待签名串;
待签名串接收模块904,用于接收待签名串;
票据信息接收模块906,用于接收区块链节点发送的票据信息;
第一签名生成模块908,用于在对票据信息的核对无误时,根据待签名串生成第一签名;
第一签名发送模块910,用于向区块链节点发送第一签名,以使得区块链节点对第一签名进行校验,并在校验成功时,生成与票据信息对应的电子票据,并将电子票据写入数据区块。
上述电子票据生成装置,上述电子票据生成方法,由于在区块链节点上完成电子票据的开具,企业或者个人无需购买专用税控设备,也无需开具纸质发票,大大降低了发票开具的成本,且提高了发票开具的效率。同时,由于电子票据写入了数据区块中,避免了生成的电子票据被篡改。并且,由于开票请求是可以通过触发代理服务器进行发送,企业或个人不需要直接接入区块链,只需要委托代理服务商即可通过区块链开具电子发票,大大节省了接入区块链电子发票生态所需的成本。同时,由于开票方设备可以对票据信息进行核对并对待签名串进行签名,区块链节点只有在校验签名成功时,才会将电子发票写入区块,可以有效地避免代理服务商对票据信息进行篡改,从而最大程度地保证了电子票据的安全性和可靠性。
在一个实施例中,如图10所示,该装置还包括:查询请求发送模块912,用于向区块链节点发送携带票据获取信息的票据信息查询请求,票据信息查询请求用于指示区块链节点根据票据获取信息返回票据信息。
在一个实施例中,开票请求还用于指示区块链节点根据待签名串生成第二签名,将待签名串及第二签名发送至代理服务器;待签名串接收模块还用于接收代理服务器发送的待签名串及第二签名;票据信息查询请求还携带第二签名;票据信息查询请求还用于指示区块链节点对第二签名进行校验,当对第二签名校验成功时,根据票据获取信息返回票据信息。
图11示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的区块链节点130。如图11所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器以及网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现电子票据生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行电子票据生成方法。
图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的开票方设备110。如图12所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现电子票据生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行电子票据生成方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图11或12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的电子票据生成装置可以实现为一种计算机程序的形式,计算机程序可在如图11或12所示的计算机设备上运行。计算机设备的存储器中可存储组成该电子票据生成装置的各个程序模块,比如,图7所示的开票请求接收模块、待签名串生成模块、票据信息发送模块、第一签名接收模块和第一签名校验模块。还比如图9所示的开票请求触发模块、待签名串接收模块、票据信息接收模块、第一签名生成模块和第一签名发送模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的电子票据生成方法中的步骤。
例如,图11所示的计算机设备可以通过如图7所示的电子票据生成装置中的开票请求接收模块执行S202。计算机设备可通过待签名串生成模块执行S204。计算机设备可通过票据信息发送模块执行S206。计算机设备可通过第一签名接收模块执行S208。计算机设备可通过第一签名校验模块执行S210。
例如,图12所示的计算机设备可以通过如图9所示的电子票据生成装置中的开票请求触发模块执行S502。计算机设备可通过待签名串接收模块执行S504。计算机设备可通过票据信息接收模块执行S506。计算机设备可通过第一签名生成模块执行S508。计算机设备可通过第一签名发送模块执行S510。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述区块链节点对应的电子票据生成方法的步骤或者开票方设备对应的电子票据生成方法的步骤。此处电子票据生成方法的步骤可以是上述各个实施例的电子票据生成方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述区块链节点对应的电子票据生成方法的步骤或者开票方设备对应的电子票据生成方法的步骤。此处电子票据生成方法的步骤可以是上述各个实施例的电子票据生成方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (14)
1.一种电子票据生成方法,应用于区块链中的区块链节点,所述方法包括:
接收代理服务器发送的开票请求,所述开票请求携带票据信息;所述开票请求是由开票方设备触发的;
根据所述票据信息生成待签名串;所述待签名串是指需要所述开票方设备进行签名的数字串;
对所述待签名串进行签名获得第二签名,将所述待签名串及所述第二签名返回至所述代理服务器,以使得所述代理服务器将所述待签名串及所述第二签名发送至所述开票方设备;
接收所述开票方设备发送的票据信息查询请求,所述票据信息查询请求携带所述第二签名;
对所述第二签名进行校验,当对所述第二签名校验成功时,向所述开票方设备发送所述票据信息;
接收第一签名,所述第一签名为所述开票方设备在对所述票据信息的核对无误时,对所述待签名串进行签名获得的;
对所述第一签名进行校验,当校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
2.根据权利要求1所述的方法,其特征在于,所述票据信息查询请求还携带票据获取信息;
所述向所述开票方设备发送所述票据信息,包括:
根据所述票据获取信息向所述开票方设备发送所述票据信息。
3.根据权利要求2所述的方法,其特征在于,在所述根据所述票据信息生成待签名串之后,还包括:
存储所述待签名串与所述票据信息之间的关联关系;
所述票据获取信息包括所述待签名串;所述根据所述票据获取信息向所述开票方设备发送所述票据信息,包括:
根据所述关联关系及所述待签名串查询所述票据信息,将查询到的票据信息发送至所述开票方设备。
4.根据权利要求2所述的方法,其特征在于,在所述根据所述票据信息生成待签名串之后,还包括:
对所述票据信息进行加密;
所述将所述待签名串及所述第二签名返回至所述代理服务器,包括:
将所述加密后的票据信息、所述第二签名及所述待签名串返回至所述代理服务器,以使得所述代理服务器将所述加密后的票据信息、所述第二签名及所述待签名串发送至所述开票方设备;
所述票据获取信息包括所述加密后的票据信息;所述根据所述票据获取信息向所述开票方设备发送所述票据信息,包括:
对所述加密后的票据信息进行解密,根据所述票据获取信息将解密得到的票据信息发送至所述开票方设备。
5.一种电子票据生成方法,应用于开票方设备,所述方法包括:
触发代理服务器向区块链节点发送开票请求,所述开票请求携带票据信息;所述开票请求用于指示所述区块链节点根据所述票据信息生成待签名串,对所述待签名串进行签名获得第二签名,将所述待签名串及所述第二签名返回至所述代理服务器,以使得所述代理服务器将所述待签名串及所述第二签名发送至所述开票方设备;接收所述待签名串及所述第二签名;
向所述区块链节点发送票据信息查询请求,所述票据信息查询请求携带所述第二签名,所述票据信息查询请求用于指示所述区块链节点对所述第二签名进行校验,当对所述第二签名校验成功时,向所述开票方设备发送所述票据信息;
接收所述区块链节点发送的所述票据信息;
在对所述票据信息的核对无误时,对所述待签名串进行签名获得第一签名;
向所述区块链节点发送所述第一签名,以使得所述区块链节点对所述第一签名进行校验,并在校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
6.根据权利要求5所述的方法,其特征在于,票据信息查询请求还携带票据获取信息,所述票据信息查询请求用于指示所述区块链节点根据所述票据获取信息返回所述票据信息。
7.一种电子票据生成装置,其特征在于,所述装置包括:
开票请求接收模块,用于接收代理服务器发送的开票请求,所述开票请求携带票据信息;所述开票请求是由开票方设备触发的;
待签名串生成模块,用于根据所述票据信息生成待签名串,对所述待签名串进行签名获得第二签名,将所述待签名串及所述第二签名返回至所述代理服务器,以使得所述代理服务器将所述待签名串及所述第二签名发送至所述开票方设备;所述待签名串是指需要所述开票方设备进行签名的数字串;
查询请求接收模块,用于接收所述开票方设备发送的票据信息查询请求,所述票据信息查询请求携带所述第二签名;
第二签名校验模块,用于对所述第二签名进行校验;
票据信息发送模块,用于当对所述第二签名校验成功时,向所述开票方设备发送所述票据信息;
第一签名接收模块,用于接收第一签名,所述第一签名为所述开票方设备在对所述票据信息的核对无误时,对所述待签名串进行签名获得的;
第一签名校验模块,用于对所述第一签名进行校验,当校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
8.根据权利要求7所述的装置,其特征在于,所述票据信息查询请求还携带票据获取信息;所述票据信息发送模块,还用于根据所述票据获取信息向所述开票方设备发送所述票据信息。
9.根据权利要求8所述的装置,其特征在于,所述票据获取信息包括所述待签名串;所述待签名串生成模块还用于存储所述待签名串与所述票据信息之间的关联关系;所述票据信息发送模块,还用于根据所述关联关系及所述待签名串查询所述票据信息,将查询到的票据信息发送至所述开票方设备。
10.根据权利要求8所述的装置,其特征在于,所述待签名串生成模块还用于:对所述票据信息进行加密;将所述加密后的票据信息、所述第二签名及所述待签名串返回至所述代理服务器,以使得所述代理服务器将所述加密后的票据信息、所述第二签名及所述待签名串发送至所述开票方设备;所述票据获取信息包括所述加密后的票据信息;所述票据信息发送模块,还用于:对所述加密后的票据信息进行解密,根据所述票据获取信息将解密得到的票据信息发送至所述开票方设备。
11.一种电子票据生成装置,其特征在于,所述装置包括:
开票请求触发模块,用于触发代理服务器向区块链节点发送开票请求,所述开票请求携带票据信息;所述开票请求用于指示所述区块链节点根据所述票据信息生成待签名串,对所述待签名串进行签名获得第二签名,将所述待签名串及所述第二签名返回至所述代理服务器,以使得所述代理服务器将所述待签名串及所述第二签名发送至开票方设备;
待签名串接收模块,用于接收所述待签名串及所述第二签名;
查询请求发送模块,向所述区块链节点发送票据信息查询请求,所述票据信息查询请求携带所述第二签名,所述票据信息查询请求用于指示所述区块链节点对所述第二签名进行校验,当对所述第二签名校验成功时,向所述开票方设备发送所述票据信息;
票据信息接收模块,用于接收所述区块链节点发送的所述票据信息;
第一签名生成模块,用于在对所述票据信息的核对无误时,对所述待签名串进行签名获得第一签名;
第一签名发送模块,用于向所述区块链节点发送所述第一签名,以使得所述区块链节点对所述第一签名进行校验,并在校验成功时,生成与所述票据信息对应的电子票据,并将所述电子票据写入数据区块。
12.根据权利要求11所述的装置,其特征在于,票据信息查询请求还携带票据获取信息,所述票据信息查询请求用于指示所述区块链节点根据所述票据获取信息返回所述票据信息。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至4或者5至6中任一项所述方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4或者5至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910872716.3A CN110599270B (zh) | 2019-09-16 | 2019-09-16 | 电子票据生成方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910872716.3A CN110599270B (zh) | 2019-09-16 | 2019-09-16 | 电子票据生成方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110599270A CN110599270A (zh) | 2019-12-20 |
CN110599270B true CN110599270B (zh) | 2024-05-10 |
Family
ID=68859913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910872716.3A Active CN110599270B (zh) | 2019-09-16 | 2019-09-16 | 电子票据生成方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110599270B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325586B (zh) * | 2020-01-22 | 2022-02-11 | 腾讯科技(深圳)有限公司 | 基于区块链网络的票据代开方法、装置、服务器及介质 |
CN111598635B (zh) * | 2020-05-18 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 票据信息处理方法及装置、设备、可读存储介质 |
CN112149077B (zh) * | 2020-10-12 | 2022-03-25 | 杭州云链趣链数字科技有限公司 | 基于区块链技术的供应链票据方法、系统和计算机设备 |
CN113570350A (zh) * | 2021-06-11 | 2021-10-29 | 交通银行股份有限公司 | 一种基于区块链的票据数字化交互系统及其方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961030A (zh) * | 2018-08-15 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 关于电子票据的数据处理方法、装置、系统、介质和设备 |
CN109034924A (zh) * | 2018-08-16 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 电子票据生成方法、装置、存储介质和计算机设备 |
CN109145629A (zh) * | 2018-09-12 | 2019-01-04 | 方欣科技有限公司 | 一种基于电子票据结构化数据报文传输与存储技术 |
CN110223127A (zh) * | 2019-05-20 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 票据数据回退方法和系统 |
CN110224833A (zh) * | 2019-05-20 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 票据数据处理方法和系统 |
-
2019
- 2019-09-16 CN CN201910872716.3A patent/CN110599270B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108961030A (zh) * | 2018-08-15 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 关于电子票据的数据处理方法、装置、系统、介质和设备 |
CN109034924A (zh) * | 2018-08-16 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 电子票据生成方法、装置、存储介质和计算机设备 |
CN109145629A (zh) * | 2018-09-12 | 2019-01-04 | 方欣科技有限公司 | 一种基于电子票据结构化数据报文传输与存储技术 |
CN110223127A (zh) * | 2019-05-20 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 票据数据回退方法和系统 |
CN110224833A (zh) * | 2019-05-20 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 票据数据处理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110599270A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109034924B (zh) | 电子票据生成方法、装置、存储介质和计算机设备 | |
US11038694B1 (en) | Devices, methods, and systems for cryptographic authentication and provenance of physical assets | |
CN109255084B (zh) | 电子票据查询方法、装置、存储介质和计算机设备 | |
US11004067B2 (en) | Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain | |
CN110599270B (zh) | 电子票据生成方法、装置和计算机设备 | |
CN108830600B (zh) | 一种基于区块链的电子发票系统及实现方法 | |
US11900380B2 (en) | Blockchain architecture with record security | |
CN109325812B (zh) | 关于电子票据的数据处理方法、装置、存储介质和设备 | |
US11095449B2 (en) | System and method for securely processing an electronic identity | |
CN110633963B (zh) | 电子票据处理方法、装置、计算机可读存储介质和设备 | |
CN110378755B (zh) | 电子发票生成方法、装置、计算机设备和存储介质 | |
US11151582B2 (en) | Smart logistics management using blockchain | |
CN111147432B (zh) | 具隐密性的kyc数据共享系统及其方法 | |
CN111314172B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN111429191A (zh) | 基于区块链的电子发票流转管理方法、装置及系统 | |
JP2018139078A (ja) | 署名支援サーバ、中継サーバ、署名支援プログラム、及び中継プログラム | |
CN115022039B (zh) | 信息处理方法、装置、设备和存储介质 | |
CN111866009B (zh) | 一种车辆信息更新方法及装置 | |
CN112926972B (zh) | 一种基于区块链的信息处理方法、区块链系统及终端 | |
CN114358932A (zh) | 认证处理方法及装置 | |
CN113706261A (zh) | 一种基于区块链的电力交易方法、装置及系统 | |
CN112163917B (zh) | 基于区块链的票据处理方法、装置、介质及电子设备 | |
CN110599137B (zh) | 电子票据数据处理方法、装置和计算机设备 | |
CN110750808B (zh) | 一种票据处理方法、装置及存储介质装置 | |
US20240113881A1 (en) | Authorized users and experiences authenticated/managed by non-fungible token (nft) ownership |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |