CN110222542A - 一种具有验码功能的扫码引擎及其使用方法 - Google Patents
一种具有验码功能的扫码引擎及其使用方法 Download PDFInfo
- Publication number
- CN110222542A CN110222542A CN201910350085.9A CN201910350085A CN110222542A CN 110222542 A CN110222542 A CN 110222542A CN 201910350085 A CN201910350085 A CN 201910350085A CN 110222542 A CN110222542 A CN 110222542A
- Authority
- CN
- China
- Prior art keywords
- barcode scanning
- data
- signed
- communication module
- dimensional 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.)
- Pending
Links
- 238000010998 test method Methods 0.000 title description 3
- 238000004891 communication Methods 0.000 claims abstract description 29
- 238000000034 method Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims abstract description 22
- 238000012360 testing method Methods 0.000 claims abstract description 22
- 230000011664 signaling Effects 0.000 claims abstract description 19
- 238000001629 sign test Methods 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 claims description 12
- 239000000284 extract Substances 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012423 maintenance Methods 0.000 claims description 6
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical group [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 claims description 3
- 229910052744 lithium Inorganic materials 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10009—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
- G06K7/10257—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for protecting the interrogation against piracy attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Toxicology (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了二维码扫码设备领域的一种具有验码功能的扫码引擎,包括一用于验码的单片机、一用于解码的解码芯片、一感光元件、一扫码头、一存储器、一电源、一接口组以及一通信模块;所述感光元件的输入端与扫码头的输出端连接,输出端与解码芯片连接;所述解码芯片、存储器、电源、接口组以及通信模块均分别与单片机连接;本发明还提供了一种具有验码功能的扫码引擎的使用方法。本发明的优点在于:实现了对二维码的发码方进行验证,提高了扫码的安全性。
Description
技术领域
本发明涉及二维码扫码设备领域,特别指一种具有验码功能的扫码引擎及其使用方法。
背景技术
二维码又称二维条码,二维码是一种数据信息的图像编码和表现形式,是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息。因为二维码可以携带较多数据、较多类型的数据,近几年来成为移动设备上主流的一种编码方式。
然而,由于二维码以图像的形态展现,从基本原理上来说,既不能阻止攻击者通过复制的方式对二维码进行盗用,也不能防止掌握了二维码编码原理的攻击者自己生成和改造二维码,使得二维码在使用过程中存在安全隐患。
传统的二维码扫码引擎只能读取普通的二维码图片,并直接将二维码图片解码为数据,并不能读取带防伪技术的二维码,并不能对带防伪技术的二维码进行验证。
因此,如何提供一种具有验码功能的扫码引擎及其使用方法,成为一个亟待解决的问题。
发明内容
本发明要解决的技术问题之一,在于提供一种具有验码功能的扫码引擎,实现对二维码的发码方进行验证,提高扫码的安全性。
本发明是这样实现技术问题之一的:一种具有验码功能的扫码引擎,包括一用于验码的单片机、一用于解码的解码芯片、一感光元件、一扫码头、一存储器、一电源、一接口组以及一通信模块;所述感光元件的输入端与扫码头的输出端连接,输出端与解码芯片连接;所述解码芯片、存储器、电源、接口组以及通信模块均分别与单片机连接。
进一步地,所述通信模块为NB通信模块、2G通信模块、3G通信模块、4G通信模块或者5G通信模块。
进一步地,所述接口组至少包括一用于连接NFC识读模块的第一IIC接口、一用于连接RTC模块的第二IIC接口、两个IO接口以及一个维护接口;所述第一IIC接口、第二IIC接口、IO接口以及维护接口均分别与单片机连接。
进一步地,所述电源为锂电池或者干电池。
本发明要解决的技术问题之二,在于提供一种具有验码功能的扫码引擎,实现对二维码的发码方进行验证,提高扫码的安全性。
本发明是这样实现技术问题之二的:一种具有验码功能的扫码引擎的使用方法,所述方法需使用如权利要求1至4任一所述的的扫码引擎,所述方法包括如下步骤:
步骤S10、所述存储器存储一发码方随机生成的公钥;
步骤S20、所述扫码头对一带防伪技术的二维码进行对焦,并将对焦完成的信号发送给所述感光元件;
步骤S30、所述感光元件抓捕二维码图像,并发送给所述解码芯片;
步骤S40、所述解码芯片将二维码图像解码为签名数据,并发送给所述单片机;
步骤S50、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签。
进一步地,所述步骤S20中,所述带防伪技术的二维码具体为:
发码方将原始数据加上一时间戳以及一有效期后生成一待签名数据;发码方对待签名数据进行哈希计算得到第一哈希值;发码方利用随机生成的私钥对待签名数据以及第一哈希值进行数字签名得到签名数据,并将签名数据生成带防伪技术的二维码;所述私钥与公钥为一对密钥。
进一步地,所述步骤S50具体包括:
步骤S51、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签,若验签成功,则进入步骤S52;若验签失败,则结束流程;
步骤S52、所述单片机得到待签名数据以及第一哈希值,所述单片机对待签名数据进行哈希计算得到第二哈希值,并对第一哈希值以及第二哈希值进行比较,若比较结果一致,则进入步骤S53;若比较结果不一致,则结束流程;
步骤S53、所述单片机提取待签名数据中的时间戳以及有效期,并计算当前的时间至时间戳的间隔是否超过有效期,若超过,则判定二维码为无效码并结束流程;若未超过,则判定二维码为有效码,且确定二维码由发码方发出、未被篡改,并提取待签名数据中的原始数据通过所述通信模块发送给上位机。
本发明的优点在于:通过所述存储器存储公钥,所述单片机利用公钥对解码芯片解码的数据进行验签、并对验签的结果进行哈希计算和有效期判断,实现了对二维码的发码方、二维码是否被篡改、二维码是否过期进行验证,极大的提高了扫码的安全性。由于公钥可以离线存储,即使在离线的状态下也可以通过公钥对二维码进行核验,构成了一种有效的离线核验机制。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种具有验码功能的扫码引擎的电路原理框图。
图2是本发明一种具有验码功能的扫码引擎的使用方法的流程图。
具体实施方式
请参照图1至图2所示,本发明一种具有验码功能的扫码引擎的较佳实施例,包括一用于验码的单片机、一用于解码的解码芯片、一感光元件、一扫码头、一存储器、一电源、一接口组以及一通信模块;所述感光元件的输入端与扫码头的输出端连接,输出端与解码芯片连接;所述解码芯片、存储器、电源、接口组以及通信模块均分别与单片机连接。所述扫码头用于对待拍摄的二维码进行对焦;所述感光元件用于获取待拍摄二维码的图像;所述存储器用于存储公钥以及扫码过程流转的数据;所述电源用于给所述扫码引擎提供电力;所述接口组用于扩展外设;所述通信模块用于与上位机进行通信;所述单片机用于对二维码数据进行验证,在具体实施时,只要从现有技术中选择能实现此功能的单片机即可,并不限于何种型号,且验证程序是本领域技术人员所熟知的,这是本领域技术人员不需要付出创造性劳动即可获得的;所述解码芯片用于对二维码进行解码,在具体实施时,只要从现有技术中选择能实现此功能的芯片即可,并不限于何种型号,且解码程序是本领域技术人员所熟知的,这是本领域技术人员不需要付出创造性劳动即可获得的。
所述通信模块为NB通信模块、2G通信模块、3G通信模块、4G通信模块或者5G通信模块。
所述接口组至少包括一用于连接NFC识读模块的第一IIC接口、一用于连接RTC模块的第二IIC接口、两个IO接口以及一个维护接口;所述第一IIC接口、第二IIC接口、IO接口以及维护接口均分别与单片机连接。
所述电源为锂电池或者干电池。
本发明一种具有验码功能的扫码引擎的使用方法的较佳实施例,包括如下步骤:
步骤S10、所述存储器存储一发码方随机生成的公钥;
步骤S20、所述扫码头对一带防伪技术的二维码进行对焦,并将对焦完成的信号发送给所述感光元件;
步骤S30、所述感光元件抓捕二维码图像,并发送给所述解码芯片;
步骤S40、所述解码芯片将二维码图像解码为签名数据,并发送给所述单片机;
步骤S50、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签。
所述步骤S20中,所述带防伪技术的二维码具体为:
发码方将原始数据加上一时间戳以及一有效期后生成一待签名数据;发码方对待签名数据进行哈希计算得到第一哈希值;发码方利用随机生成的私钥对待签名数据以及第一哈希值进行数字签名得到签名数据,并将签名数据生成带防伪技术的二维码;所述私钥与公钥为一对密钥。公钥加密的数据仅能由私钥进行解密,私钥加密的数据仅能由公钥进行解密。由于公钥可以离线存储,即使在离线的状态下也可以通过公钥对二维码进行核验,构成了一种有效的离线核验机制。
所述步骤S50具体包括:
步骤S51、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签,若验签成功,则进入步骤S52;若验签失败,则结束流程;通过私钥对待签名数据进行签名,并利用公钥对签名数据进行验签,可以有效的对数据发送者的身份进行验证。
步骤S52、所述单片机得到待签名数据以及第一哈希值(hash值),所述单片机对待签名数据进行哈希计算得到第二哈希值,并对第一哈希值以及第二哈希值进行比较,若比较结果一致,则进入步骤S53;若比较结果不一致,则结束流程;
哈希值验证方法:对信息做哈希计算得到一个哈希值,这个过程是不可逆的,即无法通过哈希值得出原信息。把哈希值加密后做为一个签名和信息一起发给接收方。接收方在收到信息后对签名进行解密得到哈希值,并依据信息重新计算哈希值,并将接收到的哈希值和重新计算的哈希值进行对比,如果一致,就说明信息的内容没有被修改过;通过哈希计算得到固定长度的哈希值可以对待签名数据进行压缩映射。
步骤S53、所述单片机提取待签名数据中的时间戳以及有效期,并计算当前的时间至时间戳的间隔是否超过有效期,若超过,则判定二维码为无效码并结束流程;若未超过,则判定二维码为有效码,且确定二维码由发码方发出、未被篡改,并提取待签名数据中的原始数据通过所述通信模块发送给上位机。通过设置时间戳以及有效期,即设置二维码的有效期,防止二维码被重放攻击以及滥用。
重放攻击(Replay Attacks)又称重播攻击、回放攻击,是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。重放攻击在任何网络通过程中都可能发生,是计算机世界黑客常用的攻击方式之一。
综上所述,本发明的优点在于:通过所述存储器存储公钥,所述单片机利用公钥对解码芯片解码的数据进行验签、并对验签的结果进行哈希计算和有效期判断,实现了对二维码的发码方、二维码是否被篡改、二维码是否过期进行验证,极大的提高了扫码的安全性。由于公钥可以离线存储,即使在离线的状态下也可以通过公钥对二维码进行核验,构成了一种有效的离线核验机制。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (7)
1.一种具有验码功能的扫码引擎,其特征在于:包括一用于验码的单片机、一用于解码的解码芯片、一感光元件、一扫码头、一存储器、一电源、一接口组以及一通信模块;所述感光元件的输入端与扫码头的输出端连接,输出端与解码芯片连接;所述解码芯片、存储器、电源、接口组以及通信模块均分别与单片机连接。
2.如权利要求1所述的一种具有验码功能的扫码引擎,其特征在于:所述通信模块为NB通信模块、2G通信模块、3G通信模块、4G通信模块或者5G通信模块。
3.如权利要求1所述的一种具有验码功能的扫码引擎,其特征在于:所述接口组至少包括一用于连接NFC识读模块的第一IIC接口、一用于连接RTC模块的第二IIC接口、两个IO接口以及一个维护接口;所述第一IIC接口、第二IIC接口、IO接口以及维护接口均分别与单片机连接。
4.如权利要求1所述的一种具有验码功能的扫码引擎,其特征在于:所述电源为锂电池或者干电池。
5.一种具有验码功能的扫码引擎的使用方法,其特征在于:所述方法需使用如权利要求1至4任一所述的的扫码引擎,所述方法包括如下步骤:
步骤S10、所述存储器存储一发码方随机生成的公钥;
步骤S20、所述扫码头对一带防伪技术的二维码进行对焦,并将对焦完成的信号发送给所述感光元件;
步骤S30、所述感光元件抓捕二维码图像,并发送给所述解码芯片;
步骤S40、所述解码芯片将二维码图像解码为签名数据,并发送给所述单片机;
步骤S50、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签。
6.如权利要求5所述的一种具有验码功能的扫码引擎的使用方法,其特征在于:所述步骤S20中,所述带防伪技术的二维码具体为:
发码方将原始数据加上一时间戳以及一有效期后生成一待签名数据;发码方对待签名数据进行哈希计算得到第一哈希值;发码方利用随机生成的私钥对待签名数据以及第一哈希值进行数字签名得到签名数据,并将签名数据生成带防伪技术的二维码;所述私钥与公钥为一对密钥。
7.如权利要求6所述的一种具有验码功能的扫码引擎的使用方法,其特征在于:所述步骤S50具体包括:
步骤S51、所述单片机提取存储器中存储的公钥,并利用公钥对签名数据进行验签,若验签成功,则进入步骤S52;若验签失败,则结束流程;
步骤S52、所述单片机得到待签名数据以及第一哈希值,所述单片机对待签名数据进行哈希计算得到第二哈希值,并对第一哈希值以及第二哈希值进行比较,若比较结果一致,则进入步骤S53;若比较结果不一致,则结束流程;
步骤S53、所述单片机提取待签名数据中的时间戳以及有效期,并计算当前的时间至时间戳的间隔是否超过有效期,若超过,则判定二维码为无效码并结束流程;若未超过,则判定二维码为有效码,且确定二维码由发码方发出、未被篡改,并提取待签名数据中的原始数据通过所述通信模块发送给上位机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910350085.9A CN110222542A (zh) | 2019-04-28 | 2019-04-28 | 一种具有验码功能的扫码引擎及其使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910350085.9A CN110222542A (zh) | 2019-04-28 | 2019-04-28 | 一种具有验码功能的扫码引擎及其使用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110222542A true CN110222542A (zh) | 2019-09-10 |
Family
ID=67820155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910350085.9A Pending CN110222542A (zh) | 2019-04-28 | 2019-04-28 | 一种具有验码功能的扫码引擎及其使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110222542A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105163309A (zh) * | 2015-09-10 | 2015-12-16 | 电子科技大学 | 一种基于组合密码的无线传感器网络安全通信的方法 |
CN107579817A (zh) * | 2017-09-12 | 2018-01-12 | 广州广电运通金融电子股份有限公司 | 基于区块链的用户身份验证方法、装置及系统 |
CN207503240U (zh) * | 2017-11-10 | 2018-06-15 | 八维通科技有限公司 | 一种新型的长景深的条码扫码器 |
CN108712383A (zh) * | 2018-04-17 | 2018-10-26 | 新大陆(福建)公共服务有限公司 | 一种离线安全二维码的生成方法及计算机可读存储介质 |
CN108737394A (zh) * | 2018-05-08 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 离线验证系统、扫码设备和服务器 |
-
2019
- 2019-04-28 CN CN201910350085.9A patent/CN110222542A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105163309A (zh) * | 2015-09-10 | 2015-12-16 | 电子科技大学 | 一种基于组合密码的无线传感器网络安全通信的方法 |
CN107579817A (zh) * | 2017-09-12 | 2018-01-12 | 广州广电运通金融电子股份有限公司 | 基于区块链的用户身份验证方法、装置及系统 |
CN207503240U (zh) * | 2017-11-10 | 2018-06-15 | 八维通科技有限公司 | 一种新型的长景深的条码扫码器 |
CN108712383A (zh) * | 2018-04-17 | 2018-10-26 | 新大陆(福建)公共服务有限公司 | 一种离线安全二维码的生成方法及计算机可读存储介质 |
CN108737394A (zh) * | 2018-05-08 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 离线验证系统、扫码设备和服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111046352B (zh) | 一种基于区块链的身份信息安全授权系统与方法 | |
CN108876332B (zh) | 一种基于生物特征标记认证的区块链安全交易方法及装置 | |
CN108270571B (zh) | 基于区块链的物联网身份认证系统及其方法 | |
CN110086608A (zh) | 用户认证方法、装置、计算机设备及计算机可读存储介质 | |
CN105245341B (zh) | 远程身份认证方法和系统以及远程开户方法和系统 | |
Xi et al. | A fingerprint based bio‐cryptographic security protocol designed for client/server authentication in mobile computing environment | |
CN105162596B (zh) | 用于生成在与服务器交互中使用的安全值并传送给用户的设备 | |
CN101005361B (zh) | 一种服务器端软件保护方法及系统 | |
JP6973385B2 (ja) | 認証システム、認証方法およびプログラム | |
CN108494738A (zh) | 一种可验证的后量子电子投票系统及其实现方法 | |
CN101374050B (zh) | 一种实现身份认证的装置、系统及方法 | |
CN105933280A (zh) | 身份认证方法和系统 | |
CN101390126A (zh) | 视个人存在而通过令牌的交易认证 | |
CN109729046A (zh) | 二维码扫描方法和终端、认证方法和服务器及服务系统 | |
CN110391913A (zh) | 车辆的绑定方法及装置 | |
CN106713279A (zh) | 一种视频终端身份认证系统 | |
CN101957898A (zh) | 信息处理设备、信息处理方法及程序 | |
Taher et al. | Low-overhead remote user authentication protocol for IoT based on a fuzzy extractor and feature extraction | |
CN106100850A (zh) | 基于二维码的智能安全芯片签名信息传输方法及系统 | |
CN107871081A (zh) | 一种计算机信息安全系统 | |
KR101856682B1 (ko) | 엔티티의 인증 방법 및 장치 | |
CN110445805A (zh) | 一种二维码的防伪认证系统及方法 | |
CN108335108A (zh) | 一种二维码安全移动支付方法及系统 | |
CN110336663A (zh) | 一种基于区块链技术的PUFs群对群认证方案 | |
CN110380859A (zh) | 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190910 |
|
RJ01 | Rejection of invention patent application after publication |