本发明涉及电子发票验证数据领域,更具体地,涉及一种用于对电子发票进行验证的方法及系统。
背景技术:
目前存在的电子发票查验系统都是在线查验服务,这种在线查验服务实质上都是基于发票几要素(如发票代码、发票号码、金额、开票日期等)为查询条件的发票查询业务。首先,这种查验方式仅针对电子发票信息进行查询验证,无法对电子发票版式文件的真伪进行验证;其次,查验系统无法直接给出查验结果,需用户根据查询结果与实际接收到的发票进行人工票面比对并记录比对结果,因此不支持全自动查验,对电子发票后续的信息化财务应用造成不便;再次,无法满足特殊场景下的离线查验需求;最后,无法验证电子发票信息与版式文件间的关联性,存在使用真发票的票面要素套打假发票的安全漏洞。
现有技术(申请号:201611248924.9)一种电子凭据统一查验方法及其系统,用于电子凭据统一查验系统,包括接收任意电子凭据查询平台输入的查验请求,查验请求包括待查验的电子凭据数据;通过预设算法生成电子凭据数据对应的查验码;依据查验码,在后端预设存储数据库内查询是否预先存储有与查验码相同的验证码;若有,返回电子凭据数据和查验成功的结果提示至对应的电子凭据查询平台;若没有,返回电子凭据不存在的错误提示至对应的电子凭据查询平台。然而,现有技术,不能对电子发标的版式文件进行验证,在对电子发票的数据进行验证时,并不确认发票的版式是否正确。
因此,需要一种技术,以实现对电子发票进行验证的技术。
技术实现要素:
本发明技术方案提供一种用于对电子发票进行验证的方法及系统,以解决如何对电子发票进行验证的问题。
为了解决上述问题,本发明提供了一种用于对电子发票进行验证的方法,方法包括:
从验证请求方接收与待验证的电子发票相关联的发票验证请求,发票验证请求包括电子发票的元数据和版式文件、发票格式和发票标识,根据发票格式使用特定摘要算法对电子发票元数据和版式文件进行计算获得第一发票摘要信息或第二发票摘要信息;
接收发票验证请求,根据电子发票的发票格式和发票标识进行检索,以获取预先存储与待验证的电子发票相关联的标准发票元数据摘要信息或标准发票版式摘要信息;
将标准发票元数据摘要信息与第一发票摘要信息进行对比以确定电子发票验证的对比结果,或将标准发票版式摘要信息与第二发票摘要信息进行对比以确定电子发票验证的对比结果;
将对比结果发送至验证请求方。
优选地,还包括:
通过查验请求方读取待验证的电子发票,选择电子发票的格式类型;
根据电子发票的格式类型使用特定摘要算法对提交的发票元数据或版式文件进行计算获得电子发票的第一发票摘要信息或第二发票摘要信息。
基于本发明的另一方面,提供一种用于对电子发票元数据进行离线验证的方法:
提取电子发票的开票数据和电子签名;
通过核准方公钥对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第三发票摘要信息;使用特定摘要算法对电子发票的开票数据进行计算,获取第四发票摘要信息;
将第三发票摘要信息与第四发票摘要信息进行对比以确定电子发票验证的对比结果。
基于本发明的另一方面,提供一种用于对电子发票版式文件进行离线验证的方法,方法包括:
通过待验证的电子发票的版式文件中解析出电子发票的开票数据和电子签名;通过核准方公钥证书对电子签名解密获取电子发票的第五发票摘要信息;
使用特定摘要算法对电子发票的开票数据进行计算,获取第六发票摘要信息;
将第五发票摘要信息与第六发票摘要信息进行对比以确定电子发票验证的对比结果。
优选地,通过查验请求方读取待验证的电子发票,选择电子发票的格式类型。
优选地,当对比结果为一致时,待验证的电子发票为真;
当对比结果不一致时,待验证的电子发票为假。
基于本发明的另一方面,提供一种用于对电子发票进行验证的系统,系统包括:
请求单元,用于从验证请求方接收与待验证的电子发票相关联的发票验证请求,发票验证请求包括电子发票的元数据或版式文件、发票格式和发票标识,根据发票格式使用特定摘要算法对元数据或版式文件进行计算获得第一发票摘要信息或第二发票摘要信息,将第一发票摘要信息或第二发票摘要信息、发票格式和发票标识发送至接收单元;
接收单元,用于接收发票验证请求,根据电子发票的发票格式和发票标识进行检索,以获取预先存储与待验证的电子发票相关联的标准发票元数据摘要信息或标准发票版式摘要信息;
第一对比单元,用于将标准发票元数据摘要信息与第一发票摘要信息进行对比以确定电子发票验证的对比结果,或用于将标准发票版式摘要信息与第二发票摘要信息进行对比以确定电子发票验证的对比结果;
发送单元,用于将对比结果发送至验证请求方。
优选地,还包括选择单元,选择单元用于:
通过查验请求方读取待验证的电子发票,选择电子发票的格式类型;
第一计算单元,根据电子发票的格式类型使用特定摘要算法对提交的发票元数据或版式文件进行计算获得电子发票的第一发票摘要信息或第二发票摘要信息。
基于本发明的另一方面,提供一种用于对电子发票进行离线验证的系统,系统包括:
提取单元,用于提取电子发票的开票数据和电子签名,用于通过核准方公钥对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第三发票摘要信息;
第二计算单元,使用特定摘要算法对电子发票的开票数据进行计算,获取第四发票摘要信息;
第二对比单元,用于将第三发票摘要信息与第四发票摘要信息进行对比以确定电子发票验证的对比结果。
基于本发明的另一方面,提供一种用于对电子发票版式文件进行离线验证的系统,系统包括:
解析单元,用于通过待验证的电子发票的版式文件中解析出电子发票的开票数据和电子签名;
第三计算单元,用于通过核准方公钥对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第五发票摘要信息;使用特定摘要算法对电子发票的开票数据进行计算,获取第六发票摘要信息;
第三对比单元,用于将第五发票摘要信息与第六发票摘要信息进行对比以确定电子发票验证的对比结果。
优选地,通过查验请求方读取待验证的电子发票,选择电子发票的格式类型。
优选地,第三对比单元还用于:当对比结果为一致时,待验证的电子发票为真;
当对比结果不一致时,待验证的电子发票为假。
本发明技术方案提供一种用于对电子发票进行验证的方法及系统,其中方法包括:从验证请求方接收与待验证的电子发票相关联的发票验证请求,发票验证请求包括电子发票的元数据和版式文件、发票格式和发票标识,使用特定摘要算法对元数据或版式文件进行计算获得第一发票摘要信息或第二发票摘要信息;接收发票验证请求,根据电子发票的发票格式和发票标识进行检索,以获取预先存储与待验证的电子发票相关联的标准发票元数据摘要信息或标准发票版式摘要信息;将标准发票元数据摘要信息与第一发票摘要信息进行对比以确定电子发票验证的对比结果,或将标准发票版式摘要信息与第二发票摘要信息进行对比以确定电子发票验证的对比结果;将对比结果发送至验证请求方。本发明技术方案实现了将电子发票进行直观展现,在查验过程中无需手工录入即可进行基于发票全票面数据的真伪验证,确保电子发票的所见即所验,解决了以往发票查验系统无法基于全票面信息进行真伪验证的问题,支持系统自动查验,为电子发票全程电子化应用提供支撑。本发明技术方案为用户提供快捷便利的查验服务,在无法联网的情况下,支持对电子发票的离线验证,通过客户端缓存的核准方公钥证书验证电子发票的真伪。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为根据本发明优选实施方式的用于对电子发票进行在线验证的方法流程图;
图2为根据本发明优选实施方式的用于对电子发票进行验证的系统模型示意图;
图3为根据本发明优选实施方式的用于对电子发票进行在线验证的方法流程图;
图4为根据本发明优选实施方式的用于对电子发票进行离线验证的方法流程图;
图5为根据本发明优选实施方式的用于对电子发票进行离线验证的方法流程图;
图6为根据本发明优选实施方式的用于对电子发票进行离线验证的方法流程图;
图7为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图;以及
图8为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图;以及
图9为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图1为根据本发明优选实施方式的用于对电子发票进行在线验证的方法流程图。为使用户在任意电子发票查询平台输入查验请求后均能够进行电子发票的查验,提高了查验的便利性和查验效率。本申请提出了一种电子发票统一查验方法,实现对电子发票进行统一查验。本申请提出了针对电子发票元数据及版式文件的验证方法,本申请既可进行元数据查验也可进行文件查验,支持在线验证和离线验证两种模式。
本申请在线验证通过提取发票数据或版式文件特征摘要的方式,以发票代码、发票号码等作为发票标识的索引数据项,在查验服务平台端查询发票开具时保存的发票数据摘要和版式摘要,通过比对查验客户端上传的摘要与服务器端存储的摘要数据,获取验证结果。如图1所示,一种用于对电子发票进行验证的方法,方法包括:
优选地,在步骤101:从验证请求方接收与待验证的电子发票相关联的发票验证请求,发票验证请求包括电子发票元数据和版式文件、发票格式和发票标识,使用摘要算法对元数据或版式文件进行计算获得第一发票摘要信息或第二发票摘要信息。本申请发票标识包括发票代码、发票号码。
优选地,在步骤102:接收发票验证请求,使用摘要算法对发票元数据进行计算获得第一发票摘要信息或者对发票版式文件进行计算获得第二发票摘要信息,根据电子发票的发票格式和发票标识进行检索,以获取预先存储与待验证的电子发票相关联的标准发票元数据摘要信息或标准发票版式摘要信息;
优选地,在步骤103:将标准发票元数据摘要信息与第一发票摘要信息进行对比以确定电子发票验证的对比结果,或将标准发票版式摘要信息与第二发票摘要信息进行对比以确定电子发票验证的对比结果;
优选地,在步骤104:将对比结果发送至验证请求方。
优选地,方法还包括:
通过查验请求方读取待验证的电子发票,选择电子发票的格式类型;
根据电子发票的格式类型使用特定摘要算法对提交的发票元数据或版式文件进行计算获得电子发票的第一发票摘要信息或第二发票摘要信息。
优选地,当对比结果为一致时,待验证的电子发票为真;当对比结果不一致时,待验证的电子发票为假。
本申请提供的一种电子发票在线验证方法,首先,电子发票开票数据发送至核准系统,核准通过后由核准系统进行签名生成电子发票元数据,完成电子发票开具业务。由电子发票核准系统使用特定摘要算法计算发票开具数据的摘要并与发票元数据进行关联存储;核准系统将发票数据摘要信息同步至查验服务平台端;开具服务平台使用特定摘要算法计算版式文件的特征摘要,将版式文件摘要与发票要素关联后上传至查验服务平台进行存储。图2为根据本发明优选实施方式的用于对电子发票进行验证的系统模型示意图。
图3为根据本发明优选实施方式的用于对电子发票进行验证的方法流程图。如图3所示,用户使用查验客户端读取待验证的电子发票,电子发票可以是结构化数据格式、也可是版式文件格式,选择待验证发票的格式类型,包括电子发票的发票元数据、版式文件,提交验证请求。
查验客户端使用特定算法计算电子发票的特征摘要,将发票摘要信息、发票格式以及对应的发票代码、发票号码发送至查验服务平台。
查验服务平台根据发票代码、发票号码、发票格式查询出对应的发票特征摘要,将查询到的特征摘要与客户端请求中的特征摘要进行比对,将比对结果返回至查验客户端。
最后通过查验客户端接收到查验服务平台返回的比对结果,当查验服务平台返回的比对结果为不一致时,即判定查验的电子发票为假;当查验服务平台返回的比对结果为一致时,即判定查验的电子发票为真。
本发明实施方式基于pki技术,支持针对电子发票的离线验证,由查验客户端在本地维护电子发票核准方的公钥证书,在客户端不具备网络通信条件时,使用公钥数字证书验证电子发票签名数据,实现离线验证功能。
图4为根据本发明优选实施方式的用于对电子发票进行离线验证的方法流程图。如图4所示,一种用于对电子发票元数据进行离线验证的方法,方法包括:
优选地,在步骤401:提取电子发票的开票数据和电子签名;
优选地,在步骤402:通过核准方公钥对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第三发票摘要信息,使用特定摘要算法对电子发票的开票数据进行计算,获取第四发票摘要信息;
优选地,在步骤403:通过将第三发票摘要信息与第四发票摘要信息进行对比以确定电子发票验证的对比结果。
图5为根据本发明优选实施方式的用于对电子发票版式文件进行离线验证的方法流程图。如图5所示,一种用于对电子发票进行验证的方法,方法包括:
优选地,在步骤501:通过待验证的电子发票的版式文件中解析出电子发票的开票数据和电子签名。
优选地,在步骤502:通过核准方公钥证书对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第五发票摘要信息;通过特定摘要算法对电子发票的开票数据进行计算,获取第六发票摘要信息。
优选地,在步骤503:通过将第五发票摘要信息与第六发票摘要信息进行对比以确定电子发票验证的对比结果。
优选地,通过查验请求方读取待验证的电子发票,选择电子发票的格式类型。
优选地,当对比结果为一致时,待验证的电子发票为真;当对比结果不一致时,待验证的电子发票为假。
如图6所示,本申请提供一种电子发票离线验证方法,首先,用户使用查验客户端读取待验证的电子发票,并选择发票的格式类型,提交验证请求。
当发票格式类型为元数据时,验证客户端使用核准方公钥证书解密电子发票元数据中的核准方数字签名获得摘要a,再使用特定摘要算法对电子发票开票数据做摘要运算获得a’,对比a和a’的值,若相同,则判定为真发票;若不相同,则判定为假发票。
当发票格式类型为版式文件时,验证客户端从发票版式文件中解析出电子发票元数据(含发票开票数据和签名数据),使用核准方公钥证书解密签名数据获得摘要b,再使用特定摘要算法对电子发票开票数据做摘要运算获得b’,对比b和b’的值,若相同,则判定为真发票;若不相同,则判定为假发票。
图7为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图。如图7所示,一种用于对电子发票进行验证的系统,系统包括:
请求单元701,用于从验证请求方接收与待验证的电子发票相关联的发票验证请求,发票验证请求包括电子发票的元数据或版式文件、发票格式和发票标识,请求单元使用特定摘要算法对发票元数据或版式文件进行计算获得第一发票摘要信息或第二发票摘要信息,将第一发票摘要信息或第二发票摘要信息、发票格式和发票标识发送至接收单元。本申请发票标识包括发票代码、发票号码。
接收单元702,用于接收发票验证请求,根据电子发票的发票格式和发票标识进行检索,以获取预先存储与待验证的电子发票相关联的标准发票元数据摘要信息或标准发票版式摘要信息。
第一对比单元703,用于将标准发票元数据摘要信息与第一发票摘要信息进行对比以确定电子发票验证的对比结果,或者用于将标准发票版式摘要信息与第二发票摘要信息进行对比以确定电子发票验证的对比结果。优选地,第一对比单元703还用于:当对比结果为一致时,待验证的电子发票为真;当对比结果不一致时,待验证的电子发票为假。
发送单元704,用于将对比结果发送至验证请求方。
优选地,还包括选择单元,选择单元用于:通过查验请求方读取待验证的电子发票,选择电子发票的格式类型;第一计算单元,根据电子发票的格式类型使用特定摘要算法对提交的发票元数据或版式文件进行计算获得电子发票的第一发票摘要信息或第二发票摘要信息。
图8为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图。如图8所示,一种用于对电子发票元数据进行离线验证的系统,系统包括:
提取单元801,用于提取电子发票的开票数据和电子签名,通过核准方公钥对电子签名解析,获取电子发票的第三发票摘要信息;
第二计算单元802,通过特定摘要算法对电子发票的开票数据进行计算,获取第四发票摘要信息;
第二对比单元803,用于将第三发票摘要信息与第四发票摘要信息进行对比以确定电子发票验证的对比结果。当对比结果为一致时,待验证的电子发票为真;当对比结果不一致时,待验证的电子发票为假。
优选地,系统还用于通过查验请求方读取待验证的电子发票,选择电子发票的格式类型。
图9为根据本发明优选实施方式的用于对电子发票进行验证的系统结构图。如图9所示,一种用于对电子发票版式文件进行离线验证的系统,系统包括:
解析单元901,用于通过待验证的电子发票的版式文件中解析出电子发票的开票数据和电子签名;
第三计算单元902,用于通过核准方公钥对待验证的电子发票的核准方数据签名进行解析,获取电子发票的第五发票摘要信息;通过特定摘要算法对电子发票的开票数据进行计算,获取第六发票摘要信息;
第三对比单元903,用于将第五发票摘要信息与第六发票摘要信息进行对比以确定电子发票验证的对比结果。当对比结果为一致时,待验证的电子发票为真;当对比结果不一致时,待验证的电子发票为假。
优选地,系统还用于通过查验请求方读取待验证的电子发票,选择电子发票的格式类型。
本申请公开的一种电子发票统一查验系统,用于对电子发票进行统一查验。本申请提供的一种支持离线验证的电子发票(含元数据和版式文件)查验方法及系统,支持针对多种格式的电子发票进行真伪验证;通过从版式文件中提取电子发票元数据,可确保用户提交验证的发票为用户实际接收到的发票,达到所验即所见的目的;验证过程无需人工录入发票信息,验证结果由系统自动得出,支持财务应用系统的接入,为电子发票的无纸化应用提供支撑。
本申请实施方式将电子发票进行直观展现,在查验过程中无需手工录入即可进行基于发票全票面数据的真伪验证,确保电子发票的所见即所验,解决了以往发票查验系统无法基于全票面信息进行真伪验证的问题,本申请支持系统自动查验,为电子发票全程电子化应用提供支撑。本申请为用户提供快捷便利的查验服务,在无法联网的情况下,支持对电子发票的离线验证,通过客户端缓存的核准方公钥证书验证电子发票的真伪。
已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个//该[装置、组件等]”都被开放地解释为装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。