指纹加密传输方法、解密方法及装置、存储介质、终端与流程

文档序号:20948242发布日期:2020-06-02 19:59阅读:218来源:国知局
指纹加密传输方法、解密方法及装置、存储介质、终端与流程

本发明涉及图像处理技术领域,尤其涉及一种指纹加密传输方法、解密方法及装置、存储介质、终端。



背景技术:

由于用户的指纹具有唯一性,因此指纹可以用于验证用户的身份,并用在了越来越多的安全验证领域。

现有技术中,通过传感器预先采集到用户的指纹,并将指纹信息存储下来。当再次采集到用户的指纹时,将采集到的指纹与预先存储的指纹进行比对,以验证用户的身份是否一致。

但是,指纹信息在存储时或者传输过程中,容易被盗用或截取,降低了指纹存储或指纹传输的安全性。



技术实现要素:

本发明解决的技术问题是如何提高指纹传输的安全性。。

为解决上述技术问题,本发明实施例提供一种指纹加密传输方法,指纹加密传输方法包括:获取待传输的指纹图像;按照预设窗口的大小将所述指纹图像分解为多个块图像,块图像的大小与所述预设窗口的大小一致;确定多个块图像的标识,所述多个块图像的标识具备第一预设顺序;接收来自服务器的加密密码,所述加密密码包括随机排列的多个块图像的标识,所述加密密码是针对所述指纹图像的;根据所述多个块图像的标识以及所述加密密码确定加密后的多个块图像,以得到加密后的指纹图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列,所述加密顺序不同于所述第一预设顺序;将所述加密后的指纹图像传输至所述服务器。

可选的,所述获取待传输指纹图像之前还包括:接收指纹采集请求,并响应于指纹采集请求采集指纹,以得到所述指纹图像。

可选的,所述预设窗口包括多个子窗口,所述按照预设窗口的大小将所述指纹图像分解为多个块图像包括:按照所述预设窗口的大小将所述指纹图像分解为多个块图像;对于每一块图像,按照所述预设窗口内多个子窗口的大小将块图像分解为多个子块图像,每一子块图像具备标识,多个子块图像具备第二预设顺序。

可选的,所述加密顺序包括第一加密顺序和第二加密顺序;所述根据所述多个块图像的标识以及预先接收到的加密顺序确定加密后的多个块图像包括:根据所述多个块图像的标识以及所述第一加密顺序,确定按照所述第一加密顺序排列的多个块图像;对于每一块图像,根据所述多个子块图像的标识以及所述第二加密顺序,确定按照所述第二加密顺序排列的多个子块图像,以得到所述加密后的多个块图像。

可选的,所述子窗口大小为m像素×m像素,所述预设窗口大小为(m×n)像素×(m×n)像素,其中,m为大于等于4的正整数,n为大于等于4的正整数。

为解决上述技术问题,本发明实施例还公开一种指纹解密方法,指纹解密方法包括:确定加密密码;接收加密后的指纹图像,所述加密后的指纹图像包括加密后的多个块图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列;确定第一预设顺序,加密前的多个块图像的标识具备所述第一预设顺序;根据多个块图像的标识、所述加密密码指示的加密顺序以及所述第一预设顺序确定解密后的多个块图像,以得到解密后的指纹图像,所述解密后的多个块图像的标识按照所述第一预设顺序排列。

可选的,所述加密顺序包括第一加密顺序和第二加密顺序,每个加密前的块图像包括多个子块图像,所述多个子块图像的标识具备第二预设顺序,加密后的多个子块图像的标识具备所述第二加密顺序;所述根据所述加密密码指示的加密顺序以及所述第一预设顺序确定按照所述第一预设顺序排列的多个块图像包括:根据所述第一加密顺序以及所述第一预设顺序,确定按照所述第一预设顺序排列的多个块图像;对于每个块图像,根据所述第二加密顺序以及所述第二预设顺序,确定按照所述第二预设顺序排列的多个子块图像。

本发明实施例还公开了一种指纹加密传输装置,指纹加密传输装置包括:指纹图像获取模块,适于获取待传输的指纹图像,所述加密密码是针对所述指纹图像的;分解模块,适于按照预设窗口的大小将所述指纹图像分解为多个块图像,块图像的大小与所述预设窗口的大小一致;标识确定模块,适于确定多个块图像的标识,所述多个块图像的标识具备第一预设顺序;加密密码接收模块,适于接收来自服务器的加密密码,所述加密密码包括随机排列的多个块图像的标识;加密模块,适于根据所述多个块图像的标识以及所述加密密码确定加密后的多个块图像,以得到加密后的指纹图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列,所述加密顺序不同于所述第一预设顺序;传输模块,适于将所述加密后的指纹图像传输至所述服务器。

本发明实施例还公开了一种指纹解密装置,指纹解密装置包括:加密密码确定模块,适于确定加密密码;加密指纹接收模块,适于接收加密后的指纹图像,所述加密后的指纹图像包括加密后的多个块图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列;顺序确定模块,适于确定第一预设顺序,加密前的多个块图像的标识具备所述第一预设顺序;解密模块,适于根据多个块图像的标识、所述加密密码指示的加密顺序以及所述第一预设顺序确定解密后的多个块图像,以得到解密后的指纹图像,所述解密后的多个块图像的标识按照所述第一预设顺序排列。

本发明实施例还公开了一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行所述指纹加密传输方法的步骤,或者执行所述指纹解密方法的步骤。

本发明实施例还公开了一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行所述指纹加密传输方法的步骤,或者执行所述指纹解密方法的步骤。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明技术方案中,在传输指纹图像时,可以先获取来自服务器的加密密码;再通过将指纹图像分解为多个块图像,多个块图像的标识具备第一预设顺序;由于指纹图像中指纹信息为多种指纹脊线的排列,且无规律性,因此,通过对多个块图像按照加密顺序重新排列获得加密后的指纹图像,通过传输所述加密后的指纹图像,使得加密后的指纹图像被复原的复杂度增大,从而保证了指纹传输的安全性,进而避免了指纹图像在传输过程中被截取或盗取后被滥用的问题,可以保证指纹信息的存储安全以及传输安全性。

进一步地,通过对每个块图像中的子块图像按照第二加密顺序进行重新排列,指纹图像中的多个块图像按照第一加密顺序进行重新排列,利用双重加密的方式进一步保证了指纹加密的安全性,进而保证指纹信息的存储安全以及传输安全性。

附图说明

图1是本发明实施例一种指纹加密传输方法的流程图;

图2是本发明实施例一种加密前的块图像的排列示意图;

图3是本发明实施例另一种加密后的块图像的排列示意;

图4是本发明实施例一种子块图像的排列示意图;

图5是本发明实施例一种指纹解密方法的流程图;

图6是本发明实施例一种指纹加密装置的结构示意图;

图7是本发明实施例一种指纹解密装置的结构示意图。

具体实施方式

如背景技术中所述,,指纹信息在存储时或者传输过程中,容易被盗用或截取,降低了指纹存储或指纹传输的安全性。

本发明技术方案中,在传输指纹图像时,可以先获取来自服务器的加密密码;再通过将指纹图像分解为多个块图像,多个块图像的标识具备第一预设顺序;由于指纹图像中指纹信息为多种指纹脊线的排列,且无规律性,因此,通过对多个块图像按照加密顺序重新排列获得加密后的指纹图像,通过传输所述加密后的指纹图像,使得加密后的指纹图像被复原的复杂度增大,从而保证了指纹传输的安全性,进而避免了指纹图像在传输过程中被截取或盗取后被滥用的问题,可以保证指纹信息的存储安全以及传输安全性。

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

图1是本发明实施例一种指纹加密传输方法的流程图。

所述指纹加密传输方法可以包括以下步骤:

步骤s101:获取待传输的指纹图像;

步骤s102:按照预设窗口的大小将所述指纹图像分解为多个块图像,块图像的大小与所述预设窗口的大小一致;

步骤s103:确定多个块图像的标识,所述多个块图像的标识具备第一预设顺序;

步骤s104:接收来自服务器的加密密码,所述加密密码包括随机排列的多个块图像的标识,所述加密密码是针对所述指纹图像的;

步骤s105:根据所述多个块图像的标识以及所述加密密码确定加密后的多个块图像,以得到加密后的指纹图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列,所述加密顺序不同于所述第一预设顺序;

步骤s106:将所述加密后的指纹图像传输至所述服务器。

需要指出的是,本实施例中各个步骤的序号并不代表对各个步骤的执行顺序的限定。例如,步骤s104可以在步骤s101之前执行。

本实施例的指纹加密传输方法可以用于终端设备侧。

在步骤s101的具体实施中,待传输的指纹图像可以是实时采集得到的,也可以是从数据库中调取得到的,其中,指纹图像可以是预先采集并存储在数据库中的。

在步骤s102和步骤s103的具体实施中,可以将指纹图像分解形成多个块图像,每个块图像具备标识。具体地,预设窗口越大,块图像中包含的指纹信息越多,加密后的多个块图像被破解的可能性较大;预设窗口越小,块图像的数量越多,对指纹图像的加密过程的计算量越大。因此,可以根据经验值以及实际的应用场景确定预设窗口的大小。

对指纹图像分解完成后,多个块图像的标识具备第一预设顺序。具体地,所述第一预设顺序可以是对块图像进行分解的顺序。更具体地,块图像的标识可以是数字编号,块图像的数字编号具备从大到小或从小到大的顺序。例如,对指纹图像分解完成后得到的多个块图像,按照先行后列的次序,块图像的标识可以是从大到小排列的连续的阿拉伯数字。

具体地,请参照图2,指纹图像的大小为12像素×12像素。预设窗口的大小为4×4。

利用预设窗口对指纹图像进行分解后,可以得到大小为4×4的9个块图像,如图2中具备不同填充图案的部分所示。具体地,分解得到的9个块图像具备按照第一预设顺序排列的标识。如对于处于行0-行3的块图像,其标识从列0至列11方向依次为1、2和3。以此类推,对于处于行4-行7的块图像,其标识从列0至列11方向依次为4、5和6;对于处于行8-行11的块图像,其标识从列0至列11方向依次为7、8和9。

9个块图像的标识具备第一预设顺序,也即9个块图像的标识按照第一预设顺序排列所形成的序列为1、2、3、4、5、6、7、8、9。

需要说明的是,图2仅为示例性阐述,指纹图像的大小以及预设窗口的大小可以根据实际的应用环境进行适应性的设置,从而使得分解后得到的块图像的数量可以根据实际应用环境的不同而不同,本发明实施例对此不做限制。

在步骤s104的具体实施中,终端设备可以接收来自服务器的加密密码。所述加密密码用于对指纹图像进行加密。具体地,所述加密密码可以是服务器生成的,加密密码的生成规则可以是服务器预先设置的。例如,服务器可以随机生成加密密码。

进一步地,关于分解后的块图像的数量以及块图像的标识可以由终端设备和服务器预先约定好,例如,分解后块图像的数量为10,块图像的标识分别为0至9的阿拉伯数字,服务器生成的加密密码可以是随机排列的十个阿拉伯数字0至9。

具体地,分解后的块图像的数量越多,加密密码的长度越长,加密密码的复杂度越高。

进而在步骤s105的具体实施中,可以按照加密密码对指纹图像进行加密,也就是说,将分解后得到的多个块图像的排列顺序打乱,使得加密后的多个块图像的标识的排列顺序为加密密码指示的加密顺序,且加密顺序不同于第一预设顺序。

继续参照图2,指纹图像分解为9个块图像,9个块图像的标识按照第一预设顺序排列所形成的序列为1、2、3、4、5、6、7、8、9。加密顺序与第一预设顺序不同,例如可以是9、1、3、4、2、8、6、5、7。由此,加密后的9个块图像按照上述顺序(9、1、3、4、2、8、6、5、7)进行排列,形成加密后的指纹图像。

加密后的9个块图像如图3所示。

在步骤s106的具体实施中,终端设备可以将加密后的指纹图像传输至服务器。

进一步地,服务器在接收到加密后的指纹图像后,可以将加密后的指纹图像存储下来,以保证指纹存储的安全性。具体地,服务器可以将加密后的指纹图像存储在可信执行环境(trustedexecutionenvironment,tee)下的存储空间,从而进一步保证指纹存储的安全性。

本发明实施例中,在传输指纹图像时,可以先获取来自服务器的加密密码;再通过将指纹图像分解为多个块图像,多个块图像的标识具备第一预设顺序;由于指纹图像中指纹信息为多种指纹脊线的排列,且无规律性,因此,通过对多个块图像按照加密顺序重新排列获得加密后的指纹图像,通过传输所述加密后的指纹图像,使得加密后的指纹图像被复原的复杂度增大,从而保证了指纹传输的安全性,进而避免了指纹图像在传输过程中被截取或盗取后被滥用的问题,可以保证指纹信息的存储安全以及传输安全性。

本发明一个非限制性的实施例中,在图1所示步骤s101之前可以包括以下步骤:接收指纹采集请求,并响应于指纹采集请求采集指纹,以得到所述指纹图像。

本实施例中,终端设备可以是在接收到服务器发送的指纹采集请求后,进行指纹采集过程,也即启动指纹传输过程。

需要说明的是,采集指纹的具体过程可以参照现有技术,此处不再赘述。

进一步地,所述加密密码与所述指纹采集请求是一并接收的。本实施例中,服务器在发送指纹采集请求时,可以一并发送加密密码,以供终端设备对采集到的指纹图像进行加密。

在本发明一个典型应用场景中,终端设备需要与服务器进行交易,终端设备将交易请求提交到服务器后,服务器发送指纹采集请求,以验证用户的身份。同时服务器还可以发送加密密码至终端设备。终端设备利用加密密码执行图1所示方法的各个步骤对采集到的指纹进行加密,终端设备将加密后的指纹图像传输至服务器,可以保证指纹在传输过程的安全性,降低指纹被截取的风险,从而保证交易的安全性。此外,对于终端设备在不同时刻不同的交易请求,服务器下发不同的加密密码。

在本发明一个具体实施例中,所述预设窗口大小为p像素×p像素,其中,p为大于等于16的正整数。

本实施例中,在仅将指纹图像分解为多个块图像的情况下,可以设置预设窗口的大小为16×16。

在本发明一个非限制性的实施例中,所述预设窗口包括多个子窗口。图1所示步骤s103可以包括以下步骤:按照所述预设窗口的大小将所述指纹图像分解为多个块图像;对于每一块图像,按照所述预设窗口内多个子窗口的大小将块图像分解为多个子块图像,每一子块图像具备标识,多个子块图像具备第二预设顺序。

具体实施中,每一块图像可以被分解形成多个子块图像。具体地,所述第二预设顺序可以是对块图像进行分解的顺序。更具体地,子块图像的标识可以是数字编号,子块图像的数字编号具备从大到小或从小到大的顺序。例如,子块图像的标识可以是从大到小排列的连续的阿拉伯数字。

请一并参照图2和图4,预设窗口的大小为4×4。子窗口的大小为2×2。

对于标识为1的块图像,按照子窗口的大小可以将该块图像分解为4个子块图像,也即具备标识a的子块图像、具备标识b的子块图像、具备标识c的子块图像、具备标识d的子块图像。

4个子块图像的标识具备第二预设顺序,也即4个子块图像的标识按照第二预设顺序排列所形成的序列为a、b、c和d。

进一步地,所述加密顺序包括第一加密顺序和第二加密顺序;图1所示步骤s105可以包括以下步骤:根据所述多个块图像的标识以及所述第一加密顺序,确定按照所述第一加密顺序排列的多个块图像;对于每一块图像,根据所述多个子块图像的标识以及所述第二加密顺序,确定按照所述第二加密顺序排列的多个子块图像,以得到所述加密后的多个块图像。

具体地,对于每个块图像,可以采用不同的第二加密顺序确定加密后的多个子块图像。也就是说,加密顺序可以包括单个第一加密顺序和多个第二加密顺序,第二加密顺序的数量与块图像的数量相同。

具体地,分解后的子块图像的数量越多,加密密码指示的第二加密顺序的长度越长,加密密码的复杂度越高。例如,分解后块图像的数量为200,每一块图像中子块图像的数量为49,那么加密密码指示的第一加密顺序的可用数量为200的阶乘,加密密码指示的第二加密顺序的可用数量为49的阶乘,加密密码可用的总数量为200的阶乘与49的阶乘的乘积,加密密码的复杂度的增加,大大增加了解密的复杂度,保证了加密指纹图像的安全。

本发明实施例中,通过对每个块图像中的子块图像按照第二加密顺序进行重新排列,指纹图像中的多个块图像按照第一加密顺序进行重新排列,利用双重加密的方式进一步保证了指纹加密的安全性,进而保证指纹信息的存储安全以及传输安全性。

需要说明的是,对于加密后的指纹图像,可以按照第二预设顺序恢复各个子块图像,按照第一预设顺序恢复各个块图像。

在本发明一个具体实施例中,所述子窗口大小为m像素×m像素,所述预设窗口大小为(m×n)像素×(m×n)像素,其中,m为大于等于4的正整数,n为大于等于4的正整数。

在本发明一个具体实施例中,所述多个块图像的标识可以选自:数字编号和字符编号。

请参照图5,指纹解密方法可以包括以下步骤:

步骤s501:确定加密密码;

步骤s502:接收加密后的指纹图像,所述加密后的指纹图像包括加密后的多个块图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列;

步骤s503:确定第一预设顺序,加密前的多个块图像的标识具备所述第一预设顺序;

步骤s504:根据多个块图像的标识、所述加密密码指示的加密顺序以及所述第一预设顺序确定解密后的多个块图像,以得到解密后的指纹图像,所述解密后的多个块图像的标识按照所述第一预设顺序排列。

本实施例的指纹解密传输方法可以用于服务器侧。

本实施例中,对加密后的指纹图像进行解密的过程也就是将多个块图像恢复为加密前的排列顺序的过程。也就是说,加密后的多个块图像按照加密密码指示的加密顺序排列,解密后的多个块图像的标识具备第一预设顺序。

对于第三方设备来说,加密后的多个块图像的加密顺序、第一预设顺序以及块图像的标识均是不可知的,因此加密后的指纹图像的安全性较高。

在本发明一个优选实施例中,所述加密顺序包括第一加密顺序和第二加密顺序,每个加密前的块图像包括多个子块图像,所述多个子块图像的标识具备第二预设顺序,加密后的多个子块图像的标识具备所述第二加密顺序;图5所示步骤s504可以包括以下步骤:根据所述第一加密顺序以及所述第一预设顺序,确定按照所述第一预设顺序排列的多个块图像;对于每个块图像,根据所述第二加密顺序以及所述第二预设顺序,确定按照所述第二预设顺序排列的多个子块图像。

本实施例中,由于每个块图像也被分解形成多个子块图像,且多个子块图像也被加密,因此双重加密保证了指纹图像的传输安全性。此外,在解密过程中,对于每个块图像,也需要根据第二加密顺序以及所述第二预设顺序对加密后的多个子块图像进行解密,以恢复出各个块图像。

关于指纹解密的更多具体实施方式可参照图1至图4所示的实施例,此处不再赘述。

请参照图6,本发明实施例还公开了一种指纹加密传输装置。指纹加密传输装置60可以包括:指纹图像获取模块601、分解模块602、标识确定模块603、加密密码接收模块604、加密模块605和传输模块606。

其中,指纹图像获取模块601适于获取待传输的指纹图像,所述加密密码是针对所述指纹图像的;分解模块602适于按照预设窗口的大小将所述指纹图像分解为多个块图像,块图像的大小与所述预设窗口的大小一致;标识确定模块603适于确定多个块图像的标识,所述多个块图像的标识具备第一预设顺序;加密密码接收模块604适于接收来自服务器的加密密码,所述加密密码包括随机排列的多个块图像的标识;加密模块605适于根据所述多个块图像的标识以及所述加密密码确定加密后的多个块图像,以得到加密后的指纹图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列,所述加密顺序不同于所述第一预设顺序;传输模块606适于将所述加密后的指纹图像传输至所述服务器。

关于所述指纹加密传输装置60的工作原理、工作方式的更多内容,可以参照图1至图5中的相关描述,这里不再赘述。

请参照图7,本发明实施例还公开了一种指纹解密装置。指纹解密装置70可以包括:加密密码确定模块701、加密指纹接收模块702、顺序确定模块703和解密模块704。

其中,加密密码确定模块701适于确定加密密码;加密指纹接收模块702适于接收加密后的指纹图像,所述加密后的指纹图像包括加密后的多个块图像,所述加密后的多个块图像按照所述加密密码指示的加密顺序排列;顺序确定模块703适于确定第一预设顺序,加密前的多个块图像的标识具备所述第一预设顺序;解密模块704适于根据多个块图像的标识、所述加密密码指示的加密顺序以及所述第一预设顺序确定解密后的多个块图像,以得到解密后的指纹图像,所述解密后的多个块图像的标识按照所述第一预设顺序排列。

关于所述指纹解密装置70的工作原理、工作方式的更多内容,可以参照图1至图5中的相关描述,这里不再赘述。

本发明实施例还公开了一种存储介质,其上存储有计算机指令,所述计算机指令运行时可以执行图1或图5中所示法的步骤。所述存储介质可以包括rom、ram、磁盘或光盘等。所述存储介质还可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器等。

本发明实施例还公开了一种终端,所述终端可以包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令。所述处理器运行所述计算机指令时可以执行图1或图5中所示法的步骤。所述终端包括但不限于手机、计算机、平板电脑等终端设备。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

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