一种基于非线性空间频率特性的安全二维码通信方法与流程

文档序号:17443473发布日期:2019-04-17 05:08阅读:216来源:国知局
一种基于非线性空间频率特性的安全二维码通信方法与流程

本发明涉及近场通讯安全领域,尤其是涉及一种基于非线性空间频率特性的安全二维码通信方法。



背景技术:

快速响应码(二维码)正在成为日常生活中不可或缺的一部分,因为它的快速可读性以及手机内置摄像头的普及性,使得二维码在我们的日常生活中无处不在。在中国及周边地区,二维码作为一种便捷的移动支付方式,对于零售业也越来越重要。

二维码目前存在着的安全风险之一就是重放攻击和同步令牌提升和支出(stls)攻击。攻击者通过拍摄受害者的二维码并使用复制后的二维码进行移动支付或访问受害者的私人信息。因为有很多零售商(例如沃尔玛,星巴克),金融组织(例如淘宝,阿里巴巴)社交网络应用(例如,wechat)会普遍支持二维码式的移动快捷支付,这样的攻击可能造成巨大的经济损失或私人信息泄露。对二维码进行加密是应付这些攻击是最常见的解决方案。然而,最近的研究表明传统的加密技术并不会减轻攻击者的威胁,其原因在于目前的加密通常在于编码层面的加密,而常规二维码的最大容量也仅有1000多个字节,加密后将导致信息容量损失,因此加密的强度不高。



技术实现要素:

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于非线性空间频率特性的安全二维码通信方法。

本发明的目的可以通过以下技术方案来实现:

一种基于非线性空间频率特性的安全二维码通信方法,包括:

摄像头建模:根据扫描设备的摄像头色彩滤镜矩阵的空间频率进行建模;

二维码加密:利用扫描设备的cfa空间频率和建模结果,以及显示设备显示器的空间频率,在显示设备上生成目标二维码的加密图片;

二维码解密:扫描设备的摄像头在指定位置和指定角度对显示器中的加密二维码进行拍摄,恢复目标二维码并进行解析。

建模过程具体为对绿色过滤层的色彩滤镜矩阵进行建模。

所述建模结果为:

mcfa(x,y)=pcfa(φcfa(x,y))

pcfa(u)=0.5+0.5cos(2πu)

φcfa(x,y)=((x,y)mod2)/2

其中:mcfa(x,y)为摄像头图像传感器上过滤层在坐标(x,y)的绿色接收信息,pcfa(·)为cfa中绿色过滤层的周期函数,φcfa(x,y)为cfa中绿色过滤层的相位函数。

所述二维码加密过程具体包括:

步骤a1:利用扫描设备的cfa空间频率和建模结果,以及显示设备显示器的空间频率,对原始二维码图像图片进行相位和频率调制;

步骤a2:对调制后的图片增加高斯白噪声以模糊加密二维码中的轮廓。

所述二维码解密过程具体包括:

步骤b1:获取摄像头在指定位置和指定角度对显示器中加密二维码拍摄的多张连续图片;

步骤b2:选取一张未处理的图片,并进行转换rgb图片到hsv坐标,取最大化饱和维数;

步骤b3:对转换后的图片,根据三个定位标记的位置,以确定二维码的尺寸并对二维码进行分割,得到多个方块;

步骤b4:提取将绿色方块,对于每个像素点,当绿色强度大于规定阈值的,判断为白色,反之则判断为黑色;

步骤b5:针对每个方块,根据方块内的白色和黑色像素点的分布确定方块的颜色;

步骤b6:遍历所有的黑色方块,并将所有相邻的黑色方块标记到相同的索引值;

步骤b7:判断是否所有的方块都被标记或者未标记的方块将标记的方块全部包围,若为是,则执行步骤b8,反之则返回步骤b2;

步骤b8:根据各方块的索引值进行着色,若相邻的两个方块有着相同的索引值,则着色成相同的颜色,反之则着色成不同的颜色。

所述步骤b6具体包括:

步骤b61:遍历所有的黑色方块,基于所有相邻的黑色方块标记到相同的索引值的原则,确定本帧下各方块的索引值;

步骤b62:确定各方块在是否已存在索引值,若为否,则将本帧下该方块的索引值作为该方块的索引值,反之,则执行步骤b63:

步骤b63:判断本帧下该方块的索引值是否与之前的索引值一致,若为否,则将上一帧中所有标记了此方块索引值的方块都标记成本帧下该方块的索引值。

所述步骤b8具体包括:

步骤b81:对三个定位标记区域中的方块进行着色;

步骤b82,基于三个定位区域中的方块的着色结果,根据各方块的索引值进行着色,若相邻的两个方块有着相同的索引值,则着色成相同的颜色,反之则着色成不同的颜色。

所述指定位置为距离显示器20~45厘米之间。

所述指定位置为距离显示器30厘米。

所述指定角度为与显示器平面的夹角垂直。

与现有技术相比,本发明具有以下有益效果:

1)本发明利用了光学上的空间频率的非线性特征,并运用了摄像头自身色彩滤镜矩阵的空间频率和显示器的空间频率对目标二维码进行相位调制,从而达到加密的效果。

2)本发明满足安全性与性能指标,不需要对现有的硬件设置进行修改,可以直接从软件上升级现有的二维码通信系统来增加通信安全性。

3)利用光学上的非线性空间频率所产生的摩尔纹对目标二维码进行加密,并通过智能手机中的摄像头在指定位置和角度对加密的二维码进行拍摄并解密,从光学层面进行加密,加密效果好。

4)由于显示二维码的电子屏幕本身具备空间频率特征,消除了对特殊光学硬件的需求,并提供了多种拍摄距离的频率调制。

5)系统地分析了屏幕和摄像头的空间频率特性,在市面上的常见的电子显示器和智能手机上都实现了二维码的加密通信。

6)巧妙利用了三个定位区域的已知颜色,从而可以进行快速着色。

7)增加了高斯白噪声,来模糊目标二维码轮廓,从而利用了摄像头在角度和距离不合适时产生的失真,实现进一步加密。

附图说明

图1为本发明方法的主要步骤流程示意图;

图2为光学中两种空间频率叠加产生的非线性现象和摄像头拍摄显示器产生的摩尔纹示意图;

图3为摄像头中bayer色彩滤镜矩阵示意图;

图4(a)原始二维码的示意图;

图4(b)为基于绿色过滤层的加密效果示意图;

图4(c)为基于红色过滤层的加密效果示意图;

图4(d)为基于蓝色过滤层的加密效果示意图;

图5为基于显示器空间频率调制的加密效果图;

图6为摄像头拍摄照片的解码流程图;

图7(a)为基于非线性空间频率特性的安全二维码通信实验结果中拍摄距离和解码成功率的示意图;

图7(b)为基于非线性空间频率特性的安全二维码通信实验结果中拍摄角度和解码成功率的示意图。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

为了解决安全问题,我们提出了mqrcode,它利用光学上的特定空间频率的非线性特征对二维码进行加密和解密。当目标接收器将相机保持在指定位置(例如30cm和0°),加密后的二维码将会因为摩尔现象显露成原始二维码。恶意的攻击者在其他任意位置将只看到加密后的伪装二维码。我们的实验表明,mqrcode的解密率为95%,平均解码速率在0.82秒以上。当相机偏离指定位置10cm或15°时,解码率下降到0。所以它直接从物理上隔绝了攻击者的攻击,是安全的通信方式。

一种基于非线性空间频率特性的安全二维码通信方法,如图1至图6所示,包括加密显示和拍摄解密两部分:1)通过已知摄像头的色彩滤镜矩阵空间频率和显示器的空间频率,利用相位调制和频率调制在显示器上生成加密的二维码图案;2)在距离显示器的指定位置和角度,用摄像头对加密图案进行拍摄,最终利用解密算法解析出原始二维码图案并进行解析得到相关信息。通过仔细进行相位和频率调制后的加密二维码,攻击者在除了指定位置外的其他任何位置都无法用摄像头去获取目标二维码图案,这样就确保了二维码通信从视觉上就杜绝了信息泄露。

在光学上,当两个具有规律性空间频率的图案进行叠加时,会产生称为摩尔纹的附加的空间频率图案,如图2所示。假设叠加的两个图案的空间频率分别是f1和f2,通过乘法模型,叠加后的图案会出现(f1+f2)、(f1-f2)两种附加空间频率,但是人眼对低频的图案更加敏感,所以图2左图观察到的就是(f1-f2)频率的图案。摄像头也是一个非线性光学系统,因为摄像头传感器中的色彩滤镜矩阵具有,当拍摄一些具体明显规律的空间频率图案的照片时,也会产生摩尔纹,如图2右图所示。

在加密过程中,更为具体的,因为摄像头的色彩滤镜矩阵(如图3)包含三种颜色的空间频率特征,不同色彩滤镜矩阵类型会对颜色有不一样分布。图3中为bayer分布的色彩滤镜矩阵是当前移动智能手机摄像头中最常见的色彩滤镜矩阵,由红、绿、蓝三种不同分布的空间图案组成。当使用摄像头拍摄显示器的时候,显示器上的像素点投影到摄像头传感器上形成第一层空间频率为f1的空间图案,摄像头传感器本身的cfa形成第二层空间频率为f2的空间图案。当摄像头被放置在正确的位置和角度,这样因为摩尔现象产生的(f1-f2)可见空间频率,这样就会产生因为非线性光学相互作用下产生的纹波图案。

具体的,如图1所示,包括:

摄像头建模:根据扫描设备的摄像头色彩滤镜矩阵的空间频率进行建模,其中,已知扫描设备的摄像头色彩滤镜矩阵参数。

本申请利用了摄像头的色彩滤镜矩阵和伪装图案之间的非线性光学相互作用来进行加密和解密二维码。我们假设色彩滤镜矩阵的空间模型为mcfa(x,y),原始二维码为mdec(x,y)。加密过程就是去计算出加密的二维码模型menc(x,y)来满足:mdec(x,y)=mcfa(x,y)*menc(x,y)。首先要对色彩滤镜矩阵进行建模,mcfa(x,y)=pcfa(φcfa(x,y)),图3展示了bayer色彩滤镜矩阵的颜色传感器分布,我们选择对绿色过滤层的色彩滤镜矩阵进行建模。因为1)二维码仅仅包含两种颜色,而且通过实验证明使用绿色过滤层完全可以应付加密和解密的需求;2)绿色过滤层在2维阵列中是完全对称的,并且数量最多,人眼很难做出区分当相位发生变化的时候,有利于进行图案的加密。我们对绿色过滤层的空间模型进行以下建模:

mcfa(x,y)=pcfa(φcfa(x,y))

pcfa(u)=0.5+0.5cos(2πu)

φcfa(x,y)=((x,y)mod2)/2

其中:mcfa(x,y)为摄像头图像传感器上过滤层在坐标(x,y)的绿色接收信息,pcfa(·)为cfa中绿色过滤层的周期函数,φcfa(x,y)为cfa中绿色过滤层的相位函数。

为了计算出menc(x,y)=penc(φenc(x,y)),我们定义penc(u)=0.5+0.5cos(2πu)。

我们通过映射二维码中黑色和白色到不同的相位来进行相位调制。因为已知mdec(x,y)和mcfa(x,y),结合摩尔理论和傅里叶变换理论可得:

mdec(x,y)=pdec(φdec(x,y))=pdec(φcfa(x,y)-φenc(x,y))

图4展示了用绿、红、蓝三种过滤层进行建模并进行相位调制后的加密效果图,发现使用绿色过滤层的效果最佳。

二维码加密:利用扫描设备的cfa空间频率和建模结果,以及显示设备显示器的空间频率,在显示设备上生成目标二维码的加密图片,具体包括:

步骤a1:利用扫描设备的cfa空间频率和建模结果,以及显示设备显示器的空间频率,对原始二维码图像图片进行相位和频率调制;

步骤a2:对调制后的图片增加高斯白噪声以模糊加密二维码中的轮廓。

日常二维码的使用场景需要二维码具备多种通信距离,为了支持多种通信距离,本发明通过调制频率来拓展绿色过滤层空间模型函数来产生新的空间模型。图5说明了mqrcode采用频率调制重新进行图片加密后的效果图,来适应多种应用场景的不同通信距离。但是当我们调低空间频率时,目标二维码的轮廓变得更加明显导致加密的效果变差如图5(d)。所以本发明还在相位和频率调制后增加了10%的高斯白噪声,来模糊目标二维码轮廓。

二维码解密:扫描设备的摄像头在指定位置和指定角度对显示器中的加密二维码进行拍摄,恢复目标二维码并进行解析,具体包括:

步骤b1:获取摄像头在指定位置和指定角度对显示器中加密二维码拍摄的多张连续图片;

步骤b2:选取一张未处理的图片,并进行转换rgb图片到hsv坐标,取最大化饱和维数,如图6(a)是由摄像头拍摄的图片,转换后的图片如图6(b)。

步骤b3:对转换后的图片,根据三个定位标记的位置,以确定二维码的尺寸并对二维码进行分割,得到多个方块;

其中,常见二维码有两种版本(version1为21x21方块,version2为177x177方块)。二维码有三个定位标记并且位置固定,所以我们可以从饱和图像中区分出来并确定宽度和高度,然后计算每个方块的大小并进行分割,如图6(c)所示。

步骤b4:提取将绿色方块,对于每个像素点,当绿色强度大于规定阈值的,判断为白色,反之则判断为黑色;

为了可靠地识别具有相同相位的方块,我们首先将绿色方块从蓝色/红色中分离出来,对于每个像素点,当绿色强度大于规定阈值时,像素将判断为白色,否则判断为黑色。转换后的图片如图6(d)所示。

步骤b5:针对每个方块,根据方块内的白色和黑色像素点的分布确定方块的颜色;其中因为模糊二维码轮廓时添加的噪声和拍摄过程时所产生的噪声,使得每个方块中会同时包含黑色和白色两种像素,为了分类每个方块到黑色或者白色中,我们采用一种权重方块滤波器去对每个方块进行滤波。权重方块滤波器的大小和二维码中每个小方块一致,滤波器在方块中心有着更大的权重,在方块边缘有着更小的权重。每个方块和权重方块滤波器相乘之后,得到的权值会根据预定的阈值来分类成黑色和白色。

步骤b6:遍历所有的黑色方块,由于当相邻的方块都是黑色的说明相邻的这两个方块具有相同的调制相位值,因此将所有相邻的黑色方块标记到相同的索引值,具体包括:

步骤b61:遍历所有的黑色方块,基于所有相邻的黑色方块标记到相同的索引值的原则,确定本帧下各方块的索引值;

步骤b62:确定各方块在是否已存在索引值,若为否,则将本帧下该方块的索引值作为该方块的索引值,反之,则执行步骤b63:

步骤b63:判断本帧下该方块的索引值是否与之前的索引值一致,若为否,则将上一帧中所有标记了此方块索引值的方块都标记成本帧下该方块的索引值。

步骤b7:判断是否所有的方块都被标记或者未标记的方块将标记的方块全部包围,若为是,则执行步骤b8,反之则返回步骤b2;

步骤b8:根据各方块的索引值进行着色,若相邻的两个方块有着相同的索引值,则着色成相同的颜色,反之则着色成不同的颜色,具体包括:

步骤b81:对三个定位标记区域中的方块进行着色;

步骤b82,基于三个定位区域中的方块的着色结果,根据各方块的索引值进行着色,若相邻的两个方块有着相同的索引值,则着色成相同的颜色,反之则着色成不同的颜色。

指定位置为距离显示器20~45厘米之间,优选的,指定位置为距离显示器30厘米。此外,指定角度为与显示器平面的夹角垂直。

我们将生成的加密二维码用三星s7手机进行显示,然后分别使用iphone6和huaweiple在距离三星s7手机30cm和0°的位置进行拍摄和解密。如图7所示,我们发现当距离在30cm时,解码率最高达到100%,当距离偏差达到5cm以外,解码率瞬间降到0%;同样,当角度在0°时,解码率高达100%,当角度偏差达到5°以外时,解码率瞬间降到0%。。

本申请提供了一种基于非线性空间频率特性的二维码通信加密方法,利用光学上的非线性空间频率所产生的摩尔纹对目标二维码进行加密,并通过智能手机中的摄像头在指定位置和角度对加密的二维码进行拍摄并解密,来实现二维码的安全通信。由于显示二维码的电子屏幕本身具备空间频率特征,本申请消除了对特殊光学硬件的需求,并提供了多种拍摄距离的频率调制。本申请系统地分析了屏幕和摄像头的空间频率特性,在市面上的常见的电子显示器和智能手机上都实现了二维码的加密通信。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1