一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于SM9加密的指纹认证方法、装置和计算机设备与流程

2022-03-26 15:03:46 来源:中国专利 TAG:

基于sm9加密的指纹认证方法、装置和计算机设备
技术领域
1.本技术涉及网络安全技术领域,特别是涉及一种指纹认证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。


背景技术:

2.指纹认证技术为一种基于生物特征的身份认证技术,随着终端技术的不断发展,指纹认证在终端的安全认证领域得到了广泛应用。
3.现有的终端上通常设置有一个指纹认证组件,在进行指纹认证时,用户仅需在该指纹认证组件上输入单个指纹即完成操作。然而由于人体的指纹较为容易获取,当面临指纹信息被盗取时,那么指纹泄露则会带来巨大的损失,在电子支付等高安全应用场景下则会面临较大的安全隐患。


技术实现要素:

4.基于此,有必要针对上述指纹认证机制数据的保密性不强和数据传输的安全性低的技术问题,提供一种指纹认证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种指纹认证方法。所述方法包括:
6.获取终端当前所处的应用场景信息;
7.根据所述应用场景信息,确定需要采集的认证指纹的数目;
8.当接收到访问请求时,采集与所述数目对应的认证指纹信息;
9.对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
10.当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
11.在其中一个实施例中,所述初始指纹签名数据通过下述方法得到:
12.获取初始帐户的帐户信息;
13.基于所述初始帐户的帐户信息和所述初始帐户的初始指纹信息,得到组合信息;
14.对所述组合信息进行签名处理,得到所述初始帐户的初始指纹签名数据。
15.在其中一个实施例中,所述对所述组合信息进行签名处理,得到所述初始帐户的初始指纹签名数据,包括:
16.生成所述组合信息的密钥;
17.通过所述密钥对所述认证指纹信息进行签名处理,得到所述初始帐户的初始指纹签名数据。
18.在其中一个实施例中,所述认证指纹签名数据与所述初始指纹签名数据通过下述方式进行匹配:
19.分别获取所述认证指纹签名数据和所述初始指纹签名数据中各个像素的灰度平均值;
20.基于所述认证指纹签名数据中各个所述像素的灰度值与所述灰度平均值的对比结果,得到数据位与所述像素的个数相同的第一整数;
21.基于所述初始指纹签名数据中各个所述像素的灰度值与所述灰度平均值的对比结果,得到数据位与所述像素的个数相同的第二整数;
22.当所述第一整数和所述第二整数中不相同的数据位的数目大于预设个数,则判定所述认证指纹签名数据与所述初始指纹签名数据匹配失败。
23.在其中一个实施例中,所述分别获取所述认证指纹签名数据和所述初始指纹签名数据中各个像素的灰度平均值,包括:
24.分别对所述认证指纹签名数据和所述初始指纹签名数据进行缩小处理,得到像素个数相同的认证指纹签名数据和初始指纹签名数据;
25.对缩小后的认证指纹签名数据和缩小后的初始指纹签名数据进行灰度转换处理,得到所述认证指纹签名数据和所述初始指纹签名数据各自对应的灰度图;
26.分别计算所述认证指纹签名数据和所述初始指纹签名数据各自对应的灰度图中各个像素的灰度值的平均值,得到所述认证指纹签名数据和所述初始指纹签名数据中各个像素的灰度平均值。
27.在其中一个实施例中,所述基于所述认证指纹签名数据中各个所述像素的灰度值与所述灰度平均值的对比结果,得到数据位与所述像素的个数相同的第一整数,包括:
28.当所述认证指纹签名数据中所述像素的灰度值大于或等于所述灰度平均值时,将对比结果记为第一数字;
29.当所述认证指纹签名数据中所述像素的灰度值小于所述灰度平均值时,将对比结果记为第二数字;
30.将所述认证指纹签名数据中各个像素对应的数字进行组合,得到数据位与所述像素的个数相同的第一整数。
31.第二方面,本技术还提供了一种指纹认证装置。所述装置包括:
32.获取模块,用于获取终端当前所处的应用场景信息;
33.确定模块,用于根据所述应用场景信息,确定需要采集的认证指纹的数目;
34.采集模块,用于当接收到访问请求时,采集与所述数目对应的认证指纹信息;
35.签名模块,用于对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
36.匹配模块,用于当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
37.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
38.获取终端当前所处的应用场景信息;
39.根据所述应用场景信息,确定需要采集的认证指纹的数目;
40.当接收到访问请求时,采集与所述数目对应的认证指纹信息;
41.对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
42.当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
43.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
44.获取终端当前所处的应用场景信息;
45.根据所述应用场景信息,确定需要采集的认证指纹的数目;
46.当接收到访问请求时,采集与所述数目对应的认证指纹信息;
47.对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
48.当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
49.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
50.获取终端当前所处的应用场景信息;
51.根据所述应用场景信息,确定需要采集的认证指纹的数目;
52.当接收到访问请求时,采集与所述数目对应的认证指纹信息;
53.对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
54.当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
55.上述指纹认证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,通过终端当前所处的应用场景信息,确定需要采集的认证指纹的数目,然后在接收到访问请求时,采集与数目对应的认证指纹信息;对认证指纹信息进行签名处理,得到数目的认证指纹签名数据;当数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。该方法通过考虑不同应用场景对安全性的需求不同,提出了基于不同应用场景信息采用不同的指纹认证策略的方法,根据不同的安全标准确定指纹的个数,并且保证指纹的有序性,同时,对指纹信息进行签名处理,保证了数据的保密性和提高了数据传输的安全性,可以克服所有应用场景均采用一个指纹认证组件进行指纹认证,导致高安全应用场景下安全隐患较大的缺陷。
附图说明
56.图1为一个实施例中指纹认证方法的流程示意图;
57.图2为一个实施例中基于sm9算法的指纹认证方法的流程示意图;
58.图3为一个实施例中初始指纹签名数据与认证指纹签名数据的匹配方法的流程示意图;
59.图4为一个实施例中指纹认证装置的结构框图;
60.图5为一个实施例中计算机设备的内部结构图。
具体实施方式
61.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
62.在一个实施例中,如图1所示,提供了一种指纹认证方法,本实施例以该方法应用
于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
63.步骤s110,获取终端当前所处的应用场景信息。
64.其中,应用场景信息可包括屏幕解锁、应用启动和安全支付等场景。
65.具体地,可在检测到终端当前处于指纹待认证状态时,获取终端当前所处的应用场景信息。
66.步骤s120,根据应用场景信息,确定需要采集的认证指纹的数目。
67.其中,采集的认证指纹的数目可以为1个,也可以为多个,当采集的认证指纹的数目为多个时,表示的是采集多个手指的指纹。
68.具体实现中,不同的应用场景对安全性的要求不同,因此,可为不同的应用场景设置对应的需要采集的认证指纹的数目,以满足不同应用场景的安全性需求。更具体地,在获取终端当前所处的应用场景信息后,可根据应用场景信息确定当前的安全认证标准,根据安全认证标准和预设的指纹认证策略确定认证指纹的数目。
69.步骤s130,当接收到访问请求时,采集与数目对应的认证指纹信息。
70.具体实现中,可以在终端设置多个指纹认证组件,在确定需要采集的认证指纹的数目后,采集认证用户通过相应数目的指纹认证组件录入的认证指纹信息。例如,若确定所需采集的认证指纹的数目为2个,则可通过两个指纹认证组件分别采集认证用户的两个不同手指的认证指纹信息。
71.步骤s140,对认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据。
72.具体实现中,可以通过生成认证指纹信息的密钥,采用sm9加密算法对认证指纹信息进行签名加密,得到采集的各个指纹认证信息对应的认证指纹签名数据。更具体地,指纹认证组件与所述用户通过非对称加密方式进行签名加密。
73.步骤s150,当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,判定指纹认证不通过。
74.具体实现中,可预先采集初始帐户的多个初始指纹信息和获取帐户信息,对各个初始指纹信息和帐户信息的组合信息进行签名处理,得到初始帐户的多个初始指纹签名数据,将各个初始指纹签名数据与该初始帐户的用户信息进行绑定并存储。之后在进行指纹认证时,将认证指纹签名数据与初始帐户的初始指纹签名数据进行匹配,当任一个认证指纹签名数据匹配失败时,则判定指纹认证不通过。
75.更具体地,若采集的认证指纹的数目为多个,则在进行指纹认证时,可将每个认证指纹签名数据与预先存储的各个初始指纹签名数据一一进行匹配,当认证指纹签名数据与预先存储的各个初始指纹签名数据均不匹配时,判定该认证指纹签名数据匹配失败。
76.例如,当所采集的认证指纹的数目为3个,则当这3个认证指纹的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
77.可以理解的是,实际应用中,也可以根据需求设置设定个数的认证指纹签名数据匹配失败时,才判定指纹认证不通过。
78.上述指纹认证方法中,通过终端当前所处的应用场景信息,确定需要采集的认证指纹的数目,然后在接收到访问请求时,采集与数目对应的认证指纹信息;对认证指纹信息
进行签名处理,得到数目的认证指纹签名数据;当数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。该方法通过考虑不同应用场景对安全性的需求不同,提出了基于不同应用场景信息采用不同的指纹认证策略的方法,根据不同的安全标准确定指纹的个数,并且保证指纹的有序性,同时,对指纹信息进行签名处理,保证了数据的保密性和提高了数据传输的安全性,可以克服所有应用场景均采用一个指纹认证组件进行指纹认证,导致高安全应用场景下安全隐患较大的缺陷。
79.在一示例性实施例中,上述初始指纹签名数据通过下述方法得到:获取初始帐户的帐户信息;基于初始帐户的帐户信息和初始帐户的初始指纹信息,得到组合信息;对组合信息进行签名处理,得到初始帐户的初始指纹签名数据。
80.其中,帐户信息包括用户的个人身份信息、身份验证编码等,帐户信息可以依靠系统自动生成编码获初始帐户信息。
81.具体实现中,在提取初始帐户的帐户信息后,可将帐户信息与初始帐户的初始指纹信息进行组合,得到组合信息,进一步对组合信息使用sm9签名算法进行签名处理后,得到用户的初始指纹签名数据,并可将初始帐户的帐户信息与初始指纹签名数据进行关联后存储。
82.本实施例中,通过对初始帐户的帐户信息和初始帐户的初始指纹信息的组合信息进行签名处理,得到初始帐户的初始指纹签名数据,以便于作为后续对访问终端的帐户进行指纹验证的验证依据,并且帐户信息经过主密钥和用户密钥进行匹配后存储,即使用户名和密码过于简单且带有一定的规律性,也不再易被猜测和泄露。在用户指纹验证的过程中,用户未通过指纹验证前,终端信息不会被黑客截获,解决了传统的指纹认证方式存在的安全隐患,用户信息不再容易泄密。
83.在一示例性实施例中,上述对组合信息进行签名处理,得到初始帐户的初始指纹签名数据,包括:生成组合信息的密钥;采用sm9算法,通过密钥对认证指纹信息进行签名处理,得到初始帐户的初始指纹签名数据。
84.其中,密钥可包括主密钥和用户私钥,主密钥为指纹认证组件公开持有密钥,用户私钥为初始帐户进行保密持有。
85.进一步地,在一示例性实施例中,生成组合信息的密钥的步骤,包括:生成指纹参数;基于指纹参数分别生成主密钥和用户私钥,将主密钥和用户私钥组成密钥;主密钥为指纹认证组件公开持有密钥,用户私钥为初始帐户进行保密持有。
86.其中,指纹参数可包括指纹的大小、纹路、指代的身份信息等。
87.具体实现中,可通过密钥生成中心随机选择指纹参数,基于指纹参数分别生成主密钥和用户私钥,主密钥与所述用户私钥具有唯一匹配性。当访问用户通过指纹认证时,指纹认证组件通过所述主密钥与用户私钥进行匹配,并在匹配成功后,解密所述用户的组合信息。
88.本实施例中,通过生成组合信息的主密钥和用户私钥,对认证指纹信息进行签名处理,提高用户信息的安全性,使得即使用户名和密码过于简单且带有一定的规律性,也不再易被猜测和泄露。
89.在一示例性实施例中,认证指纹签名数据与初始指纹签名数据通过下述方式进行
匹配:分别获取认证指纹签名数据和初始指纹签名数据中各个像素的灰度平均值;基于认证指纹签名数据中各个像素的灰度值与灰度平均值的对比结果,得到数据位与像素的个数相同的第一整数;基于初始指纹签名数据中各个像素的灰度值与灰度平均值的对比结果,得到数据位与像素的个数相同的第二整数;当第一整数和第二整数中不相同的数据位的数目大于预设个数,则判定认证指纹签名数据与初始指纹签名数据匹配失败。
90.具体实现中,可以先通过对所述认证指纹签名数据和所述初始指纹签名数据进行预处理,以使得认证指纹签名数据和初始指纹签名数据具有相同的像素个数,然后分别计算认证指纹签名数据和初始指纹签名数据中各个像素的灰度平均值,基于各个灰度值与灰度平均值的对比结果,得到认证指纹签名数据对应的第一整数和初始指纹签名数据对应的第二整数。将第一整数与第二整数进行比对,当第一整数和第二整数中不相同的数据位的数目大于第一预设个数,则判定指纹认证失败,反之,当第一整数和第二整数中不相同的数据位的数目小于第二预设个数,则判定指纹认证成功。其中,第一预设个数与第二预设个数可以相同,也可以不相同,例如,可设定不相同的签名数据位不超过5,则指纹认证通过;不相同的签名数据位大于10,则指纹认证失败。
91.本实施例中,通过认证指纹签名数据和初始指纹签名数据中各个像素的灰度平均值与灰度平均值的对比结果,得到认证指纹签名数据对应的第一整数和初始指纹签名数据对应的第二整数,通过比较第一整数和第二整数中不相同的数据位数,来判定指纹验证是否通过,该方法不仅验证指纹达到高效准确,而且可以保证验证指纹过程的有序性,相对于单指纹或普通多指纹很好的提高摄像头系统的安全性。
92.在一示例性实施例中,分别获取认证指纹签名数据和初始指纹签名数据中各个像素的灰度平均值,包括:分别对认证指纹签名数据和初始指纹签名数据进行缩小处理,得到像素个数相同的认证指纹签名数据和初始指纹签名数据;对缩小后的认证指纹签名数据和缩小后的初始指纹签名数据进行灰度转换处理,得到认证指纹签名数据和初始指纹签名数据各自对应的灰度图;分别计算认证指纹签名数据和初始指纹签名数据各自对应的灰度图中各个像素的灰度值的平均值,得到认证指纹签名数据和初始指纹签名数据中各个像素的灰度平均值。
93.具体实现中,获取认证指纹签名数据的灰度平均值与获取初始指纹签名数据中各个像素的灰度平均值的方法相同,下面以获取认证指纹签名数据的中各个像素的灰度平均值为例,对本实施例进行说明:
94.终端通过预处理读取认证指纹签名数据,将认证指纹签名数据缩小到预设的尺寸,基于该尺寸得到认证指纹签名数据的像素个数,将缩小后的认证指纹签名数据,转为相应的灰度图,在获取灰度图中各个像素的灰度值后,计算各个像素的灰度平均值,作为认证指纹签名数据的中各个像素的灰度平均值。
95.例如,终端可将认证指纹签名数据缩小到8x8的尺寸,共64个像素,将缩小后的认证指纹签名数据,转为64级灰度,计算所有64个像素的灰度平均值,作为认证指纹签名数据的中各个像素的灰度平均值。
96.本实施例中,通过对认证指纹签名数据和初始指纹签名数据进行缩小处理,以使得缩小后的认证指纹签名数据和缩小后的初始指纹签名数据具有相同的像素个数,以提高后续进行指纹匹配的准确性,通过将访问指纹签名数据缩小到8x8的尺寸,共64个像素去除
图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的指纹识别差异。
97.在一示例性实施例中,基于认证指纹签名数据中各个像素的灰度值与灰度平均值的对比结果,得到数据位与像素的个数相同的第一整数的步骤,包括:当认证指纹签名数据中像素的灰度值大于或等于灰度平均值时,将对比结果记为第一数字;当认证指纹签名数据中像素的灰度值小于灰度平均值时,将对比结果记为第二数字;将认证指纹签名数据中各个像素对应的数字进行组合,得到数据位与像素的个数相同的第一整数。
98.具体实现中,将认证指纹签名数据中每个像素的灰度值与灰度平均值进行比较:当所述灰度值大于或等于所述灰度平均值时,可将对比结果记为1;当所述灰度值小于所述灰度平均值时,可将对比结果记为0。在得到各个像素对应的数字后,将各个像素对应的数字进行组合,得到一个数据位与像素的个数相同的第一整数。
99.例如,将认证指纹签名数据缩小到8x8的尺寸时,像素个数为64,则对应得到的第一整数将为由0和1构成的64位数。
100.需要说明的是,初始指纹签名数据对应的第二整数的确定方法与认证指纹签名数据相同,在此不再赘述。
101.本实施例中,通过将认证指纹签名数据中像素的灰度值与灰度平均值的对比结果分别记为不同的数字,并基于各个数字组合得到数据位与像素的个数相同的第一整数,类似地,可采用相同的方法得到初始指纹签名数据对应的第二整数,以便于进一步通过将第一整数和第二整数的各个位数进行匹配,根据匹配结果确定初始指纹签名数据和认证指纹签名数据的指纹认证结果。
102.在另一个实施例中,为了便于本领域技术人员理解本技术实施例,以下将结合附图2和附图3对本技术提供的指纹认证方法进行进一步说明。
103.参考图2,为基于sm9算法的指纹认证方法的流程示意图,其步骤如下:
104.步骤s210,在终端当前处于指纹待认证状态时,获取终端当前所处的应用场景信息;
105.步骤s220,获取多个指纹认证组件,指纹认证组件包括当前采集用户的用户数据和指纹数据的组合信息;
106.步骤s230,根据应用场景信息确定当前的安全认证标准;
107.步骤s240,根据安全认证标准和预设的指纹认证策略确定认证指纹的个数;
108.步骤s250,生成认证指纹的密钥,采用sm9算法对组合信息进行签名加密;
109.其中生成认证指纹的密钥的具体步骤为:
110.由密钥生成中心随机选择指纹参数,分别生成主密钥和用户私钥;主密钥为指纹认证组件公开持有密钥,用户私钥由初始指纹签名数据持有用户进行保密持有;
111.指纹认证组件与用户通过非对称加密方式进行签名加密,主密钥与用户私钥具有唯一匹配性;
112.当用户通过指纹认证时,指纹认证组件通过主密钥与用户私钥进行匹配,并在匹配成功后,解密用户的组合信息;
113.步骤s260,当接收到访问请求时,根据对应的指纹认证策略控制指纹认证组件对用户进行指纹认证。
114.其中,对用户进行指纹认证的具体步骤为:
115.启用指纹认证策略,并比对采集初始指纹签名数据与用户的访问指纹签名数据是否一致;若一致,则通过认证;若不一致,则验证失败。
116.该方法根据不同的安全标准确定指纹的个数,并且保证指纹的有序性,同时,采用sm9算法对组合信息进行签名加密,保证了数据的保密性和提高了数据传输的安全性,解决了传统的指纹认证方式存在的安全隐患,用户信息不再容易泄密。用户信息经过主密钥和用户密钥进行匹配后存储,即使用户名和密码过于简单且带有一定的规律性,也不再易被猜测和泄露。在用户指纹验证的过程中,用户未通过指纹验证前,终端信息不会被黑客截获。
117.参考图3,为初始指纹签名数据与认证指纹签名数据的匹配方法的流程示意图,具体步骤包括:
118.步骤s310,通过预处理读取认证指纹签名数据;
119.步骤s320,将认证指纹签名数据缩小到8x8的尺寸,共64个像素;
120.步骤s330,将缩小后的认证指纹签名数据,转为64级灰度;
121.步骤s340,计算所有64个像素的灰度平均值并比较像素的灰度;
122.比较像素的灰度的具体步骤包括:
123.将每个像素的灰度,与灰度平均值进行比较:当灰度大于或等于灰度平均值时,记为1;当灰度小于灰度平均值,记为0;
124.步骤s350,将计算所有64个像素的灰度平均值并比较像素的灰度的结果进行组合;
125.步骤s360,将初始指纹签名数据与用户的认证指纹签名数据采用同样次序分别构成64位的整数;
126.步骤s370,比对初始指纹签名数据与用户的认证指纹签名数据;如果不相同的签名数据位不超过5,则指纹认证通过;不相同的签名数据位大于10,则指纹认证失败。
127.本技术将认证指纹签名数据缩小到8x8的尺寸,共64个像素去除图片的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的指纹识别差异。通过sm9算法得到认证指纹以后,就可以对比用户初始存储的指纹,看看64位中有多少位是不一样的。在理论上,这等同于计算"汉明距离"(hamming distance),不仅验证指纹达到高效准确,而且可以保证验证指纹过程的有序性,相对于单指纹或普通多指纹很好的提高摄像头系统的安全性。本技术解决了传统的指纹认证方式存在的安全隐患,用户信息不再容易泄密。用户信息经过主密钥和用户密钥进行匹配后存储,即使用户名和密码过于简单且带有一定的规律性,也不再易被猜测和泄露。在用户指纹验证的过程中,用户未通过指纹验证前,终端信息不会被黑客截获。
128.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
129.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的指纹认证方法的指纹认证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个指纹认证装置实施例中的具体限定可以参见上文中对于指纹认证方法的限定,在此不再赘述。
130.在一个实施例中,如图4所示,提供了一种指纹认证装置,包括:获取模块410、确定模块420、采集模块430、签名模块440和匹配模块450,其中:
131.获取模块410,用于获取终端当前所处的应用场景信息;
132.确定模块420,用于根据所述应用场景信息,确定需要采集的认证指纹的数目;
133.采集模块430,用于当接收到访问请求时,采集与所述数目对应的认证指纹信息;
134.签名模块440,用于对所述认证指纹信息进行签名处理,得到所述数目的认证指纹签名数据;
135.匹配模块450,用于当所述数目的认证指纹签名数据中的任一个认证指纹签名数据与预先存储的初始指纹签名数据不匹配时,则判定指纹认证不通过。
136.在一个实施例中,上述签名模块440,还用于获取初始帐户的帐户信息;基于所述初始帐户的帐户信息和所述初始帐户的初始指纹信息,得到组合信息;对所述组合信息进行签名处理,得到所述初始帐户的初始指纹签名数据。
137.在一个实施例中,上述签名模块440,还用于生成所述组合信息的密钥;采用sm9算法,通过所述密钥对所述认证指纹信息进行签名处理,得到所述初始帐户的初始指纹签名数据。
138.在一个实施例中,上述匹配模块450,还用于分别获取所述认证指纹签名数据和所述初始指纹签名数据中各个像素的灰度平均值;基于所述认证指纹签名数据中各个所述像素的灰度值与所述灰度平均值的对比结果,得到数据位与所述像素的个数相同的第一整数;基于所述初始指纹签名数据中各个所述像素的灰度值与所述灰度平均值的对比结果,得到数据位与所述像素的个数相同的第二整数;当所述第一整数和所述第二整数中不相同的数据位的数目大于预设个数,则判定指纹认证失败。
139.在一个实施例中,上述匹配模块450,还用于分别对所述认证指纹签名数据和所述初始指纹签名数据进行缩小处理,得到像素个数相同的认证指纹签名数据和初始指纹签名数据;对缩小后的认证指纹签名数据和缩小后的初始指纹签名数据进行灰度转换处理,得到所述认证指纹签名数据和所述初始指纹签名数据各自对应的灰度图;分别计算所述认证指纹签名数据和所述初始指纹签名数据各自对应的灰度图中各个像素的灰度值的平均值,得到所述认证指纹签名数据和所述初始指纹签名数据中各个像素的灰度平均值。
140.在一个实施例中,上述匹配模块450,还用于当所述认证指纹签名数据中所述像素的灰度值大于或等于所述灰度平均值时,将对比结果记为第一数字;当所述认证指纹签名数据中所述像素的灰度值小于所述灰度平均值时,将对比结果记为第二数字;将所述认证指纹签名数据中各个像素对应的数字进行组合,得到数据位与所述像素的个数相同的第一整数。
141.上述指纹认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
142.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种指纹认证方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
143.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
144.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
145.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
146.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
147.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
148.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
149.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛
盾,都应当认为是本说明书记载的范围。
150.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献