区块链发票-1(2.19)
区块链发票
2018年8月10日,全国首张区块链电子发票在深圳国贸旋转餐厅开出,深圳成为全国区块链电子发票试点城市。对用户而言,实现“交易即开票,开票即报销”。用户可以实现链上储存、流转、报销,大大节省开票及报销流程;对于商户而言,可以降低管理成本,避免高峰期排队开票现象的出现;对于企业而言,在区块链上实现发票申领、开具、查验、以及入账流程,使得入账过程更加简捷可靠。但区块链电子发票进行大规模推广仍面临许多问题:建立在区块链上的信息是公开透明的,而电子发票包含的财务信息不应完全公开;区块链在产生之后很难进行修改,而电子发票由于开具错误或商品退换需要进行发票的作废;区块链的块链式结构底层性能无法支持高并发、链与链之间未能互通互联,而仅京东于2016-2017年就开出了10亿张电子发票。
腾讯:CN109241772A发票区块链记录方法、装置、区块链网关服务器和介质-公开
该专利公开提供了一种发票区块链记录方法、装置、区块链网关服务器和介质。该方法包括:响应于接收到发行发票事件上链请求,基于发行发票事件上链请求中包含的发票标识,在每个区块链节点中分配一个区块链设备,用于承载与该发票标识对应的子区块链;将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上;响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上。该专利公开实施例能够在让发票信息记录到区块链的情况下减少发票信息泄露。
核心权利要求:响应于接收到发行发票事件上链请求,基于发行发票事件上链请求中包含的发票标识,在每个区块链节点中分配一个区块链设备,用于承载与该发票标识对应的子区块链; 将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上; 响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,其中,所述发票事件上链请求包括开票事件上链请求和发票报销事件上链请求,所述发票事件信息包括开票事件信息和发票报销事件信息。
- 在每个区块链节点中分配一个区块链设备包括: 基于该区块链节点中各区块链设备的未占用存储空间和中央处理单元CPU处理能力,分配区块链设备。
- 基于该区块链节点中各区块链设备的未占用存储空间和中央处理单元CPU处理能力,分配区块链设备,具体包括: 基于该区块链节点中各区块链设备的未占用存储空间,确定各区块链设备的第一分数; 基于该区块链节点中各区块链设备的CPU处理能力,确定各区块链设备的第二分数; 基于第一分数和第二分数,确定各区块链设备的总分数; 基于各区块链设备的总分数,分配区块链设备。
- 基于第一分数和第二分数,确定各区块链设备的总分数,具体包括: 将各区块链设备的第一分数和第二分数的加权和,确定为各区块链设备的总分数。
- 基于各区块链设备的总分数,分配区块链设备,包括:分配总分数最高的区块链设备,用于承载与该发票标识对应的子区块链。
- 基于各区块链设备的总分数,分配区块链设备,包括:从总分数超过预定总分数阈值的区块链设备中随机选取一个,用于承载与该发票标识对应的子区块链。
- 发行发票事件信息包括发票信息和发行发票事件发票转移信息, 所述将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上,包括: 在所述子区块链上记录一个区块,所述区块包括区块主体和区块头,所述区块主体包括发票信息和发行发票事件发票转移信息,所述区块头包括对所述发票信息和发行发票事件发票转移信息进行摘要运算得到的摘要值。
- 响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,具体包括: 如果所述发票事件上链请求是开票事件上链请求,从所述开票事件上链请求获取开票单位名称和报销单位名称; 当获取的开票单位名称和报销单位名称的组合具有预先对应的子区块链时,将所述开票事件上链请求中的发票标识对应的子区块链中已记录的发行发票事件信息重新记录到所述预先对应的子区块链; 将该开票事件上链请求中的开票事件信息,记录到所述预先对应的子区块链。
- 将所述开票事件上链请求中的发票标识对应的子区块链中已记录的发行发票事件信息重新记录到所述预先对应的子区块链,具体包括: 在所述预先对应的子区块链上增加一个区块,所述区块包括区块主体和区块头,所述区块主体包括发票信息和发行发票事件发票转移信息,所述区块头包括所述区块主体的摘要值和该子区块链上前一个区块的摘要值。
- 开票事件信息包括发票信息和开票事件发票转移信息, 所述将该开票事件上链请求中的开票事件信息,记录到所述预先对应的子区块链,具体包括: 在所述预先对应的子区块链上增加一个区块,所述区块包括区块主体和区块头,所述区块主体包括发票信息和开票事件发票转移信息,所述区块头包括所述区块的区块主体的摘要值和该子区块链上前一个区块的摘要值。
- 响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,具体包括: 如果所述发票事件上链请求是发票报销事件上链请求,从所述发票报销事件上链请求获取开票单位名称和报销单位名称; 当获取的开票单位名称和报销单位名称的组合具有预先对应的子区块链时,将该发票报销事件上链请求中的发票报销事件信息,记录到所述预先对应的子区块链。
- 发票报销事件信息包括发票信息和发票报销事件发票转移信息, 所述将该发票报销事件上链请求中的发票报销事件信息,记录到所述预先对应的子区块链,具体包括: 在所述预先对应的子区块链上增加一个区块,所述区块包括区块主体和区块头,所述区块主体包括发票信息和发票报销事件发票转移信息,所述区块头包括所述区块的区块主体的摘要值和该子区块链上前一个区块的摘要值。
- 一种发票区块链记录装置包括: 分配单元,用于响应于接收到发行发票事件上链请求,基于发行发票事件上链请求中包含的发票标识,在每个区块链节点中分配一个区块链设备,用于承载与该发票标识对应的子区块链; 第一记录单元,用于将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上; 第二记录单元,用于响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,其中,所述发票事件上链请求包括开票事件上链请求和发票报销事件上链请求,所述发票事件信息包括开票事件信息和发票报销事件信息。
- 一种区块链网关服务器包括: 存储器,存储有计算机可读指令; 处理器,读取存储器存储的计算机可读指令,以执行权利要求1-12中的任一个所述的方法。
- 一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-12中的任一个所述的方法。
发明内容
本发明实施例提供了一种发票区块链记录方法、装置、区块链网关服务器和介质,可以让发票信息上区块链的情况下减少发票信息泄露。
根据本公开实施例的一方面,公开了一种发票区块链记录方法,所述方法包括:
响应于接收到发行发票事件上链请求,基于发行发票事件上链请求中包含的发票标识,在每个区块链节点中分配一个区块链设备,用于承载与该发票标识对应的子区块链;
将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上;
响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,其中,所述发票事件上链请求包括开票事件上链请求和发票报销事件上链请求,所述发票事件信息包括开票事件信息和发票报销事件信息。
根据本公开实施例的一方面,公开了一种发票区块链记录装置,所述装置包括:
分配单元,用于响应于接收到发行发票事件上链请求,基于发行发票事件上链请求中包含的发票标识,在每个区块链节点中分配一个区块链设备,用于承载与该发票标识对应的子区块链;
第一记录单元,用于将发行发票事件上链请求中的发行发票事件信息记录在所述子区块链上;
第二记录单元,用于响应于接收到任何带有该发票标识的发票事件上链请求,将该发票事件上链请求中的发票事件信息,记录在所述子区块链上,其中,所述发票事件上链请求包括开票事件上链请求和发票报销事件上链请求,所述发票事件信息包括开票事件信息和发票报销事件信息。
根据本公开实施例的一方面,公开了一种区块链网关服务器,包括:存储器,存储有计算机可读指令;处理器,读取存储器存储的计算机可读指令,以执行以上所述的方法。
根据本公开实施例的一方面,公开了一种计算机程序介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的方法。
本公开实施例中,考虑到开票单位开出发票时,甚至于发行单位发行该发票时,该发票可能关联的环节是固定的,例如,发票发行后涉及开票环节、报销环节等,因此,对于这一发票,需要记录发行发票信息、开票信息、发票报销信息等,涉及发票发行单位、开票单位、员工、发票报销单位等。只有发票可能关联到的这些环节会关心发票上链信息,把各个发票的信息都统一上链到一条区块链上,容易信息泄露,且无关的单位也不会关心。因此,本公开实施例将区块链分成多个子区块链存储,每个子区块链只存储特定发票标识所关联的发票上链信息。当接收到发行发票事件上链请求时,基于发票标识,分配一个子区块链,将发行发票事件信息记录在所述子区块链上。当后续接收到任何带有该发票标识的发票事件上链请求(例如开票事件上链请求、发票报销事件上链请求)时,将相关发票事件信息,也记录在所述子区块链上。因此,一条子区块链只记载利益相关方的发票上链信息,不记载其它方的发票上链信息,大大减少了发票信息泄露的可能性,而且子区块链数目可以随意扩展,达到性能无上限的目的。
这是对此专利内容的大概罗列,还未进行细化学习,两日内会更新
原文:https://www.cnblogs.com/gdman/p/12327375.html