400-099-0376

在线试用
微信扫码联系专属客服
安企神软件官网
首页
下载中心
客户列表
关于安企神

二维码加密算法

2022-10-28

二维条码用于证件管理在国外已经十分常见,但由于二维码的编解码技术已经非常成熟,很容易被不法分子伪造。为此,我们提出了利用伪指纹特征密钥加密二维条码的技术方案,实现了“人证同一性”问题,对基于二雏码的证件管理具有重要的现实意义。

一、伪指纹特征密钥

1、随机数发生器概述

在密码学中为了防止密钥被破译,密钥必须没有任何规律,基于此种要求提出了利用随机数作为密钥的方法。目前对随机数发生器的研究很多,提出了很多方案,但迄今为止我们不能证明一个数字序列为完全随机,只是它的规律很难发现而已。目前用于密钥的随机数发生器主要有美国联邦信息处理标准的ANSI X9. 17和FIPS186等多种。随机数发生器虽然对密钥被破译的问题提供了支持,但随机数是由准产生的没有给出认证的问题,而这一点在证件管理中具有非常重要的意义。伪指纹特征随机发生器可以解决这种认证问题。

2、伪指纹特征随机发生器

伪指纹特征随机发生器的组成技术包括:指纹特征数据采集技术、伪指纹特征随机发生器技术、伪随机指纹特征密钥技术,如图1所示。

(1)指纹特征数据采集器的作用是通过采集指纹数据,并经过指纹模式识别系统算法将它转化为指纹特征数据。

(2)伪指纹特征随机发生器的作用是通过伪指纹特征随机发生器,产生伪随机指纹特征。

(3)伪随机指纹特征密钥可使伪随机指纹特征数据生成相关的加密和解密密钥,并且通过该密钥可以认证伪随机指纹特征数据的身份,即该密钥是谁的指纹。

3、伪指纹特征密钥生成方法

伪指纹特征密钥的生成步骤如下;首先采集指纹进行处理得到初始指纹特征信息,接着对该指纹特征信息设定参数进行一系列的平移和旋转,形成伪随机指纹特征,最后编码成为伪随机指纹特征数据值。具体实现过程如下:

(1)如图2所示,图中的P点是某一个指纹特征点,T为平移向量.P’是平移后的点。即:P'=P+T

(2)如图3所示,P点是平移后的一点,P’是经过旋转后的一点,θ是旋转的角度.R是旋转矩阵。即P’=R*P

(3)如图4所示,P1和PO经过平移旋转后的指纹特征点,P1'、PO’是P1和PO经过缩放后的点,其中S为缩放矩阵。为简化计算,SX和SY一般取值相同。

(4)将得到的每个点的坐标拼接起来,产生一个伪指纹特征随机数。

通过上述处理,我们并没有改变指纹拓补结构,将变化前的指纹特征与变化后的指纹特征作指纹比对运算,结果是判定两指纹相同。由此伪指纹特征随机数不仅表示了一个人的身份特征,而且具有随机不确定性。若将其用作密钥,则既可表示该密码的人的身份,又难以破泽。经过上述过程产生的随机数值序列一般都太大(有256个字节),可以再利用哈希函数散列工具,将生成的伪指纹特征值敞列成较小的随机数。

生成伪指纹特征密钥的程序如图5所示。该程序取自《Visual C++指纹模式识别系统算法及实现》中源程序。可以用于产生伪指纹特征密钥对二维码进行加密解密。

二、二维码加密方案研究

生成二维码及使用的正常流程如图6所示。

通过上面的流程,可以在不同的环节对二维条码加密和解密形成不同的解决方案,各种方案如下。

方案一:本方案是对信源先加密,再进行编码,对二维条码解码后得到的是信息密文,只有通过解密程序才能识读,如图7所示。

方案二:本方案是对信源先编码,编码后对码字进行加密。为了避免码字加密对纠错的影响,我们只能在纠错码生成前对数据码字进行加密,如图8所示。

除此之外还可在生成二维码图形时,对码图进行随机加密,属高级加密,条码要通过高速解码芯片才能解密。对二维码进行加密时还可同时采用上面的方案形成更多混合方案。由于二维码识读器已经商业化,任何符合国家标准的二维码都可利用二维识读器直接解码得到信息,因此对一般用户来说,应该采用第一种加密方案。第二种方案对二维码设备开发商在扩充其设备功能时使用。本文选择第一种方案,利用伪指纹特征密钥将信息加密,改善二维码的防伪功能。

三、伪指纹特征密钥加密证件信息的意义和流程

在证件管理中我们将证件信息存储在二维码中,将二维码打印在证件上实现证件信息的自动化读取,但没有证件的防伪功能。在对称密钥体制中,收发双方必须共享密钥,这就涉及到密钥的保存与传递问题,攻击者通常在密钥的保存传递环节中窃取密钥对密码体制进行攻击,伪指纹特征密钥可以有效防止这种攻击。我们用持证人的伪指纹特征密钥对证件信息加密后存储在二维码中,就可以使证件伪造者改动证件信息的同时不能相应改动二维码内存储的内容而被识破。在证件信息的凄取过程中,只有持证人本人通过其指纹特征密钥才能解密证件信息,防止证件被冒名使用。

伪指纹特征密钥加密解密流程如图9所示(其中X表示信息明文,Y表示信息密文)。

小知识之二维码

二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。在现代商业活动中,可实现的应用十分广泛,如:产品防伪/溯源、广告推送、网站链接、数据下载、商品交易、定位/导航、电子商务应用、车辆管理、信息传递等。如今智能手机扫一扫(简称313)功能的应用使得二维码更加普遍,随着国内物联网产业的蓬勃发展,更多的二维码技术应用解决方案被开发,二维码成为移动互联网入口真正成为现实。

  • TAG: