前不久,全球生物特征數(shù)據(jù)大范圍泄露,涉及到83個(gè)國(guó)家以及2700多個(gè)公司與機(jī)構(gòu),導(dǎo)致許多國(guó)家的公司安全信譽(yù)岌岌可危。生物特征(指紋、虹膜
前不久,全球生物特征數(shù)據(jù)大范圍泄露,涉及到83個(gè)國(guó)家以及2700多個(gè)公司與機(jī)構(gòu),導(dǎo)致許多國(guó)家的公司安全信譽(yù)岌岌可危。
生物特征(指紋、虹膜、人臉)作為識(shí)別個(gè)人身份的一種方式,帶來(lái)了極大的方便。一方面生物特征對(duì)于個(gè)人是唯一的,另外一方面?zhèn)€人生物特征便于使用。不像口令與密碼還需要記憶。
然而,這是一把雙刃劍。生物特征一旦丟失將會(huì)帶來(lái)無(wú)法挽回的損失。它不像口令和密碼可以隨時(shí)更改。就像這次大規(guī)模生物特征泄露事件,遭泄露的個(gè)人很可能將來(lái)無(wú)法再使用其生物特征作為認(rèn)證方式。對(duì)其個(gè)人將來(lái)的生活帶來(lái)極大的影響。
導(dǎo)致生物特征數(shù)據(jù)泄露的一個(gè)根本原因是沒有保護(hù)好存儲(chǔ)在數(shù)據(jù)庫(kù)的中的生物特征模板。
寧波格密鏈網(wǎng)絡(luò)科技有限公司一直致力于全同態(tài)加密的應(yīng)用研究。早在幾年前,陳智罡博士團(tuán)隊(duì)就意識(shí)到生物特征的弱點(diǎn),開始研究如何在密態(tài)下構(gòu)建生物特征認(rèn)證系統(tǒng)。
基于全同態(tài)加密技術(shù),陳智罡博士團(tuán)隊(duì)相繼開發(fā)出指紋密文認(rèn)證系統(tǒng)、虹膜密文認(rèn)證系統(tǒng),人臉安全識(shí)別系統(tǒng)。得到了業(yè)界廣泛認(rèn)可與關(guān)注,目前正在開展產(chǎn)業(yè)化階段。
1. 問題的提出與解決
全同態(tài)加密能夠在不解密的情況下,對(duì)密文進(jìn)行任意計(jì)算。如果生物特征數(shù)據(jù)從存儲(chǔ)到認(rèn)證過程都是在密態(tài)下完成,即使生物特征數(shù)據(jù)丟失了,也不會(huì)對(duì)系統(tǒng)有任何影響。因?yàn)樯锾卣髟谙到y(tǒng)中是加密的,敵手在無(wú)法獲得密鑰的情況下,將無(wú)法獲得生物特征的明文數(shù)據(jù)。
這一場(chǎng)景非常適合全同態(tài)加密領(lǐng)域的應(yīng)用。陳智罡博士團(tuán)隊(duì)就此展開了研究。
難點(diǎn)一
看似很容易,只要將虹膜或者指紋數(shù)據(jù)通過全同態(tài)加密就可以了。但是在構(gòu)建整個(gè)系統(tǒng)中,陳博士團(tuán)隊(duì)發(fā)現(xiàn)一個(gè)問題,生物特征數(shù)據(jù)加密后發(fā)送給服務(wù)端進(jìn)行虹膜(或者指紋)比對(duì),盡管特征比對(duì)本質(zhì)上是一個(gè)海明距離的計(jì)算,但是計(jì)算后是一個(gè)密文,服務(wù)器無(wú)從知曉比對(duì)的結(jié)果,也就無(wú)法給出通過(或是不通過)的判斷。
如果將密文比對(duì)的結(jié)果發(fā)送給用戶端,用戶端再返還給服務(wù)端,敵手可能會(huì)篡改比對(duì)結(jié)果,或者發(fā)起中間人攻擊。
為此我們構(gòu)建了一個(gè)協(xié)議,引入一次MAC認(rèn)證方法。
消息驗(yàn)證碼(MAC)一般是利用可攜帶密鑰的hash函數(shù)來(lái)檢驗(yàn)傳輸數(shù)據(jù)的完整性。常用的hash函數(shù)有MD5、SHA-2和SHA-3等。我們的虹膜(指紋)特征密文的存儲(chǔ)可以使用上述方法將密文進(jìn)行壓縮,然后數(shù)據(jù)庫(kù)只需存放密文壓縮后的摘要。
但是,我們考慮到最安全的方式是采用云端認(rèn)證策略,即云服務(wù)器對(duì)密文同態(tài)操作后的結(jié)果進(jìn)行認(rèn)證,而解密操作只能由用戶完成。因此,采用hash函數(shù)并不能滿足設(shè)計(jì)的需要,所以我們?cè)O(shè)計(jì)了一種一次性MAC(OTM)認(rèn)證方式,即MAC方案中的消息密鑰算法生成的密鑰只能使用一次,同時(shí)用戶對(duì)密文解密后,云服務(wù)器可以對(duì)解密結(jié)果進(jìn)行認(rèn)證。
難點(diǎn)二
虹膜或指紋的識(shí)別方法是采用海明距離計(jì)算來(lái)對(duì)編碼后的特征模板進(jìn)行比對(duì)。它是通過統(tǒng)計(jì)兩個(gè)模板上對(duì)應(yīng)編碼不同的個(gè)數(shù)作為這兩個(gè)模板之間的距離。距離越小,表明兩模板越匹配。
本質(zhì)上計(jì)算海明距離是求兩個(gè)向量異或的總和。如果虹膜(或指紋)初始模板是長(zhǎng)度為n的二進(jìn)制向量,則計(jì)算兩個(gè)虹膜特征模板間的海明距離至少需要n次乘法。然而,全同態(tài)加密的密文乘法是其主要瓶頸。如果模板長(zhǎng)度為2048,則需要進(jìn)行2048次密文乘法。顯然,對(duì)于實(shí)際應(yīng)用這是不可接受的。
為此,團(tuán)隊(duì)采用了密文打包的方法,即將生物特征模板打包到一個(gè)密文中。因此,對(duì)該打包密文進(jìn)行一次乘法,相當(dāng)于原來(lái)的2048次乘法。這種并行的思路極大的提高了效率。使之從不可能到可能。
難點(diǎn)三
上面說(shuō)過,計(jì)算海明距離相當(dāng)于求兩個(gè)向量異或的總和。
由于采用了密文打包的方法,導(dǎo)致對(duì)密文無(wú)法求和。為了求和,采用了自同態(tài)計(jì)算,對(duì)密文中的明文位進(jìn)行旋轉(zhuǎn)。這樣每次加法后,對(duì)密文旋轉(zhuǎn)一次,一共需要旋轉(zhuǎn)2013次才能求得最終的結(jié)果。這也是影響效率的主要因素。
為此,團(tuán)隊(duì)對(duì)算法優(yōu)化,才用了類似于二分法的方法,將加法約減到了log2013次。極大的提高了效率。
除了上述難點(diǎn)外,團(tuán)隊(duì)還在工程化的優(yōu)化方面做出了很多嘗試。例如:將模板分段并行處理,用戶身份與生物特征模板哈希化保存,注冊(cè)模塊的安全防護(hù)等。
2. 系統(tǒng)架構(gòu)
系統(tǒng)主要是對(duì)驗(yàn)證服務(wù)器進(jìn)行設(shè)計(jì),采用一對(duì)一的方式來(lái)驗(yàn)證每個(gè)用戶。整個(gè)系統(tǒng)由兩個(gè)參與者組成,即用戶和認(rèn)證服務(wù)器。用戶U具有從他的虹膜特征中提取的二進(jìn)制特征模板。服務(wù)器S具有豐富的計(jì)算資源和存儲(chǔ)空間;因此它可以完成同態(tài)密文的任意函數(shù)計(jì)算,但不能解密自己生成的密文以及用戶給出的密文。
系統(tǒng)整體采用C/S架構(gòu),客戶端的主要功能是為用戶提供注冊(cè)和認(rèn)證服務(wù),而云服務(wù)器端則提供同態(tài)運(yùn)算和認(rèn)證服務(wù)。
系統(tǒng)的整體功能分為三個(gè)模塊,首先是登錄模塊,當(dāng)用戶輸入已經(jīng)注冊(cè)的基本信息后即可進(jìn)入到認(rèn)證界面,否則需要點(diǎn)擊注冊(cè)鏈接進(jìn)入注冊(cè)界面。其次是注冊(cè)模塊,它的主要功能有生成公鑰和密鑰、保存密鑰到移動(dòng)存儲(chǔ)器中以及加密虹膜信息并將之與用戶基本信息一同存放到數(shù)據(jù)庫(kù)中;最后是認(rèn)證模塊,它的功能是加密當(dāng)前虹膜信息并將之發(fā)送到服務(wù)器端,服務(wù)器端完成虹膜認(rèn)證后,客戶端通過密鑰解密認(rèn)證結(jié)果并提示用戶。
3. 系統(tǒng)實(shí)現(xiàn)與效率
本系統(tǒng)是使用C#編程語(yǔ)言在Windows10上開發(fā)的,系統(tǒng)采用B/S架構(gòu)。
為了加密一個(gè)2048位的二進(jìn)制向量,多項(xiàng)式次數(shù)必須取n≥2048。但是當(dāng)參數(shù)n過大時(shí),密文計(jì)算時(shí)間過長(zhǎng),系統(tǒng)效率極低。于是我們將2048位的二進(jìn)制向量分段進(jìn)行研究,下表給出了在不同段數(shù)時(shí),完成密文海明距離計(jì)算下的log2 q的最小值。
數(shù)據(jù)結(jié)果顯示,分段后的密文模q降低的幅度不大,因此分段并不能明顯提高系統(tǒng)的效率。
系統(tǒng)測(cè)試處理器為Intel Core i5-6200U,在128位安全等級(jí)下,認(rèn)證過程大概需要100毫秒,系統(tǒng)在圖形界面載入和通信部分用時(shí)最長(zhǎng),因此整個(gè)生物特征密文認(rèn)證系統(tǒng)的效率是非常不錯(cuò)的。該系統(tǒng)設(shè)計(jì)在2017年已經(jīng)申請(qǐng)專利。(致遠(yuǎn)博士)
關(guān)鍵詞: 生物特征數(shù)據(jù)大 泄露 國(guó)家