CN104899751A - 一种基于自加密自校验二维码识别卷烟真伪的方法 - Google Patents
一种基于自加密自校验二维码识别卷烟真伪的方法 Download PDFInfo
- Publication number
- CN104899751A CN104899751A CN201510311542.5A CN201510311542A CN104899751A CN 104899751 A CN104899751 A CN 104899751A CN 201510311542 A CN201510311542 A CN 201510311542A CN 104899751 A CN104899751 A CN 104899751A
- Authority
- CN
- China
- Prior art keywords
- key
- quick response
- response code
- unit
- cigarette
- 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.)
- Pending
Links
Landscapes
- Credit Cards Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于自加密自校验二维码识别卷烟真伪的方法,二维码管理单元的生成单元产生自增长的流水号,生成唯一的二维码;印刷单元在盒皮包装指定位置上印制二维码;生产单元使用印有二维码的盒皮进行卷烟包装,并通过扫码设备扫描初包装后的卷烟,记录下已用于生产的二维码,提交二维码管理单元1的激活单元12进行激活处理;用户通过扫码单元扫描内包装上的二维码;二维码管理单元的识别单元进行解码,获得流水号;二维码管理单元的识别单元根据流水号是否已激活、及已被提交的次数,进行卷烟真伪判别。本发明通过对每包卷烟印刷唯一的可自加密自校验的二维码,使消费者可以通过智能终端扫描每包烟上的唯一二维码来简便快捷的获得卷烟真伪信息。
Description
技术领域
本发明涉及信息安全及自动识别领域,具体涉及一种基于自加密自校验二维码识别卷烟真伪的方法。
背景技术
现有卷烟打码一般为条形码,条形码位数小,信息含量少,一般标识生产年份、销售区域代码等,不具有唯一性,易被伪造,不能有效用于真伪识别。而二维码可表示丰富的信息,且简便易用,特别是随着移动智能终端的普及,二维码扫码已经成了当前应用广泛的方式。一些企业在产品上印制每件产品唯一的二维码,用来实现产品真伪识别、产品追踪、营销活动等目的。但是二维码一般采用QR码等公开技术,本身并不具有加密特性,可被任意扫码软件轻易识读,从而使得产品上的二维码易被伪造。
一般用于标识唯一产品的二维码信息为一个带参数的URL,其中最主要的参数是根据一个内部流水号生成的,伪造者易于通过识读真品二维码,获取流水号模型,从而生成新的流水号,然后使用QR编码工具生成新的二维码。这种伪造的二维码会对企业的二维码应用的开展带来严重影响。还有一种常见的二维码信息编码方式,是对流水号使用对称密钥算法进行加密,然后编入二维码信息。这种方式可以使二维码信息不易被识读出流水号的生成规则,然而也有缺点:一是字典式攻击使对称密钥算法可能在有限的时间内被破解;二是即使攻击者未能破解出密钥,也可以使用假的二维码信息进行攻击,由于这种二维码没有自校验功能,系统不能即刻识别出其为伪造码,仍会使用被伪造的信息向数据库查询,导致系统易遭受拒绝服务攻击,影响系统的正常服务。
发明内容
为了解决消费者难以判断卷烟真假的问题,提出一种基于自加密自校验的二维码识别卷烟真伪的方法,通过对二维码信息进行自加密编码自校验解码,使二维码信息难以伪造,同时也可以直接根据二维码信息判断是否伪造的二维码。
本发明一种基于自加密自校验的二维码识别卷烟真伪的方法,包括以下步骤:
S1,二维码管理单元1的生成单元11产生自增长的流水号,生成唯一的二维码;
S2,印刷单元2在盒皮包装指定位置上印制二维码,且保证每包烟印刷不同的二维码;
S3,生产单元3使用印有二维码的盒皮进行卷烟包装,并通过扫码设备扫描初包装后的卷烟,记录下已用于生产的二维码,提交二维码管理单元1的激活单元12进行激活处理;
S4,用户单元4的扫码单元31为智能终端的扫码设备,消费者购买卷烟后拆开外包装,通过扫码单元41扫描内包装上的二维码,信息传送给二维码管理单元1的识别单元13进行处理;
S5,二维码管理单元的识别单元进行解码,获得流水号;
S6,二维码管理单元的识别单元将相应流水号的扫描次数加1,根据流水号是否已激活、及已被提交的次数,进行卷烟真伪判别,若相应流水号已激活且是第一次扫描则判别为真烟,否则为问题卷烟,并将该结果信息向用户单元的显示单元反馈;
所述的二维码是通过以下步骤进行编码的,
S11,从当前使用的密钥批号对应的数据记录表中,随机选择一条记录,该记录中有salt和密钥;
S12,把salt与产品流水号连接成一个字符串,用密钥通过对称密钥算法进行加密,得到密文;
S13,将密钥批号、salt和密文连接成一个字符串,作为参数;
S14,将给定的地址和参数结合起来,得到一个Url,作为所需的二维码信息编码。
所述是密钥通过以下步骤生成的,
S101,流水递增、查表、规则递增等方式产生指定长度的新的密钥批号;
S102,随机产生一个指定长度的字符串作为salt;
S103,根据选定的对称密钥算法,随机产生一个密钥;
S104,将密钥批号、salt和密钥存入数据记录表;
S105,密钥计数加1;
S106,判断密钥计数是否已达到指定数量,未到达返回步骤S12继续,否则结束本批密钥的生成过程;
所述的解码包括以下步骤:
S21,对需解码的二维码信息编码0,解析Url得到参数;
S22,将参数中的字符串,按照指定长度分割,得到密钥批号、salt和密文;
S23,查询密钥批号对应的数据记录表,找出其中salt对应的密钥;
S24,使用密钥对密文进行解密,得到解密后的字符串;
S25,对解密后的字符串按指定长度进行分割,得到解码后的salt和解码后的产品流水号;
S26,检查步骤S25解码后的salt是否等于步骤2中分割出的salt,若相等则该编码为真,输出步骤S25解码后的产品流水号;否则判定该码是伪造码,输出判定结果。
本发明通过对每包卷烟印刷唯一的可自加密自校验的二维码,使消费者可以通过智能终端扫描每包烟上的唯一二维码来简便快捷的获得卷烟真伪信息。该二维码由于在编码中使用了随机salt和随机密钥进行加密,使得破解的难度大大增加,以现有的计算机的计算能力难以在可以接受的时间内进行破解;由于密钥批号的使用,可以在一段时间后全部更换密钥,则即使之前的密钥遭到了破解,也可以保障其他密钥的安全,进一步保障了编码的安全可靠性,同时也可以提供支持分库分表的主键,来实现系统对高并发服务的支持。该编码方法可以在解码过程中直接实现编码真伪校验,剔除伪造的二维码,保护系统服务的正常运转。
附图说明
图1为本发明基于自加密自校验的二维码识别卷烟真伪的方法流程图
图2为本发明基于自加密自校验的二维码识别卷烟真伪的方法
图3为本发明涉及的二维码编码结构图
图4为本发明涉及的二维码密钥生成流程图
图5为本发明涉及的二维码编码和自加密的流程图
图6为本发明涉及的二维码解码和自加密的流程图
具体实施方式
参见图1-2,本发明一种基于自加密自校验的二维码识别卷烟真伪的方法,包括以下步骤,二维码管理单元1的生成单元11产生自增长的流水号,通过自加密的编码方法生成唯一的二维码图片;
印刷单元2一般由印刷厂实施,在盒皮包装指定位置上印制生成单元11提供的二维码图片,且保证每包烟印刷不同的二维码图片;
生产单元3一般由卷烟厂卷包机台实施,使用印刷单元2提供的印有二维码的盒皮进行卷烟内包装,并通过扫码设备扫描初包装后的卷烟,记录下已用于生产的二维码,提交二维码管理单元1的激活单元12进行激活处理;
用户单元4的扫码单元41一般为智能终端的扫码设备,例如智能手机的摄像头和扫码软件,消费者购买卷烟后拆开外包装,通过扫码单元41扫描内包装上的二维码,信息传送给二维码管理单元1的识别单元13进行处理;
二维码管理单元的识别单元进行解码,获得流水号;
二维码管理单元的识别单元将相应流水号的扫描次数加1,根据流水号是否已激活、及已被提交的次数,进行卷烟真伪判别,若相应流水号已激活且是第一次扫描则判别为真烟,否则为问题卷烟,并将该结果信息向用户单元的显示单元反馈。
参见图3,为本发明的二维码的编码结构0包括地址1和参数2,参数2包括密钥批号24,随机salt22和密文23,密文23由密钥231、salt22和产品流水号231组成,通过将随机salt与产品流水号结合,使用随机密钥加密,将密钥批号、salt和加密后的密文连接在一起的字符串作为二维码信息的参数,同时后台存储密钥批号、salt与密钥的对应关系,每个密钥批号对应于一批salt和密钥,每个salt唯一对应一个密钥。
该密钥通过以下步骤生成,参见图4:
步骤S101,流水递增、查表、规则递增等方式产生指定长度的新的密钥批号;如长度为4的1001作为密钥批号,指定生成100个密钥,
步骤S102,随机产生一个指定长度的字符串作为salt;如产生一个长度为12的字符串WXXPFD79G2FP作为salt1,
步骤S103,根据选定的对称密钥算法,随机产生一个密钥;随机产生一个密钥1如JTV8YKCYCDPD2YXVTGQ6RF747,
步骤S104,将密钥批号、salt和密钥存入数据记录表;每个salt唯一对应一个密钥,
步骤S105,密钥计数加1;
步骤S106,判断密钥计数是否已达到指定数量100,未到达返回步骤S12继续,否则结束本批密钥的生成过程。
该自加密自校验的二维码编码方法包括以下步骤,参见图5:
步骤S11,从当前使用的密钥批号对应的数据记录表中,随机选择一条记录,该记录中有salt和密钥;如当前使用的密钥批号为1001,随机选择一条记录,该记录为salt:
WXXPFD79G2FP,密钥JTV8YKCYCDPD2YXVTGQ6RF747,
步骤S21,把salt与产品流水号连接成一个字符串,用密钥通过对称密钥算法进行加密,得到密文;该产品流水号可以根据生产商、生产日期、产品名称、产品类别等信息为规则来生成,如XX厂商X年X月X日生产的XX牌的XX,其流水号为0015250063810050,
步骤S3,将密钥批号、salt和密文连接成一个字符串,作为参数;如该字符串可以为1001WXXPFD79G2FP JTV8YKCYCDPD2YXVTGQ6RF747,将其作为参数,
步骤S4,将给定的地址和参数结合起来,得到一个Url,作为所需的二维码信息编码。该自加密自校验的二维码解码方法包括以下步骤,参见图6:
步骤S21,对需解码的二维码信息编码0,解析Url得到参数,1001WXXPFD79G2FPJTV8YKCYCDPD2YXVTGQ6RF747
步骤S22,将参数中的字符串,按照指定长度分割,得到密钥批号、salt和密文;
步骤S23,查询密钥批号对应的数据记录表,找出其中salt对应的密钥;
步骤S24,使用密钥对密文进行解密,得到解密后的字符串,1001WXXPFD79G2FPJTV8YKCYCDPD2YXVTGQ6RF747;
步骤S25,对解密后的字符串按指定长度进行分割,得到解码后的salt和解码后的产品流水号;
S26,检查步骤S25解码后的salt是否等于步骤2中分割出的salt,若相等则该编码为真,输出步骤S25解码后的产品流水号;否则判定该码是伪造码,输出判定结果。
本发明通过对每包卷烟印刷唯一的可自加密自校验的二维码,使消费者可以通过智能终端扫描每包烟上的唯一二维码来简便快捷的获得卷烟真伪信息。该二维码由于在编码中使用了随机salt和随机密钥进行加密,使得破解的难度大大增加,以现有的计算机的计算能力难以在可以接受的时间内进行破解;由于密钥批号的使用,可以在一段时间后全部更换密钥,则即使之前的密钥遭到了破解,也可以保障其他密钥的安全,进一步保障了编码的安全可靠性,同时也可以提供支持分库分表的主键,来实现系统对高并发服务的支持。该编码方法可以在解码过程中直接实现编码真伪校验,剔除伪造的二维码,保护系统服务的正常运转。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (4)
1.一种基于自加密自校验二维码识别卷烟真伪的方法,其特征在于,包括以下步骤:
S1,二维码管理单元1的生成单元11产生自增长的流水号,生成唯一的二维码;
S2,印刷单元2在盒皮包装指定位置上印制二维码,且保证每包烟印刷不同的二维码;
S3,生产单元3使用印有二维码的盒皮进行卷烟包装,并通过扫码设备扫描初包装后的卷烟,记录下已用于生产的二维码,提交二维码管理单元1的激活单元12进行激活处理;
S4,用户单元4的扫码单元31为智能终端的扫码设备,消费者购买卷烟后拆开外包装,通过扫码单元41扫描内包装上的二维码,信息传送给二维码管理单元1的识别单元13进行处理;
S5,二维码管理单元的识别单元进行解码,获得流水号;
S6,二维码管理单元的识别单元将相应流水号的扫描次数加1,根据流水号是否已激活、及已被提交的次数,进行卷烟真伪判别,若相应流水号已激活且是第一次扫描则判别为真烟,否则为问题卷烟,并将该结果信息向用户单元的显示单元反馈。
2.根据权利要求1所述的一种基于自加密自校验二维码识别卷烟真伪的方法,其特征在于,步骤S1中的二维码通过以下步骤进行编码:
S11,从当前使用的密钥批号对应的数据记录表中,随机选择一条记录,该记录中有salt和密钥;
S12,把salt与产品流水号连接成一个字符串,用密钥通过对称密钥算法进行加密,得到密文;
S13,将密钥批号、salt和密文连接成一个字符串,作为参数;
S14,将给定的地址和参数结合起来,得到一个Url,作为所需的二维码信息编码。
3.根据权利要求2所述的一种基于自加密自校验二维码识别卷烟真伪的方法,其特征在于,所述密钥通过以下步骤生成,
S101,流水递增、查表、规则递增等方式产生指定长度的新的密钥批号;
S102,随机产生一个指定长度的字符串作为salt;
S103,根据选定的对称密钥算法,随机产生一个密钥;
S104,将密钥批号、salt和密钥存入数据记录表;
S105,密钥计数加1;
S106,判断密钥计数是否已达到指定数量,未到达返回步骤S12继续,否则结束本批密钥的生成过程。
4.根据权利要求1-3之一所述的一种基于自加密自校验二维码识别卷烟真伪的方法,其特征在于,步骤S5中的解码通过以下步骤实现:
S21,对需解码的二维码信息编码0,解析Url得到参数;
S22,将参数中的字符串,按照指定长度分割,得到密钥批号、salt和密文;
S23,查询密钥批号对应的数据记录表,找出其中salt对应的密钥;
S24,使用密钥对密文进行解密,得到解密后的字符串;
S25,对解密后的字符串按指定长度进行分割,得到解码后的salt和解码后的产品流水号;
S26,检查步骤S25解码后的salt是否等于步骤2中分割出的salt,若相等则该编码为真,输出步骤S25解码后的产品流水号;否则判定该码是伪造码,输出判定结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510311542.5A CN104899751A (zh) | 2015-06-09 | 2015-06-09 | 一种基于自加密自校验二维码识别卷烟真伪的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510311542.5A CN104899751A (zh) | 2015-06-09 | 2015-06-09 | 一种基于自加密自校验二维码识别卷烟真伪的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104899751A true CN104899751A (zh) | 2015-09-09 |
Family
ID=54032402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510311542.5A Pending CN104899751A (zh) | 2015-06-09 | 2015-06-09 | 一种基于自加密自校验二维码识别卷烟真伪的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104899751A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105260893A (zh) * | 2015-09-16 | 2016-01-20 | 广西中烟工业有限责任公司 | 一种实现卷烟二维码信息保护的防伪系统及方法 |
CN105260848A (zh) * | 2015-10-22 | 2016-01-20 | 广西中烟工业有限责任公司 | 一种基于二维码的卷烟生产管理方法 |
CN106295735A (zh) * | 2016-07-22 | 2017-01-04 | 纷美(北京)贸易有限公司 | 通过推算获取码信息的方法及装置 |
CN108416414A (zh) * | 2018-03-26 | 2018-08-17 | 中国人民银行印制科学技术研究所 | 自校验防伪二维码及制作方法和装置、自校验方法和装置 |
CN110675167A (zh) * | 2019-09-24 | 2020-01-10 | 深圳市太美亚电子科技有限公司 | 一种电子烟烟弹防伪系统、方法和后台服务器 |
EP3608862A1 (de) * | 2018-08-07 | 2020-02-12 | Bundesdruckerei GmbH | Verfahren zum protokollieren von erkennungsmerkmalen für erzeugnisse |
CN111680772A (zh) * | 2020-06-02 | 2020-09-18 | 云南省烟草质量监督检测站 | 检测卷烟条与盒包装纸真假的方法、装置及设备 |
CN112998329A (zh) * | 2021-05-14 | 2021-06-22 | 深圳市太美亚电子科技有限公司 | 一种电子烟烟弹双重防伪系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4998065B2 (ja) * | 2007-04-18 | 2012-08-15 | 沖電気工業株式会社 | 自動取引装置 |
CN102930307A (zh) * | 2012-11-22 | 2013-02-13 | 重庆君盾科技有限公司 | 一种名酒防伪认证方法 |
CN103218721A (zh) * | 2013-03-29 | 2013-07-24 | 刘子超 | 一种卷烟零售终端专卖防伪控制方法及系统 |
CN103530781A (zh) * | 2013-10-24 | 2014-01-22 | 上海圣渠实业有限公司 | 基于二维码的商品防伪方法 |
CN104636931A (zh) * | 2015-01-26 | 2015-05-20 | 川渝中烟工业有限责任公司 | 一种用于烟草行业的二维码生产方法 |
-
2015
- 2015-06-09 CN CN201510311542.5A patent/CN104899751A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4998065B2 (ja) * | 2007-04-18 | 2012-08-15 | 沖電気工業株式会社 | 自動取引装置 |
CN102930307A (zh) * | 2012-11-22 | 2013-02-13 | 重庆君盾科技有限公司 | 一种名酒防伪认证方法 |
CN103218721A (zh) * | 2013-03-29 | 2013-07-24 | 刘子超 | 一种卷烟零售终端专卖防伪控制方法及系统 |
CN103530781A (zh) * | 2013-10-24 | 2014-01-22 | 上海圣渠实业有限公司 | 基于二维码的商品防伪方法 |
CN104636931A (zh) * | 2015-01-26 | 2015-05-20 | 川渝中烟工业有限责任公司 | 一种用于烟草行业的二维码生产方法 |
Non-Patent Citations (1)
Title |
---|
刘彦伟等: "QR 码信息加密的研究与实现", 《铁路计算机应用》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105260893A (zh) * | 2015-09-16 | 2016-01-20 | 广西中烟工业有限责任公司 | 一种实现卷烟二维码信息保护的防伪系统及方法 |
CN105260848A (zh) * | 2015-10-22 | 2016-01-20 | 广西中烟工业有限责任公司 | 一种基于二维码的卷烟生产管理方法 |
CN106295735A (zh) * | 2016-07-22 | 2017-01-04 | 纷美(北京)贸易有限公司 | 通过推算获取码信息的方法及装置 |
CN106295735B (zh) * | 2016-07-22 | 2022-10-21 | 纷美(北京)贸易有限公司 | 通过推算获取码信息的方法及装置 |
CN108416414A (zh) * | 2018-03-26 | 2018-08-17 | 中国人民银行印制科学技术研究所 | 自校验防伪二维码及制作方法和装置、自校验方法和装置 |
EP3608862A1 (de) * | 2018-08-07 | 2020-02-12 | Bundesdruckerei GmbH | Verfahren zum protokollieren von erkennungsmerkmalen für erzeugnisse |
WO2020030207A1 (de) * | 2018-08-07 | 2020-02-13 | Bundesdruckerei Gmbh | Verfahren zum protokollieren von erkennungsmerkmalen für erzeugnisse |
CN110675167A (zh) * | 2019-09-24 | 2020-01-10 | 深圳市太美亚电子科技有限公司 | 一种电子烟烟弹防伪系统、方法和后台服务器 |
CN111680772A (zh) * | 2020-06-02 | 2020-09-18 | 云南省烟草质量监督检测站 | 检测卷烟条与盒包装纸真假的方法、装置及设备 |
CN112998329A (zh) * | 2021-05-14 | 2021-06-22 | 深圳市太美亚电子科技有限公司 | 一种电子烟烟弹双重防伪系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104899751A (zh) | 一种基于自加密自校验二维码识别卷烟真伪的方法 | |
CN107194449B (zh) | 基于数字水印和二维码结合的印刷防伪和信息溯源方法 | |
CN106529969B (zh) | 一种利用nfc查伪溯源的方法及系统 | |
CN100583170C (zh) | 用于产品真实性测试的产品保护入口和方法 | |
JP5739876B2 (ja) | 一意識別子、一意識別子を提供するための方法、および一意識別子の使用 | |
JP5139415B2 (ja) | 物品情報の取得方法及び装置 | |
CN104915701A (zh) | 一种自加密自校验的二维码编码解码方法 | |
US20140095398A1 (en) | Double ID Anti-Counterfeit Method and System | |
CN113627958B (zh) | 一种nfc防伪溯源方法及服务端 | |
CN103093361A (zh) | 一种基于物联网技术的商品双层防伪方法 | |
JP6683603B2 (ja) | 製造物認証システム及び製造物認証方法 | |
CN103886469A (zh) | 一种产品二维码生成及查询系统 | |
CN102270294A (zh) | 一种条形码和二维码混合编码、解码方法及装置 | |
CN105099712A (zh) | 一种基于双码验证的数据加密方法 | |
CN104680202A (zh) | 一种发票二维码生成和验证方法 | |
CN104574119B (zh) | 一种商品鉴真溯源的方法 | |
CN108154208A (zh) | 一种基于二维码的物品标识方法、识别方法及系统 | |
CN110197379B (zh) | 一种电子标签的防伪系统及方法 | |
CN104239944A (zh) | 一种商品信息识别方法 | |
CN110838907A (zh) | 一种基于区块链的商品防伪码生成系统 | |
CN104680392A (zh) | 一种基于标识的产品追溯系统及方法 | |
CN106067121A (zh) | 一种基于nfc技术的产品离线鉴伪方法 | |
CN112749982A (zh) | 一种基于二维码的防伪系统和方法 | |
CN105260893A (zh) | 一种实现卷烟二维码信息保护的防伪系统及方法 | |
CN108334919A (zh) | 一种基于二维码的产品防伪验证方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150909 |