CN104268610B - 一种分级qr码生成方法及读取方法 - Google Patents
一种分级qr码生成方法及读取方法 Download PDFInfo
- Publication number
- CN104268610B CN104268610B CN201410461243.5A CN201410461243A CN104268610B CN 104268610 B CN104268610 B CN 104268610B CN 201410461243 A CN201410461243 A CN 201410461243A CN 104268610 B CN104268610 B CN 104268610B
- Authority
- CN
- China
- Prior art keywords
- information
- level message
- key
- data
- codes
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种分级QR码生成方法及读取方法,属于信息加密领域,将信息分为一级信息和二级信息,生成具有分级信息的QR码,普通用户和高级用户扫描QR码得到完整度不同的信息,高级用户需要输入正确的密钥才能得到二级信息。普通用户扫描QR码只能得到一级信息,而高级用户只有输入正确的密钥才能得到一级信息和二级信息,否则只能得到一级信息。本发明简单实用,使信息有了可分级读取的特征,可靠地保障了信息的安全性。
Description
技术领域
本发明属于信息加密领域,特别是涉及一种分级QR码生成方法及读取方法。
背景技术
在信息化的时代,新技术、新设备让信息的表现形式多种多样,而信息的载体也在发生着变化,因为的二维码的简单便捷,使得其在现实生活中越来越普遍。二维码是用特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的矩形方阵记录数据符号信息的新一代条码技术,由一个二维码矩阵图形和一个二维码号,以及下方的说明文字组成。生活中,二维码的应用随处可见,地铁里面I号店商品广告的下方都伴有二维码,同时二维码在社交网络中也代表了个人的身份,登机、购物、火车票的实名信息都采用二维码来识别。二维码作为一种全新的信息存储、传递和识别技术,它具有信息容量大、编码范围广、成本低、易制作、持久耐用、可引入加密措施、抗损毁能力和译码可靠性高的优势,得到许多国家的支持和重视,在很多领域得到应用。QR码是二维码中的一种,其内容能够被快速解码。QR码不仅信息容量大、可靠性高、成本低,还可表示汉字及图像等多种文字信息,其保密防伪性强而且使用非常方便,从而得到广泛的应用。
与此同时,二维码在实际应用中不可避免的出现了信息安全问题。经常会看到某人因为在扔掉火车票的时候没有及时地撕毁二维码而导致身份信息泄露、不法分子盗取了用户的二级信息进行购物等这样的新闻。
目前已经有许多对二维码信息隐藏技术的研究,但无论是国内还是国外,其方法是对所有的信息进行加密,在扫描的时候对其进行解密,从而防止信息被泄露或被篡改,上述方法比较麻烦,并且并不是所有的信息都是重要信息,都要对任何人进行保密。有一部分信息是可以给公众看的,只有少量的二级信息是只能被特定的人员读取的。因此,如何设计一种可靠的分级安全的QR码生成与识别系统就显得非常具有研究意义和实用价值。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种能够更加安全的分级生成QR码的方法,能够公开不需要保密的内容,同时能够对需要保密的内容进行加密。
为实现上述目的,本发明提供了一种分级QR码生成方法,按以下步骤进行:
步骤一、输入一级信息、二级信息和第一密钥;
步骤二、分别对一级信息和二级信息进行QR编码;针对用户输入的第一密钥进行MD5处理以得到128位数据的第二密钥;
步骤三、将所述第二密钥作为对编码后的二级信息进行AES加密的密钥,对二级信息进行AES加密;
步骤四、将所述第二密钥进行CR4处理得到128位的加密数据,接着对该加密数据选出32位验证数据存放在所述二级信息的前面得到带有密钥验证的二级信息;
步骤五、按照QR码标准在一级信息的填充位中前32位用0xEC和0x11进行循环,并将带有密钥验证的二级信息添加到一级信息后面;
步骤六、根据QR码生成标准生成QR码。
以上技术方案提供了一种可靠的分级安全QR码生成方法,使信息有了可分级读取的特征,分为一级信息和二级信息,用户权限不同所扫描得到的信息完整度也就不同。与其他二维码信息隐藏的方法相比,本发明并不需要对所有的信息都进行加密,从而解决了一旦解密不成功,用户就什么信息都读取不到的问题。
进一步的,所述步骤一中,还包括判断是否嵌入信息的步骤:
输入一级信息后,判断是否嵌入信息,当嵌入信息时,再输入二级信息;当不嵌入信息时,执行步骤六。
进一步的,所述步骤一中,还包括判断是否加密的步骤:
输入二级信息后,判断是否加密,当加密时,再输入第一密钥;当不加密时,执行步骤六。
较佳的,步骤四中所述对该加密数据选出32位验证数据按以下步骤进行:从第一位加密数据开始每隔3位选取一位数据。
本发明要解决的另一技术问题是提供一种能够针对分级QR码进行解码的方法,为此,本发明还提供了一种分级QR码读取方法,按以下步骤进行:
A1、判断QR码中是否存在二级信息,当存在二级信息时,执行步骤A2;当没有二级信息时,读取出一级信息;
A2、分离出一级信息和二级信息;
A3、读取出一级信息并判断二级信息是否加密;
当二级信息加密时,输入密钥并对输入的密钥进行MD5运算,得到一个128位的数据,对该128位的数据做CR4处理后选出32位数据,将该32位数据与QR码中存放在二级信息之前的32位验证数据进行比对,判断其是否相同,当相同时通过该128位的数据对二级信息进行AES解密得到解密后的二级信息;
当二级信息没有加密时,读取出二级信息。
以上技术方案可以根据用户身份读取相应的私密信息。而不法分子想要盗取二级信息,即使使用了本发明的方法,但没有正确的密钥,也不能无法读取QR码中所存储的二级信息,从而保证了用户信息的安全性。
较佳的,步骤A3中选出32位数据按以下步骤进行:从第一位数据开始每隔3位选取一位数据。
较佳的,所述步骤A1前还包括识别深/浅模块、格式信息译码、确定版本、消除掩膜和纠错码字中的一个或多个步骤。
本发明的有益效果是:本发明提供了一种可靠的分级安全QR码生成与识别方法,使信息有了可分级读取的特征,分为一级信息和二级信息,用户权限不同所扫描得到的信息完整度也就不同。与其他二维码信息隐藏的方法相比,本发明并不需要对所有的信息都进行加密,从而解决一旦解密不成功,用户就什么信息都读取不到的问题。
附图说明
图1是本发明一种分级QR码生成方法实施例一的流程示意图。
图2是本发明一种分级QR码生成方法实施例二的流程示意图。
图3是本发明一种分级QR码读取方法实施例一的流程示意图。
图4是本发明一种分级QR码读取方法实施例二的流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
如图1所示,一种分级QR码生成方法,其特征在于按以下步骤进行:
步骤一、输入一级信息、二级信息和第一密钥。
步骤二、分别对一级信息和二级信息进行QR编码;针对用户输入的第一密钥进行MD5处理以得到128位数据的第二密钥。
步骤三、将所述第二密钥作为对编码后的二级信息进行AES加密的密钥,对二级信息进行AES加密。
步骤四、将所述第二密钥进行CR4处理得到128位的加密数据,接着对该加密数据选出32位验证数据存放在所述二级信息的前面得到带有密钥验证的二级信息,二级信息前面的32位数据用于做密钥的验证。
步骤五、根据总共信息的大小选择合适的版本,按照QR码标准在一级信息的填充位中前32位用0xEC和0x11进行循环,并将带有密钥验证的二级信息添加到一级信息后面,以此来区分一级信息和二级信息。
步骤六、根据QR码生成标准生成QR码。
步骤四中所述对该加密数据选出32位验证数据按以下步骤进行:从第一位加密数据开始每隔3位选取一位数据。
实施例二,如图2所示,本实施例的流程与实施例一基本相同,所不同的是:所述步骤一中,还包括判断是否嵌入信息和是否加密的步骤:
输入一级信息后,判断是否嵌入信息,当嵌入信息时,再输入二级信息;输入二级信息后,判断是否加密,当加密时,再输入第一密钥;当不加密时,执行步骤六。
当不嵌入信息时,执行步骤六。
如图3所示,一种分级QR码读取方法的一具体实施方式,按以下步骤进行:
A1、判断QR码中是否存在二级信息,当存在二级信息时,执行步骤A2;当没有二级信息时,读取出一级信息后结束;
A2、分离出一级信息和二级信息;
A3、读取出一级信息并判断二级信息是否加密;
当二级信息加密时,输入密钥并对输入的密钥进行MD5运算,得到一个128位的数据,对该128位的数据做CR4处理后选出32位数据,将该32位数据与QR码中存放在二级信息之前的32位验证数据进行比对,判断其是否相同,当相同时通过该128位的数据对二级信息进行AES解密得到解密后的二级信息;当不相同时,重新输入密钥。
当二级信息没有加密时,读取出二级信息。
步骤A3中选出32位数据按以下步骤进行:从第一位数据开始每隔3位选取一位数据。
如图4所示,一种分级QR码读取方法的一具体实施方式,按以下步骤进行:
A1、识别QR码的深/浅模块。
A2、对QR码的格式信息进行译码。
A3、确定QR码版本。
A4、消除QR码的掩膜。
A5、对QR码进行码字纠错。
A6、判断QR码中是否存在二级信息,当存在二级信息时,执行步骤A2;当没有二级信息时,读取出一级信息后结束。
A7、分离出一级信息和二级信息。
A8、读取出一级信息并判断二级信息是否加密。
当二级信息加密时,输入密钥并对输入的密钥进行MD5运算,得到一个128位的数据,对该128位的数据做CR4处理后选出32位数据,将该32位数据与QR码中存放在二级信息之前的32位验证数据进行比对,判断其是否相同,当相同时通过该128位的数据对二级信息进行AES解密得到解密后的二级信息;当不相同时,重新输入密钥。当二级信息没有加密时,读取出二级信息。
步骤A8中选出32位数据按以下步骤进行:从第一位数据开始每隔3位选取一位数据。
当然在判断QR码中是否存在二级信息之前,可以只有识别QR码的深/浅模块、对QR码的格式信息进行译码、确定QR码版本、消除QR码的掩膜、对QR码进行码字纠错中的任意一个或多个步骤。
为了进一步的描述本发明的技术方案,通过火车票上的QR码来对本系统进行详细说明。设定用户G为铁路部门的管理员,属于高级用户,用户P是购买火车票的用户,对于要扫描自己所购买的这张火车票来说属于高级用户;用户Q是不法分子,属于普通用户。
铁路部门在用户P购买火车票时将关于本车次的信息、用户P的姓名作为一级信息,将用户P的身份证号码、家庭住址此类私密信息作为二级信息,设定默认的第一密钥为用户P的身份证号码。
分别对一级信息和二级信息进行QR编码。
针对第一密钥(用户P的身份证号码)进行MD5加密,将其产生的128位的第二密钥作为对QR编码后的二级信息进行AES加密的密钥,进而对二级信息进行AES加密。并且将128位第二密钥做CR4处理得到128位的加密数据,接着对该加密数据选出32位验证数据存放在所述二级信息的前面得到带有密钥验证的二级信息,二级信息前面的32位数据用于做密钥的验证。根据总共信息的大小选择合适的版本,其为现有技术,在此不再赘述,在一级信息的填充位中前32位用0xEC和0x11进行循环,即填充0xEC、0x11、0xEC和0x11。将带有密钥验证的二级信息添加到一级信息后面的填充位中,以此来区分一级信息和二级信息,最后生成QR码。
读取火车票上的QR码时,用户P、用户Q、用户G无论是使用普通方法还是本发明的方法都可以读取出一级信息。因为针对用户P所购买的这张火车票来说用户P和用户G都是高级用户,使用本发明的软件扫描出一级信息后会提示是否存在二级信息,并且会根据二级信息是否加了密钥来提示用户是否需要输入密钥来读取出二级信息。
对用户P或用户Q所输入的密钥进行MD5运算,产生一个128位的数据,对该128位的数据做CR4处理,对处理后的数据从第一位开始每隔3位选取一位数据得到一个32位的数据。将得到的32位数据与生成分级QR码时存放在二级信息之前的32位验证数据进行比对,因为用户P和用户G属于高级用户,所以知道正确的密钥,必然比对成功,并且能够利用此128位的数据解密出正确的二级信息,从而用户G可以进行相应的乘车人员身份的确认等工作,用户P可以看到关于自己的私密信息。而不法分子用户Q属于普通用户,虽然想要盗取二级信息,即使使用了本发明的方法,但没有正确的密钥,也无法读取QR码中所存储的关于用户P的私密信息,从而保证了用户P用户信息的安全性。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (4)
1.一种分级QR码生成方法,其特征在于按以下步骤进行:
步骤一、输入一级信息、二级信息和第一密钥;
步骤二、分别对一级信息和二级信息进行QR编码;将第一密钥进行MD5处理以得到128位数据的第二密钥;所述第一密钥由用户输入,所述用户包括高级用户和普通用户;所述高级用户包括管理员和拥有者;
步骤三、将所述第二密钥作为对编码后的二级信息进行AES加密的密钥,对二级信息进行AES加密;
步骤四、将所述第二密钥进行CR4处理得到128位的加密数据,接着对该加密数据选出32位验证数据存放在所述二级信息的前面得到带有密钥验证的二级信息;
步骤五、按照QR码标准在一级信息的填充位中前32位用0xEC和0x11进行循环,并将带有密钥验证的二级信息添加到一级信息后面;
步骤六、根据QR码生成标准生成QR码。
2.如权利要求1所述的一种分级QR码生成方法,其特征是:所述步骤一中,还包括判断是否嵌入信息的步骤:
输入一级信息后,判断是否嵌入信息,当嵌入信息时,再输入二级信息;当不嵌入信息时,执行步骤六。
3.如权利要求1或2所述的一种分级QR码生成方法,其特征是:所述步骤一中,还包括判断是否加密的步骤:
输入二级信息后,判断是否加密,当加密时,再输入第一密钥;当不加密时,执行步骤六。
4.如权利要求1所述的一种分级QR码生成方法,其特征是:步骤四中所述对该加密数据选出32位验证数据按以下步骤进行:从第一位加密数据开始每隔3位选取一位数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410461243.5A CN104268610B (zh) | 2014-09-11 | 2014-09-11 | 一种分级qr码生成方法及读取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410461243.5A CN104268610B (zh) | 2014-09-11 | 2014-09-11 | 一种分级qr码生成方法及读取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104268610A CN104268610A (zh) | 2015-01-07 |
CN104268610B true CN104268610B (zh) | 2017-09-01 |
Family
ID=52160130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410461243.5A Active CN104268610B (zh) | 2014-09-11 | 2014-09-11 | 一种分级qr码生成方法及读取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104268610B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156738A (zh) * | 2015-01-16 | 2016-11-23 | 合肥工业大学 | 一种带加密qr二维码的汽车车牌密文图像的读取方法 |
CN104732137A (zh) * | 2015-04-17 | 2015-06-24 | 南开大学 | 一种基于Android的多模式AES加密QR码的识别方法 |
CN105184580B (zh) * | 2015-09-01 | 2019-05-14 | 福建新大陆软件工程有限公司 | 一种基于可读标识的通信管理方法及系统 |
CN105976004B (zh) * | 2016-04-25 | 2019-05-07 | 华南农业大学 | 一种彩色二维码多维信息编码、解码方法及装置 |
CN106022196B (zh) * | 2016-06-30 | 2019-01-11 | 维沃移动通信有限公司 | 一种信息分享的方法和智能终端 |
CN107169395A (zh) * | 2017-06-20 | 2017-09-15 | 重庆大学 | 一种更加安全的qr码生成及读取方法 |
CN107992923A (zh) * | 2017-12-22 | 2018-05-04 | 北京中星仝创科技有限公司 | 一种qr二维码生成及读取的方法 |
CN109635905B (zh) * | 2018-12-06 | 2022-09-02 | 南京中孚信息技术有限公司 | 二维码生成方法、装置及系统 |
CN110222799B (zh) * | 2019-04-28 | 2022-11-08 | 新大陆(福建)公共服务有限公司 | 一种基于二维码的两级凭证方法及凭证机构的应用系统 |
CN110197245B (zh) * | 2019-04-28 | 2023-06-09 | 新大陆(福建)公共服务有限公司 | 一种双码制二维码及其跨平台交互方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102542235A (zh) * | 2011-12-09 | 2012-07-04 | 河北广联信息技术有限公司 | 二维码一码多识方法 |
JP5110596B2 (ja) * | 2007-12-14 | 2012-12-26 | 独立行政法人産業技術総合研究所 | 二次元コード生成装置 |
CN103400173A (zh) * | 2013-07-25 | 2013-11-20 | 中国科学院信息工程研究所 | 一种含隐私信息的二维码生成及读取方法 |
US8807435B2 (en) * | 2011-04-06 | 2014-08-19 | Eastman Kodak Company | Decoding multi-resolution optical codes |
-
2014
- 2014-09-11 CN CN201410461243.5A patent/CN104268610B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5110596B2 (ja) * | 2007-12-14 | 2012-12-26 | 独立行政法人産業技術総合研究所 | 二次元コード生成装置 |
US8807435B2 (en) * | 2011-04-06 | 2014-08-19 | Eastman Kodak Company | Decoding multi-resolution optical codes |
CN102542235A (zh) * | 2011-12-09 | 2012-07-04 | 河北广联信息技术有限公司 | 二维码一码多识方法 |
CN103400173A (zh) * | 2013-07-25 | 2013-11-20 | 中国科学院信息工程研究所 | 一种含隐私信息的二维码生成及读取方法 |
Non-Patent Citations (1)
Title |
---|
火车票二维码强加密关键技术研究;明鋆;《信息系统工程》;20140120;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104268610A (zh) | 2015-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104268610B (zh) | 一种分级qr码生成方法及读取方法 | |
CN103198344B (zh) | 税控安全二维码编码、解码处理方法 | |
CN102902997B (zh) | 一种二维码混合编码、解码装置及方法 | |
CN106330464B (zh) | 一种身份认证方法、设备及系统 | |
CN105825257B (zh) | 基于二维条码的信息隐藏与隐藏信息提取方法及系统 | |
CN102916804B (zh) | 一种基于局部颜色校验的二维码编码、解码方法及装置 | |
CN101295343A (zh) | 二维码多重加密防伪印刷方法 | |
CN104463016B (zh) | 一种适用于ic卡及二维码的数据安全存储方法 | |
CN103049777A (zh) | 二维码的安全应用方法及编解码系统 | |
CN107992923A (zh) | 一种qr二维码生成及读取的方法 | |
CN103415007A (zh) | 一种基于信息隐藏的手机二维码安全使用方法 | |
CN105976005A (zh) | 二维码加密方法、二维码生成设备和二维码扫描设备 | |
CN104809490A (zh) | 一种基于多维码的证卡防伪系统及其认证方法 | |
CN108334919A (zh) | 一种基于二维码的产品防伪验证方法及其系统 | |
CN105282090A (zh) | 一种互联网上防非法访问的公开url加密编码方法 | |
EP2910042B1 (en) | Secure information transfer via bar codes | |
CN104680215A (zh) | 二维码图形的制作方法和解码方法 | |
CN108960387A (zh) | 一种防伪造二维码及其生成和识别方法 | |
CN105809015A (zh) | 电子票信息隐藏和验证方法、装置及系统 | |
CN111768523A (zh) | 一种基于ctid的nfc智能门锁开锁方法、系统、设备及介质 | |
CN105577376A (zh) | 二维码的编解码和认证方法和装置 | |
CN202870898U (zh) | 一种基于射频的商品信息识别系统 | |
CN105912894B (zh) | 一种将证件号码用于电子印章印文防伪的方法 | |
Koley et al. | A novel approach of secret message passing through text steganography | |
CN102571341B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |