专利名称:一种二维码防篡改和防伪造的认证方法
技术领域:
本发明涉及一种二维码防篡改和防伪造的认证方法,具体地说是通过二维码的图像识别判定与防止二维码的篡改,通过网址认证防止二维码的伪造,属于计算机信息安全领域。
背景技术:
二维码作为智能终端访问网络信息的一个重要入口,越来越受到重用,使用越来越频繁,二维码在广告、签到、会展、防伪、物品溯源跟踪等方面均有广泛的应用。当前二维码存在两个安全问题:1)二维码的篡改。攻击者可能利用黑笔将二维码中的部分白色区域涂黑,用户不仔细看一般不容易发现,当用户利用手机拍照后,通常会跳转到一个相应的二维码网站,该网站有可能是一个钓鱼网站;2) 二维码的伪造,发布的二维码本身是伪造的,该伪造的二维码可能引导访问者到一个钓鱼网站,导致错误的信息。目前针对二维码认证的上述两个安全问题的解决方法有一个缺陷,即往往需要二维码生成者在生成二维码之前采取措施,例如解决问题1),采取密码学中的散列函数,签名,加密等方法。解决问题2),则需要事先对链接进行登记,认证等工作。这些方法增加了二维码使用前的手续和复杂度,不利于二维码的推广应用。因此,给出一个可以无需二维码生成者参与的防御措施,是一个急需解决的难题。
发明内容
本发明的目的是为解决上述两个安全问题,而提供一种简单易行、成本低的一种二维码防篡改和防伪造的认证方法,本方法用于二维码的认证,可检测出二维码的篡改和二维码的伪造,将有效地防御二维码病毒,保障二维码的正确应用。为了实现上述的目的,本发明采取的技术方案是:提供一种二维码防篡改和防伪造的认证方法,按如下步骤执行:⑴、由智能终端读取二维码,将捕捉的二维码图像保存成8比特灰度的BITMAP格式图像;(2)、由防篡改检测模块对BITMAP图像的每个像素进行灰度值V的计算,防篡改检测模块为编制的防篡改检测软件,用于分析二维码是否存在篡改;设图像的像素为N,灰度值V为O SVS 255的整数,像素的灰度值用数组ν[Ρ..Ν]表示;求[Ρ..Ν]个像素中V值大于128,且出现次数最多的V值,称为W,对应的像素个数为nl ;再求[Ρ..Ν]个像素中V值小于128,且出现次数最多的V值,称为B,对应的像素个数为η2 ;若[max(B-X,O), B+X]灰度值区间内不存在某个灰度值,其对应像素的总个数多于阈值Thl,且[max(B-X,0),B+X]灰度值区间内不存在多个灰度值,其对应像素的总个数之和多于阈值Th2,则视为无篡改,输出Y ;否则视为有篡改,输出N ;其中X和Thl,Th2为系统参数,X称为检测参数,为正整数,Thl为小于n2的正整数;Th2为正整数;max(B-X,O)表示取B-X和O的较大值;⑶、防篡改检测模块输出Y,则对二维码解码,得到解码后网页地址的字符串URL ;
(4)、由内容检测模块通过云安全服务平台CLOUD验证URL的可信度,若CLOUD认为URL可信,则输出Y并访问URL,通过网址认证,否则输出N退出认证。本发明所述步骤⑵的防篡改检测模块或者按下列方法执行:对捕捉的二维码图像中所有黑点区域逐个依次进行放大显示;然后显示一个等待用户确认的交互界面,由用户确认是否有异常的涂改过的黑点,若用户认为有异常的涂改,则停止进行二维码的解码;若用户确认无异常点,则进行步骤⑶的二维码解码。本发明所述云安全服务平台CLOUD为具有统一开放访问接口的病毒防治检测数据库,数据库中的数据来自部署在终端的杀毒软件,这些杀毒软件实时采集病毒内容和恶意链接的数据,并将数据定期上传到云安全服务平台CLOUD的数据库中。本发明的二维码防篡改和防伪造的认证方法具有如下优点:1.本发明可以在二维码进行解码之前,对二维码是否篡改了进行检测,检测可以自动进行,不需要用户的参与,用户友好性好。2.本发明通过检验二维码链接的可信度,可防止用户受到钓鱼网站或者挂马网站的破坏或者造成经济上 的损失。3.本方法独立于二维码的具体编码方法,适用于各种类型二维码,通用性好。本方法可用于多种移动终端,如智能手机或者平板电脑,可以用于物联网、传感器网络、嵌入式系统等装置中,一般通过软件实现。
图1为本发明一种二维码防篡改和防伪造的认证方法操作步骤流程示意图。图2为本发明中防篡改检测模块软件计算与检测流程示意图。
具体实施例方式下面结合附图和实施例对本发明作进一步的描述。实施例1:本发明提供一种二维码防篡改和防伪造的认证方法,其步骤如图1所示:⑴、首先由智能终端,如采用智能手机或平板电脑,捕捉报纸、期刊、或者商品包装上的二维码的图像,智能终端将捕捉到的图像保存成8位灰度BITMAP图像;如本图像保存成长32,宽32像素的方块。(2)、由防篡改检测模块对BITMAP图像的每个像素进行灰度值V的计算,防篡改检测模块为编制的防篡改检测软件,该防篡改检测软件计算与检测流程如图2所示,通过软件计算保存成8位灰度BITMAP图像的每个像素的灰度值,用V表示,因为每个像素用8位表示,V值为一个大于等于0,小于等于255的整数,表示了像素灰度的深度,若灰度为0,表示黑色,若灰度为255,表示白色。当图像为长32,宽32像素的方块,像素个数N为32X32=1024,即共有1024个像素。计算1024个像素的V值,保存为V[1…1024],计算得出了 V值大于128的,且出现次数最多那个值为252,即W=252,表示白色的灰度值,经记录具有灰度W=252的像素个数为480,用nl=480表示;计算得出了 V值小于128的,且出现次数最多的那个值为20,表示黑色的灰度值,即B= 20,经记录具有灰度B的像素个数为500,即黑色像素的个数用n2=500表示。本发明中防篡改检测软件设定系统参数X=5,Thl=50,Th2=100,系统参数与检测报警的虚报率和误报率有关系,这些参数也可以人工改动。计算[max (B-X, O),B+X],等于[15,25],搜索灰度值数组V,简单计算后显示,在该区间内不存在某个灰度值,其对应像素的总个数多于50个,而且也不存在多个灰度值,其对应像素的总个数之和多于100个,则防篡改检测模块输出Y,继续后续步骤。⑶、因为防篡改检测模块输出Y,于是对二维码解码,得到解码后网页地址的字符串URL ;否则退出,不再继续。⑷、解码后由内容检测模块通过云安全服务平台CLOUD验证URL的可信度,判定是否为恶意内容、危险链接等。云安全服务平台CLOUD由多个病毒防治检测数据库组成,这些数据库具有开放统一的访问接口,数据库中的数据来自部署在终端的杀毒软件,这些杀毒软件实时采集病毒内容和恶意链接数据,并将这些数据定期上传到这些数据库中。此时云安全服务平台CLOUD返回Y,即表示链接可信,则继续访问URL通过网址认证防止二维码的伪造。实施例2:本发明提供第二种二维码防篡改和防伪造的认证方法,其步骤⑴、⑶、⑷同实施例1,不同的只是步骤⑵,防篡改检测模块将步骤⑴捕捉到的二维码图像进行放大,然后在显示屏中分区域自 上而下,自左而右,依次进行图像放大,依次逐个显示,特别是黑色像素的边缘部分。然后,显示一个用户确认的交互界面,如对话框,用户通过该交互界面确认是否有异常的黑点,即是否继续解码;用户输入N,表示二维码的图像有篡改,防篡改检测模块输出N,退出检测。本发明的二维码防篡改和防伪造的认证方法简单易行,具有通用性,一般通过软件实现,认证成本低,可用于多种移动终端,物联网、传感器网络、嵌入式系统等装置中。
权利要求
1.一种二维码防篡改和防伪造的认证方法,其特征在于:按如下步骤执行: ⑴、由智能终端读取二维码,将捕捉的二维码图像保存成8比特灰度的BITMAP格式图像; ⑵、由防篡改检测模块对BITMAP图像的每个像素进行灰度值V的计算,防篡改检测模块为编制的防篡改检测软件,用于分析二维码是否存在篡改;设图像的像素为N,灰度值V为O SVS 255的整数,像素的灰度值用数组ν[Ρ..Ν]表示;求[Ρ..Ν]个像素中V值大于128,且出现次数最多的V值,称为W,对应的像素个数为nl ;再求[Ρ..Ν]个像素中V值小于128,且出现次数最多的V值,称为B,对应的像素个数为η2 ;若[max(B-X,0),B+X]灰度值区间内不存在某个灰度值,其对应像素的总个数多于阈值Thl,且[max(B-X,0),B+X]灰度值区间内不存在多个灰度值,其对应像素的总个数之和多于阈值Th2,则视为无篡改,输出Y ;否则视为有篡改,输出N ;其中X和Thl,Th2为系统参数,X称为检测参数,为正整数,Thl为小于n2的正整数;Th2为正整数;max(B-X,O)表示取B-X和O的较大值; ⑶、防篡改检测模块输出Y,则对二维码解码,得到解码后网页地址的字符串URL ; ⑷、由内容检测模块通过云安全服务平台CLOUD验证URL的可信度,若CLOUD认为URL可信,则输出Y并访问URL,通过网址认证,否则输出N退出认证。
2.根据权利要求1所述的一种二维码防篡改和防伪造的认证方法,其特征在于:所述步骤⑵的防篡改检测模块或者按下列方法执行:对捕捉的二维码图像中所有黑点区域逐个依次进行放大显示 ;然后显示一个等待用户确认的交互界面,由用户确认是否有异常的涂改过的黑点,若用户认为有异常的涂改,则停止进行二维码的解码;若用户确认无异常点,则进行步骤⑶的二维码解码。
3.根据权利要求1所述的一种二维码防篡改和防伪造的认证方法,其特征在于:所述云安全服务平台CLOUD为具有统一开放访问接口的病毒防治检测数据库,数据库中的数据来自部署在终端的杀毒软件,这些杀毒软件实时采集病毒内容和恶意链接的数据,并将数据定期上传到云安全服务平台CLOUD的数据库中。
全文摘要
本发明涉及一种二维码防篡改和防伪造的认证方法,由智能终端捕捉二维码图像,并保存成8比特灰度的BITMAP图像;由防篡改检测模块对BITMAP图像的每个像素进行灰度值V的计算,分析是否存在篡改;防篡改检测模块输出Y,则对二维码解码,得到网页地址的字符串URL;由内容检测模块通过云安全服务平台CLOUD验证URL的可信度,若CLOUD认为URL可信,则输出Y并访问URL,否则输出N退出认证。本方法通过二维码的图像识别防止二维码的篡改,通过网址认证防止二维码的伪造,可保障二维码应用的安全及减少病毒的威胁。本方法简单易行具有通用性,一般通过软件实现,认证成本低。
文档编号G06K19/06GK103226688SQ201310063828
公开日2013年7月31日 申请日期2013年2月28日 优先权日2013年2月28日
发明者任伟 申请人:中国地质大学(武汉)