新四季網

一種基於指紋識別的身份驗證方法、裝置和系統與流程

2023-10-11 19:25:04


本發明涉及指紋識別技術領域,尤其涉及一種基於指紋識別的身份驗證方法、裝置和系統。



背景技術:

指紋識別,是指電子設備採集用戶指紋,將採集的指紋與預先存儲的指紋模板進行匹配以驗證用戶身份的技術。通過指紋識別可避免非法用戶使用電子設備,以下將具有指紋識別功能的電子設備統稱為終端。

典型的指紋識別過程包括如下步驟:1、通過指紋採集設備獲取所需識別指紋的圖像;2、對採集的指紋圖像進行預處理,具體包括圖像質量判斷、圖像增強、指紋區域檢測、指紋方向圖和頻率估算、圖像二值化處理、圖像細化等;3、從預處理後的指紋圖像中,獲取指紋的脊線數據;4、從指紋的脊線數據中,提取指紋識別所需的特徵點即提取指紋特徵;5、將提取的指紋特徵與資料庫中保存的參考指紋模板中的指紋特徵逐一匹配,判斷是否存在相同指紋。6、完成指紋匹配處理後,輸出指紋識別的處理結果。

用戶在配置指紋識別功能的過程中輸入的作為匹配對象的參考指紋是無法撤銷和更改的,所以參考指紋模板的保護需要採取安全性更高的策略。實際應用中,為了保證指紋識別的安全性,一般不允許將雲端資料庫上存儲的參考指紋讀取到設備上,也不允許將設備自身存儲的參考指紋傳送到雲端,因此,指紋識別主要應用在非受信區域受信區域內、或者單臺設備上。

隨著移動辦公的普及,很多企業為員工提供了公用移動終端,例如,銀行的制卡機,以方便員工外出辦公。這些公用移動終端不可能事先存儲每個員工的參考指紋,而當員工外出辦公離開受信區域時,雲端資料庫上存儲的參考指 紋也不能傳輸到該公用移動終端,因此,該公用移動終端在離開受信區域後無法對使用者進行身份驗證。在另一些場景下,為了提高認證的安全性,當終端位於非受信區域時,不允許終端使用本地存儲的參考指紋對使用者進行身份驗證,而雲端資料庫上存儲的參考指紋也不能傳輸到該終端,這同樣導致該終端無法對使用者進行身份驗證。即,在現有技術中,當終端位於非受信區域時,無法利用雲端資料庫存儲的參考指紋對使用者進行身份驗證。



技術實現要素:

本發明實施例提供一種基於指紋識別的身份驗證方法、裝置和系統,以解決現有技術中,當終端位於非受信區域時,無法利用雲端資料庫存儲的參考指紋對使用者進行身份驗證的問題。

本發明實施例提供的具體技術方案如下:

第一方面,提供一種基於指紋識別的身份驗證方法,包括:

位於非受信區域的終端接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋;

所述終端將所述身份驗證請求發送至位於受信區域的後臺伺服器,所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果;

所述終端接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個挑戰指紋;

所述終端計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並向所述後臺伺服器發送所述第一不符合度矩陣,所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度,使所述後臺伺服器基於所述第一不符合度矩陣返回所述測試指紋對應的身份驗證結果。

在第一方面的基礎上,可選的,所述隨機生成的n個挑戰指紋為所述後臺伺服器從指紋資料庫中隨機選取的n個指紋。

在第一方面的基礎上,可選的,所述終端計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,包括:

所述終端獲取所述測試指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點;

所述終端依次比對每個挑戰指紋的脊線中的m個細節點與所述測試指紋的脊線中的m個細節點,得到每個挑戰指紋的脊線中的m個細節點中每個細節點對應的脊線匹配度;

所述終端針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並

基於得到的每個挑戰指紋的挑戰值形成所述第一不符合度矩陣。

第二方面,提供一種基於指紋識別的身份驗證方法,包括:

位於受信區域上的後臺伺服器接收位於非受信區域的終端發送的針對應用程式採集的測試指紋進行身份驗證的身份驗證請求;

所述後臺伺服器隨機生成包括n個挑戰指紋的挑戰指紋陣列;

所述後臺伺服器向所述終端發送所述生成的挑戰指紋陣列;

所述後臺伺服器接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;

所述後臺伺服器分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣;

所述後臺伺服器基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;

所述後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果。

在第二方面的基礎上,可選的,所述後臺伺服器隨機生成包括n個挑戰指紋的挑戰指紋陣列,包括:

所述後臺伺服器從指紋資料庫中隨機選取n個指紋,生成挑戰指紋陣列,所述指紋資料庫存儲在所述後臺伺服器中或存儲在所述後臺伺服器連接的其他設備中。

在第二方面的基礎上,可選的,所述後臺伺服器計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣,包括:

所述後臺伺服器獲取每個參考指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點;

針對每一個參考指紋,所述後臺伺服器依次比對每個挑戰指紋的脊線中的m個細節點與所述一個參考指紋的脊線中的m個細節點,得到每個挑戰指紋中m個細節點中的每個細節點對應的脊線匹配度;

所述後臺伺服器針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並將每個挑戰指紋的挑戰值形成所述一個參考指紋的第二不符合度矩陣。

在第二方面的基礎上,可選的,基於所述第一不符合度矩陣和每個參考指紋的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度,符合下述公式要求:

其中,σ為任意一個參考指紋與測試指紋之間的匹配度,測試指紋與挑戰指紋陣列間的第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],所述任意一個參考指紋與挑戰指紋陣列間的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。

在第二方面的基礎上,可選的,所述後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果,包括:

所述後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,判定參考指紋中是否存在目標參考指紋,所述目標參考指紋與所述測試指紋之間的匹配度小於預設閾值;

若存在目標參考指紋,則向所述終端返回所述測試指紋對應的身份驗證成 功;

若不存在目標參考指紋,向所述終端返回所述測試指紋對應的身份驗證失敗。

第三方面,提供一種基於指紋識別的身份驗證裝置,包括:

採集單元,用於接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋;

發送單元,用於將所述身份驗證請求發送至位於受信區域的後臺伺服器,所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果;

接收單元,用於接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個挑戰指紋;

處理單元,用於計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並向所述後臺伺服器發送所述第一不符合度矩陣,所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度,使所述後臺伺服器基於所述第一不符合度矩陣返回所述測試指紋對應的身份驗證結果。

所述第三方面的裝置用於實現第一方面以及第一方面的各實施方式中的方法。

第四方面,提供一種基於指紋識別的身份驗證裝置,包括:

接收單元,用於接收位於非受信區域的終端發送的針對應用程式採集的測試指紋進行身份驗證的身份驗證請求;

處理單元,用於隨機生成包括n個挑戰指紋的挑戰指紋陣列;

發送單元,用於向所述終端發送所述生成的挑戰指紋陣列;

所述接收單元,還用於在接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;

所述處理單元,還用於分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣;

基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;

基於每個參考指紋與所述測試指紋之間的匹配度,通過所述發送單元向所述終端返回所述測試指紋對應的身份驗證結果。

所述第四方面的裝置用於實現第二方面以及第二方面的各實施方式中的方法。

第五方面,提供一種終端,該終端包括處理器、存儲器、發射器和接收器,其中,所述存儲器中存儲有計算機可讀程序,所述處理器通過運行所述存儲器中的程序,控制所述發射器和接收器,實現第一方面涉及的基於指紋識別的身份驗證方法。

第六方面,提供一種伺服器,該設備包括處理器、存儲器、收發器,其中,所述存儲器中存有計算機可讀程序,所述處理器通過運行所述存儲器中的程序,控制所述發射器和接收器,實現第二方面涉及的基於指紋識別的身份驗證方法。

第七方面,提供一種通信系統,該通信系統包括第一設備和第二設備,其中,所述第一設備為第三方面涉及的裝置或第五方面涉及的終端,所述第二設備為第四方面涉及的裝置或第六方面涉及的伺服器。

本發明實施例提供的基於指紋識別的身份驗證方案中,位於非受信區域的終端接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋,接收後臺伺服器反饋的挑戰指紋陣列,將計算的測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣發送至所述後臺伺服器,後臺伺服器計算後臺伺服器中的參考指紋與挑戰指紋陣列間的第二不符合度矩陣,並將第一不符合度矩陣與第二不符合度矩陣匹配,以獲取所述測試指紋的身份驗證結果。相較於現有技術,本發明實施例中的方案,當終端位於非受信區域時,能夠利用雲端資料庫存儲的參考指紋對使用者進行身份驗證,擴大指紋識別的身份驗證的應用範圍,避免了終端的測試指紋與雲端資料庫存儲的參考指紋的洩露風險,提高身份驗證的安全性。

附圖說明

圖1為本發明實施例的基於指紋識別的身份驗證系統架構示意圖;

圖2為本發明實施例中基於指紋識別的身份驗證方法流程圖;

圖3為本發明實施例中實際應用場景下的基於指紋識別的身份驗證方法流程圖;

圖4為本發明實施例中一種基於指紋識別的身份驗證裝置的結構示意圖;

圖5為本發明實施例中一種終端的結構示意圖;

圖6為本發明實施例中另一種基於指紋識別的身份驗證裝置的結構示意圖;

圖7為本發明實施例中一種伺服器的結構示意圖。

具體實施方式

下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行描述。

圖1所示為本發明實施例的基於指紋識別的身份驗證系統架構示意圖,所述系統包括終端和後臺伺服器,終端處於非受信區域、後臺伺服器處於受信區域中,終端與後臺伺服器之間可以建立虛擬專用網絡(virtualprivatenetwork,vpn)隧道進行通信,也可以建立基於安全傳輸層協議(transportlayersecurity,tls)、安全套接層(securesocketslayer,ssl)的長連接來進行通信。

終端,用於接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋,並將所述身份驗證請求發送至位於受信區域的後臺伺服器,所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果;接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個挑戰指紋;計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並將所述第一不符合度矩陣發送至所述後臺伺服器,所述不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配 程度。

後臺伺服器,用於接收位於非受信區域的終端發送的針對應用程式採集的測試指紋進行身份驗證的身份驗證請求;隨機生成包括n個挑戰指紋的挑戰指紋陣列;將生成的挑戰指紋陣列發送至所述終端;接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣,並基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果。

參閱圖2所示,本發明實施例提供一種基於指紋識別的身份驗證方法,用於圖1所示的系統。所述方法具體包括:

步驟20:終端接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋。

步驟21:所述終端將所述身份驗證請求發送至位於受信區域上的後臺伺服器。

所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果。

步驟22:後臺伺服器接收到終端發送的身份驗證請求後,隨機生成包括n個隨機指紋的挑戰指紋陣列。

其中,所述挑戰指紋陣列包括所述後臺伺服器從指紋資料庫中隨機選取的n個挑戰指紋,所述指紋資料庫存儲在所述後臺伺服器中或存儲在所述後臺伺服器連接的其他設備中。隨機生成的n個挑戰指紋為所述後臺伺服器從指紋資料庫中隨機選取的n個指紋。

步驟23:後臺伺服器將生成的挑戰指紋陣列發送至終端。

步驟24:終端接收到挑戰指紋陣列後,計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣。

具體的,所述終端計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,包括以下步驟:

s1:獲取所述測試指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點。

s2:依次比對每個挑戰指紋的脊線中的m個細節點與所述測試指紋的脊線中的m個細節點,得到每個挑戰指紋的脊線中的m個細節點中每個細節點對應的脊線匹配度。

這裡用sk表示挑戰指紋陣列中第i個挑戰指紋與測試指紋之間第k個細節點對應的脊線匹配度,1≤k≤m。

s3:針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並基於得到的每個挑戰指紋的挑戰值形成第一不符合度矩陣。

這裡用aci表示挑戰指紋陣列中第i個挑戰指紋的挑戰值,1≤i≤n,且滿足下列公式:

第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],

步驟25:終端向所述後臺伺服器發送所述第一不符合度矩陣。

所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度。

步驟26:後臺伺服器接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋,分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣。

需要說明的是,參考指紋預先存儲在後臺伺服器中,且所述後臺伺服器還存儲了每個參考指紋對應的身份信息和權限。

具體的,後臺伺服器計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣,包括以下步驟:

n1:獲取每個參考指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點。

n2:針對每一個參考指紋,所述後臺伺服器依次比對每個挑戰指紋的脊線中的m個細節點與所述一個參考指紋的脊線中的m個細節點,得到每個挑戰指紋中m個細節點中的每個細節點對應的脊線匹配度。

n3:針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並將每個挑戰指紋的挑戰值形成所述一個參考指紋的第二不符合度矩陣。

需要說明的是,任意一個參考指紋與挑戰指紋陣列之間的第二不符合度矩陣的計算方法,與上述測試指紋與挑戰指紋陣列之間的第一不符合度矩陣的計算方法,完全相同,這裡不再贅述。

步驟27:後臺伺服器基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度。

基於所述第一不符合度矩陣和每個參考指紋的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度,符合下述公式要求:

其中,σ為一個參考指紋與測試指紋之間的匹配度,第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],一個參考指紋的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。

步驟28:後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果。

具體的,後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果,具體過程為:

所述後臺伺服器基於每個參考指紋與所述測試指紋之間的匹配度,判定參考指紋中是否存在目標參考指紋,所述目標參考指紋與所述測試指紋之間的匹 配度小於預設閾值;

若存在目標參考指紋,則向所述終端返回所述測試指紋對應的身份驗證成功;

若不存在目標參考指紋,向所述終端返回所述測試指紋對應的身份驗證失敗。

下面通過一個詳細的例子來說明圖2所示的方法,如圖3所示,包括終端和後臺伺服器,終端和後臺伺服器通過公網建立vpn隧道進行通信。其中,終端包括2個實體模塊,分別是客戶端指紋認證模塊和指紋認證可信計算區,後臺伺服器中設置有後臺指紋認證模塊、後臺隨機指紋生成器和參考指紋模板庫。

其中,客戶端指紋認證模塊,用於為客戶端應用提供指紋認證的入口,為安裝在終端客戶端上的應用提供應用驗證接口並負責發起應用的指紋認證請求。

指紋認證可信計算區,負責計算後臺伺服器反饋的挑戰指紋陣列和客戶端指紋認證模塊採集的測試指紋之間第一不符合度矩陣,並將得到的第一不符合度矩陣傳回後臺伺服器中的後臺指紋認證模塊。指紋認證可信計算區位於終端的安全區域,該區域不允許外界隨意訪問,但是可以隨意訪問外界區域。

後臺指紋認證模塊,用於提供指紋認證的服務,負責計算挑戰指紋陣列和參考指紋模板中的每一個參考指紋之間的第二不符合度矩陣,逐個對比每個參考指紋的第二不符合度矩陣和第一不符合度矩陣之間的差異,得到測試指紋的真實指紋身份,驗證測試指紋的身份。

後臺隨機指紋生產器,負責隨機生成挑戰指紋陣列,挑戰指紋陣列包含n(n為大於2的正整數)個挑戰指紋,並反饋至終端,挑戰指紋是客戶端的測試指紋和後臺服務端的參考指紋比對的公共參照。

指紋模板存儲庫:負責存儲具有身份信息的m個參考指紋,m為正整數。具體的,交互過程可參閱圖3所示。

1、應用程式發起當前使用者實名身份的身份驗證請求,並採集當前使用者輸入的測試指紋,將身份驗證請求和測試指紋傳到客戶端指紋認證模塊。

2、指紋認證模塊首先通過公網和後臺伺服器建立vpn隧道,之後在vpn隧道內到後臺伺服器的後臺指紋認證模塊去申請對測試指紋進行身份驗證。

3、後臺指紋認證模塊觸發後臺隨機指紋生成器,去隨機生成一個挑戰指紋陣列c,該挑戰指紋陣列c中包含n個挑戰指紋。具體的,隨機指紋生成器從一個足夠大的指紋模板資料庫中隨機選取n個指紋,指紋模板庫的指紋模板由外部提供,模板庫樣板數據差異性越大,最後的比對結果的準確性越高。

4、後臺隨機指紋生成器將挑戰指紋陣列c傳回到客戶端指紋認證模塊。

5、客戶端指紋認證模塊把挑戰指紋陣列c、測試指紋,傳到指紋認證可信計算區,進行測試指紋和挑戰指紋陣列中的每個挑戰指紋的逐一對比,得到第一不符合度矩陣:[{ac1},{ac2},{ac3},...{acn}]。

具體的,指紋比對時採用指紋匹配算法,指紋匹配算法採用細節點坐標模型來做細節匹配,它將一副指紋圖像轉化成了一個由細節點組成的平面點集,利用脊線末梢(或稱為端點)與脊線分支點這兩種關鍵點來鑑定指紋.通過將細節點表示為點模式,自動將指紋認證轉化為一個點模式匹配(細節匹配)。

令表示測試指紋的脊線中的m個細節點,表示挑戰指紋陣列中一個挑戰指紋的m個細節點。細節點比較需要轉換到極坐標系中去,要在模板細節點集和輸入細節點集中各選一個參照點作為相應的極坐標系中的原點,並算出其他細節點相對於參照點的極坐標。

表示極坐標下測試指紋的脊線中的m個細節點,表示極坐標下一個挑戰指紋的脊線中的n個細節點。其中和表示對應的極半徑、極角和相對於參照點的細節點方向。

基於現有的細節點比對算法,通過極坐標下點的半徑,角度,方向的比較,得到脊線匹配度(匹配分數),記錄為sk,,測試指紋的所有細節點比較後得到一組匹配分數,[s1,s2,…,sm],將m個細節點的脊線匹配度加和求平均,得到一個挑戰指紋的挑戰值。

其中,0<aci<100,所有挑戰指紋和測試指紋比對後得到第一不符合度矩陣[{ac1},{ac2},{ac3},...{acn}]。

需要說明的是挑戰值越大,說明測試指紋與挑戰指紋越不相似。

6、指紋認證可信計算區將得到的第一不符合度矩陣傳回客戶端指紋認證模塊。

7、客戶端指紋認證模塊將第一不符合度矩陣傳回後臺指紋驗證模塊。

8、後臺指紋認證模塊從參考指紋模板庫中讀取存儲的所有參考指紋,依次和挑戰指紋陣列c比對,得到第二不符合度矩陣[{bc1},{bc2},{bc3},...{bcn}],進一步的,依次對比每個參考指紋的第二不符合度矩陣和第一不符合矩陣得到每個參考指紋與測試指紋間的匹配度,得到測試指紋的真實身份驗證結果。

每個參考指紋與所述測試指紋之間的匹配度符合下述公式:

其中,σ為一個參考指紋與測試指紋之間的匹配度。

由於第一不符合度矩陣和第二不符合度矩陣中的每個元素的挑戰值均為0~100之間,即0<aci<100,0<bci<100,兩個矩陣對應位置的匹配度差小於5%(bci-aci<5),認為該點匹配,所有點匹配結果,如果均小於5%,則判定該參考指紋與測試指紋匹配成功,身份驗證結果為驗證通過,可選的,還能查詢到該參考指紋對應的身份信息。

9、後臺指紋認證模塊向客戶端身份認證模塊返回測試指紋對應的身份驗證結果。

10、客戶端身份認證模塊將測試指紋對應的身份驗證結果返回給對應的應用程式。

基於上述實施例提供的基於指紋識別的身份驗證方法,本發明實施例提供一種基於指紋識別的身份驗證裝置400,該裝置可以用於執行上述圖2和圖3所述的方法中終端的執行過程,其中,所述裝置400可以是終端或者安裝於所述終端上的裝置,圖4所示為本發明實施例提供的裝置400的結構示意圖,如圖4所示,該裝置400包括採集單元401、發送單元402、接收單元403和處理單元404,其中:

採集單元401,用於接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋;

發送單元402,用於將所述身份驗證請求發送至位於受信區域的後臺伺服器,所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果;

接收單元403,用於接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個挑戰指紋;

處理單元404,用於計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並向所述後臺伺服器發送所述第一不符合度矩陣,所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度,使所述後臺伺服器基於所述第一不符合度矩陣返回所述測試指紋對應的身份驗證結果。

可選的,所述隨機生成的n個挑戰指紋為所述後臺伺服器從指紋資料庫中隨機選取的n個指紋。

可選的,所述處理單元404在計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣時,具體用於:

獲取所述測試指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點;

依次比對每個挑戰指紋的脊線中的m個細節點與所述測試指紋的脊線中的m個細節點,得到每個挑戰指紋的脊線中的m個細節點中每個細節點對應的脊線匹配度;

針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並

基於得到的每個挑戰指紋的挑戰值形成所述第一不符合度矩陣。

本發明實施例上述涉及的裝置400,可以是獨立的部件,也可以是集成於其他部件中。

需要說明的是,本發明實施例中的裝置400的各個單元的功能實現以及交互方式可以進一步參照相關方法實施例的描述,在此不再贅述。

請參見圖5,基於同一發明構思,本發明實施例還提供一種基於指紋識別的身份驗證設備500,該設備500可以用於執行上述圖2和圖3所述的方法中終端的功能,如圖5所示,設備500包括包括存儲器501、處理器502、接收器503和發射器504。執行本發明方案的程序代碼保存在存儲器501中,並由處理器502來控制執行。

存儲器501中存儲的程序用於指令處理器502執行基於指紋識別的身份驗證方法,包括:通過接收器503接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋;將所述身份驗證請求通過所述發射器504發送至位於受信區域的後臺伺服器,所述身份驗證請求用於獲取所述應用程式採集的測試指紋對應的身份驗證結果;通過所述接收器503接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個挑戰指紋;計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並向所述後臺伺服器發送所述第一不符合度矩陣,所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度,使所述後臺伺服器基於所述第一不符合度矩陣返回所述測試指紋對應的身份驗證結果。

所述後臺伺服器可以是圖6所示的裝置或者圖7所示的伺服器。

其中,處理器502可以是中央處理器(cpu)或特定應用集成電路(英文:application-specificintegratedcircuit,簡稱:asic),可以是一個或多個用於控制程序執行的集成電路,可以是使用現場可編程門陣列(fieldprogrammablegatearray,fpga)開發的硬體電路,可以是基帶晶片。

存儲器501的數量可以是一個或多個。存儲器501可以包括只讀存儲器(英文:read-onlymemory,簡稱:rom)、隨機存取存儲器(英文:randomaccessmemory,簡稱:ram)和磁碟存儲器。

接收器503可以用於與外部設備進行通信,例如接收器503可以與基站、後臺伺服器等設備進行通信。

發射器504,可以用於與外部設備進行通信,例如發射器504也可以與基站、後臺伺服器等設備進行通信。

發射器504和接收器503可以是同一實體模塊,例如可以是能夠實現收發功能的實體模塊,比如可以稱為收發器,或者發射器504和接收器503也可以是單獨的實體模塊。

存儲器501、發射器504和接收器503可以通過總線與處理器502相連接,或者也可以通過專門的連接線分別與處理器502連接。

通過對處理器502進行設計編程,將上面所示的方法所對應的代碼固化到晶片內,從而使晶片在運行時能夠執行圖2和圖3所示的方法。

可以理解的是,本實施例的設備500可用於實現上述方法實施例中涉及終端的所有功能,其具體實現過程可以參照上述方法實施例的相關描述,此處不再贅述。

基於上述實施例提供的基於指紋識別的身份驗證方法,本發明實施例提供一種基於指紋識別的身份驗證裝置600,該裝置可以用於執行上述圖2和圖3所述的方法中後臺伺服器的執行過程,圖6所示為本發明實施例提供的裝置600的結構示意圖,如圖6所示,該裝置600包括接收單元601、處理單元602、發送單元603,其中:

接收單元601,用於接收位於非受信區域的終端發送的針對應用程式採集的測試指紋進行身份驗證的身份驗證請求;

處理單元602,用於隨機生成包括n個挑戰指紋的挑戰指紋陣列;

發送單元603,用於向所述終端發送所述生成的挑戰指紋陣列;

所述接收單元601,還用於在接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;

所述處理單元602,還用於分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣;

基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;

基於每個參考指紋與所述測試指紋之間的匹配度,通過所述發送單元603向所述終端返回所述測試指紋對應的身份驗證結果。

可選的,所述處理單元602在隨機生成包括n個挑戰指紋的挑戰指紋陣列時,具體用於:

從指紋資料庫中隨機選取n個指紋,生成挑戰指紋陣列,所述指紋資料庫存儲在所述裝置中或存儲在所述裝置連接的其他設備中。

可選的,所述處理單元602在計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣時,具體用於:

獲取每個參考指紋的脊線中的m個細節點,以及所述挑戰指紋陣列中每個挑戰指紋的脊線中的m個細節點;

針對每一個參考指紋,依次比對每個挑戰指紋的脊線中的m個細節點與所述一個參考指紋的脊線中的m個細節點,得到每個挑戰指紋中m個細節點中的每個細節點對應的脊線匹配度;

針對每個挑戰指紋,將m個脊線匹配度加和求平均,得到每個挑戰指紋的挑戰值,並將每個挑戰指紋的挑戰值形成所述一個參考指紋的第二不符合度矩陣。

可選的,所述處理單元602在基於所述第一不符合度矩陣和每個參考指紋的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度時,符合下述公式要求:

其中,σ為任意一個參考指紋與測試指紋之間的匹配度,測試指紋與挑戰指紋陣列間的第一不符合度矩陣為[{ac1},{ac2},{ac3},...{acn}],所述任意一個參考指紋與挑戰指紋陣列間的第二不符合度矩陣為[{bc1},{bc2},{bc3},...{bcn}]。

可選的,所述處理單元602在基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果時,具體用於:

基於每個參考指紋與所述測試指紋之間的匹配度,判定參考指紋中是否存在目標參考指紋,所述目標參考指紋與所述測試指紋之間的匹配度小於預設閾值;

若存在目標參考指紋,則向所述終端返回所述測試指紋對應的身份驗證成功;

若不存在目標參考指紋,向所述終端返回所述測試指紋對應的身份驗證失敗。

本發明實施例上述涉及的裝置600,可以是獨立的部件,也可以集成於其他部件中。

需要說明的是,本發明實施例中的裝置600的各個單元的功能實現以及交互方式可以進一步參照相關方法實施例的描述,在此不再贅述。

請參見圖7,基於同一發明構思,本發明實施例還提供一種伺服器700,該伺服器700可以用於執行上述圖2和圖3所述的方法中後臺伺服器的操作,如圖7所示,伺服器700包括包括存儲器701、處理器702、接收器703和發射器704。執行本發明方案的程序代碼保存在存儲器701中,並由處理器702來控制執行。

存儲器701中存儲的程序用於指令處理器702執行基於指紋識別的身份驗證方法,包括:通過接收器703接收位於非受信區域的終端發送的針對應用程式採集的測試指紋進行身份驗證的身份驗證請求;隨機生成包括n個挑戰指紋的挑戰指紋陣列;通過所述發射器704向所述終端發送所述生成的挑戰指紋陣列;在通過接收器703接收到所述終端發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣;基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;基於每個參考指紋與所述測試指紋之間的匹配度,通過所述發射器704向所述終端返回所述測試指紋對應的身份驗證結果。

所述終端可以是圖4所示的裝置或者圖5所示的終端。

其中,處理器702可以是cpu或asic,可以是一個或多個用於控制程序執行的集成電路,可以是使用現場可編程門陣列fpga開發的硬體電路,可以是基帶晶片。

存儲器701的數量可以是一個或多個。存儲器701可以包括只讀存儲器rom、ram和磁碟存儲器。

接收器703和發射器704可以用於與外部設備進行通信,例如接收器703和發射器704可以與終端進行通信。

發射器704和接收器703可以是同一實體模塊,例如可以是能夠實現收發功能的實體模塊,比如可以稱為收發器,或者發射器704和接收器703也可以是單獨的實體模塊。

存儲器701、發射器704和接收器703可以通過總線與處理器702相連接,或者也可以通過專門的連接線分別與處理器702連接。

通過對處理器702進行設計編程,將上面所示的方法所對應的代碼固化到晶片內,從而使晶片在運行時能夠執行圖2和圖3中後臺伺服器的操作。

可以理解的是,本實施例的設備700可用於實現上述方法實施例中涉及後 臺伺服器的所有功能,其具體實現過程可以參照上述方法實施例的相關描述,此處不再贅述。

綜上所述,本發明實施例中,位於非受信區域的終端接收到應用程式發起的身份驗證請求後,獲取所述應用程式採集的測試指紋,並將所述身份驗證請求發送至位於受信區域上的後臺伺服器;接收所述後臺伺服器基於所述身份驗證請求反饋的挑戰指紋陣列,所述挑戰指紋陣列包括隨機生成的n個指紋;計算所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣,並將所述第一不符合度矩陣發送至所述後臺伺服器,所述第一不符合度矩陣用於描述所述測試指紋與所述挑戰指紋陣列之間的不匹配程度,所述後臺伺服器接收到所述終端計算並發送的所述測試指紋與所述挑戰指紋陣列間的第一不符合度矩陣後,獲取預存的參考指紋;分別計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣,並基於所述第一不符合度矩陣和針對每個參考指紋分別計算的第二不符合度矩陣,確定每個參考指紋與所述測試指紋之間的匹配度;基於每個參考指紋與所述測試指紋之間的匹配度,向所述終端返回所述測試指紋對應的身份驗證結果,這樣,當終端位於非受信區域,且需要進行使用者實名身份驗證的情況下,通過在終端採集測試指紋,藉助後臺伺服器生成的挑戰指紋陣列得到測試指紋與挑戰指紋陣列間的第一不符合度矩陣並發送給所述後臺伺服器,後臺伺服器計算每個參考指紋與所述挑戰指紋陣列間的第二不符合度矩陣,並通過判斷第一不符合度矩陣和第二不符合度矩陣的差異性,得到測試指紋對應的身份驗證結果,避免了終端採集的測試指紋的洩露風險,也避免了後臺伺服器中存儲的參考指紋的洩露風險,還能夠利用雲端資料庫存儲的參考指紋對使用者進行身份驗證,保證安全性的前提下,擴大指紋的身份驗證的應用範圍。

本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有計算機可讀程序代碼的計算機可用存儲介質上實施的電腦程式產品的 形式。

本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。

顯然,本領域的技術人員可以對本發明實施例進行各種改動和變型而不脫離本發明實施例的精神和範圍。這樣,倘若本發明實施例的這些修改和變型屬於本發明權利要求及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀