專利名稱:一種指紋細節(jié)點特征模板的保護方法
技術(shù)領(lǐng)域:
本發(fā)明屬于安全生物特征識別和密碼技術(shù)領(lǐng)域,特別涉及到生物特征模板的保護
以及生物特征和密鑰的綁定。
背景技術(shù):
生物特征即一個人固有的生理或行為特征,比如指紋、虹膜、手寫簽名等。相比較傳統(tǒng)認證和識別系統(tǒng)中的口令、令牌等認證信息,生物特征具有不會遺忘、不會丟失等優(yōu)點,以生物特征作為識別和認證手段可以同時提供較高的用戶易用性和較高的安全性,因此得到越來越廣泛的應用。尤其是終端設(shè)備造價低廉的指紋特征已經(jīng)廣泛應用于各種身份識別和認證系統(tǒng),例如門禁、考勤等。 然而生物特征的廣泛應用也帶來了對個人隱私泄漏和其他一些安全性的擔心。同一個生物特征模板應用于不同的系統(tǒng)時,可以通過比對生物特征模板找到共同的注冊用戶,從而威脅到用戶的個人隱私安全。攻擊者從生物特征認證系統(tǒng)的數(shù)據(jù)庫中提取用戶的特征模板,用以制作假生物體,達到冒名頂替的目的。因此生物特征模板的保護開始受到人們的關(guān)注。 由于指紋是目前最常用的生物特征,而由細節(jié)點組成的指紋特征因為其識別率最好成為最常見的指紋特征表示形式,所以對以細節(jié)點集合表示的指紋特征的保護技術(shù)更加受到人們關(guān)注。 生物特征模板保護的難點是生物特征具有的模糊性,即由于種種不確定性,同一個生物特征的不同輸入之間總是會存在的差距。對于由細節(jié)點組成的指紋特征,其模糊性更加復雜,兩個指紋特征之間的差距不能用單一的歐氏距離或集合差距離表示,而是兩種距離的結(jié)合。兩個指紋特征模板被認為是匹配的,當且僅當兩個細節(jié)點集合中歐氏距離小于等于S的元素個數(shù)至少有A個。目前的解決辦法是分步處理。第一步先解決歐氏距離的差距(又稱白噪聲),第二步再解決集合差距離的差距(又稱替換噪聲)。任何一個解決白噪聲的方法和一個解決替換噪聲的方法結(jié)合使用,都可以產(chǎn)生新的適用于細節(jié)點指紋特征的密鑰綁定方案。 在解決替換噪聲方面,目前已經(jīng)有比較好的算法,例如Juels和Sudan根據(jù)Clancyet al.的思想提出的模糊保險箱算法中廣泛采用的Shamir密鑰分享算法、Reed-Solomon糾錯碼的編碼和解碼算法。 在解決白噪聲方面,目前僅見有模糊保險箱方法,該方法把真實細節(jié)點和很多隨機選取的偽細節(jié)點混合在一起,作為加密指紋模板。這樣生成的加密指紋模板被發(fā)現(xiàn)不能提供足夠的安全性。首先Dodis et al.從理論上分析發(fā)現(xiàn)模糊保險箱算法泄漏的信息量比較大;其次Scheirer和Boult針對該算法提出三種攻擊方法重用攻擊、已知密鑰攻擊、混合替換攻擊;最后Kholmatov和Yanikoglu通過實驗證實了這些攻擊的有效性。
為了修補模糊保險箱的安全漏洞,有很多改進技術(shù)是將模糊保險箱和其他認證方法結(jié)合起來組成多因子認證系統(tǒng),例如Nandakumar et al.提出將口令和模糊保險箱結(jié)合。
3但是這樣模糊保險箱的安全性就很大程度上取決于其他認證方法的安全性,失去了生物特征認證系統(tǒng)的優(yōu)勢了。還有些方法著力于偽細節(jié)點的隨機選取方法,如Chang和Li的算法,但這些算法增加了很多對計算時間和存儲空間等資源的要求,降低了模糊保險箱的實用性。 綜合以上分析研究我們發(fā)現(xiàn),目前現(xiàn)有的指紋細節(jié)點特征模板的保護算法安全性低,并且效率也低。
發(fā)明內(nèi)容
為了解決目前現(xiàn)有的指紋細節(jié)點特征模板的保護算法安全性低,并且效率也低的
問題,本發(fā)明的目的是針對生物特征模板保護的要求,特別對指紋細節(jié)點特征模板,提出一種具有一定的安全性、準確性,同時計算效率比較高的具有實用價值的指紋細節(jié)點特征模板的保護方法。 為達成所述目的,本發(fā)明提出一種指紋細節(jié)點特征模板的保護方法,將本發(fā)明融入現(xiàn)有的指紋認證/識別方法的實現(xiàn)步驟如下 步驟1 :對指紋圖像進行預處理,提取細節(jié)點信息以及具有奇異點、中心點的指紋圖像全局信息,構(gòu)成由細節(jié)點組成的注冊指紋特征模板; 步驟2 :將注冊指紋特征模板中的每個細節(jié)點映射到某個碼字上,計算該細節(jié)點和相應碼字的編碼差值;選取一個隨機串,分別和每個細節(jié)點信息合并在一起,應用具有防碰撞、防篡改功能的密碼算法,得到每個細節(jié)點的哈希摘要; 步驟3 :將所述全局信息、編碼差值以及哈希摘要合在一起,構(gòu)成一個保護原始細節(jié)點信息的加密指紋特征模板; 步驟4 :輸入查詢指紋特征圖像時,根據(jù)加密指紋特征模板進行匹配;具體地,按照指紋圖像預處理和提取算法得到查詢指紋特征模板、按照編碼算法將查詢指紋特征模板中的細節(jié)點映射到某個碼字上,得到每個細節(jié)點的編碼,借助加密指紋特征模板中的編碼差值、哈希摘要,將注冊指紋特征模板中的若干細節(jié)點原值恢復出來; 步驟5 :將恢復成功的細節(jié)點個數(shù)與匹配閾值(即判定為匹配時所需細節(jié)點的最少個數(shù))作比較,做出匹配判斷。 所述加密指紋特征模板包含細節(jié)點位置的編碼差值。加密指紋特征模板包含對每個注冊細節(jié)點的哈希摘要。 —種如上所述的指紋細節(jié)點特征模板保護方法,其可以和任何基于集合差的方法結(jié)合,擴展為基于指紋細節(jié)點特征的密鑰綁定方案來消除指紋白噪聲。 本發(fā)明的有益效果該模板保護方法和目前同類方法比較,具有保持一定安全性、準確性的同時計算量少的優(yōu)點。本發(fā)明對原始指紋模板信息泄露少、計算效率比較高,是一種實用性很強的指紋特征模板的保護方法,適用于其特征細節(jié)點或細節(jié)點群組的指紋模板。
圖1是本發(fā)明指紋細節(jié)點特征模板保護的整體流程 圖2是本發(fā)明圖1中加密(指紋注冊階段)的框 圖3是本發(fā)明圖1中解密(指紋查詢階段)的框具體實施例方式
下面結(jié)合附圖詳細說明本發(fā)明技術(shù)方案中所涉及的各個細節(jié)問題。說明中所指的全局信息是一般基于指紋細節(jié)點的認證系統(tǒng)中所使用的指紋模板中除細節(jié)點位置、方向以外的具有普適性的信息。 請參閱圖1,本發(fā)明指紋細節(jié)點特征模板保護的整體流程圖。采集到注冊指紋圖像后,經(jīng)過加密,生成加密指紋特征模板;將加密指紋特征模板和查詢指紋圖像輸入到解密模塊,被解密得到注冊指紋圖像的部分細節(jié)點;將恢復成功的細節(jié)點個數(shù)與匹配閾值作比較,做出匹配判斷。 請參閱圖2示出圖1中的加密模塊。輸入注冊指紋圖像后,經(jīng)過預處理,提取細節(jié)點信息和包括奇異點、中心點的全局信息。對每個細節(jié)點進行編碼。如果每個細節(jié)點由多個分量組成,可將各個分量劃分到不同的組,對每組應用不同的碼書進行編碼,將鄰近的分量值映射到同一個碼字。碼書是所有碼字的集合。計算分量值和相應碼字的差值。選擇一個具有防碰撞、防篡改功能的密碼算法(如MD5、SHA等密碼哈希函數(shù))和一個隨機串,應用到每個細節(jié)點信息上,生成摘要。全局信息、每個細節(jié)點的編碼差值和編碼方法的描述、每個細節(jié)點的摘要,共同構(gòu)成了加密指紋特征模板。 該加密指紋特征模板的生成過程還可以和密鑰綁定方法結(jié)合,將事先選擇的密鑰嵌入到加密指紋特征模板中(圖2的虛線部分)。 請參閱圖3示出圖1中的解密框圖。給定一個加密指紋特征模板,輸入查詢指紋圖像后,經(jīng)過預處理,在加密指紋特征模板中的全局信息的幫助下,提取出查詢指紋的細節(jié)點信息,按照加密時的做法,對每個細節(jié)點進行編碼。利用加密指紋特征模板中的編碼差值和細節(jié)點摘要信息,將注冊指紋圖像的部分細節(jié)點恢復出來?;謴偷慕Y(jié)果是否正確可通過摘要信息進行驗證。根據(jù)恢復成功的細節(jié)點個數(shù)做出匹配判斷。 如果加密過程中綁定了密鑰,該細節(jié)點恢復過程還可以和相應的密鑰恢復方法結(jié)合,恢復出事先嵌入的密鑰(圖3的虛線部分)。 下面以直角坐標系內(nèi)的位置和方向作為細節(jié)點信息的指紋特征為實施例。應指出
的是,所描述的實施例僅旨在便于對本發(fā)明的理解,而對其不起任何限定作用。 為了實現(xiàn)本發(fā)明方法需要的硬件最低配置為在P41.0G CPU,512M內(nèi)存的計算
機;最低分辨率為400dpi的指紋采集儀;在此配置水平的硬件上,采用0++語言編程實現(xiàn)
本方法,可以達到實時處理,其他方式不再贅述。 本發(fā)明方案中要求的具有防碰撞、防篡改功能的密碼算法在實施例中選擇為密碼哈希函數(shù)。 我們以基于指紋特征的認證系統(tǒng)為例。分別描述認證系統(tǒng)中的注冊、驗證兩個階段。 指紋注冊階段。假設(shè)用戶的指紋特征T二 Kx[i], y[i], e[i]),i = l,…,n.ginfoh其中(x[i], y[i])是細節(jié)點在直角坐標系內(nèi)的位置,9 [i]是細節(jié)點的方向,更具體地是細節(jié)點所在脊線切線方向。x[i]的取值范圍為[O,幻,y[i]的取值范圍為[O,Y],9 [i]的取值范圍為[-180, 180]。 ginfo是除細節(jié)點以外的包括奇異點、中心點的全局信息,可能幫助更精確地和查詢指紋模板匹配。 構(gòu)造三個碼書,分別是(;={k Ax, k = O,l,…,X/Ax}, Cy = {k Ay, k = 0,1,…,Y/Ayhce = {k* A e,k =-180/A e,…,180/AJ。入x,入y,入e的選擇原則為保證編碼的唯一性。如果兩個細節(jié)點之間,各分量的距離分別小于Sx, Sy, Se,即被認為是匹配的,那么就取區(qū)間滿足Ax>2Sx, Ay>2Sy, A e >2S e。 為每個細節(jié)點的每個分量選擇相應碼書中的碼字,使得該碼字和該分量的差值絕對值在所有相應碼書中是最小的。即如下進行編碼 C(x[i]) = k[i]入x, lx[i]-C(x[i]) I = min{|x[i]_c| , c g Cx},
C(y[i]) = l[i]入y, ly[i]-C(y[i]) | = min {| y [i] _c | , c g Cy}, c( e [i]) = t[i]入e, I e [i]-c( e [i]) | = min{| e [i]-c| , c g c e}。 計算各分量和碼字的差值,即
x_dist[i] = x[i]-C(x[i]),
y—dist[i] = y[i]-C(y[i]),e_dist[i] = e [i]-c(e [i])。
其中k[i]、l[i]、t[i]分別為對應于細節(jié)點每個分量x[i]、y[i]、 e [i]的相應碼
書中碼字的索引值。 再選擇一定長度的隨機串r,計算
h[i] = Hash(r, x[i], y[i], e[i]),
其中h[i]為生成的細節(jié)點信息摘要。 r的長度可配合所選用的Hash函數(shù)。例如,如果使用md5算法,因為md5的輸入塊是512比特,那么可取r的長度為使得(r,x[i],y[i], e [i])的總長度是512比特。
輸出加密指紋特征模板為干={r,(x—dist[l],y_dist[l],
dist[l], h[l]),..., (x_dist[n], y—dist[n], dist[n], h[n]),ginfo, cinfo}。其中cinfo是碼書的描述信息,例如區(qū)間大小。 為增加蠻力攻擊者破解加密指紋特征的難度,可以考慮加入一些全局信息,例如,選擇注冊指紋圖像中的一個奇異點(x[O], y[O], e [o]),同細節(jié)點一樣計算各分量與碼字之間的差值,得到x—dist
,y—dist
, e_dist
。 Hash輸出的計算可以改為h[i]=Hash(r,x[i],y[i], e [i] , x
, y
, e [O])。輸出的加密指紋特征模板改為干'二(r,(x—dist[O],y_dist
, 6>_dist
), (x—dist [1] , y一dist [1] , dist[l], h[1]),…,(x_dist[n], y—dist[n], 6>_dist[n], h[n]), ginfo, cinfo}。需要注意的是,如果奇異點被用來生成加密指紋模板,那么該奇異點就不能夠再以全局信息的形式出現(xiàn)在最終的加密指紋模板中。 驗證階段。采集到查詢指紋的圖像后,利用存儲模板干里的全局信息ginfo幫助提取出查詢指紋的特征T' = Kx' [i],y' [i],e' [i]),i = 1,…,ml。將集合S初始化為空。 和指紋注冊階段相似,根據(jù)碼書描述信息cinfo,為T'中的各元素計算碼字,分別為(C(x' [l]),C(y' [l]),C(e' [1])),…,(C(x' [m]),C(y' [m]),C(e' [m]))。
對干中的每個(x_dist[i], y_dist[i], e _dist [i] , h [i]) , i = 1, , n,分別和每個(C(x' [j]),C(y' [j]),C(e' [j]))(j = l,…,m)相加,得
x[i] [j] = x—dist[i]+C(x' [j]),
y[i] [j] = y—dist[i]+C(y' [j]),e [i][j] = e_dist[i]+c(e ' [j])。然后驗證Hash(r, x[i][j], y[i][j], e [i] [j]) = h[i]是否成立。如果等式成
立,則將(x[i][j],y[i][j], e [i][j])加入到集合s中。 如果T'和用于生成加密指紋特征模板干的細節(jié)點集合很接近,應該能夠恢復出
其中不少細節(jié)點。當恢復出的細節(jié)點個數(shù),即集合s中的元素個數(shù)至少等于預先設(shè)定的閾
值th,就認為該查詢指紋和干是匹配的。 本發(fā)明的方法可以和任何解決替換噪聲的算法結(jié)合,構(gòu)成密鑰綁定方案。例如將上述方法和模糊保險箱方案中恢復密鑰的算法結(jié)合,將加密指紋特征模板改為干〃 ={r, (x一dist[l], y_dist[l], 0—dist[l], h[l],F(xiàn)(T016(x[1], y[l], e[l]))),"., (x—dist[n],y一dist[n], dist[n],h[n], F(T016(x[n],y[n], S[n]))), ginfo, cinfo}。其中F是模糊保險箱使用的th-1次多項式函數(shù),T016將輸入縮短成16比特,以適應模糊保險箱算法實現(xiàn)的要求。
這樣按如上所述恢復出至少th個細節(jié)點后,就能夠?qū)⑹孪冉壎ㄔ贔中的密鑰恢復出來。 準確性、安全性和效率比較 為測試上述實施例的準確性,我們選擇公開指紋數(shù)據(jù)庫FVC2002DB2A中100個手指圖像中的第1、2枚圖象計算實施例的真匹配率GAR (Genuine Acc印tance Rate)和假匹配率FAR (False Acc印tance Rate),其中第1個用于注冊,第2個用于查詢。閾值th二9,入x = 35,入7 = 35,入e = 90時,GAR = 73%, FAR = 0. 23%,雖然和Nandakumar et. al.的結(jié)果GAR = 91%, FAR = 0. 01 %相比尚有差距,但是仍然具有一定的準確性。 在安全性上,對模糊保險箱進行窮舉攻擊需要的計算量是真正用戶的CM。th/c;th倍,上述實施例中窮舉攻擊需要的計算量是真正用戶的|cx| |Cy| |ce |/(咖)倍。當選
擇適當?shù)募毠?jié)點特征,例如由多個臨近細節(jié)點組合的基于方向場描述信息的特征,本發(fā)明的窮舉攻擊計算量可以達到和模糊保險箱相當?shù)乃健?在計算效率上,該實施例的查詢階段,對于和注冊指紋對應的查詢指紋,計算量是mn,遠遠小于模糊保險箱的實現(xiàn)中相應的計算量Cmth。 以上所述,僅為本發(fā)明中的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可理解想到的變換或替換,都應涵蓋在本發(fā)明的包含范圍之內(nèi)。因此,本發(fā)明的保護范圍應該以權(quán)利要求書的保護范圍為準。
權(quán)利要求
一種指紋細節(jié)點特征模板的保護方法,其特征在于,包括步驟步驟1對指紋圖像進行預處理,提取細節(jié)點信息以及包括奇異點、中心點的指紋圖像全局信息,構(gòu)成由細節(jié)點組成的注冊指紋特征模板;步驟2將注冊指紋特征模板中的每個細節(jié)點映射到某個碼字上,計算細節(jié)點和相應碼字的編碼差值;選取一個隨機串分別和每個細節(jié)點信息合并在一起,應用具有防碰撞、防篡改功能的密碼算法,得到每個細節(jié)點的哈希摘要;步驟3將全局信息、編碼差值以及哈希摘要依次排列,構(gòu)成一個保護原始細節(jié)點信息的加密指紋特征模板;步驟4輸入查詢指紋特征圖像時,根據(jù)加密指紋特征模板進行匹配;具體地,按照指紋圖像預處理和提取算法得到查詢指紋特征模板、按照編碼算法將查詢指紋特征模板中的細節(jié)點映射到某個碼字上,得到每個細節(jié)點的編碼,借助加密指紋特征模板中的編碼差值、哈希摘要,將注冊指紋特征模板中的若干細節(jié)點原值恢復出來;步驟5將恢復成功的細節(jié)點個數(shù)與匹配閾值作比較,做出匹配判斷。
2. 根據(jù)權(quán)利要求1所述指紋細節(jié)點特征模板保護方法,其特征在于所述加密指紋特 征模板包含細節(jié)點位置的編碼差值。
3. 根據(jù)權(quán)利要求1所述指紋細節(jié)點特征模板保護方法,其特征在于加密指紋特征模 板包含對每個注冊細節(jié)點的哈希摘要。
4. 一種如權(quán)利要求1所述指紋細節(jié)點特征模板保護方法,其可以和任何基于集合差的 方法結(jié)合,擴展為基于指紋細節(jié)點特征的密鑰綁定方案來消除指紋白噪聲。
全文摘要
本發(fā)明為一種保護指紋細節(jié)點特征模板的保護方法,包括對指紋圖像進行預處理,生成由細節(jié)點組成的注冊指紋特征模板,將該注冊指紋特征模板進行編碼,生成一個保護原始細節(jié)點信息的加密指紋模板;給定如上所述生成的加密指紋模板,在輸入一個按如上所述方法生成的由細節(jié)點組成的查詢指紋特征后,對這兩個指紋模板進行匹配。該指紋細節(jié)點特征模板保護方法可以繼續(xù)用來和隨機密鑰綁定在一起,形成指紋特征和密鑰綁定的方法。本發(fā)明對原始注冊指紋模板的細節(jié)點信息泄露少、計算量少,是一種實用性很強的指紋特征模板的保護方法,適用于其特征為細節(jié)點或細節(jié)點群組的指紋模板。
文檔編號G06K9/46GK101751576SQ20091009195
公開日2010年6月23日 申請日期2009年9月2日 優(yōu)先權(quán)日2009年9月2日
發(fā)明者周蘇靜, 楊鑫, 汪瑞芳, 田捷 申請人:中國科學院自動化研究所