CN104680202A - 一种发票二维码生成和验证方法 - Google Patents
一种发票二维码生成和验证方法 Download PDFInfo
- Publication number
- CN104680202A CN104680202A CN201310642203.6A CN201310642203A CN104680202A CN 104680202 A CN104680202 A CN 104680202A CN 201310642203 A CN201310642203 A CN 201310642203A CN 104680202 A CN104680202 A CN 104680202A
- Authority
- CN
- China
- Prior art keywords
- invoice
- code
- quick response
- dimension code
- response code
- 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.)
- Granted
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开一种发票二维码生成和验证方法,发票二维码生成方法包括以下步骤:计算发票二维码所能存储的最大数据量;根据最大数据量提取发票关键信息,生成发票身份码;对发票身份码进行加密生成二维码密文;根据二维码密文生成发票二维码。发票二维码验证方法包括以下步骤:扫描发票二维码;提取出二维码密文;对二维码密文进行解密,获取发票身份码;对发票身份码进行解码,获取发票关键信息;将发票关键信息与纸质发票上的信息进行一一核对,若全部一致则证明该发票为真发票。本发明生成的发票二维码具有防伪功能,保证了发票的真实性,适用于有保密及防伪要求的场合,同时提供了离线验证发票真伪的手段,可有效打击发票造假现象。
Description
技术领域
本发明涉及票据防伪领域,具体而言,涉及一种发票二维码生成和验证方法。
背景技术
目前全国网络发票的推广工作正在全面展开,为了实现网络发票防伪和查验,需要在纸质发票上印制发票二维码,纳税人通过扫描该二维码以进行发票真伪查验。
二维码具有如下特点:(1)高密度编码,信息容量大,比普通条码信息量高约几十倍;(2)编码范围广,二维码可以把包括图片、声音、文字(包括多种语言文字)、签字、指纹等在内的可以数字化的信息进行编码;(3)容错能力强,具有纠错功能,当二维码因穿孔、污损等造成局部损坏时,照样可以正确识读,损坏面积达50%时仍可恢复信息;(4)译码可靠性高,二维码的误码率不超过千万分之一,比普通条码译码错误率百万分之二要低的多;(5)成本低、易制作、持久耐用。
综上所述,二维码具有信息存储量大、追踪性高、抗损坏性强、备援性大、成本低等优良特性。查验时只需要扫描发票二维码信息即可显示发票的关键信息,因此,二维码的应用可以大大提高发票持有者对发票真伪查验的便利性。
但是,现有技术中,二维码包含的信息没有经过加密处理,造假者只要拥有相应的二维码识读设备就可以识读出二维码包含的信息,从而根据二维码包含的信息的规律进行造假,这样,二维码就难以在一些有保密要求和防伪要求的场合下应用。
发明内容
本发明提供一种发票二维码生成和验证方法,用以生成具有防伪功能的发票二维码,并对发票二维码的真伪进行验证。
为达到上述目的,本发明提供了一种发票二维码生成方法,包括以下步骤:
根据发票二维码生成区域的大小,计算发票二维码所能存储的最大数据量;
根据最大数据量提取发票关键信息,利用设定规则对发票关键信息进行编码,生成发票身份码;
利用一加密算法及私钥对发票身份码进行加密,生成二维码密文;
在二维码图形生成模块中设定一生成规则,将二维码密文发送至二维码图形生成模块,二维码图形生成模块利用生成规则生成发票二维码。
进一步的,私钥由认证中心提供。
进一步的,私钥存放在USB(Universal Serial Bus,通用串行总线)接口的硬件设备中。
进一步的,发票关键信息包括以下至少一项:发票代码、发票号码、发票金额、收款方纳税人识别号、付款方纳税人识别号、开票人。
进一步的,加密算法为非对称加密算法。
为达到上述目的,本发明还提供了一种发票二维码验证方法,包括以下步骤:
利用二维码扫描设备对发票二维码进行扫描,将扫描得到的发票二维码信息发送至二维码识读模块;
二维码识读模块对发票二维码信息进行识读,提取出二维码密文;
利用一解密算法及数字证书对二维码密文进行解密,获取发票身份码;
利用设定规则对发票身份码进行解码,获取发票关键信息;
将发票关键信息与纸质发票上的信息进行一一核对,若全部一致则证明该发票为真发票。
进一步的,当发票关键信息与纸质发票上的信息不一致时,证明该发票为假发票。
进一步的,数字证书由认证中心提供。
进一步的,数字证书存放在本地或目录服务器中。
本发明生成的发票二维码具有防伪功能,保证了发票的真实性,适用于有保密及防伪要求的场合,同时提供了离线验证发票真伪的手段,可有效打击发票造假现象。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例的发票二维码生成方法流程图;
图2为本发明一个实施例的发票二维码验证方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的发票二维码生成方法可用于生产商在销售产品时为用户提供防伪发票,图1为本发明一个实施例的发票二维码生成方法流程图,如图所示,该方法包括以下步骤:
S110:根据发票二维码生成区域的大小,计算发票二维码所能存储的最大数据量;
其中,发票二维码所能存储的最大数据量受到二维码生成区域大小的限制,最大数据量一般以字节为单位。
S120:根据最大数据量提取发票关键信息,利用设定规则对发票关键信息进行编码,生成发票身份码;
以2cm*2cm大小的二维码区域为例,一般可选取发票代码、发票号码、发票金额、收款方纳税人识别号、付款方纳税人识别号、开票人作为发票关键信息。在本实施例中,将提取出的发票关键信息发送至一编码生成器,编码生成器中预设有编码规则,编码生成器对发票关键信息进行编码,输出发票身份码。
S130:利用一加密算法及私钥对发票身份码进行加密,生成二维码密文;
其中,私钥由认证中心存放在USB接口的硬件设备中提供给生产商,一般可存储在USB-Key中。对发票身份码加密采用的加密算法为非对称加密算法。
S140:在二维码图形生成模块中设定一生成规则,将二维码密文发送至二维码图形生成模块,二维码图形生成模块利用生成规则生成发票二维码。
用户购买商品时,生产商为其开具发票,并在发票票面加入该发票的发票二维码,将发票以纸质发票或电子发票的形式提供给用户。
用户购买商品获取带二维码的发票后,可以对该发票的真伪进行验证,本发明提供的发票二维码验证方法可用于对包含发票二维码的发票进行真伪验证,图2为本发明一个实施例的发票二维码验证方法流程图,如图所示,该方法包括以下步骤:
S210:利用二维码扫描设备对发票二维码进行扫描,将扫描得到的发票二维码信息发送至二维码识读模块;
通过二维码扫描设备对纸质发票或电子发票上的二维码进行扫描,获取发票二维码信息。
S220:二维码识读模块对发票二维码信息进行识读,提取出二维码密文;
S230:利用一解密算法及数字证书对二维码密文进行解密,获取发票身份码;
其中,数字证书由认证中心提供,数字证书与发票二维码生成过程使用的私钥是对应的,数字证书存放在本地或目录服务器中,以供用户或其他第三方查询,其中,目录服务器可为X.500目录服务器。
S240:利用设定规则对发票身份码进行解码,获取发票关键信息;
通过对发票身份码进行解码获取在发票生成过程S120中加入的发票关键信息。
S250:将发票关键信息与纸质发票上的信息进行一一核对,若全部一致则证明该发票为真发票。
其中,当发票关键信息与纸质发票上的信息存在不一致的项目时,证明该发票为假发票。
本发明生成的发票二维码具有防伪功能,保证了发票的真实性,适用于有保密及防伪要求的场合,同时提供了离线验证发票真伪的手段,可有效打击发票造假现象。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
Claims (9)
1.一种发票二维码生成方法,其特征在于,包括以下步骤:
根据发票二维码生成区域的大小,计算发票二维码所能存储的最大数据量;
根据所述最大数据量提取发票关键信息,利用设定规则对所述发票关键信息进行编码,生成发票身份码;
利用一加密算法及私钥对所述发票身份码进行加密,生成二维码密文;
在二维码图形生成模块中设定一生成规则,将所述二维码密文发送至二维码图形生成模块,二维码图形生成模块利用所述生成规则生成发票二维码。
2.根据权利要求1所述的发票二维码生成方法,其特征在于,所述私钥由认证中心提供。
3.根据权利要求1所述的发票二维码生成方法,其特征在于,所述私钥存放在USB接口的硬件设备中。
4.根据权利要求1所述的发票二维码生成方法,其特征在于,所述发票关键信息包括以下至少一项:发票代码、发票号码、发票金额、收款方纳税人识别号、付款方纳税人识别号、开票人。
5.根据权利要求1所述的发票二维码生成方法,其特征在于,所述加密算法为非对称加密算法。
6.一种发票二维码验证方法,其特征在于,包括以下步骤:
利用二维码扫描设备对发票二维码进行扫描,将扫描得到的发票二维码信息发送至二维码识读模块;
二维码识读模块对所述发票二维码信息进行识读,提取出二维码密文;
利用一解密算法及数字证书对所述二维码密文进行解密,获取发票身份码;
利用设定规则对所述发票身份码进行解码,获取发票关键信息;
将所述发票关键信息与纸质发票上的信息进行一一核对,若全部一致则证明该发票为真发票。
7.根据权利要求6所述的发票二维码验证方法,其特征在于,当所述发票关键信息与纸质发票上的信息不一致时,证明该发票为假发票。
8.根据权利要求6所述的发票二维码验证方法,其特征在于,所述数字证书由认证中心提供。
9.根据权利要求6所述的发票二维码验证方法,其特征在于,所述数字证书存放在本地或目录服务器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310642203.6A CN104680202B (zh) | 2013-12-03 | 2013-12-03 | 一种发票二维码生成和验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310642203.6A CN104680202B (zh) | 2013-12-03 | 2013-12-03 | 一种发票二维码生成和验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104680202A true CN104680202A (zh) | 2015-06-03 |
CN104680202B CN104680202B (zh) | 2018-08-10 |
Family
ID=53315217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310642203.6A Active CN104680202B (zh) | 2013-12-03 | 2013-12-03 | 一种发票二维码生成和验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104680202B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106211145A (zh) * | 2016-06-23 | 2016-12-07 | 江西洪都航空工业集团有限责任公司 | 一种无线智能产品快速登陆的控制方法 |
CN106372205A (zh) * | 2016-08-31 | 2017-02-01 | 张宏海 | 使用二维码录入发票信息的方法 |
CN106650870A (zh) * | 2016-11-01 | 2017-05-10 | 南京理工大学 | 用于接入的安全二维码生成方法 |
CN106685665A (zh) * | 2017-01-24 | 2017-05-17 | 广州天宁信息技术有限公司 | 一种有效电子凭据生成、公开验证方法、装置及系统 |
CN106875238A (zh) * | 2017-01-25 | 2017-06-20 | 金蝶软件(中国)有限公司 | 发票信息生成方法和装置 |
CN106934618A (zh) * | 2017-01-24 | 2017-07-07 | 广州天宁信息技术有限公司 | 一种电子凭据生成、公开验证方法、装置及系统 |
CN106934442A (zh) * | 2017-03-27 | 2017-07-07 | 百望电子发票数据服务有限公司 | 一种扫码收取电子发票的方法与系统 |
CN106952093A (zh) * | 2017-01-24 | 2017-07-14 | 广州天宁信息技术有限公司 | 一种空白电子凭据生成、公开验证方法、装置及系统 |
CN109147151A (zh) * | 2018-09-12 | 2019-01-04 | 鸿博股份有限公司 | 一票一码的彩票防伪方法及系统 |
CN109302292A (zh) * | 2018-11-01 | 2019-02-01 | 北京冠群信息技术股份有限公司 | 文件检验方法、装置、电子设备及存储介质 |
CN109389198A (zh) * | 2018-09-05 | 2019-02-26 | 航天信息股份有限公司 | 一种基于二维码技术的发票信息存储方法及系统 |
CN111091430A (zh) * | 2019-11-29 | 2020-05-01 | 航天信息股份有限公司 | 一种开票二维码处理方法及系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101281581A (zh) * | 2007-09-27 | 2008-10-08 | 北京数字证书认证中心有限公司 | 一种检验纸制文档内容是否被篡改的方法 |
CN101296280A (zh) * | 2007-04-26 | 2008-10-29 | 佳能株式会社 | 图像处理装置及其控制方法 |
CN101639899A (zh) * | 2008-07-30 | 2010-02-03 | 华为技术有限公司 | 二维码编码方法、解码方法及装置、终端 |
CN101859397A (zh) * | 2009-04-10 | 2010-10-13 | 银河联动信息技术(北京)有限公司 | 二维阵列码 |
CN102129589A (zh) * | 2011-02-10 | 2011-07-20 | 谢仁康 | 非对称加密二维码防伪方法 |
CN102546174A (zh) * | 2011-12-20 | 2012-07-04 | 贾松仁 | 二维码加密/解密方法和防伪方法 |
CN102779263A (zh) * | 2012-06-19 | 2012-11-14 | 袁开国 | 基于pki和数字签名的可信二维码方案 |
CN102880833A (zh) * | 2012-08-28 | 2013-01-16 | 福州讯华信息技术有限公司 | 文档二维码防伪验证方法 |
CN102930317A (zh) * | 2012-11-30 | 2013-02-13 | 中企永联数据交换技术(北京)有限公司 | 图书二维码标识生成装置、二维码标识识别装置及系统 |
CN202758371U (zh) * | 2012-07-24 | 2013-02-27 | 吉林省通程科技有限公司 | 一种防伪图码生成系统 |
CN103198344A (zh) * | 2013-03-01 | 2013-07-10 | 重庆市远大印务有限公司 | 税控安全二维码编码、解码处理方法 |
-
2013
- 2013-12-03 CN CN201310642203.6A patent/CN104680202B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296280A (zh) * | 2007-04-26 | 2008-10-29 | 佳能株式会社 | 图像处理装置及其控制方法 |
CN101281581A (zh) * | 2007-09-27 | 2008-10-08 | 北京数字证书认证中心有限公司 | 一种检验纸制文档内容是否被篡改的方法 |
CN101639899A (zh) * | 2008-07-30 | 2010-02-03 | 华为技术有限公司 | 二维码编码方法、解码方法及装置、终端 |
CN101859397A (zh) * | 2009-04-10 | 2010-10-13 | 银河联动信息技术(北京)有限公司 | 二维阵列码 |
CN102129589A (zh) * | 2011-02-10 | 2011-07-20 | 谢仁康 | 非对称加密二维码防伪方法 |
CN102546174A (zh) * | 2011-12-20 | 2012-07-04 | 贾松仁 | 二维码加密/解密方法和防伪方法 |
CN102779263A (zh) * | 2012-06-19 | 2012-11-14 | 袁开国 | 基于pki和数字签名的可信二维码方案 |
CN202758371U (zh) * | 2012-07-24 | 2013-02-27 | 吉林省通程科技有限公司 | 一种防伪图码生成系统 |
CN102880833A (zh) * | 2012-08-28 | 2013-01-16 | 福州讯华信息技术有限公司 | 文档二维码防伪验证方法 |
CN102930317A (zh) * | 2012-11-30 | 2013-02-13 | 中企永联数据交换技术(北京)有限公司 | 图书二维码标识生成装置、二维码标识识别装置及系统 |
CN103198344A (zh) * | 2013-03-01 | 2013-07-10 | 重庆市远大印务有限公司 | 税控安全二维码编码、解码处理方法 |
Non-Patent Citations (1)
Title |
---|
中国物品编码中心著: "《QR code二维数码技术与应用》", 31 January 2002 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106211145A (zh) * | 2016-06-23 | 2016-12-07 | 江西洪都航空工业集团有限责任公司 | 一种无线智能产品快速登陆的控制方法 |
CN106372205A (zh) * | 2016-08-31 | 2017-02-01 | 张宏海 | 使用二维码录入发票信息的方法 |
CN106650870A (zh) * | 2016-11-01 | 2017-05-10 | 南京理工大学 | 用于接入的安全二维码生成方法 |
CN106934618B (zh) * | 2017-01-24 | 2019-08-16 | 广州天宁信息技术有限公司 | 一种电子凭据生成、公开验证方法、装置及系统 |
CN106685665A (zh) * | 2017-01-24 | 2017-05-17 | 广州天宁信息技术有限公司 | 一种有效电子凭据生成、公开验证方法、装置及系统 |
CN106934618A (zh) * | 2017-01-24 | 2017-07-07 | 广州天宁信息技术有限公司 | 一种电子凭据生成、公开验证方法、装置及系统 |
CN106952093B (zh) * | 2017-01-24 | 2020-01-14 | 广州天宁信息技术有限公司 | 一种空白电子凭据生成、公开验证方法、装置及系统 |
CN106952093A (zh) * | 2017-01-24 | 2017-07-14 | 广州天宁信息技术有限公司 | 一种空白电子凭据生成、公开验证方法、装置及系统 |
CN106875238A (zh) * | 2017-01-25 | 2017-06-20 | 金蝶软件(中国)有限公司 | 发票信息生成方法和装置 |
CN106875238B (zh) * | 2017-01-25 | 2021-02-02 | 金蝶票据云科技(深圳)有限公司 | 发票信息生成方法和装置 |
CN106934442A (zh) * | 2017-03-27 | 2017-07-07 | 百望电子发票数据服务有限公司 | 一种扫码收取电子发票的方法与系统 |
CN109389198A (zh) * | 2018-09-05 | 2019-02-26 | 航天信息股份有限公司 | 一种基于二维码技术的发票信息存储方法及系统 |
CN109147151A (zh) * | 2018-09-12 | 2019-01-04 | 鸿博股份有限公司 | 一票一码的彩票防伪方法及系统 |
CN109147151B (zh) * | 2018-09-12 | 2021-04-09 | 鸿博股份有限公司 | 一票一码的彩票防伪方法及系统 |
CN109302292A (zh) * | 2018-11-01 | 2019-02-01 | 北京冠群信息技术股份有限公司 | 文件检验方法、装置、电子设备及存储介质 |
CN109302292B (zh) * | 2018-11-01 | 2022-02-01 | 北京冠群信息技术股份有限公司 | 文件检验方法、装置、电子设备及存储介质 |
CN111091430A (zh) * | 2019-11-29 | 2020-05-01 | 航天信息股份有限公司 | 一种开票二维码处理方法及系统 |
CN111091430B (zh) * | 2019-11-29 | 2024-04-09 | 航天信息股份有限公司 | 一种开票二维码处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104680202B (zh) | 2018-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104680202A (zh) | 一种发票二维码生成和验证方法 | |
CN103198344A (zh) | 税控安全二维码编码、解码处理方法 | |
JP6489464B2 (ja) | 光学コード、情報伝達方法、及び認証方法 | |
KR20020047131A (ko) | 데이터 보호 방법 | |
CN103295143A (zh) | 商品防伪验证方法 | |
CN107944526B (zh) | 一种防篡改防复制的二维码防伪方法 | |
CN101201886A (zh) | 一种识别商品的三阖码 | |
CN104809490A (zh) | 一种基于多维码的证卡防伪系统及其认证方法 | |
CN107908932B (zh) | 一种基于l算法的数字货币防伪及验证方法、系统和设备 | |
CN102385710A (zh) | 一种真伪验证方法和系统 | |
CN104008322A (zh) | 基于可靠数字签名的二维码发布者身份认证方法 | |
CN103810457A (zh) | 基于可靠数字签名和二维码的离线证照防伪方法 | |
CN104268610A (zh) | 一种分级qr码生成方法及读取方法 | |
CN104915701A (zh) | 一种自加密自校验的二维码编码解码方法 | |
CN104574119B (zh) | 一种商品鉴真溯源的方法 | |
CN104408502A (zh) | 基于cpk的二维码生成和验证方法及装置 | |
CN104951827A (zh) | 一种复合二维码及其识别系统 | |
CN102842053B (zh) | 一种防伪图码标签及其制造方法 | |
CN114786160B (zh) | 一种nfc标签密钥管理系统 | |
CN104424568A (zh) | 采用电路核心芯片id号为标识的鉴真防伪溯源系统 | |
CN102054250A (zh) | 获得使用产品的授权密钥的系统和方法 | |
CN103971245A (zh) | 一种用于商品电子防伪的组合加密系统 | |
CN105912894B (zh) | 一种将证件号码用于电子印章印文防伪的方法 | |
CN105427102A (zh) | 基于金融ic卡的认证方法及其相应的设备和系统 | |
Eldefrawy et al. | Banknote validation through an embedded RFID chip and an NFC-enabled smartphone |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |