指纹图像数据的加密方法和装置与流程

文档序号:12278136阅读:611来源:国知局
指纹图像数据的加密方法和装置与流程

本发明涉及指纹识别和加密领域,特别涉及一种指纹图像数据的加密方法和装置。



背景技术:

在金融支付领域,除了使用传统的口令进行金融业务交易之外,生物识别越来越多的被应用于支付业务中,如指纹识别。传统的口令存在容易被窃取的隐患,此外输入口令较为费时,用户体验不佳。而指纹识别具有唯一性,还具有更安全和更加便利的优点。

使用指纹识别进行支付,首先需要将指纹数据采集到后台,通常需要采集(并加密)多张未经过压缩的指纹图像数据到后台,为了保证指纹图像数据的安全,需要由终端对指纹图像数据进行加密,将加密数据送到后台,加密密钥由后台和终端协商得出;加密算法通常使用的是3DES算法,对于大小约为50万字节的数据进行加密,如果使用标准的3DES算法进行加密,1024字节计算3DES,大约需要20ms,总的加密时间大约需要10s,这使得用户体验极差。



技术实现要素:

为此,需要提供一种新的对指纹图像大数据以3DES算法进行快速加密的方案。

为实现上述目的,发明人提供了一种指纹图像数据的加密方法,包括如下步骤:

对原始指纹图像数据做二值化转换处理,得到一待加密数字序列;

使用预设密钥对待加密数字可能组成的256种组合进行加密,得到密码表;

对待加密数字序列以8字节为单位进行分组,在密码表中查找各组对应的密码,并拼接密码得到加密结果。

进一步地,所述的指纹图像数据的加密方法中,步骤“对原始指纹图像数据做二值化处理”具体包括:以预设算法将原始指纹图像中每个像素的像素值归类为0或255。

进一步地,所述的指纹图像数据的加密方法中,所述预设算法具体包括:判断图像中各像素点的像素值是否大于预设阈值,若大于则令该像素点的像素值为255,否则为0;或

计算预设尺寸的区域内的像素平均值并以该平均值作为此区域的像素阈值,判断区域中各像素点的像素值是否大于所述区域的像素阈值的大小,若大于则令该像素点的像素值为255,否则为0;或

以差分自适应算法计算图像中各像素点的自适应阈值,并判断各像素点的像素值是否大于所述自适应阈值;若大于则令该像素点的像素值为255,否则为0。

进一步地,所述的指纹图像数据的加密方法中,待加密数字可能组成的256种组合中每个组合均包含8个数字。

进一步地,所述的指纹图像数据的加密方法中,步骤“对待加密数字序列以8字节为单位进行分组,在密码表中查找各组对应的密码,并拼接密码得到加密结果”中,拼接密码时对各组密码的拼接顺序与对待加密数字序列以8字节为单位进行分组后的分组顺序一致。

发明人同时还提供了一种指纹图像数据的加密装置,包括二值化转换单元、加密单元、存储单元、分组单元、查找单元和拼接单元;

所述二值化转化单元用于对原始指纹图像数据做二值化转换处理,得到一待加密数字序列;

所述加密单元用于使用预设密钥对待加密数字可能组成的256种组合进行加密,得到密码表,所述存储单元用于存储所述密码表;

所述分组单元用于对待加密数字序列以8字节为单位进行分组,所述查找单元用于在存储单元的密码表中查找各组对应的密码,所述拼接单元用于拼接密码得到加密结果。

进一步地,所述的指纹图像数据的加密装置中,二值化转换单元对原始指纹图像数据做二值化处理具体包括:以预设算法将原始指纹图像中每个像素的像素值归类为0或255。

进一步地,所述的指纹图像数据的加密装置中,所述预设算法具体包括:判断图像中各像素点的像素值是否大于预设阈值,若大于则令该像素点的像素值为255,否则为0;或

计算预设尺寸的区域内的像素平均值并以该平均值作为此区域的像素阈值,判断区域中各像素点的像素值是否大于所述区域的像素阈值的大小,若大于则令该像素点的像素值为255,否则为0;或

以差分自适应算法计算图像中各像素点的自适应阈值,并判断各像素点的像素值是否大于所述自适应阈值;若大于则令该像素点的像素值为255,否则为0。

进一步地,所述的指纹图像数据的加密装置中,待加密数字可能组成的256种组合中每个组合均包含8个数字。

进一步地,所述的指纹图像数据的加密装置中,拼接单元拼接密码时对各组密码的拼接顺序与分组单元对待加密数字序列以8字节为单位进行分组后的分组顺序一致。

区别于现有技术,上述技术方案对涉及大数据量的指纹图像数据进行3DES进行加密时,能极大的缩短加密时间,提高用户体验。以用户体验性能指标来看,对帧图像进行3DES加密的时间在2s以内;并且,当数据量无限增大时,加密时间基本保持不变。

附图说明

图1为本发明一实施方式所述的指纹图像数据的加密方法的流程图;

图2为本发明一实施方式所述的指纹图像数据的加密装置的结构示意图。

附图标记说明:

1-二值化转换单元

2-加密单元

3-存储单元

4-分组单元

5-查找单元

6-拼接单元

具体实施方式

为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。

请参阅图1,为本发明一实施方式所述的指纹图像数据的加密方法的流程图;所述方法包括如下步骤:

S1、对原始指纹图像数据做二值化转换处理,得到一待加密数字序列;

S2、使用预设密钥对待加密数字可能组成的256种组合进行加密,得到密码表;

S3、对待加密数字序列以8字节为单位进行分组,在密码表中查找各组对应的密码,并拼接密码得到加密结果。

进一步地,所述的指纹图像数据的加密方法中,步骤S1所述的“对原始指纹图像数据做二值化处理”具体包括:以预设算法将原始指纹图像中每个像素的像素值归类为0或255。

步骤S1所述的原始图像数据的像素值灰度值在0-255之间,由于指纹图像的特殊性,指纹图像识别主要依靠的是指纹纹理特征,因此只要不破坏指纹图像的纹理特性,可以通过指纹图像进行二值化处理,来简化图像数据像素值;通过目前通用的算法,将图像每个像素的像素值归类到0或者255,于是待加密的数据由不同像素值组成的序列变成由0或255组成的序列。

进一步地,本实施方式中,步骤S1所述预设算法具体为:判断图像中各像素点的像素值是否大于预设阈值,若大于则令该像素点的像素值为255,否则为0。

在其他实施方式中,所述预设算法还可以是:

计算预设尺寸的区域内的像素平均值并以该平均值作为此区域的像素阈值,判断区域中各像素点的像素值是否大于所述区域的像素阈值的大小,若大于则令该像素点的像素值为255,否则为0;或

以差分自适应算法计算图像中各像素点的自适应阈值,并判断各像素点的像素值是否大于所述自适应阈值;若大于则令该像素点的像素值为255,否则为0。

本实施方式所述的指纹图像数据的加密方法中,待加密数字可能组成的256种组合中每个组合均包含8个数字。

进一步地,所述的指纹图像数据的加密方法中,步骤S3“对待加密数字序列以8字节为单位进行分组,在密码表中查找各组对应的密码,并拼接密码得到加密结果”中,拼接密码时对各组密码的拼接顺序与对待加密数字序列以8字节为单位进行分组后的分组顺序一致。

也就是说,本实施方式就是利用了3DES算法具有以8字节为单位进行运算,对于多个字节的数据,8字节为单位分组,将加密结果进行依次拼接组成的特征。对于大数据量数据进行加密,使用的密钥值是相同的,对进行二值化处理过后的数据进行加密,以8字节为单位进行分组,每一组的每个数据只有两个值:0或者255,因此8字节的待加密数据为一序列由0和255的排序组合;8字节待加密数据的可能组合,一共有256种组合;只要对以上256种组合的数据,使用密钥加密,就可以得到对应256组对应的加密结果;而对于大数据量的加密,任何一个8字节的加密结果,只需要通过查找对应的256种加密结果即可得到;对于大数据量加密结果,通过8字节分组,查找对应8字节对应的加密结果,再通过各个拼接得到整个大数据量的加密结果。

请参阅图2,为本发明一实施方式所述的指纹图像数据的加密装置的结构示意图;所述指纹图像数据的加密装置包括二值化转换单元1、加密单元2、存储单元3、分组单元4、查找单元5和拼接单元6;

所述二值化转化单元1用于对原始指纹图像数据做二值化转换处理,得到一待加密数字序列。所述的原始图像数据的像素值灰度值在0-255之间,由于指纹图像的特殊性,指纹图像识别主要依靠的是指纹纹理特征,因此只要不破坏指纹图像的纹理特性,可以通过指纹图像进行二值化处理,来简化图像数据像素值;通过目前通用的算法,将图像每个像素的像素值归类到0或者255,于是待加密的数据由不同像素值组成的序列变成由0或255组成的序列。

所述加密单元2用于使用预设密钥对待加密数字可能组成的256种组合进行加密,得到密码表,所述存储单元3用于存储所述密码表;

所述分组单元4用于对待加密数字序列以8字节为单位进行分组,所述查找单元5用于在存储单元3的密码表中查找各组对应的密码,所述拼接单元6用于拼接密码得到加密结果。

进一步地,所述的指纹图像数据的加密装置中,二值化转换单元1对原始指纹图像数据做二值化处理具体包括:以预设算法将原始指纹图像中每个像素的像素值归类为0或255。

在本实施方式中,所述预设算法具体为:判断图像中各像素点的像素值是否大于预设阈值,若大于则令该像素点的像素值为255,否则为0。

在其他实施方式中,所述预设算法还可以是:

计算预设尺寸的区域内的像素平均值并以该平均值作为此区域的像素阈值,判断区域中各像素点的像素值是否大于所述区域的像素阈值的大小,若大于则令该像素点的像素值为255,否则为0;或

以差分自适应算法计算图像中各像素点的自适应阈值,并判断各像素点的像素值是否大于所述自适应阈值;若大于则令该像素点的像素值为255,否则为0。

本实施方式中,待加密数字可能组成的256种组合中每个组合均包含8个数字。

进一步地,所述的指纹图像数据的加密装置中,拼接单元6拼接密码时对各组密码的拼接顺序与分组单元4对待加密数字序列以8字节为单位进行分组后的分组顺序一致。

也就是说,本实施方式就是利用了3DES算法具有以8字节为单位进行运算,对于多个字节的数据,8字节为单位分组,将加密结果进行依次拼接组成的特征。对于大数据量数据进行加密,使用的密钥值是相同的,对进行二值化处理过后的数据进行加密,以8字节为单位进行分组,每一组的每个数据只有两个值:0或者255,因此8字节的待加密数据为一序列由0和255的排序组合;8字节待加密数据的可能组合,一共有256种组合;只要对以上256种组合的数据,使用密钥加密,就可以得到对应256组对应的加密结果;而对于大数据量的加密,任何一个8字节的加密结果,只需要通过查找对应的256种加密结果即可得到;对于大数据量加密结果,通过8字节分组,查找对应8字节对应的加密结果,再通过各个拼接得到整个大数据量的加密结果。

请参阅下表,为本发明技术方案与正常3DES加密的效率对比。

由此可见,区别于现有技术,本发明所述的指纹图像数据的加密装置及加密方法对涉及大数据量的指纹图像数据进行3DES进行加密时,能极大的缩短加密时间,提高用户体验。以用户体验性能指标来看,对帧图像进行3DES加密的时间在2s以内;并且,当数据量无限增大时,加密时间基本保持不变。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。

本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。

上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。

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