CN110599266B - 电子票据数据处理方法、装置、计算机设备和存储介质 - Google Patents
电子票据数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110599266B CN110599266B CN201910871777.8A CN201910871777A CN110599266B CN 110599266 B CN110599266 B CN 110599266B CN 201910871777 A CN201910871777 A CN 201910871777A CN 110599266 B CN110599266 B CN 110599266B
- Authority
- CN
- China
- Prior art keywords
- data
- bill
- information
- signature
- node
- 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
Images
Classifications
-
- 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
- Business, Economics & Management (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种电子票据数据处理方法、装置、计算机设备和存储介质,所述方法包括:获取票据接收方信息;获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息;将所述票据接收方信息以及所述签名信息发送给开票节点,以使得所述开票节点在向区块链节点发送开票请求时,携带所述票据接收方信息以及签名信息,所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。上述方法可以提高开具的票据的可靠性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及电子票据数据处理方法、装置、计算机设备和存储介质。
背景技术
在日常生活中,经常需要获取票据,例如***。***是企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,为消费者提供的消费凭证。企业或个人在向消费者出售商品、提供服务或者从事其他经营活动时,应当开具***并依法根据***进行纳税。
在开具票据时,可以获取开票相关信息,根据开票相关的信息进行开票,然而经常存在为了获取不正当利益而虚构或者篡改开票相关信息,从而虚开票据的行为,导致开具的票据可靠性低。
发明内容
基于此,有必要针对上述的问题,提供一种电子票据数据处理方法、装置、计算机设备和存储介质。
一种电子票据数据处理方法,所述方法包括:获取开票节点发送的开票请求,所述开票请求携带票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;根据所述签名信息进行签名验证,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到,并发送给所述开票节点的,所述目标信息包括所述票据接收方信息中的至少一个信息;根据所述票据接收方对应的票据信息生成对应的电子票据;当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
在一些实施例中,所述签名信息是对所述区块链账户地址进行签名得到的,所述将所述目标信息对应的特征值与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过包括:对所述区块链账户地址进行哈希计算,得到信息摘要,作为所述目标信息对应的特征值;将所述信息摘要与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过。
一种电子票据数据处理方法,所述方法包括:获取票据接收方信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息,所述目标信息包括所述票据接收方信息中的至少一个信息;将所述票据接收方信息以及所述签名信息发送给开票节点,以使得所述开票节点在向区块链节点发送开票请求时,携带所述票据接收方信息以及签名信息,所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
在一些实施例中,所述方法应用于所述票据接收方对应的票据代理节点,所述方法还包括:接收票据代理请求,所述票据代理请求携带所述票据接收方对应的票据信息;所述获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息包括:获取票据代理用户对应的私钥,利用所述票据代理用户对应的私钥以及目标信息进行签名,得到签名信息;所述将所述票据接收方信息以及所述签名信息发送给开票节点包括:响应于所述票据代理请求,将所述票据接收方信息以及所述签名信息发送给开票节点。
一种电子票据数据处理方法,所述方法包括:接收票据接收方对应的节点发送的票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;向区块链节点发送开票请求,所述开票请求携带所述票据接收方信息以及签名信息,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到的,所述目标信息包括所述票据接收方信息中的至少一个信息;所述开票请求用于指示所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
一种电子票据数据处理装置,所述装置包括:开票请求获取模块,用于获取开票节点发送的开票请求,所述开票请求携带票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;签名验证模块,用于根据所述签名信息进行签名验证,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到,并发送给所述开票节点的,所述目标信息包括所述票据接收方信息中的至少一个信息;票据生成模块,用于根据所述票据接收方对应的票据信息生成对应的电子票据;写入模块,用于当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
在一些实施例中,所述签名验证模块包括:预设签名数据标识获取单元,用于获取预设签名数据标识;第一数据单元,用于从所述开票请求携带的开票数据中提取所述预设签名数据标识对应的第一数据,所述第一数据包括所述签名信息以及所述私钥对应的用户标识,所述第一数据是所述票据接收方对应的节点发送给所述开票节点的;签名验证单元,用于根据所述私钥对应的用户标识获取对应的公钥,根据所述签名信息以及所述公钥进行签名验证。
在一些实施例中,所述票据接收方对应的节点为所述票据接收方对应的票据代理节点,所述私钥对应的用户标识为票据代理用户对应的代理用户标识,所述签名验证单元用于:根据所述代理用户标识获取所述票据代理用户对应的公钥。
在一些实施例中,所述第一数据还包括所述目标信息,所述签名验证单元用于:利用所述公钥对所述签名信息进行解密,得到解密后的特征值;将所述目标信息对应的特征值与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过。
在一些实施例中,所述签名信息是对所述区块链账户地址进行签名得到的,所述签名验证单元用于:对所述区块链账户地址进行哈希计算,得到信息摘要,作为所述目标信息对应的特征值;将所述信息摘要与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过。
在一些实施例中,所述开票请求携带票据数据以及第一数据,所述第一数据包括所述签名信息以及所述区块链账户地址,所述第一数据与所述票据数据相互独立,所述票据数据包括所述票据接收方对应的票据信息,所述票据生成模块用于:从所述开票请求携带的开票数据中提取所述票据数据,根据所述票据数据生成对应的电子票据;所述签名验证模块用于:从所述开票请求携带的开票数据中提取所述第一数据,根据所述第一数据中的签名信息以及所述区块链账户地址进行签名验证。
一种电子票据数据处理装置,所述装置包括:票据接收方信息获取模块,用于获取票据接收方信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;签名模块,用于获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息,所述目标信息包括所述票据接收方信息中的至少一个信息;信息发送模块,用于将所述票据接收方信息以及所述签名信息发送给开票节点,以使得所述开票节点在向区块链节点发送开票请求时,携带所述票据接收方信息以及签名信息,所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
在一些实施例中,所述装置还包括:标识获取模块,用于获取预设签名数据标识,获取所述私钥对应的用户标识;第一数据生成模块,用于根据所述签名信息以及所述用户标识生成第一数据,所述预设签名数据标识为所述第一数据的数据标识;所述信息发送模块用于:将所述票据接收方信息以及所述第一数据发送给开票节点。
在一些实施例中,所述签名信息是对所述区块链账户地址进行签名得到的,所述第一数据生成模块用于:根据所述签名信息、所述区块链账户地址以及所述用户标识生成预设数据结构的第一数据。
在一些实施例中,所述装置应用于所述票据接收方对应的票据代理节点,所述装置还包括:票据代理请求接收模块,用于接收票据代理请求,所述票据代理请求携带所述票据接收方对应的票据信息;所述签名模块用于包括:获取票据代理用户对应的私钥,利用所述票据代理用户对应的私钥以及目标信息进行签名,得到签名信息;所述信息发送模块用于:响应于所述票据代理请求,将所述票据接收方信息以及所述签名信息发送给开票节点。
一种电子票据数据处理装置,所述装置包括:票据接收方信息接收模块,用于接收票据接收方对应的节点发送的票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;开票请求发送模块,用于向区块链节点发送开票请求,所述开票请求携带所述票据接收方信息以及签名信息,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到的,所述目标信息包括所述票据接收方信息中的至少一个信息;所述开票请求用于指示所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
在一些实施例中,所述票据接收方信息接收模块用于:接收票据接收方对应的节点发送的所述票据接收方对应的票据信息以及第一数据,所述第一数据根据所述签名信息以及所述私钥对应的用户标识生成,所述第一数据的数据标识为预设签名数据标识;所述开票请求发送模块用于:获取开票方对应的票据信息;根据所述开票方对应的票据信息以及所述接收方对应的票据信息生成票据数据;向区块链节点发送开票请求,所述开票请求中携带所述票据数据以及所述第一数据,所述票据数据以及所述第一数据相互独立。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述电子票据数据处理方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述电子票据数据处理方法的步骤。
上述电子票据数据处理方法、装置、计算机设备和存储介质,由票据接收方对应的节点利用私钥对以及票据接收方信息中的至少一个信息进行签名,得到签名信息再发送给开票节点,开票节点在开票请求中携带签名信息,当确定签名验证通过时,再将对应的电子票据写入到数据区块中,因此保证了票据接收方信息中的至少一个信息的正确性,提高了写入到区块链的数据区块中的电子票据的可靠性。
附图说明
图1为一些实施例中提供的电子票据数据处理方法的应用环境图;
图2为一些实施例中电子票据数据处理方法的流程图;
图3为一些实施例中电子票据数据处理方法的流程图;
图4为一些实施例中电子票据数据处理方法的流程图;
图5为一些实施例中电子票据数据处理方法的流程图;
图6A为一些实施例中电子***流转的示意图;
图6B为一些实施例中电子***流转的示意图;
图7为一些实施例中电子票据数据处理方法的时序图;
图8为一些实施例中电子票据数据处理装置的结构框图;
图9为一些实施例中电子票据数据处理装置的结构框图;
图10为一些实施例中电子票据数据处理装置的结构框图;
图11为一些实施例中计算机设备的内部结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一数据称为第二数据,且类似地,可将第二数据称为第一数据。
图1为一些实施例中提供的电子票据数据处理方法的应用环境图,如图1所示。该应用环境包括区块链网络、开票节点104、票据代理节点106、用户节点108。区块链网络中包括多个区块链节点,如102a、102b、102c和102d等,区块链节点间两两可以进行数据传递,例如102a、102b和102c之间可以两两进行数据传递。区块链节点102a是与开票节点104对应的区块链节点。开票节点104可以为开票方对应的服务器,可以为开票方自己的服务器,也可以是开票方委托的代理服务器。票据代理节点106可以为第三方代理商对应的代理服务器,例如可是即时通信应用对应的服务器,用户节点108上可以安装有即时通信应用,消费者可以通过即时通信应用向票据代理节点发送票据代理请求。票据代理节点可以代表用户领取电子票据,如代表消费者领取***。
当需要开具***时,用户节点108可以向票据代理节点106发送票据代理请求,请求票据代理节点106代为向开票节点请求开票,票据代理节点106接收票据代理请求,票据代理请求携带票据接收方对应的票据信息,票据代理节点106获取用户节点108对应的用户的区块链账户地址,利用私钥对票据信息或者区块链账户地址中的至少一个信息进行签名,得到签名信息,票据代理节点106将票据接收方信息以及签名信息发送给开票节点104,开票节点可以获取开票方对应的票据信息,向对应的区块链节点102a发送开票请求,开票请求携带开票方对应的票据信息、票据接收方信息以及签名信息。当区块链节点102a根据签名信息进行签名验证通过时,根据票据接收方对应的票据信息以及开票方对应的票据信息生成电子票据,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
用户节点108为用户对应的设备,可以是个人对应的终端,也可以是企业对应的管理终端。区块链节点102a与开票节点104通过网络进行通信,开票节点104与票据代理节点106通过网络进行通信,票据代理节点106与用户节点108通过网络进行通信。
可以理解,上述应用场景仅是一种示例,并不构成对本申请实施例提供的方法的限定,本申请实施例提供的方法还可以应用在其他场景中,例如,用户节点108可以不通过票据代理节点106代理获取票据,用户节点108可以直接向开票节点104申请获取票据。
区块链节点是区块链网络中的一个数据处理节点。区块链网络是运行区块链技术的载体和组织方式。区块链技术(Blockchain Technology,BT),也被称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据记录。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求(例如开票请求),基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
如图2所示,在一些实施例中,提出了一种电子票据数据处理方法,本实施例主要以该方法应用于上述图1中的用户节点108或者票据代理节点106来举例说明。具体可以包括以下步骤:
步骤S202,获取票据接收方信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
具体地,电子票据是电子化存储的票据,比如可存储于存储介质或计算机设备中。票据接收方是指接收票据的一方,可以是消费者,消费者可以是消费个人或消费企业。当消费个人或消费企业在销售企业进行消费后,销售企业可为消费个人或消费企业提供消费凭证,即***。票据信息用于生成电子票据。票据信息可以包括接收方对应的票据信息以及开票方对应的票据信息。接收方对应的票据信息是与票据接收方相关的信息,例如消费者填写的***抬头。***抬头可以包括消费者填写的购买方名称、购买方的纳税人识别号或购买方的开户账号中的至少一种。接收方对应的票据信息还可以包括消费者的个人信息,如消费者的即时通信账号等。
区块链账户地址表示用户在区块链中的账户。在区块链中,资源的转移是从一个账户地址转移到另一个账户地址的。接收账户地址是资源转入的账户,转出账户地址是转出资源的账户,资源可以是电子票据。区块链账户地址可由公钥经过单向的加密哈希算法得到。哈希算法是一种单向函数,接收任意长度的输入产生指纹摘要。由公钥生成地址时使用的算法是Secure Hash Algorithm(SHA)算法或者the RACE Integrity PrimitivesEvaluation Message Digest(RIPEMD)算法,例如可以是SHA256或者RIPEMD160算法。公钥经过SHA(Secure Hash Algorithm,安全加密哈希)256加密算法的计算,得到的值再由RIPEMD(RACE Integrity Primitives Evaluation Message Digest,原始完整性校验讯息摘要)-160算法计算得到公钥哈希值,在公钥哈希值上加上“0x00”后进行两次的SHA256计算,从输出中取前4个字节,将“0x00”、公钥哈希以及前4个字节依次组成的字符串进行BASE58编码,得到区块链地址。区块链账户地址可以是由税务局对应的节点生成后再返回给票据代理节点或者用户节点的。也可以由票据代理节点或者用户节点生成区块链账户地址。
在一些实施例中,对于用户节点,可以根据用户的输入操作获取票据接收方对应的票据信息。例如,当消费者消费后,需要商家开具***时,则可以利用终端扫描商家提供的开票二维码,进入开票页面,在开票页面中输入票据接收方对应的票据信息,例如购买方名称、购买方的纳税人识别号或购买方的开户账号中的至少一种。用户节点中也可以存储有消费者的区块链账户地址。
在一些实施例中,对于票据代理节点,则票据接收方对应的票据信息可以是用户节点发送的。用户节点可以向票据代理节点发送票据代理请求,票据代理请求携带票据接收方对应的票据信息,当票据代理节点接收到票据代理请求时,获取票据代理请求中的票据接收方对应的票据信息。票据代理节点中还可以存储有票据接收方对应的区块链账户地址。
步骤S204,获取私钥,利用私钥以及目标信息进行签名,得到签名信息,目标信息包括票据接收方信息中的至少一个信息。
具体地,公钥以及私钥是不对称加密方式中的密钥。私钥是用户自身拥有的密钥,不会公开。公钥是公开的密钥,可以发送给各个节点。用公钥加密的信息只能用私钥解密,用私钥进行加密的信息也只能用公钥进行解密。因此私钥用于证明身份,公钥用于验证身份。目标信息包括票据接收方信息中的至少一个信息。例如,目标信息可以为区块链账户地址,目标信息也可以为票据接收方对应的票据信息。当然也可以是票据接收方对应的票据信息中的至少一个,例如购买方对应的纳税人识别号,具体可以根据需要设置。例如,如果是要保证区块链账户地址的正确性,避免开票节点篡改,则可以对区块链账户地址进行签名。如果是要保证票据接收方对应的票据信息的正确性,则可以对票据接收方对应的票据信息进行签名。签名信息是利用私钥进行签名得到的。可以利用哈希函数对目标信息进行哈希计算,生成目标信息对应的摘要信息,再利用私钥对摘要信息进行加密,得到数字签名,即签名信息。
在一些实施例中,当票据接收方对应的节点为用户节点时,可以用该用户的私钥即消费者的私钥以及目标信息进行签名,得到签名信息。
在一些实施例中,当票据接收方对应的节点为票据代理节点时,可以用用户的私钥即消费者的私钥以及目标信息进行签名,也可以用票据代理用户的私钥以及目标信息进行签名。
步骤S206,将票据接收方信息以及签名信息发送给开票节点。
具体地,得到票据接收方信息以及签名信息后,可以将票据接收方信息以及签名信息发送给开票节点,以使得开票节点在向区块链节点发送开票请求时,携带票据接收方信息以及签名信息。这样区块链节点可以根据签名信息进行签名验证,并根据票据接收方对应的票据信息生成对应的电子票据。当签名验证通过时,说明这个签名信息是票据接收方对应的节点进行签名得到的,票据接收方信息中的至少一个信息没有经过开票节点或者其他用户篡改,因此可以将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
上述电子票据数据处理方法,由票据接收方对应的节点利用私钥以及票据接收方信息中的至少一个信息进行签名,得到签名信息再发送给开票节点,在开票请求中携带签名信息,当确定签名验证通过时,再将对应的电子票据写入到数据区块中,因此保证了票据接收方信息中的至少一个信息的正确性,提高了写入到区块链的数据区块中的电子票据的可靠性。
在一些实施例中,票据接收方对应的节点还可以向开票节点发送资源转移份额,资源转移份额是消费者消费的具体金额,例如800元。
在一些实施例中,当票据接收方对应的节点为票据代理节点时,电子票据数据处理方法还可以包括以下步骤:接收票据代理请求,票据代理请求携带票据接收方对应的票据信息;步骤S204即获取私钥,利用私钥以及目标信息进行签名,得到签名信息包括:获取票据代理用户对应的私钥,利用票据代理用户对应的私钥以及目标信息进行签名,得到签名信息;步骤S206将票据接收方信息以及签名信息发送给开票节点包括:响应于票据代理请求,将票据接收方信息以及签名信息发送给开票节点。
具体地,票据代理用户可以为一个或多个用户代理获取票据。票据代理用户可以称为代理服务商,由于消费者的设备例如手机一般不具有接入区块链的能力,因此不能从区块链节点中查询存储在区块链的电子票据,故消费者可以委托服务商代为在区块链查询电子票据以及代为向开票节点请求进行开票。例如服务商可以是管理即时通信应用服务器的企业。用户可以通过安装在终端的即时通信应用向即时通信应用服务器发送票据代理请求,即时通信应用服务器接收该票据代理请求。
用户节点可以向票据代理节点发送票据代理请求,请求票据代理节点代为执行向开票节点请求开票的操作。票据代理请求携带票据接收方对应的票据信息,例如用户可以在终端上输入购买方名称以及购买方对应的纳税人识别号等信息。然后点击“开票”按键,终端即用户节点触***据代理请求,向对应的票据代理节点发送票据代理请求,并携带购买方名称以及购买方对应的纳税人识别号。票据接收方对应的区块链账户地址可以是存储在票据代理节点上的,当票据代理节点接收到票据代理请求,可以获取票据接收方对应的区块链账户地址,利用私钥以及票据接收方对应的区块链账户地址进行签名,得到签名信息。并响应于该票据代理请求,将票据接收方信息以及签名信息发送给开票节点,以请求开票节点执行开票操作。
在一些实施例中,在利用私钥以及目标信息进行签名,得到签名信息之前,还可以确定消费者是否已经通过实名验证,当消费者未通过实名认证时,还可以对消费者进行实名认证,例如可以获取消费者对应的身份证图像,并对消费者进行活体验证,以完成实名验证,获取用户对应的实名信息。当实名认证通过之后,票据代理节点可以生成消费者对应的私钥、公钥以及区块链账户地址,以避免未经实名的消费者虚开***。由于开***的实名消费者是一个海量信息,如果直接在区块链电子******管理全部实名消费者,将会是技术上的大挑战。而现如今社会有很多拥有实名认证的第三方平台,并且也都有开票功能,例如即时通信应用平台。因此,可以借助这样的第三方平台来管理实名消费者,提高对消费者进行实名认证的效率。
在一些实施例中,如图3所示,电子票据数据处理方法还可以包括以下步骤:
步骤S302,获取预设签名数据标识,获取私钥对应的用户标识。
具体地,签名数据标识用于标识签名数据,预设签名数据标识是预先设定的,例如可以是“dst_address”,表示为对区块链账户地址进行签名,得到的签名数据。私钥对应的用户标识是该私钥所属的用户的标识。当票据接收方对应的节点为用户节点时,私钥的用户标识可以是消费者标识。当票据接收方对应的节点为票据代理节点时,由于既可以用消费者的私钥也可以用票据代理用户的私钥进行签名,则私钥对应的用户标识可以是消费者标识或者票据代理用户对应的标识。
步骤S304,根据签名信息以及用户标识生成第一数据,预设签名数据标识为第一数据的数据标识。
具体地,第一数据可以是预设数据结构的数据,具体的数据结构可以根据需要设置。数据结构中可以规定了各个信息的排列位置以及所占字节。例如该数据结构对应的数据的的起始符号可以为“0x28”,终止符号可以为“0x29”。起始符号之后为数据标识,即预设签名数据标识,占据16字节。数据标识之后为私钥对应的用户标识,占据8字节。私钥对应的用户标识之后为签名信息,占据64字节。签名信息之后为目标信息。得到签名信息以及用户标识后,可以根据预设数据结构生成第一数据,第一数据中包括预设签名数据标识、签名信息以及用户标识,还可以包括目标信息。得到第一数据之后,则可以将票据接收方信息以及第一数据发送给开票节点。通过将签名信息与私钥对应的用户标识组成第一数据,并利用预设签名数据标识进行标识。这样,开票方以及区块链节点可以高效快捷的识别出第一数据,利用第一数据中的信息进行签名验证。
在一些实施例中,签名信息是对区块链账户地址进行签名得到的,根据签名信息以及用户标识生成第一数据包括:根据签名信息、区块链账户地址以及用户标识生成预设数据结构的第一数据;将票据接收方信息以及第一数据发送给开票节点包括:将票据接收方对应的票据信息以及第一数据发送给开票节点。
具体地,第一数据中可以包括签名信息、区块链账户地址以及用户标识。得到第一数据后,由于票据接收方信息中的区块链账户地址是存储在第一数据中的,因此在发送数据时,发送的是票据接收方对应的票据信息以及第一数据。本申请实施例中,通过将区块链账户地址加入到第一数据中,而签名信息是对区块链账户地址进行签名得到的,因此区块链节点可以根据预设签名数据标识识别到票据接收方对应的节点发送给开票节点的数据,即签名验证所需要的第一数据,根据第一数据进行签名验证。
如图4所示,在一些实施例中,提出了一种电子票据数据处理方法,本实施例主要以该方法应用于上述图1中的开票节点104来举例说明。具体可以包括以下步骤:
步骤S402,接收票据接收方对应的节点发送的票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
具体地,当需要开票时,票据接收方对应的节点可以请求开票节点开票。请求中可以携带票据接收方信息以及签名信息。例如,当消费者消费后,需要商家开具***时,则可以扫描商家提供的开票二维码,进入开票页面,在开票页面中输入票据接收方信息,例如购买方名称、购买方的纳税人识别号或购买方的开户账号中的至少一种。当在开票页面点击“开票”按键时,向开票节点发送票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
步骤S404,向区块链节点发送开票请求,开票请求携带票据接收方信息以及签名信息,签名信息是票据接收方对应的节点利用私钥以及目标信息进行签名得到的,目标信息包括票据接收方信息中的至少一个信息。
具体地,得到票据接收方信息以及签名信息后,开票节点可以向区块链节点发送开票请求,开票请求用于指示区块链节点根据签名信息进行签名验证,根据票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
开票请求中还可以携带开票方对应的票据信息、资源转移份额以及电子票据标识。例如开票方对应的票据信息可以包括开票方标识。开票方标识是发起开票请求的节点对应的标识,用于唯一标识开票方。开票方具体可以是销售企业,开票方在向消费者出售商品、提供服务或者从事其他经营活动时,需为消费者提供消费凭证,也就是电子票据。开票方标识具体可以是销售方名称、销售方的纳税人识别号或销售方的开户账号等。电子票据标识用于唯一标识电子票据,可以包括电子票据的票据代码和票据号码。
例如,当个人或企业在完成消费后,可提供接收方对应的票据信息、区块链账户地址和资源转移份额至开票节点。开票节点可以预先领取预设数量的电子票据标识。开票节点根据开票方标识、与开票方标识关联的且处于未使用状态的电子票据标识、接收方标识和资源转移份额,共同生成票据数据。开票节点可向区块链节点发送携带有票据数据的开票请求。区块链节点接收开票请求。
在一些实施例中,签名信息是在第一数据中的,因此步骤S402即接收票据接收方对应的节点发送的票据接收方信息以及签名信息包括:接收票据接收方对应的节点发送的票据接收方对应的票据信息以及第一数据,第一数据根据签名信息以及私钥对应的用户标识生成,第一数据的数据标识为预设签名数据标识。因此,开票节点可以直接根据预设签名数据标识确定第一数据,将第一数据透传给区块链节点。透传是指即透明传输(pass-through),指的是在通讯中不管传输的业务内容如何,只负责传输,而不对业务数据内容进行改变。
在一些实施例中,向区块链节点发送开票请求,开票请求携带票据接收方信息以及签名信息包括:获取开票方对应的票据信息;根据开票方对应的票据信息以及接收方对应的票据信息生成票据数据;向区块链节点发送开票请求,开票请求中携带票据数据以及第一数据,票据数据以及第一数据相互独立。
具体地,票据数据是用于生成电子票据的数据。票据数据中还可以包括资源转移份额以及电子数据标识等。票据数据可以是预设数据结构的数据,具体可以根据需要设置,该预设数据结构和第一数据的数据结构可以不同。票据数据中包括票据数据标识。票据数据与第一数据相互独立是指票据数据与第一数据分别具有对应的数据标识,且根据对应的数据结构进行封装,形成独立的数据。形成票据数据后,开票节点可以在开票请求中携带第一数据以及票据数据,使得区块链节点可以根据第一数据对应的数据标识从开票请求中携带的数据提取得到第一数据,以根据第一数据进行签名验证。根据票据数据生成电子票据。
例如,当票据节点接收到票据接收方对应的票据信息以及第一数据后,可以根据票据接收方对应的票据信息以及开票方对应的票据信息,生成预设格式的票据报文,然后将票据报文以及第一数据一起发送给区块链节点。这样开票节点相当于为转发第一数据的中间方,第一数据的数据格式以及内容是没有改变的,即开票节点将第一数据透传到开票节点中。
在一些实施例中,在发送票据数据以及第一数据前,开票节点还可利用所持有的私钥对票据数据以及第一数据中的至少一种数据进行签名。将签名后的数据发送到区块链节点,这样区块链节点也可以根据开票节点对应的公钥对签名后的数据进行签名验证。
在一些实施例中,还可以对票据数据进行共识认证,当共识认证通过,以及利用票据接收方对应的节点的公钥对签名信息进行签名验证,签名验证通过时,再将电子票据存储到数据区块中。例如,区块链节点102a可以用票据接收方对应的节点的公钥对签名信息进行签名验证。同时区块链节点还可以将经过开票节点签名的票据数据发送给其他区块链节点进行共识,区块链节点102a协同其他的区块链节点达成共识且签名验证通过后,将电子票据标识写入数据区块。
如图5所示,在一些实施例中,提出了一种电子票据数据处理方法,本实施例主要以该方法应用于上述图1中的区块链节点来举例说明。具体可以包括以下步骤:
步骤S502,获取开票节点发送的开票请求,开票请求携带票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
具体地,开票节点发送开票请求的区块链节点,可以是与开票节点对应的区块链节点。例如可以是开票方自己的设备构成的区块链节点,也可以是开票方授权的第三方代理设备构成的区块链节点。
步骤S504,根据签名信息进行签名验证,签名信息是票据接收方对应的节点利用私钥以及目标信息进行签名得到,并发送给开票节点的,目标信息包括票据接收方信息中的至少一个信息。
具体地,接收到签名信息后,区块链节点可以获取对应的公钥,利用公钥对该签名信息进行签名验证。签名验证用于验证目标信息是否未经篡改以及签名者的身份。
在一些实施例中,根据签名信息进行签名验证包括:获取预设签名数据标识;从开票请求携带的开票数据中提取预设签名数据标识对应的第一数据,第一数据包括签名信息以及私钥对应的用户标识,第一数据是票据接收方对应的节点发送给开票节点的;根据私钥对应的用户标识获取对应的公钥,根据签名信息以及公钥进行签名验证。
具体地,区块链节点可以获取数据标识为预设签名数据标识的数据,作为第一数据。例如,假设预设签名数据标识为“dst_address”,则可以获取数据标识为“dst_address”的数据。第一数据中包括私钥对应的用户标识,因此可以根据该用户标识获取对应的公钥,根据该公钥以及签名信息进行签名验证。
在一些实施例中,当票据接收方对应的节点为票据接收方对应的票据代理节点,私钥对应的用户标识为票据代理用户对应的代理用户标识,根据私钥对应的用户标识获取对应的公钥包括:根据代理用户标识获取票据代理用户对应的公钥。
在一些实施例中,第一数据还包括目标信息,根据签名信息以及公钥进行签名验证包括:利用公钥对签名信息进行解密,得到解密后的特征值;将目标信息对应的特征值与解密后的特征值进行对比,当对比一致时,确认签名验证通过。
具体地,签名验证通过则说明目标信息未经篡改以及签名者的身份为票据接收方或者票据代理用户。特征值用于说明目标信息的特征。可以是哈希值。也可以包括其他特征值,例如目标信息的字符数等信息。区块链节点可以从目标信息提取特征值,例如进行哈希计算,得到哈希值。将目标信息对应的特征值与解密后的特征值进行对比,如果对比一致,则确认签名验证通过。
在一些实施例中,签名信息是对区块链账户地址进行签名得到的,将目标信息对应的特征值与解密后的特征值进行对比,当对比一致时,确认签名验证通过包括:对区块链账户地址进行哈希计算,得到信息摘要,作为目标信息对应的特征值;将信息摘要与解密后的特征值进行对比,当对比一致时,确认签名验证通过。
具体地,可以利用哈希函数将需要加密的明文“摘要”成一串密文,该密文可以是固定长度的,例如128位。这一串密文又称为信息摘要。区块链节点利用与签名相同的哈希计算方法对区块链账户地址进行哈希计算,得到信息摘要,将该信息摘要作为目标信息的特征值,如果信息摘要与解密后的特征值进对比一致,确认签名验证通过。通过对区块链账户地址进行签名验证,可以保证区块链账户地址为消费者真实的账户地址,避免消费者的账户地址被开票方或者其他用户篡改,导致消费者开具的***被他人窃取。
在一些实施例中,可以是由区块链节点102a进行签名验证。也可以是由多个区块链节点协同进行共识验证。区块链节点102a确认满足共识条件时,确认签名验证通过。
步骤S506,根据票据接收方对应的票据信息生成对应的电子票据。
具体地,可以根据票据接收方对应的票据信息、开票方对应的票据信息、资源转移份额以及电子票据标识生成预设数据格式的区块链电子票据。
步骤S508,当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
具体地,数据区块是区块链节点中用来存储数据的存储模块。接收账户地址是指接收该电子票据的账户地址,通过将票据接收方的区块链账户地址作为电子票据对应的接收账户地址,使得生成的电子票据为票据接收方所持有的资产,因此票据接收方可以对电子票据进行管理。例如当需要报销时,票据接收方的设备可以生成该电子票据对应的资源转移数据,利用私钥以及资源转移数据进行签名,得到交易数据,将交易数据存储到区块链中,从而完成电子票据从票据接收方到报销方的转移。资源转移数据可以包括电子票据标识、转出方账户地址以及接收方账户地址。
在一些实施例中,开票请求携带票据数据以及第一数据,第一数据包括签名信息以及区块链账户地址,第一数据与票据数据相互独立,票据数据包括票据接收方对应的票据信息,根据票据接收方对应的票据信息生成对应的电子票据包括:从开票请求携带的开票数据中提取票据数据,根据票据数据生成对应的电子票据;根据签名信息进行签名验证包括:从开票请求携带的开票数据中提取第一数据,根据第一数据中的签名信息以及区块链账户地址进行签名验证。
具体地,第一数据与票据数据是相互独立的,因此区块链节点可以根据预设签名数据标识从开票数据中提取得到开票节点透传的第一数据。根据第一数据中的签名信息以及区块链账户地址进行签名验证,根据票据数据生成对应的电子票据。
在一些实施例中,区块链节点将电子票据存储到数据区块之前,还可以将开票节点签名得到的票据数据发送至所在区块链网络中的其他区块链节点,这些区块链节点在达成共识后,区块链节点再将电子票据写入数据区块。
在一些实施例中,区块链节点还可以生成电子票据的票据查询码,票据查询码用于查询电子票据,与电子票据唯一对应。票据查询码具体可以是字符串、二维码或条形码等。例如区块链节点可通过哈希算法对票据数据进行哈希运算,得到票据查询码。区块链节点可以将票据查询码返回到开票节点中,开票节点将票据查询码返回到票据接收方对应的节点,使得票据接收方对应的节点可以根据票据查询码在区块链中查询生成的电子票据。
举例说明,如图6所示,示出了一个电子***流转的示意图。参照图6A,由图6A可知参与到区块链电子***生态的角色主要有四个,分别是税局、开票企业、消费者和报销企业。这四类角色都会拥有区块链的地址和公私钥,也是拥有区块链资产的实体。具体的,税局服务器获取制定的开票智能合约,将制定的开票智能合约发送到区块链节点中,区块链节点将开票智能合约部署到区块链中。其中,一张***为一个资产。消费者对应的设备可以向开票企业对应的节点请求开具***,开票企业对应的节点向区块链节点发送开票请求,区块链节点根据开票请求,当满足智能合约时,将电子***写入区块中,消费者对应的区块链账户地址为电子***的接收账户地址。消费者可以从区块链中查找到对应的电子***,将电子***转移到报销企业对应的账户地址,以完成***的报销。当报销完成后,报销企业的设备可以将电子***转移到税局对应的账户,以完成报税,从而完成电子***的流转。
消费者作为区块链的一个角色,拥有对应的地址信息,当持有***时,相当于持有区块链的资产。由于区块链的防篡改可追溯特性决定了一旦上链,消费者就不能抵赖。如果由开票企业填写消费者的区块链账户地址,那么就存在开票企业为了不正当利益,篡改消费者的区块链账户地址的可能性。即存在虚开***的漏洞,因此可以由票据代理节点或者用户节点对消费者的区块链账户地址进行签名,得到包括用户标识、区块链账户地址以及签名信息的第一数据,由开票节点将该第一数据透传到区块链节点,由区块链节点进行签名验证后,再上链,以减少虚开***的情况发生。
参照图6B,示出了一个电子***流转的示意图。其中代理服务商可以为票据代理节点对应的用户,例如提供即时通信应用的企业用户。代理服务商可以对消费者进行实名认证,管理消费者的信息,并且可以与区块链进行数据通信。由于个人消费者或者规模较小的企业通常没有能力接入区块链中,因此可以借助于代理服务商开具电子票据。即消费者可以通过代理服务商来向开票企业申请开具***。当开票企业开具的***写入区块链中后,代理服务商可以从区块链中查找与消费者对应的电子***,发送到消费者对应的设备中,消费者可以请求代理服务商将电子***转移到报销企业对应的账户地址,以完成***的报销。
在一些实施例中,代理服务商可以还可以将消费者的信息发送给开票企业对应的节点,开票企业对应的节点可以将消费者的信息写入电子***中,例如将消费者的即时通信账号写入到电子***中。因此通过引入代理服务商,可以实现在区块链电子***引入实名消费者对应的信息。
以下以电子票据为***为例,结合图7对本申请实施例提供的电子票据数据处理方法机说明,如图7所示,可以包括以下步骤:
S1:扫描开票二维码。
具体地,当消费者消费后,需要商家开具***时,可以扫描商家在终端展示的开票二维码。例如可以利用即时通信应用扫描商家的终端中展示的二维码。进入开票页面。
S2:发送票据代理请求。
具体地,消费者可以在开票页面填写票据接收方对应的票据信息以及资源转移份额。票据接收方对应的票据信息可以包括购买方名称、购买方的纳税人识别号或购买方的开户账号中的至少一种。资源转移份额可以为消费金额。当信息填写完毕后,点击“开票”按键,向即时通信应用服务器即票据代理节点发送票据代理请求。
S3:获取私钥,进行签名,得到第一数据。
具体地,票据代理节点中可存储消费者的区块链账户地址。接收到票据代理请求后,票据代理节点可以利用票据代理用户的私钥对消费者的区块链账户地址进行签名,得到签名信息。第一数据中包括签名信息、区块链账户地址以及票据代理用户的标识。第一数据的标识为预设签名标识,例如“dst_address”。
S4:发送第一数据以及票据接收方对应的票据信息。
具体地,票据代理节点向开票节点发送第一数据以及票据接收方对应的票据信息。
S5:构造票据报文。
具体地,开票节点可以获取开票方对应的票据信息,例如销售企业的纳税人识别号、企业名称以及电话等。还可以获取电子票据标识,例如***编号,***编号可以包括***代码以及***号码。根据开票方对应的票据信息、票据接收方对应的票据信息以及***编号生成票据数据,即票据报文。
S6:发送第一数据以及票据报文。
具体地,开票节点可以向区块链节点发送开票请求,开票请求携带第一数据以及票据报文。因此第一数据是透传到区块链节点的。
S7:根据第一数据进行签名验证。
具体地,区块链节点从开票数据中获取标识为“dst_address”的第一数据,根据第一数据进行签名验证。
S8:在数据区块中存储电子票据。
具体地,区块链节点可以根据票据数据生成预设格式的区块链电子票据。当签名验证通过时,将电子票据存储到数据区块中,可以将电子票据与票据查询码关联存储。
S9:返回上链成功消息。
具体地,当电子票据存储到数据区块时,区块链节点返回上链成功的消息。上链成功的消息中还可以携带票据查询码。
S10:返回开票成功消息。
具体地,开票节点可以向票据代理节点返回开票成功的信息,开票成功的消息中还可以携带票据查询码。
S11:查询电子票据。
具体地,票据代理节点可以根据票据查询码从区块链节点中查询对应的电子票据。
S12:返回电子票据。
具体地,区块链节点根据票据查询码从区块链节点中查询对应的电子票据并返回至票据代理节点。
S13:返回电子票据。
具体地,票据代理节点可以向用户节点返回电子票据。消费者可以查看电子票据,以核对电子票据中的信息。
如图8所示,在一些实施例中,提供了一种电子票据数据处理装置,该电子票据数据处理装置可以集成于上述的区块链节点中,具体可以包括开票请求获取模块802、签名验证模块804、票据生成模块806以及写入模块808。
开票请求获取模块802,用于获取开票节点发送的开票请求,开票请求携带票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
签名验证模块804,用于根据签名信息进行签名验证,签名信息是票据接收方对应的节点利用私钥以及目标信息进行签名得到,并发送给开票节点的,目标信息包括票据接收方信息中的至少一个信息。
票据生成模块806,用于根据票据接收方对应的票据信息生成对应的电子票据。
写入模块808,用于当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
在一些实施例中,签名验证模块804包括:
预设签名数据标识获取单元,用于获取预设签名数据标识。
第一数据单元,用于从开票请求携带的开票数据中提取预设签名数据标识对应的第一数据,第一数据包括签名信息以及私钥对应的用户标识,第一数据是票据接收方对应的节点发送给开票节点的。
签名验证单元,用于根据私钥对应的用户标识获取对应的公钥,根据签名信息以及公钥进行签名验证。
在一些实施例中,票据接收方对应的节点为票据接收方对应的票据代理节点,私钥对应的用户标识为票据代理用户对应的代理用户标识,签名验证单元用于:根据代理用户标识获取票据代理用户对应的公钥。
在一些实施例中,第一数据还包括目标信息,签名验证单元用于:利用公钥对签名信息进行解密,得到解密后的特征值;将目标信息对应的特征值与解密后的特征值进行对比,当对比一致时,确认签名验证通过。
在一些实施例中,签名信息是对区块链账户地址进行签名得到的,签名验证单元用于:对区块链账户地址进行哈希计算,得到信息摘要,作为目标信息对应的特征值;将信息摘要与解密后的特征值进行对比,当对比一致时,确认签名验证通过。
在一些实施例中,开票请求携带票据数据以及第一数据,第一数据包括签名信息以及区块链账户地址,第一数据与票据数据相互独立,票据数据包括票据接收方对应的票据信息,票据生成模块806用于:从开票请求携带的开票数据中提取票据数据,根据票据数据生成对应的电子票据;
签名验证模块804用于:从开票请求携带的开票数据中提取第一数据,根据第一数据中的签名信息以及区块链账户地址进行签名验证。
如图9所示,在一些实施例中,提供了一种电子票据数据处理装置,该电子票据数据处理装置可以集成于上述的用户节点或者票据代理节点中,具体可以包括票据接收方信息获取模块902、签名模块904以及信息发送模块906。
票据接收方信息获取模块902,用于获取票据接收方信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
签名模块904,用于获取私钥,利用私钥以及目标信息进行签名,得到签名信息,目标信息包括票据接收方信息中的至少一个信息。
信息发送模块906,用于将票据接收方信息以及签名信息发送给开票节点,以使得开票节点在向区块链节点发送开票请求时,携带票据接收方信息以及签名信息,区块链节点根据签名信息进行签名验证,根据票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
在一些实施例中,电子票据数据处理装置还包括:
标识获取模块,用于获取预设签名数据标识,获取私钥对应的用户标识。
第一数据生成模块,用于根据签名信息以及用户标识生成第一数据,预设签名数据标识为第一数据的数据标识。
信息发送模块906用于:将票据接收方信息以及第一数据发送给开票节点。
在一些实施例中,签名信息是对区块链账户地址进行签名得到的,第一数据生成模块用于:根据签名信息、区块链账户地址以及用户标识生成预设数据结构的第一数据。
在一些实施例中,电子票据数据处理装置应用于票据接收方对应的票据代理节点,电子票据数据处理装置还包括:
票据代理请求接收模块,用于接收票据代理请求,票据代理请求携带票据接收方对应的票据信息;
签名模块904用于包括:获取票据代理用户对应的私钥,利用票据代理用户对应的私钥以及目标信息进行签名,得到签名信息;
信息发送模块906用于:响应于票据代理请求,将票据接收方信息以及签名信息发送给开票节点。
如图10所示,在一些实施例中,提供了一种电子票据数据处理装置,该电子票据数据处理装置可以集成于上述的开票节点中,具体可以包括票据接收方信息接收模块1002以及开票请求发送模块1004。
票据接收方信息接收模块1002,用于接收票据接收方对应的节点发送的票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。
开票请求发送模块1004,用于向区块链节点发送开票请求,开票请求携带票据接收方信息以及签名信息,签名信息是票据接收方对应的节点利用私钥以及目标信息进行签名得到的,目标信息包括票据接收方信息中的至少一个信息。
开票请求用于指示区块链节点根据签名信息进行签名验证,根据票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
在一些实施例中,票据接收方信息接收模块1002用于:接收票据接收方对应的节点发送的票据接收方对应的票据信息以及第一数据,第一数据根据签名信息以及私钥对应的用户标识生成,第一数据的数据标识为预设签名数据标识;
开票请求发送模块1004用于:获取开票方对应的票据信息;根据开票方对应的票据信息以及接收方对应的票据信息生成票据数据;向区块链节点发送开票请求,开票请求中携带票据数据以及第一数据,票据数据以及第一数据相互独立。
图11示出了一些实施例中计算机设备的内部结构图。该计算机设备具体可以是票据代理节点、区块链节点或者开票节点。如图11所示,该计算机设备包括通过***总线连接的处理器、存储器以及网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作***,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现电子票据数据处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行电子票据数据处理方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,本申请提供的电子票据数据处理装置可以实现为一种计算机程序的形式,计算机程序可在如图11所示的计算机设备上运行。计算机设备的存储器中可存储组成该电子票据数据处理装置的各个程序模块,比如,图8所示的开票请求获取模块802、签名验证模块804、票据生成模块806以及写入模块808,或者图9所示的票据接收方信息获取模块902、签名模块904以及信息发送模块906,或者如图10所示的票据接收方信息接收模块1002以及开票请求发送模块1004。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的电子票据数据处理方法中的步骤。
例如,图11所示的计算机设备可以通过如图8所示的电子票据数据处理装置中的开票请求获取模块802获取开票节点发送的开票请求,开票请求携带票据接收方信息以及签名信息,票据接收方信息包括票据接收方对应的票据信息以及票据接收方对应的区块链账户地址。通过签名验证模块804根据签名信息进行签名验证,签名信息是票据接收方对应的节点利用私钥以及目标信息进行签名得到,并发送给开票节点的,目标信息包括票据接收方信息中的至少一个信息。通过票据生成模块806根据票据接收方对应的票据信息生成对应的电子票据。通过写入模块808当签名验证通过时,将区块链账户地址作为电子票据对应的接收账户地址,将电子票据写入到数据区块中。
在一些实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述电子票据数据处理方法的步骤。此处电子票据数据处理方法的步骤可以是上述各个实施例的电子票据数据处理方法中的步骤。
在一些实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述电子票据数据处理方法的步骤。此处电子票据数据处理方法的步骤可以是上述各个实施例的电子票据数据处理方法中的步骤。
应该理解的是,虽然本申请各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (22)
1.一种电子票据数据处理方法,应用于区块链节点,所述方法包括:
获取开票节点发送的开票请求,所述开票请求携带票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;
根据所述签名信息进行签名验证;其中,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到,所述票据接收方对应的节点根据所述签名信息生成第一数据,并将预设签名数据标识作为所述第一数据的数据标识,将所述第一数据发送给所述开票节点;所述开票节点根据所述预设签名数据标识确定要透传的所述第一数据,通过所述开票请求将所述第一数据透传至所述区块链节点,所述目标信息包括所述区块链账户地址;
根据所述票据接收方对应的票据信息生成对应的电子票据;
当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
2.根据权利要求1所述的方法,其特征在于,所述根据所述签名信息进行签名验证包括:
获取预设签名数据标识;
从所述开票请求携带的开票数据中提取所述预设签名数据标识对应的第一数据,所述第一数据包括所述签名信息以及所述私钥对应的用户标识;
根据所述私钥对应的用户标识获取对应的公钥,根据所述签名信息以及所述公钥进行签名验证。
3.根据权利要求2所述的方法,其特征在于,所述票据接收方对应的节点为所述票据接收方对应的票据代理节点,所述私钥对应的用户标识为票据代理用户对应的代理用户标识,所述根据所述私钥对应的用户标识获取对应的公钥包括:
根据所述代理用户标识获取所述票据代理用户对应的公钥。
4.根据权利要求2所述的方法,其特征在于,所述第一数据还包括所述目标信息,所述根据所述签名信息以及所述公钥进行签名验证包括:
利用所述公钥对所述签名信息进行解密,得到解密后的特征值;
将所述目标信息对应的特征值与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过。
5.根据权利要求1所述的方法,其特征在于,所述开票请求携带票据数据以及第一数据,所述第一数据包括所述签名信息以及所述区块链账户地址,所述第一数据与所述票据数据相互独立,所述票据数据包括所述票据接收方对应的票据信息,所述根据所述票据接收方对应的票据信息生成对应的电子票据包括:
从所述开票请求携带的开票数据中提取所述票据数据,根据所述票据数据生成对应的电子票据;
所述根据所述签名信息进行签名验证包括:
从所述开票请求携带的开票数据中提取所述第一数据,根据所述第一数据中的签名信息以及所述区块链账户地址进行签名验证。
6.一种电子票据数据处理方法,应用于票据接收方对应的节点,所述方法包括:
获取票据接收方信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;
获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息,根据所述签名信息以及区块链账户地址生成第一数据,并将预设签名数据标识作为所述第一数据的数据标识;所述目标信息包括所述区块链账户地址;
将所述票据接收方对应的票据信息以及所述第一数据发送给开票节点,以使得所述开票节点根据所述预设签名数据标识确定要透传的所述第一数据,在向区块链节点发送开票请求时,通过所述开票请求将所述第一数据透传至所述区块链节点,所述开票请求还携带所述票据接收方对应的票据信息,所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
7.根据权利要求6所述的方法,其特征在于,所述根据所述签名信息以及区块链账户地址生成第一数据,并将预设签名数据标识作为所述第一数据的数据标识包括:
获取预设签名数据标识,获取所述私钥对应的用户标识;
根据所述签名信息、以及区块链账户地址以及所述用户标识生成第一数据,将所述预设签名数据标识作为所述第一数据的数据标识。
8.根据权利要求7所述的方法,其特征在于,所述根据所述签名信息、以及区块链账户地址以及所述用户标识生成第一数据包括:
根据所述签名信息、所述区块链账户地址以及所述用户标识生成预设数据结构的第一数据。
9.一种电子票据数据处理方法,应用于开票节点,所述方法包括:
接收票据接收方对应的节点发送的票据接收方对应的票据信息以及第一数据,所述第一数据是所述票据接收方对应的节点根据签名信息以及所述票据接收方对应的区块链账户地址生成的,所述票据接收方对应的节点将预设签名数据标识作为所述第一数据的数据标识;
根据所述预设签名数据标识确定要透传的所述第一数据,向区块链节点发送开票请求,以通过所述开票请求将所述第一数据透传至所述区块链节点;所述开票请求还携带所述票据接收方对应的票据信息,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到的,所述目标信息包括所述区块链账户地址;
所述开票请求用于指示所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
10.根据权利要求9所述的方法,其特征在于,所述接收票据接收方对应的节点发送的票据接收方对应的票据信息以及第一数据包括:
接收票据接收方对应的节点发送的所述票据接收方对应的票据信息以及第一数据,所述第一数据根据所述签名信息、所述票据接收方对应的区块链账户地址以及所述私钥对应的用户标识生成,所述第一数据的数据标识为预设签名数据标识;
所述向区块链节点发送开票请求包括:
获取开票方对应的票据信息;
根据所述开票方对应的票据信息以及所述接收方对应的票据信息生成票据数据;
向区块链节点发送开票请求,所述开票请求中携带所述票据数据以及所述第一数据,所述票据数据以及所述第一数据相互独立。
11.一种电子票据数据处理装置,所述装置包括:
开票请求获取模块,用于获取开票节点发送的开票请求,所述开票请求携带票据接收方信息以及签名信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;
签名验证模块,用于根据所述签名信息进行签名验证;其中,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到,所述票据接收方对应的节点根据所述签名信息生成第一数据,并将预设签名数据标识作为所述第一数据的数据标识,将所述第一数据发送给所述开票节点;所述开票节点根据所述预设签名数据标识确定要透传的所述第一数据,通过所述开票请求将所述第一数据透传至所述区块链节点;所述目标信息包括所述区块链账户地址;
票据生成模块,用于根据所述票据接收方对应的票据信息生成对应的电子票据;
写入模块,用于当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
12.根据权利要求11所述的装置,其特征在于,所述签名验证模块包括:
预设签名数据标识获取单元,用于获取预设签名数据标识;
第一数据单元,用于从所述开票请求携带的开票数据中提取所述预设签名数据标识对应的第一数据,所述第一数据包括所述签名信息以及所述私钥对应的用户标识;
签名验证单元,用于根据所述私钥对应的用户标识获取对应的公钥,根据所述签名信息以及所述公钥进行签名验证。
13.根据权利要求12所述的装置,其特征在于,所述票据接收方对应的节点为所述票据接收方对应的票据代理节点,所述私钥对应的用户标识为票据代理用户对应的代理用户标识,所述签名验证单元用于:
根据所述代理用户标识获取所述票据代理用户对应的公钥。
14.根据权利要求12所述的装置,其特征在于,所述第一数据还包括所述目标信息,所述签名验证单元用于:
利用所述公钥对所述签名信息进行解密,得到解密后的特征值;
将所述目标信息对应的特征值与所述解密后的特征值进行对比,当对比一致时,确认签名验证通过。
15.根据权利要求11所述的装置,其特征在于,所述开票请求携带票据数据以及第一数据,所述第一数据包括所述签名信息以及所述区块链账户地址,所述第一数据与所述票据数据相互独立,所述票据数据包括所述票据接收方对应的票据信息,所述票据生成模块用于:
从所述开票请求携带的开票数据中提取所述票据数据,根据所述票据数据生成对应的电子票据;
所述签名验证模块用于:
从所述开票请求携带的开票数据中提取所述第一数据,根据所述第一数据中的签名信息以及所述区块链账户地址进行签名验证。
16.一种电子票据数据处理装置,所述装置包括:
票据接收方信息获取模块,用于获取票据接收方信息,所述票据接收方信息包括票据接收方对应的票据信息以及所述票据接收方对应的区块链账户地址;
签名模块,用于获取私钥,利用所述私钥以及目标信息进行签名,得到签名信息;
标识获取模块,用于获取预设签名数据标识,获取所述私钥对应的用户标识
第一数据生成模块,用于根据所述签名信息以及区块链账户地址生成第一数据,并将预设签名数据标识作为所述第一数据的数据标识;所述目标信息包括所述区块链账户地址;
信息发送模块,用于将所述票据接收方对应的票据信息以及所述第一数据发送给开票节点,以使得所述开票节点根据所述预设签名数据标识确定要透传的所述第一数据,在向区块链节点发送开票请求时,通过所述开票请求将所述第一数据透传至所述区块链节点,所述开票请求还携带票据接收方对应的票据信息,所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
17.根据权利要求16所述的装置,其特征在于,所述标识获取模块用于:
获取预设签名数据标识,获取所述私钥对应的用户标识;
所述第一数据生成模块用于:
根据所述签名信息、以及区块链账户地址以及所述用户标识生成第一数据,将所述预设签名数据标识作为所述第一数据的数据标识。
18.根据权利要求17所述的装置,其特征在于,所述第一数据生成模块用于:
根据所述签名信息、所述区块链账户地址以及所述用户标识生成预设数据结构的第一数据。
19.一种电子票据数据处理装置,所述装置包括:
票据接收方信息接收模块,用于接收票据接收方对应的票据接收方对应的票据信息以及第一数据,所述第一数据是所述票据接收方对应的节点根据签名信息以及所述票据接收方对应的区块链账户地址生成的,所述票据接收方对应的节点将预设签名数据标识作为所述第一数据的数据标识;
开票请求发送模块,用于根据所述预设签名数据标识确定要透传的所述第一数据,向区块链节点发送开票请求,以通过所述开票请求将所述第一数据透传至所述区块链节点;所述开票请求还携带所述票据接收方对应的票据信息,所述签名信息是所述票据接收方对应的节点利用私钥以及目标信息进行签名得到的,所述目标信息包括所述区块链账户地址;
所述开票请求用于指示所述区块链节点根据所述签名信息进行签名验证,根据所述票据接收方对应的票据信息生成对应的电子票据,当签名验证通过时,将所述区块链账户地址作为所述电子票据对应的接收账户地址,将所述电子票据写入到数据区块中。
20.根据权利要求19所述的装置,其特征在于,所述票据接收方信息接收模块用于:
接收票据接收方对应的节点发送的所述票据接收方对应的票据信息以及第一数据,所述第一数据根据所述签名信息、所述票据接收方对应的区块链账户地址以及所述私钥对应的用户标识生成,所述第一数据的数据标识为预设签名数据标识;
所述开票请求发送模块用于:
获取开票方对应的票据信息;
根据所述开票方对应的票据信息以及所述接收方对应的票据信息生成票据数据;
向区块链节点发送开票请求,所述开票请求中携带所述票据数据以及所述第一数据,所述票据数据以及所述第一数据相互独立。
21.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至10中任一项权利要求所述电子票据数据处理方法的步骤。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至10中任一项权利要求所述电子票据数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910871777.8A CN110599266B (zh) | 2019-09-16 | 2019-09-16 | 电子票据数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910871777.8A CN110599266B (zh) | 2019-09-16 | 2019-09-16 | 电子票据数据处理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110599266A CN110599266A (zh) | 2019-12-20 |
CN110599266B true CN110599266B (zh) | 2021-07-06 |
Family
ID=68859889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910871777.8A Active CN110599266B (zh) | 2019-09-16 | 2019-09-16 | 电子票据数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110599266B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111062766B (zh) * | 2019-12-20 | 2024-02-09 | ***股份有限公司 | 一种基于区块链的电子***的开具方法及装置 |
CN111325586B (zh) * | 2020-01-22 | 2022-02-11 | 腾讯科技(深圳)有限公司 | 基于区块链网络的票据代开方法、装置、服务器及介质 |
CN111260488B (zh) * | 2020-01-23 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及可读存储介质 |
CN111369338B (zh) * | 2020-02-28 | 2023-12-19 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法及装置 |
CN111309812A (zh) * | 2020-03-11 | 2020-06-19 | 深圳市网心科技有限公司 | 基于区块链的函件传输方法及相关设备 |
CN111461799B (zh) * | 2020-03-31 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机设备及介质 |
CN111476617B (zh) * | 2020-04-03 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机设备及介质 |
CN111507815B (zh) * | 2020-04-20 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 基于区块链的信息获取方法、装置、设备及存储介质 |
CN112149077B (zh) * | 2020-10-12 | 2022-03-25 | 杭州云链趣链数字科技有限公司 | 基于区块链技术的供应链票据方法、***和计算机设备 |
CN112822022B (zh) * | 2020-12-31 | 2022-05-27 | 深圳前海益链网络科技有限公司 | 一种多签名地址的更新方法及相关装置 |
CN112434114B (zh) * | 2021-01-26 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 电子票据处理方法、装置、介质及电子设备 |
CN114677188B (zh) * | 2022-05-25 | 2022-08-26 | 国网浙江省电力有限公司 | 适用于无纸化凭证数据的全量采集方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10152756B2 (en) * | 2014-03-31 | 2018-12-11 | Monticello Enterprises LLC | System and method for providing multiple payment method options to browser |
CN115174089B (zh) * | 2015-04-20 | 2024-05-03 | 欧吉达克斯公司 | 物权电子凭证(edt)的分布式管理方法及其*** |
WO2018118189A1 (en) * | 2016-12-20 | 2018-06-28 | Walmart Apollo, Llc | Systems and methods for customizing content of a billboard |
CN108961030B (zh) * | 2018-08-15 | 2023-01-03 | 深圳市智税链科技有限公司 | 关于电子票据的数据处理方法、装置、***、介质和设备 |
CN109034924B (zh) * | 2018-08-16 | 2023-04-07 | 深圳市智税链科技有限公司 | 电子票据生成方法、装置、存储介质和计算机设备 |
CN109191272B (zh) * | 2018-08-17 | 2023-04-07 | 深圳市智税链科技有限公司 | 关于电子票据的数据处理方法、装置、存储介质和设备 |
-
2019
- 2019-09-16 CN CN201910871777.8A patent/CN110599266B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110599266A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110599266B (zh) | 电子票据数据处理方法、装置、计算机设备和存储介质 | |
CN110599137B (zh) | 电子票据数据处理方法、装置和计算机设备 | |
CN109255084B (zh) | 电子票据查询方法、装置、存储介质和计算机设备 | |
Benčić et al. | DL-Tags: DLT and smart tags for decentralized, privacy-preserving, and verifiable supply chain management | |
CN110428293B (zh) | 关于电子票据的数据处理方法、装置、存储介质和设备 | |
CN109165943B (zh) | 关于电子票据的数据处理方法、装置、存储介质和设备 | |
CN110633963B (zh) | 电子票据处理方法、装置、计算机可读存储介质和设备 | |
Mukta et al. | Blockchain-based verifiable credential sharing with selective disclosure | |
CN108961030A (zh) | 关于电子票据的数据处理方法、装置、***、介质和设备 | |
CN110839029B (zh) | 一种微服务注册方法和装置 | |
CN110378755B (zh) | 电子***生成方法、装置、计算机设备和存储介质 | |
CN111080295A (zh) | 一种基于区块链的电子合同处理方法以及设备 | |
CN109191272A (zh) | 关于电子票据的数据处理方法、装置、存储介质和设备 | |
CN110602116B (zh) | 基于区块链的数据验证方法、装置和计算机可读存储介质 | |
CN111506632A (zh) | 一种数据处理方法及装置 | |
CN111488372A (zh) | 一种数据处理方法、设备及存储介质 | |
CN110489393A (zh) | 违约信息查询方法、装置、计算机设备和存储介质 | |
CN110599270B (zh) | 电子票据生成方法、装置和计算机设备 | |
CN113010861B (zh) | 一种基于区块链的融资事务中的身份验证方法和*** | |
CN110597817A (zh) | 基于区块链的通信记录存证方法、装置和计算机设备 | |
CN111127205A (zh) | 智能合约生成方法、装置、计算机设备和存储介质 | |
CN110597834A (zh) | 电子票据数据处理方法、装置和计算机设备 | |
CN110968644A (zh) | 一种数据处理方法以及设备 | |
CN111461881A (zh) | 数据管理方法、装置、计算机设备及存储介质 | |
CN110599269A (zh) | 票据生成方法、装置、计算机可读存储介质和计算机设备 |
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 |