本發(fā)明涉及指紋識(shí)別技術(shù)領(lǐng)域,尤其涉及一種基于指紋識(shí)別的身份驗(yàn)證方法、裝置和系統(tǒng)。
背景技術(shù):
指紋識(shí)別,是指電子設(shè)備采集用戶指紋,將采集的指紋與預(yù)先存儲(chǔ)的指紋模板進(jìn)行匹配以驗(yàn)證用戶身份的技術(shù)。通過指紋識(shí)別可避免非法用戶使用電子設(shè)備,以下將具有指紋識(shí)別功能的電子設(shè)備統(tǒng)稱為終端。
典型的指紋識(shí)別過程包括如下步驟:1、通過指紋采集設(shè)備獲取所需識(shí)別指紋的圖像;2、對(duì)采集的指紋圖像進(jìn)行預(yù)處理,具體包括圖像質(zhì)量判斷、圖像增強(qiáng)、指紋區(qū)域檢測(cè)、指紋方向圖和頻率估算、圖像二值化處理、圖像細(xì)化等;3、從預(yù)處理后的指紋圖像中,獲取指紋的脊線數(shù)據(jù);4、從指紋的脊線數(shù)據(jù)中,提取指紋識(shí)別所需的特征點(diǎn)即提取指紋特征;5、將提取的指紋特征與數(shù)據(jù)庫中保存的參考指紋模板中的指紋特征逐一匹配,判斷是否存在相同指紋。6、完成指紋匹配處理后,輸出指紋識(shí)別的處理結(jié)果。
用戶在配置指紋識(shí)別功能的過程中輸入的作為匹配對(duì)象的參考指紋是無法撤銷和更改的,所以參考指紋模板的保護(hù)需要采取安全性更高的策略。實(shí)際應(yīng)用中,為了保證指紋識(shí)別的安全性,一般不允許將云端數(shù)據(jù)庫上存儲(chǔ)的參考指紋讀取到設(shè)備上,也不允許將設(shè)備自身存儲(chǔ)的參考指紋傳送到云端,因此,指紋識(shí)別主要應(yīng)用在非受信區(qū)域受信區(qū)域內(nèi)、或者單臺(tái)設(shè)備上。
隨著移動(dòng)辦公的普及,很多企業(yè)為員工提供了公用移動(dòng)終端,例如,銀行的制卡機(jī),以方便員工外出辦公。這些公用移動(dòng)終端不可能事先存儲(chǔ)每個(gè)員工的參考指紋,而當(dāng)員工外出辦公離開受信區(qū)域時(shí),云端數(shù)據(jù)庫上存儲(chǔ)的參考指 紋也不能傳輸?shù)皆摴靡苿?dòng)終端,因此,該公用移動(dòng)終端在離開受信區(qū)域后無法對(duì)使用者進(jìn)行身份驗(yàn)證。在另一些場(chǎng)景下,為了提高認(rèn)證的安全性,當(dāng)終端位于非受信區(qū)域時(shí),不允許終端使用本地存儲(chǔ)的參考指紋對(duì)使用者進(jìn)行身份驗(yàn)證,而云端數(shù)據(jù)庫上存儲(chǔ)的參考指紋也不能傳輸?shù)皆摻K端,這同樣導(dǎo)致該終端無法對(duì)使用者進(jìn)行身份驗(yàn)證。即,在現(xiàn)有技術(shù)中,當(dāng)終端位于非受信區(qū)域時(shí),無法利用云端數(shù)據(jù)庫存儲(chǔ)的參考指紋對(duì)使用者進(jìn)行身份驗(yàn)證。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種基于指紋識(shí)別的身份驗(yàn)證方法、裝置和系統(tǒng),以解決現(xiàn)有技術(shù)中,當(dāng)終端位于非受信區(qū)域時(shí),無法利用云端數(shù)據(jù)庫存儲(chǔ)的參考指紋對(duì)使用者進(jìn)行身份驗(yàn)證的問題。
本發(fā)明實(shí)施例提供的具體技術(shù)方案如下:
第一方面,提供一種基于指紋識(shí)別的身份驗(yàn)證方法,包括:
位于非受信區(qū)域的終端接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋;
所述終端將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域的后臺(tái)服務(wù)器,所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果;
所述終端接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)挑戰(zhàn)指紋;
所述終端計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并向所述后臺(tái)服務(wù)器發(fā)送所述第一不符合度矩陣,所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度,使所述后臺(tái)服務(wù)器基于所述第一不符合度矩陣返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
在第一方面的基礎(chǔ)上,可選的,所述隨機(jī)生成的n個(gè)挑戰(zhàn)指紋為所述后臺(tái)服務(wù)器從指紋數(shù)據(jù)庫中隨機(jī)選取的n個(gè)指紋。
在第一方面的基礎(chǔ)上,可選的,所述終端計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,包括:
所述終端獲取所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn);
所述終端依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)中每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度;
所述終端針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并
基于得到的每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成所述第一不符合度矩陣。
第二方面,提供一種基于指紋識(shí)別的身份驗(yàn)證方法,包括:
位于受信區(qū)域上的后臺(tái)服務(wù)器接收位于非受信區(qū)域的終端發(fā)送的針對(duì)應(yīng)用程序采集的測(cè)試指紋進(jìn)行身份驗(yàn)證的身份驗(yàn)證請(qǐng)求;
所述后臺(tái)服務(wù)器隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列;
所述后臺(tái)服務(wù)器向所述終端發(fā)送所述生成的挑戰(zhàn)指紋陣列;
所述后臺(tái)服務(wù)器接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;
所述后臺(tái)服務(wù)器分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣;
所述后臺(tái)服務(wù)器基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;
所述后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
在第二方面的基礎(chǔ)上,可選的,所述后臺(tái)服務(wù)器隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列,包括:
所述后臺(tái)服務(wù)器從指紋數(shù)據(jù)庫中隨機(jī)選取n個(gè)指紋,生成挑戰(zhàn)指紋陣列,所述指紋數(shù)據(jù)庫存儲(chǔ)在所述后臺(tái)服務(wù)器中或存儲(chǔ)在所述后臺(tái)服務(wù)器連接的其他設(shè)備中。
在第二方面的基礎(chǔ)上,可選的,所述后臺(tái)服務(wù)器計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣,包括:
所述后臺(tái)服務(wù)器獲取每個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn);
針對(duì)每一個(gè)參考指紋,所述后臺(tái)服務(wù)器依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述一個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋中m個(gè)細(xì)節(jié)點(diǎn)中的每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度;
所述后臺(tái)服務(wù)器針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并將每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成所述一個(gè)參考指紋的第二不符合度矩陣。
在第二方面的基礎(chǔ)上,可選的,基于所述第一不符合度矩陣和每個(gè)參考指紋的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,符合下述公式要求:
其中,σ為任意一個(gè)參考指紋與測(cè)試指紋之間的匹配度,測(cè)試指紋與挑戰(zhàn)指紋陣列間的第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],所述任意一個(gè)參考指紋與挑戰(zhàn)指紋陣列間的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。
在第二方面的基礎(chǔ)上,可選的,所述后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果,包括:
所述后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,判定參考指紋中是否存在目標(biāo)參考指紋,所述目標(biāo)參考指紋與所述測(cè)試指紋之間的匹配度小于預(yù)設(shè)閾值;
若存在目標(biāo)參考指紋,則向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證成 功;
若不存在目標(biāo)參考指紋,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證失敗。
第三方面,提供一種基于指紋識(shí)別的身份驗(yàn)證裝置,包括:
采集單元,用于接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋;
發(fā)送單元,用于將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域的后臺(tái)服務(wù)器,所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果;
接收單元,用于接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)挑戰(zhàn)指紋;
處理單元,用于計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并向所述后臺(tái)服務(wù)器發(fā)送所述第一不符合度矩陣,所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度,使所述后臺(tái)服務(wù)器基于所述第一不符合度矩陣返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
所述第三方面的裝置用于實(shí)現(xiàn)第一方面以及第一方面的各實(shí)施方式中的方法。
第四方面,提供一種基于指紋識(shí)別的身份驗(yàn)證裝置,包括:
接收單元,用于接收位于非受信區(qū)域的終端發(fā)送的針對(duì)應(yīng)用程序采集的測(cè)試指紋進(jìn)行身份驗(yàn)證的身份驗(yàn)證請(qǐng)求;
處理單元,用于隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列;
發(fā)送單元,用于向所述終端發(fā)送所述生成的挑戰(zhàn)指紋陣列;
所述接收單元,還用于在接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;
所述處理單元,還用于分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣;
基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;
基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,通過所述發(fā)送單元向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
所述第四方面的裝置用于實(shí)現(xiàn)第二方面以及第二方面的各實(shí)施方式中的方法。
第五方面,提供一種終端,該終端包括處理器、存儲(chǔ)器、發(fā)射器和接收器,其中,所述存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)可讀程序,所述處理器通過運(yùn)行所述存儲(chǔ)器中的程序,控制所述發(fā)射器和接收器,實(shí)現(xiàn)第一方面涉及的基于指紋識(shí)別的身份驗(yàn)證方法。
第六方面,提供一種服務(wù)器,該設(shè)備包括處理器、存儲(chǔ)器、收發(fā)器,其中,所述存儲(chǔ)器中存有計(jì)算機(jī)可讀程序,所述處理器通過運(yùn)行所述存儲(chǔ)器中的程序,控制所述發(fā)射器和接收器,實(shí)現(xiàn)第二方面涉及的基于指紋識(shí)別的身份驗(yàn)證方法。
第七方面,提供一種通信系統(tǒng),該通信系統(tǒng)包括第一設(shè)備和第二設(shè)備,其中,所述第一設(shè)備為第三方面涉及的裝置或第五方面涉及的終端,所述第二設(shè)備為第四方面涉及的裝置或第六方面涉及的服務(wù)器。
本發(fā)明實(shí)施例提供的基于指紋識(shí)別的身份驗(yàn)證方案中,位于非受信區(qū)域的終端接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋,接收后臺(tái)服務(wù)器反饋的挑戰(zhàn)指紋陣列,將計(jì)算的測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣發(fā)送至所述后臺(tái)服務(wù)器,后臺(tái)服務(wù)器計(jì)算后臺(tái)服務(wù)器中的參考指紋與挑戰(zhàn)指紋陣列間的第二不符合度矩陣,并將第一不符合度矩陣與第二不符合度矩陣匹配,以獲取所述測(cè)試指紋的身份驗(yàn)證結(jié)果。相較于現(xiàn)有技術(shù),本發(fā)明實(shí)施例中的方案,當(dāng)終端位于非受信區(qū)域時(shí),能夠利用云端數(shù)據(jù)庫存儲(chǔ)的參考指紋對(duì)使用者進(jìn)行身份驗(yàn)證,擴(kuò)大指紋識(shí)別的身份驗(yàn)證的應(yīng)用范圍,避免了終端的測(cè)試指紋與云端數(shù)據(jù)庫存儲(chǔ)的參考指紋的泄露風(fēng)險(xiǎn),提高身份驗(yàn)證的安全性。
附圖說明
圖1為本發(fā)明實(shí)施例的基于指紋識(shí)別的身份驗(yàn)證系統(tǒng)架構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例中基于指紋識(shí)別的身份驗(yàn)證方法流程圖;
圖3為本發(fā)明實(shí)施例中實(shí)際應(yīng)用場(chǎng)景下的基于指紋識(shí)別的身份驗(yàn)證方法流程圖;
圖4為本發(fā)明實(shí)施例中一種基于指紋識(shí)別的身份驗(yàn)證裝置的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例中一種終端的結(jié)構(gòu)示意圖;
圖6為本發(fā)明實(shí)施例中另一種基于指紋識(shí)別的身份驗(yàn)證裝置的結(jié)構(gòu)示意圖;
圖7為本發(fā)明實(shí)施例中一種服務(wù)器的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行描述。
圖1所示為本發(fā)明實(shí)施例的基于指紋識(shí)別的身份驗(yàn)證系統(tǒng)架構(gòu)示意圖,所述系統(tǒng)包括終端和后臺(tái)服務(wù)器,終端處于非受信區(qū)域、后臺(tái)服務(wù)器處于受信區(qū)域中,終端與后臺(tái)服務(wù)器之間可以建立虛擬專用網(wǎng)絡(luò)(virtualprivatenetwork,vpn)隧道進(jìn)行通信,也可以建立基于安全傳輸層協(xié)議(transportlayersecurity,tls)、安全套接層(securesocketslayer,ssl)的長連接來進(jìn)行通信。
終端,用于接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋,并將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域的后臺(tái)服務(wù)器,所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果;接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)挑戰(zhàn)指紋;計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并將所述第一不符合度矩陣發(fā)送至所述后臺(tái)服務(wù)器,所述不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配 程度。
后臺(tái)服務(wù)器,用于接收位于非受信區(qū)域的終端發(fā)送的針對(duì)應(yīng)用程序采集的測(cè)試指紋進(jìn)行身份驗(yàn)證的身份驗(yàn)證請(qǐng)求;隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列;將生成的挑戰(zhàn)指紋陣列發(fā)送至所述終端;接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣,并基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
參閱圖2所示,本發(fā)明實(shí)施例提供一種基于指紋識(shí)別的身份驗(yàn)證方法,用于圖1所示的系統(tǒng)。所述方法具體包括:
步驟20:終端接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋。
步驟21:所述終端將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域上的后臺(tái)服務(wù)器。
所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
步驟22:后臺(tái)服務(wù)器接收到終端發(fā)送的身份驗(yàn)證請(qǐng)求后,隨機(jī)生成包括n個(gè)隨機(jī)指紋的挑戰(zhàn)指紋陣列。
其中,所述挑戰(zhàn)指紋陣列包括所述后臺(tái)服務(wù)器從指紋數(shù)據(jù)庫中隨機(jī)選取的n個(gè)挑戰(zhàn)指紋,所述指紋數(shù)據(jù)庫存儲(chǔ)在所述后臺(tái)服務(wù)器中或存儲(chǔ)在所述后臺(tái)服務(wù)器連接的其他設(shè)備中。隨機(jī)生成的n個(gè)挑戰(zhàn)指紋為所述后臺(tái)服務(wù)器從指紋數(shù)據(jù)庫中隨機(jī)選取的n個(gè)指紋。
步驟23:后臺(tái)服務(wù)器將生成的挑戰(zhàn)指紋陣列發(fā)送至終端。
步驟24:終端接收到挑戰(zhàn)指紋陣列后,計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣。
具體的,所述終端計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,包括以下步驟:
s1:獲取所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)。
s2:依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)中每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度。
這里用sk表示挑戰(zhàn)指紋陣列中第i個(gè)挑戰(zhàn)指紋與測(cè)試指紋之間第k個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度,1≤k≤m。
s3:針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并基于得到的每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成第一不符合度矩陣。
這里用aci表示挑戰(zhàn)指紋陣列中第i個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,1≤i≤n,且滿足下列公式:
第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],
步驟25:終端向所述后臺(tái)服務(wù)器發(fā)送所述第一不符合度矩陣。
所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度。
步驟26:后臺(tái)服務(wù)器接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋,分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣。
需要說明的是,參考指紋預(yù)先存儲(chǔ)在后臺(tái)服務(wù)器中,且所述后臺(tái)服務(wù)器還存儲(chǔ)了每個(gè)參考指紋對(duì)應(yīng)的身份信息和權(quán)限。
具體的,后臺(tái)服務(wù)器計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣,包括以下步驟:
n1:獲取每個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)。
n2:針對(duì)每一個(gè)參考指紋,所述后臺(tái)服務(wù)器依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述一個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋中m個(gè)細(xì)節(jié)點(diǎn)中的每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度。
n3:針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并將每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成所述一個(gè)參考指紋的第二不符合度矩陣。
需要說明的是,任意一個(gè)參考指紋與挑戰(zhàn)指紋陣列之間的第二不符合度矩陣的計(jì)算方法,與上述測(cè)試指紋與挑戰(zhàn)指紋陣列之間的第一不符合度矩陣的計(jì)算方法,完全相同,這里不再贅述。
步驟27:后臺(tái)服務(wù)器基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度。
基于所述第一不符合度矩陣和每個(gè)參考指紋的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,符合下述公式要求:
其中,σ為一個(gè)參考指紋與測(cè)試指紋之間的匹配度,第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],一個(gè)參考指紋的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。
步驟28:后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
具體的,后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果,具體過程為:
所述后臺(tái)服務(wù)器基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,判定參考指紋中是否存在目標(biāo)參考指紋,所述目標(biāo)參考指紋與所述測(cè)試指紋之間的匹 配度小于預(yù)設(shè)閾值;
若存在目標(biāo)參考指紋,則向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證成功;
若不存在目標(biāo)參考指紋,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證失敗。
下面通過一個(gè)詳細(xì)的例子來說明圖2所示的方法,如圖3所示,包括終端和后臺(tái)服務(wù)器,終端和后臺(tái)服務(wù)器通過公網(wǎng)建立vpn隧道進(jìn)行通信。其中,終端包括2個(gè)實(shí)體模塊,分別是客戶端指紋認(rèn)證模塊和指紋認(rèn)證可信計(jì)算區(qū),后臺(tái)服務(wù)器中設(shè)置有后臺(tái)指紋認(rèn)證模塊、后臺(tái)隨機(jī)指紋生成器和參考指紋模板庫。
其中,客戶端指紋認(rèn)證模塊,用于為客戶端應(yīng)用提供指紋認(rèn)證的入口,為安裝在終端客戶端上的應(yīng)用提供應(yīng)用驗(yàn)證接口并負(fù)責(zé)發(fā)起應(yīng)用的指紋認(rèn)證請(qǐng)求。
指紋認(rèn)證可信計(jì)算區(qū),負(fù)責(zé)計(jì)算后臺(tái)服務(wù)器反饋的挑戰(zhàn)指紋陣列和客戶端指紋認(rèn)證模塊采集的測(cè)試指紋之間第一不符合度矩陣,并將得到的第一不符合度矩陣傳回后臺(tái)服務(wù)器中的后臺(tái)指紋認(rèn)證模塊。指紋認(rèn)證可信計(jì)算區(qū)位于終端的安全區(qū)域,該區(qū)域不允許外界隨意訪問,但是可以隨意訪問外界區(qū)域。
后臺(tái)指紋認(rèn)證模塊,用于提供指紋認(rèn)證的服務(wù),負(fù)責(zé)計(jì)算挑戰(zhàn)指紋陣列和參考指紋模板中的每一個(gè)參考指紋之間的第二不符合度矩陣,逐個(gè)對(duì)比每個(gè)參考指紋的第二不符合度矩陣和第一不符合度矩陣之間的差異,得到測(cè)試指紋的真實(shí)指紋身份,驗(yàn)證測(cè)試指紋的身份。
后臺(tái)隨機(jī)指紋生產(chǎn)器,負(fù)責(zé)隨機(jī)生成挑戰(zhàn)指紋陣列,挑戰(zhàn)指紋陣列包含n(n為大于2的正整數(shù))個(gè)挑戰(zhàn)指紋,并反饋至終端,挑戰(zhàn)指紋是客戶端的測(cè)試指紋和后臺(tái)服務(wù)端的參考指紋比對(duì)的公共參照。
指紋模板存儲(chǔ)庫:負(fù)責(zé)存儲(chǔ)具有身份信息的m個(gè)參考指紋,m為正整數(shù)。具體的,交互過程可參閱圖3所示。
1、應(yīng)用程序發(fā)起當(dāng)前使用者實(shí)名身份的身份驗(yàn)證請(qǐng)求,并采集當(dāng)前使用者輸入的測(cè)試指紋,將身份驗(yàn)證請(qǐng)求和測(cè)試指紋傳到客戶端指紋認(rèn)證模塊。
2、指紋認(rèn)證模塊首先通過公網(wǎng)和后臺(tái)服務(wù)器建立vpn隧道,之后在vpn隧道內(nèi)到后臺(tái)服務(wù)器的后臺(tái)指紋認(rèn)證模塊去申請(qǐng)對(duì)測(cè)試指紋進(jìn)行身份驗(yàn)證。
3、后臺(tái)指紋認(rèn)證模塊觸發(fā)后臺(tái)隨機(jī)指紋生成器,去隨機(jī)生成一個(gè)挑戰(zhàn)指紋陣列c,該挑戰(zhàn)指紋陣列c中包含n個(gè)挑戰(zhàn)指紋。具體的,隨機(jī)指紋生成器從一個(gè)足夠大的指紋模板數(shù)據(jù)庫中隨機(jī)選取n個(gè)指紋,指紋模板庫的指紋模板由外部提供,模板庫樣板數(shù)據(jù)差異性越大,最后的比對(duì)結(jié)果的準(zhǔn)確性越高。
4、后臺(tái)隨機(jī)指紋生成器將挑戰(zhàn)指紋陣列c傳回到客戶端指紋認(rèn)證模塊。
5、客戶端指紋認(rèn)證模塊把挑戰(zhàn)指紋陣列c、測(cè)試指紋,傳到指紋認(rèn)證可信計(jì)算區(qū),進(jìn)行測(cè)試指紋和挑戰(zhàn)指紋陣列中的每個(gè)挑戰(zhàn)指紋的逐一對(duì)比,得到第一不符合度矩陣:[{ac1},{ac2},{ac3},...{acn}]。
具體的,指紋比對(duì)時(shí)采用指紋匹配算法,指紋匹配算法采用細(xì)節(jié)點(diǎn)坐標(biāo)模型來做細(xì)節(jié)匹配,它將一副指紋圖像轉(zhuǎn)化成了一個(gè)由細(xì)節(jié)點(diǎn)組成的平面點(diǎn)集,利用脊線末梢(或稱為端點(diǎn))與脊線分支點(diǎn)這兩種關(guān)鍵點(diǎn)來鑒定指紋.通過將細(xì)節(jié)點(diǎn)表示為點(diǎn)模式,自動(dòng)將指紋認(rèn)證轉(zhuǎn)化為一個(gè)點(diǎn)模式匹配(細(xì)節(jié)匹配)。
令
基于現(xiàn)有的細(xì)節(jié)點(diǎn)比對(duì)算法,通過極坐標(biāo)下點(diǎn)的半徑,角度,方向的比較,得到脊線匹配度(匹配分?jǐn)?shù)),記錄為sk,,測(cè)試指紋的所有細(xì)節(jié)點(diǎn)比較后得到一組匹配分?jǐn)?shù),[s1,s2,…,sm],將m個(gè)細(xì)節(jié)點(diǎn)的脊線匹配度加和求平均,得到一個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值。
其中,0<aci<100,所有挑戰(zhàn)指紋和測(cè)試指紋比對(duì)后得到第一不符合度矩陣[{ac1},{ac2},{ac3},...{acn}]。
需要說明的是挑戰(zhàn)值越大,說明測(cè)試指紋與挑戰(zhàn)指紋越不相似。
6、指紋認(rèn)證可信計(jì)算區(qū)將得到的第一不符合度矩陣傳回客戶端指紋認(rèn)證模塊。
7、客戶端指紋認(rèn)證模塊將第一不符合度矩陣傳回后臺(tái)指紋驗(yàn)證模塊。
8、后臺(tái)指紋認(rèn)證模塊從參考指紋模板庫中讀取存儲(chǔ)的所有參考指紋,依次和挑戰(zhàn)指紋陣列c比對(duì),得到第二不符合度矩陣[{bc1},{bc2},{bc3},...{bcn}],進(jìn)一步的,依次對(duì)比每個(gè)參考指紋的第二不符合度矩陣和第一不符合矩陣得到每個(gè)參考指紋與測(cè)試指紋間的匹配度,得到測(cè)試指紋的真實(shí)身份驗(yàn)證結(jié)果。
每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度符合下述公式:
其中,σ為一個(gè)參考指紋與測(cè)試指紋之間的匹配度。
由于第一不符合度矩陣和第二不符合度矩陣中的每個(gè)元素的挑戰(zhàn)值均為0~100之間,即0<aci<100,0<bci<100,兩個(gè)矩陣對(duì)應(yīng)位置的匹配度差小于5%(bci-aci<5),認(rèn)為該點(diǎn)匹配,所有點(diǎn)匹配結(jié)果,如果均小于5%,則判定該參考指紋與測(cè)試指紋匹配成功,身份驗(yàn)證結(jié)果為驗(yàn)證通過,可選的,還能查詢到該參考指紋對(duì)應(yīng)的身份信息。
9、后臺(tái)指紋認(rèn)證模塊向客戶端身份認(rèn)證模塊返回測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
10、客戶端身份認(rèn)證模塊將測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果返回給對(duì)應(yīng)的應(yīng)用程序。
基于上述實(shí)施例提供的基于指紋識(shí)別的身份驗(yàn)證方法,本發(fā)明實(shí)施例提供一種基于指紋識(shí)別的身份驗(yàn)證裝置400,該裝置可以用于執(zhí)行上述圖2和圖3所述的方法中終端的執(zhí)行過程,其中,所述裝置400可以是終端或者安裝于所述終端上的裝置,圖4所示為本發(fā)明實(shí)施例提供的裝置400的結(jié)構(gòu)示意圖,如圖4所示,該裝置400包括采集單元401、發(fā)送單元402、接收單元403和處理單元404,其中:
采集單元401,用于接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋;
發(fā)送單元402,用于將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域的后臺(tái)服務(wù)器,所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果;
接收單元403,用于接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)挑戰(zhàn)指紋;
處理單元404,用于計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并向所述后臺(tái)服務(wù)器發(fā)送所述第一不符合度矩陣,所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度,使所述后臺(tái)服務(wù)器基于所述第一不符合度矩陣返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
可選的,所述隨機(jī)生成的n個(gè)挑戰(zhàn)指紋為所述后臺(tái)服務(wù)器從指紋數(shù)據(jù)庫中隨機(jī)選取的n個(gè)指紋。
可選的,所述處理單元404在計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣時(shí),具體用于:
獲取所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn);
依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述測(cè)試指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)中每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度;
針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并
基于得到的每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成所述第一不符合度矩陣。
本發(fā)明實(shí)施例上述涉及的裝置400,可以是獨(dú)立的部件,也可以是集成于其他部件中。
需要說明的是,本發(fā)明實(shí)施例中的裝置400的各個(gè)單元的功能實(shí)現(xiàn)以及交互方式可以進(jìn)一步參照相關(guān)方法實(shí)施例的描述,在此不再贅述。
請(qǐng)參見圖5,基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供一種基于指紋識(shí)別的身份驗(yàn)證設(shè)備500,該設(shè)備500可以用于執(zhí)行上述圖2和圖3所述的方法中終端的功能,如圖5所示,設(shè)備500包括包括存儲(chǔ)器501、處理器502、接收器503和發(fā)射器504。執(zhí)行本發(fā)明方案的程序代碼保存在存儲(chǔ)器501中,并由處理器502來控制執(zhí)行。
存儲(chǔ)器501中存儲(chǔ)的程序用于指令處理器502執(zhí)行基于指紋識(shí)別的身份驗(yàn)證方法,包括:通過接收器503接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋;將所述身份驗(yàn)證請(qǐng)求通過所述發(fā)射器504發(fā)送至位于受信區(qū)域的后臺(tái)服務(wù)器,所述身份驗(yàn)證請(qǐng)求用于獲取所述應(yīng)用程序采集的測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果;通過所述接收器503接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)挑戰(zhàn)指紋;計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并向所述后臺(tái)服務(wù)器發(fā)送所述第一不符合度矩陣,所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度,使所述后臺(tái)服務(wù)器基于所述第一不符合度矩陣返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
所述后臺(tái)服務(wù)器可以是圖6所示的裝置或者圖7所示的服務(wù)器。
其中,處理器502可以是中央處理器(cpu)或特定應(yīng)用集成電路(英文:application-specificintegratedcircuit,簡稱:asic),可以是一個(gè)或多個(gè)用于控制程序執(zhí)行的集成電路,可以是使用現(xiàn)場(chǎng)可編程門陣列(fieldprogrammablegatearray,fpga)開發(fā)的硬件電路,可以是基帶芯片。
存儲(chǔ)器501的數(shù)量可以是一個(gè)或多個(gè)。存儲(chǔ)器501可以包括只讀存儲(chǔ)器(英文:read-onlymemory,簡稱:rom)、隨機(jī)存取存儲(chǔ)器(英文:randomaccessmemory,簡稱:ram)和磁盤存儲(chǔ)器。
接收器503可以用于與外部設(shè)備進(jìn)行通信,例如接收器503可以與基站、后臺(tái)服務(wù)器等設(shè)備進(jìn)行通信。
發(fā)射器504,可以用于與外部設(shè)備進(jìn)行通信,例如發(fā)射器504也可以與基站、后臺(tái)服務(wù)器等設(shè)備進(jìn)行通信。
發(fā)射器504和接收器503可以是同一實(shí)體模塊,例如可以是能夠?qū)崿F(xiàn)收發(fā)功能的實(shí)體模塊,比如可以稱為收發(fā)器,或者發(fā)射器504和接收器503也可以是單獨(dú)的實(shí)體模塊。
存儲(chǔ)器501、發(fā)射器504和接收器503可以通過總線與處理器502相連接,或者也可以通過專門的連接線分別與處理器502連接。
通過對(duì)處理器502進(jìn)行設(shè)計(jì)編程,將上面所示的方法所對(duì)應(yīng)的代碼固化到芯片內(nèi),從而使芯片在運(yùn)行時(shí)能夠執(zhí)行圖2和圖3所示的方法。
可以理解的是,本實(shí)施例的設(shè)備500可用于實(shí)現(xiàn)上述方法實(shí)施例中涉及終端的所有功能,其具體實(shí)現(xiàn)過程可以參照上述方法實(shí)施例的相關(guān)描述,此處不再贅述。
基于上述實(shí)施例提供的基于指紋識(shí)別的身份驗(yàn)證方法,本發(fā)明實(shí)施例提供一種基于指紋識(shí)別的身份驗(yàn)證裝置600,該裝置可以用于執(zhí)行上述圖2和圖3所述的方法中后臺(tái)服務(wù)器的執(zhí)行過程,圖6所示為本發(fā)明實(shí)施例提供的裝置600的結(jié)構(gòu)示意圖,如圖6所示,該裝置600包括接收單元601、處理單元602、發(fā)送單元603,其中:
接收單元601,用于接收位于非受信區(qū)域的終端發(fā)送的針對(duì)應(yīng)用程序采集的測(cè)試指紋進(jìn)行身份驗(yàn)證的身份驗(yàn)證請(qǐng)求;
處理單元602,用于隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列;
發(fā)送單元603,用于向所述終端發(fā)送所述生成的挑戰(zhàn)指紋陣列;
所述接收單元601,還用于在接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;
所述處理單元602,還用于分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣;
基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;
基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,通過所述發(fā)送單元603向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
可選的,所述處理單元602在隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列時(shí),具體用于:
從指紋數(shù)據(jù)庫中隨機(jī)選取n個(gè)指紋,生成挑戰(zhàn)指紋陣列,所述指紋數(shù)據(jù)庫存儲(chǔ)在所述裝置中或存儲(chǔ)在所述裝置連接的其他設(shè)備中。
可選的,所述處理單元602在計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣時(shí),具體用于:
獲取每個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),以及所述挑戰(zhàn)指紋陣列中每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn);
針對(duì)每一個(gè)參考指紋,依次比對(duì)每個(gè)挑戰(zhàn)指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn)與所述一個(gè)參考指紋的脊線中的m個(gè)細(xì)節(jié)點(diǎn),得到每個(gè)挑戰(zhàn)指紋中m個(gè)細(xì)節(jié)點(diǎn)中的每個(gè)細(xì)節(jié)點(diǎn)對(duì)應(yīng)的脊線匹配度;
針對(duì)每個(gè)挑戰(zhàn)指紋,將m個(gè)脊線匹配度加和求平均,得到每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值,并將每個(gè)挑戰(zhàn)指紋的挑戰(zhàn)值形成所述一個(gè)參考指紋的第二不符合度矩陣。
可選的,所述處理單元602在基于所述第一不符合度矩陣和每個(gè)參考指紋的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度時(shí),符合下述公式要求:
其中,σ為任意一個(gè)參考指紋與測(cè)試指紋之間的匹配度,測(cè)試指紋與挑戰(zhàn)指紋陣列間的第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],所述任意一個(gè)參考指紋與挑戰(zhàn)指紋陣列間的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。
可選的,所述處理單元602在基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果時(shí),具體用于:
基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,判定參考指紋中是否存在目標(biāo)參考指紋,所述目標(biāo)參考指紋與所述測(cè)試指紋之間的匹配度小于預(yù)設(shè)閾值;
若存在目標(biāo)參考指紋,則向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證成功;
若不存在目標(biāo)參考指紋,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證失敗。
本發(fā)明實(shí)施例上述涉及的裝置600,可以是獨(dú)立的部件,也可以集成于其他部件中。
需要說明的是,本發(fā)明實(shí)施例中的裝置600的各個(gè)單元的功能實(shí)現(xiàn)以及交互方式可以進(jìn)一步參照相關(guān)方法實(shí)施例的描述,在此不再贅述。
請(qǐng)參見圖7,基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供一種服務(wù)器700,該服務(wù)器700可以用于執(zhí)行上述圖2和圖3所述的方法中后臺(tái)服務(wù)器的操作,如圖7所示,服務(wù)器700包括包括存儲(chǔ)器701、處理器702、接收器703和發(fā)射器704。執(zhí)行本發(fā)明方案的程序代碼保存在存儲(chǔ)器701中,并由處理器702來控制執(zhí)行。
存儲(chǔ)器701中存儲(chǔ)的程序用于指令處理器702執(zhí)行基于指紋識(shí)別的身份驗(yàn)證方法,包括:通過接收器703接收位于非受信區(qū)域的終端發(fā)送的針對(duì)應(yīng)用程序采集的測(cè)試指紋進(jìn)行身份驗(yàn)證的身份驗(yàn)證請(qǐng)求;隨機(jī)生成包括n個(gè)挑戰(zhàn)指紋的挑戰(zhàn)指紋陣列;通過所述發(fā)射器704向所述終端發(fā)送所述生成的挑戰(zhàn)指紋陣列;在通過接收器703接收到所述終端發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣;基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,通過所述發(fā)射器704向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果。
所述終端可以是圖4所示的裝置或者圖5所示的終端。
其中,處理器702可以是cpu或asic,可以是一個(gè)或多個(gè)用于控制程序執(zhí)行的集成電路,可以是使用現(xiàn)場(chǎng)可編程門陣列fpga開發(fā)的硬件電路,可以是基帶芯片。
存儲(chǔ)器701的數(shù)量可以是一個(gè)或多個(gè)。存儲(chǔ)器701可以包括只讀存儲(chǔ)器rom、ram和磁盤存儲(chǔ)器。
接收器703和發(fā)射器704可以用于與外部設(shè)備進(jìn)行通信,例如接收器703和發(fā)射器704可以與終端進(jìn)行通信。
發(fā)射器704和接收器703可以是同一實(shí)體模塊,例如可以是能夠?qū)崿F(xiàn)收發(fā)功能的實(shí)體模塊,比如可以稱為收發(fā)器,或者發(fā)射器704和接收器703也可以是單獨(dú)的實(shí)體模塊。
存儲(chǔ)器701、發(fā)射器704和接收器703可以通過總線與處理器702相連接,或者也可以通過專門的連接線分別與處理器702連接。
通過對(duì)處理器702進(jìn)行設(shè)計(jì)編程,將上面所示的方法所對(duì)應(yīng)的代碼固化到芯片內(nèi),從而使芯片在運(yùn)行時(shí)能夠執(zhí)行圖2和圖3中后臺(tái)服務(wù)器的操作。
可以理解的是,本實(shí)施例的設(shè)備700可用于實(shí)現(xiàn)上述方法實(shí)施例中涉及后 臺(tái)服務(wù)器的所有功能,其具體實(shí)現(xiàn)過程可以參照上述方法實(shí)施例的相關(guān)描述,此處不再贅述。
綜上所述,本發(fā)明實(shí)施例中,位于非受信區(qū)域的終端接收到應(yīng)用程序發(fā)起的身份驗(yàn)證請(qǐng)求后,獲取所述應(yīng)用程序采集的測(cè)試指紋,并將所述身份驗(yàn)證請(qǐng)求發(fā)送至位于受信區(qū)域上的后臺(tái)服務(wù)器;接收所述后臺(tái)服務(wù)器基于所述身份驗(yàn)證請(qǐng)求反饋的挑戰(zhàn)指紋陣列,所述挑戰(zhàn)指紋陣列包括隨機(jī)生成的n個(gè)指紋;計(jì)算所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣,并將所述第一不符合度矩陣發(fā)送至所述后臺(tái)服務(wù)器,所述第一不符合度矩陣用于描述所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列之間的不匹配程度,所述后臺(tái)服務(wù)器接收到所述終端計(jì)算并發(fā)送的所述測(cè)試指紋與所述挑戰(zhàn)指紋陣列間的第一不符合度矩陣后,獲取預(yù)存的參考指紋;分別計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣,并基于所述第一不符合度矩陣和針對(duì)每個(gè)參考指紋分別計(jì)算的第二不符合度矩陣,確定每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度;基于每個(gè)參考指紋與所述測(cè)試指紋之間的匹配度,向所述終端返回所述測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果,這樣,當(dāng)終端位于非受信區(qū)域,且需要進(jìn)行使用者實(shí)名身份驗(yàn)證的情況下,通過在終端采集測(cè)試指紋,借助后臺(tái)服務(wù)器生成的挑戰(zhàn)指紋陣列得到測(cè)試指紋與挑戰(zhàn)指紋陣列間的第一不符合度矩陣并發(fā)送給所述后臺(tái)服務(wù)器,后臺(tái)服務(wù)器計(jì)算每個(gè)參考指紋與所述挑戰(zhàn)指紋陣列間的第二不符合度矩陣,并通過判斷第一不符合度矩陣和第二不符合度矩陣的差異性,得到測(cè)試指紋對(duì)應(yīng)的身份驗(yàn)證結(jié)果,避免了終端采集的測(cè)試指紋的泄露風(fēng)險(xiǎn),也避免了后臺(tái)服務(wù)器中存儲(chǔ)的參考指紋的泄露風(fēng)險(xiǎn),還能夠利用云端數(shù)據(jù)庫存儲(chǔ)的參考指紋對(duì)使用者進(jìn)行身份驗(yàn)證,保證安全性的前提下,擴(kuò)大指紋的身份驗(yàn)證的應(yīng)用范圍。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的 形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明實(shí)施例進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明實(shí)施例的精神和范圍。這樣,倘若本發(fā)明實(shí)施例的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。