專利名稱:使用生物測定數據和密值提取碼的密鑰生成的制作方法
技術領域:
本發明涉及安全系統中所使用的密鑰的生成,具體涉及從物理標識符生成密鑰。
人們對更可靠且便捷的安全系統的需求在持續增長,而且對使用生物測定標識符有興趣,比如指紋、虹膜圖案、語音數據和步態數據。因為生物測定標識符不會像計算機密碼那樣丟失或遺忘,生物測定學有可能為用戶提供更高的安全性和更好的便捷性。
下面參考
圖1和圖2描述使用從物理/生物測定數據得到對稱加密密鑰的系統。
考慮如下情況,用戶艾麗思希望通過私有信道與另一個用戶進行通信,如與她的銀行通信。艾麗思和銀行所使用的協議包括兩個階段登記(enrolment)階段和應用階段。
圖1示出了進行登記階段所需要的系統架構。在登記階段,認證機構(CA)從安全信道接收艾麗思的生物測定的測量結果Xn,并且從中得到密值(secret)S和加密密鑰F(S),以及一些幫助數據W。J.P.Linnartz和P.Tuyls在AVBPA2003中的“New Shielding Functionsto Enhance Privacy and Prevent Misuse of Biometric Templates”描述了這種從物理標識符得到密鑰的方法。幫助數據W和加密密鑰F(S)存儲在銀行的數據庫中。在應用階段,使用幫助數據W來允許終端從艾麗思的生物測定的有噪聲測量結果Yn得到同一加密密鑰F(S)。
在應用階段,在終端得到艾麗思的生物測定的有噪聲測量結果Yn。艾麗思將傳統的用戶標識數據輸入終端,如用戶名,用戶標識數據被發送到銀行。銀行使用該數據訪問其數據庫,獲得與艾麗思相關的幫助數據W。在鑒別信道上將幫助數據W發送到艾麗思的終端。幫助數據W和艾麗思的生物測定的有噪聲測量結果Yn一同被用來獲得密鑰F(V)。然后,F(S)和F(V)分別用來加密從銀行到艾麗思和從艾麗思到銀行進行的通信。因為系統使用對稱加密密鑰,為了使加密通信可以被解密,F(V)必需和F(S)相等。
和傳統系統相比,該系統的便捷和安全在于艾麗思無需存儲其加密密鑰F(V),也無需存儲幫助數據這一事實。在應用階段,艾麗思只需要提供其生物測定標識符的測量結果。
然而,艾麗思可能需要使用她的生物測定數據與若干方建立安全通信,例如,與銀行和另一個用戶查理。因此,艾麗思必需從其生物測定數據得到多個加密密鑰,因為期望查理不能監聽艾麗思和銀行間的通信。此外,期望可以避免多方使用他們各自的加密密鑰來合作對艾麗思和銀行間的安全信道進行攻擊。
這樣的系統有若干特點。第一,系統應該是魯棒的,這意味著,給定用戶生物測定Xn的有噪聲測量結果Yn,應該可以在應用階段得到正確的密鑰,即,F(V)≡F(S)。
第二,銀行數據庫中的信息(F(S)和W)不應透露任何關于Xn的敏感信息。
第三,在公共鑒別信道上發送的幫助數據W不應該給出關于加密密鑰F(S)的任何信息。
第四,給定固定的生物測定Xn,應該可以得到不同的F(S)和W對。
接下來,將不同的密鑰和幫助數據對命名為F(Si)和Wi,其中i=1,2,...,K,其中K>>1。給定幫助數據Wi和所有其他的密鑰/幫助數據對,F(S1),W1;...;F(Si-1),Wi-1;F(Si+1),Wi+1;...;F(Sk),Wk,密鑰F(Si)的保密性應該得到保證。
關于系統的安全性,進行如下假設。第一,進行登記階段的認證機構(CA)是可信的。
第二,在應用階段,幫助數據W從銀行到艾麗思的傳送在公共鑒別信道進行。
第三,與艾麗思通信的若干方不可信。例如,查理可能使用他知道的F(SC)和WC來攻擊艾麗思和銀行間的安全信道,即,他試圖得到F(SB)。
第四,若干方可以合作對艾麗思和另一個用戶的安全信道進行攻擊。
第五,不與艾麗思共享安全信道的攻擊者可以從與艾麗思共享安全信道的一方或多方偷得加密密鑰。具體而言,其可以得到F(Si)、Wi。
第六,艾麗思在應用階段使用的終端中的傳感器和處理設備是防篡改的。
最后,攻擊者不能獲得潛在的生物測定結果。唯一的信息來自數據庫中的信息。
生物測定模板是經過處理的測量數據,即,特征矢量,并且作為隨機過程的實現進行模擬。不同個人的生物測定是對于所有個人都相等的隨機過程的不相關實現。對生物測定結果的處理得到可以用具有已知分布Px的n個獨立相似分布(i.i.d)的隨機變量描述的模板。某個個人的生物測定序列Xn等于xn的概率如下定義Pr{Xn=xn}=Πi=1nPx(xi)---(1)]]>其中,Px是每個分量的概率分布,定義在符號集(alphabet)χ上,χ可以是離散集κ(對于χ=κ,序列Xn由概率密度函數fXn(Xn)=ΠifX(Xi)]]>表征)。
在應用階段進行的有噪聲測量用通過無記憶噪聲信道的生物測定觀察結果來模擬。對于生物測定xn的測量結果YnPr{Yn=yn|Xn=xn}=Πi=1nPY|X(yi|xi)---(2)]]>其中PY|X描述輸入為符號集χ、輸出為符號集γ的無記憶信道。由認證機構得到的生物測定模板是無噪聲的。
為了處理有噪聲測量結果,可以使用密值提取碼(SEC)。Pim Tuyls和Jasper Goseling的“Capacity and Examples of Template-ProtectingBiometric Authentication Systems”(可從“eprint.iacr.org/2004/106.pdf”得到)描述了密值提取碼,下文同樣對其進行描述。
S表示密值集,χ和γ分別表示代表有噪聲測量結果的信道的輸入和輸出符號集。
假定n,∈>0。定義在χnxγn上的(n,|S|,∈)密值提取碼C是編碼和解碼區域(region)對的有序集C={(εi,Di)|i=1,2,...,|S|}(3)其中εiχn,Diγn,這樣εi∩εj=,Di∩Dj=,∪iDi=γn---(4)]]>對于i,j=1,2,...,|S|,i≠j,而且Pyn|xn(Di|xin)≥1-∈---(5)]]>對于所有xin∈εi和i=1,2,...,|S|。
密值提取碼提供通過離散化將(可能連續的)變量編碼-解碼成有限字符集S={1,2,...,|S|}的方法。等式(4)的條件表示可以進行非模糊編碼和解碼,等式(5)的條件表示誤差概率小。
如果集εi的基數集為1,SEC是普通的誤差糾正碼。
為了從密值提取碼中確定加密密鑰,進行如下定義·χn和γn,分別是在登記階段和應用階段生物測定的測量結果字符集·單向哈希方程F 其中S={1,2,...,|S|},κ={1,2,...,|=|κ|}。S和κ的大小足夠大,所以,給定F(S),從計算上不可能得到S·對于,xn∈χn,定義Φxn⊆C·]]>如果xn∈∪iεi,密值提取碼C={(ϵi,Di)}||S|i=1∈Φxn]]>·在χnxγn上的密值提取碼(n,|S|,∈)的有限集合C,其中∈>0。在登記階段使用下面過程1、測量艾麗思的生物測定χn。
2、從Φxn中任意選取密值提取碼C。幫助數據W定義為該密值提取碼C的索引。如果 從C中隨機選取密值提取碼。
3、給定C={(εi,Di)}||S|i=1,密值S定義為如果xn∈εi,S=i。對于 隨機選擇S。
4、F(S)和W由銀行提供。
在應用階段使用下面過程1、銀行通過公共鑒別信道將幫助數據W發送給艾麗思。
2、艾麗思獲得她的生物測定測量結果Yn。
3、如果Yn∈DI,使用密值提取碼C(W)獲得密值V=i,從而得到密鑰F(V)。
4、艾麗思和銀行分別基于密鑰F(V)和F(S)使用對稱加密系統。
如上所述,如果艾麗思使用一個加密系統和不同方通信,期望她不將同一密鑰用于多方。
如果C是SEC的集合,xn∈χn是艾麗思的生物測定模板,那么,如果在該集合中只有一個密值提取碼可用于特定的生物測定結果(例如,|Φxn|=1]]>),那么,顯然,只能從xn得到一個加密密鑰。|Φxn|很小而有很多xn∈xn的集合C不能讓用戶用來可靠地提取多個加密密鑰。
因此,本發明的目的是提供密值提取碼的擴展集,用于從特定生物測定標識符提取加密密鑰。
根據本發明的第一方面,提供一種生成用來加密第一和第二終端間的通信的密鑰的方法,該方法包括獲得用戶的物理標識符特征的測量結果;使用從碼集合中選取的碼從物理標識符提取密鑰,所述碼集合中的每個碼定義特征值集到密鑰集的有序映射;其中所述碼集合包括至少一個碼,有序映射是集合中一個其他碼的有序映射的置換。
下面參考附圖通過例子描述本發明,其中圖1示出了進行用戶登記過程的系統;圖2示出了進行用戶應用過程的系統;圖3的流程圖示出根據本發明生成加密密鑰的方法;以及圖4的流程圖示出根據本發明擴展密值提取碼集的方法。
下面,參考使用密值提取碼和生物測定標識符描述本發明。然而,本領域的技術人員應該理解,本發明可用于使用其他方法從任何類型的物理標識符獲得密鑰的系統。
如上所述,如果在集合中只有一個密值提取碼可用于特定的生物測定結果(即,如果|Φxn|=1]]>),那么,只能從xn得到一個加密密鑰。密值提取碼|Φxn|的數目很小而有很多xn∈xn的集合C不能用來可靠地提取多個加密密鑰。
因此,本發明提供一種生成用來加密第一和第二終端間的通信的密鑰的方法,其中,用于密鑰提取的SEC集合得到擴展。具體而言,假定對于所有xn∈xn而言,|Φxn|=1·]]>根據本發明的方法向C中加入SEC,所以對于所有xn∈xn而言,|Φxn|>1·]]>在本發明的優選實施例中,對于所有xn∈xn而言,本方法實現了|Φxn|=|S|·]]>在本發明的優選實施例中,通過增加現有密值提取碼的置換而擴展密值提取碼集合。
具體而言,密值提取碼是編碼/解碼區域對的有序集。即,密值提取碼將物理標識符特征值集和密鑰集進行相關。密值提取碼中值集和密鑰集的排序意味著將“區域”(區域是物理標識符特征值的特定集)映射到密鑰。本發明通過在集合中增加和原始密值提取碼具有相同“區域”但是映射到不同密鑰的密值提取碼來擴展該集合。
圖3的流程圖示出根據本發明擴展密值提取碼集合。
在步驟102,定義密值提取碼的集合。該集合可以包括一個或多個密值提取碼。每個密值提取碼定義物理標識符特征值集和密鑰集間的映射。即,基于特征的測量值,將該測量結果分配到一個或多個區域。區域是這樣的,一個區域內的所有測量結果彼此類似,或者每個區域包括不同的測量結果。給定所分配的區域,選定的密值提取碼定義可用密鑰集中的特定密鑰。
在步驟104,通過置換物理標識符特征值集和密鑰集間的映射來擴展密值提取碼集合。在本發明的一個優選實施例中,置換是循環置換,下文對此進行詳細描述。在本發明的其他實施例中,置換是非循環置換。
圖4的流程圖示出使用根據本發明的密值提取碼的擴展集合生成用于加密第一和第二終端間的通信的加密密鑰。本方法可用于登記階段和應用階段。
在步驟110,對用戶物理標識符的特征進行測量。
如上所述,在應用階段進行該測量時,該測量是有噪聲的,這意味著該測量和登記階段由認證機構進行的測量不會完全匹配。
在步驟112,從碼集合中選擇密值提取碼。根據上述的本發明,集合中至少一個碼具有物理標識符特征值和密鑰集間的映射,該碼是集合中一個其他碼的有序映射的循環置換。
在登記階段,即,在用戶第一次確定用于加密和另一個特定用戶的通信的密鑰時,認證機構從集合中隨機選擇一個密值提取碼。在應用階段,該用戶希望與另一個特定用戶通信,第一終端使用登記階段認證機構生成的幫助數據選擇適當的密值提取碼。幫助數據由認證機構產生,存儲在第二終端的存儲器內。
在步驟114,所選擇的密值提取碼用于從物理標識符特征的測量結果中提取密值。通常使用單向函數來從提取的密鑰中生成加密密鑰。在登記階段,認證機構將加密密鑰發送到第二終端,第二終端將加密密鑰存儲在存儲器中。
在應用階段,使用生成的加密密鑰來對要發送到第二終端的通信進行加密,并對從第二終端接收的通信進行解密。
如上所述,使用置換過程來從第一密值提取碼生成另外的密值提取碼。本發明使用的一個置換例子中,令π為S={1,2,...,|S|)的置換,即,π 并且令C={(εi,Di)}||S|i=1∈C。新的密值提取碼Cπ定義為Cπ={(επ(i),Dπ(i))}||S|i=1(6)令 為S的置換的子集。密值提取碼的新集合C∏構建為C∏={CπC∈C,π∈∏)(7)在本發明的優選實施例中,使用如下的置換集構建。置換集是所有S循環移位的集,即 因而,在基礎密值提取碼中,第一區域測量映射到第一密鑰,第二區域測量映射到第二密鑰,依此類推;然后,在第一置換中,第一區域測量映射到第二密鑰,第二區域測量映射到第三密鑰,依此類推,直到最后區域的測量映射到第一密鑰。進而,在第二置換中,第一區域測量映射到第三密鑰,第二區域測量映射到第四密鑰,依此類推,知道最后區域映射到第二密鑰。因此,可用置換的數目等于區域和密鑰的數目。
擴展的碼集合Ccs定義為Ccs={CπC∈C,π∈∏cs}(9)該構建符合背景技術部分所述的要求。例如,令xn∈χn,這樣給定密值提取碼的原始集合C,Φxn={C}·]]>不施加限制,假定xn,C→F(S) (10)對于新的集合Ccs,定義xn,Cπk→F(Sk) (11)根據等式(8)和(9)得到F(Sk)=F(S+k(mod|S|)) (12)背景部分的要求4形成為F,F(S),k→F(S+k(mod|S|))(13)給定對單向函數F的完整描述、F(S)的值(S未知)和k∈{1,2,...,|S|},攻擊者不能得到F(S+k(mod|S|))的值。
等式13的要求對單向函數F施加了要求。例如,F不能是同態的,即,F(α+β)=F(α)F(β),否則攻擊者可以高效地計算F(S)。
不容易受到上述攻擊的單向函數包括,例如SHA-1,或者從分組密碼得到的函數。
如果EK是使用固定公知密鑰K的分組密碼(例如LOMBOK或者DES),單向函數F可以構建成F(S)=EK(S)S (14)最后,要注意,單向函數F要滿足的唯一要求是單向性(或者抗原象(pre-image resistance))。單向性保證,給定F(S),攻擊者不能得到值V(可能等于S),因而不能得到F(V)=F(S)。此外,不需要抗碰撞(collision resistance)。
應該理解,詞語“包含”不排除其它部件或步驟,“一個”不排除多個數量,單個處理器或其它單元可以完成在權利要求中描述的多種裝置的功能。此外,權利要求中的參考標號不應理解為限制權利要求的范圍。
權利要求
1.一種生成用來加密第一和第二終端間的通信的密鑰的方法,該方法包括獲得用戶的物理標識符特征的測量結果;以及使用從碼集合中選取的碼從所述物理標識符提取密鑰,所述集合中的每個碼定義所述特征值集到密鑰集的有序映射;其中所述碼集合包括至少一個碼,所述有序映射是所述集合中一個其他碼的所述有序映射的置換。
2.根據權利要求1的方法,其中所述置換是循環置換。
3.根據權利要求1的方法,其中所述置換是非循環置換。
4.根據權利要求1、2或3的方法,所述方法進一步包括執行所述提取密鑰的單向函數。
5.根據前述任何一項權利要求的方法,其中所述第一終端是認證機構的一部分。
6.根據權利要求5的方法,其中所述方法在所述第一終端包括從所述集合中隨機選擇所述碼。
7.根據權利要求5或6的方法,其中所述方法在所述第一終端進一步包括得到用于標識從所述物理標識符特征的所述測量結果提取所述密鑰所使用的所述碼的幫助數據。
8.根據權利要求7的方法,所述方法進一步包括將所述幫助數據和所述提取的密鑰存儲在所述第二終端的存儲器中。
9.根據權利要求1、2、3或4的方法,其中所述第一終端是用戶終端,基于所述第二終端提供給所述第一終端的幫助數據從所述碼集合中選取所述碼。
10.根據前述任何一項權利要求的方法,其中所述物理標識符是生物測定標識符。
全文摘要
提供一種生成用來加密第一和第二終端間的通信的密鑰的方法,該方法包括獲得用戶的物理標識符特征的測量結果;使用從碼集合中選取的碼從物理標識符提取密鑰,所述碼集合中的每個碼定義特征值集到密鑰集的有序映射;其中所述碼集合包括至少一個碼,有序映射是集合中其他碼中一個的有序映射的置換。
文檔編號G06K9/00GK101091348SQ200580045042
公開日2007年12月19日 申請日期2005年12月22日 優先權日2004年12月28日
發明者P·T·迪爾斯, J·格色靈 申請人:皇家飛利浦電子股份有限公司