周 亮,應(yīng) 歡,戴 波,邱意民
1.中國電力科學(xué)研究院有限公司,北京100192
2.國網(wǎng)浙江省電力有限公司,杭州310007
目前,生物識(shí)別(Biometric Identification,BI)已廣泛應(yīng)用于金融支付、企業(yè)管理、刑偵取證等領(lǐng)域。隨著網(wǎng)上交易/支付等互聯(lián)網(wǎng)應(yīng)用發(fā)展,生物識(shí)別技術(shù)在互聯(lián)網(wǎng)應(yīng)用服務(wù)中正發(fā)揮著十分重要的作用[1-3]。目前,生物識(shí)別系統(tǒng)一般預(yù)先采集用戶個(gè)體的生理生物特征(比如指紋、虹膜等)或者行為生物特征(比如鍵擊等),注冊(cè)用戶賬號(hào)并建立關(guān)聯(lián)的生物特征數(shù)據(jù)庫;在后續(xù)的識(shí)別過程中,對(duì)于用戶提交的生物特征,系統(tǒng)將遍歷預(yù)先建立的生物數(shù)據(jù)庫并找到匹配的生物特征記錄,從而認(rèn)證用戶的身份。在互聯(lián)網(wǎng)應(yīng)用中,由于應(yīng)用服務(wù)方建立的生物識(shí)別系統(tǒng)往往涉及數(shù)量龐大的用戶,因此遍歷大規(guī)模生物特征數(shù)據(jù)庫將引入巨大的計(jì)算開銷,識(shí)別速度將受到顯著影響。
云計(jì)算平臺(tái)是支撐互聯(lián)網(wǎng)應(yīng)用的重要基礎(chǔ)設(shè)施,它通過虛擬化技術(shù)實(shí)現(xiàn)了大規(guī)模存儲(chǔ)和計(jì)算資源的整合,提供了分布式的、按需配置的存儲(chǔ)、計(jì)算服務(wù)[4]。云計(jì)算技術(shù)的普及為互聯(lián)網(wǎng)應(yīng)用中生物識(shí)別系統(tǒng)的部署提供了新的模式:應(yīng)用服務(wù)方(即生物數(shù)據(jù)庫所有者)可將生物數(shù)據(jù)庫存儲(chǔ)在云服務(wù)器端,由具有強(qiáng)大計(jì)算能力的云協(xié)助完成高計(jì)算代價(jià)的生物識(shí)別任務(wù),從而提高識(shí)別速度。
盡管借助云計(jì)算可以顯著減輕數(shù)據(jù)庫所有者的存儲(chǔ)和計(jì)算開銷,然而數(shù)據(jù)外包存在著天然的安全隱患:將隱私數(shù)據(jù)(例如生物特征數(shù)據(jù))存儲(chǔ)在云端后,數(shù)據(jù)所有者很難確保這些數(shù)據(jù)沒有泄露或者被非授權(quán)地使用[5]。這種隱私問題在生物識(shí)別任務(wù)外包計(jì)算的場景下尤為突出:個(gè)體的生物特征數(shù)據(jù)由于具有唯一性、不可替代性等特征,一旦泄露往往會(huì)引發(fā)更嚴(yán)重的安全問題(如身份濫用、非授權(quán)訪問等)。因此,基于隱私保護(hù)和身份安全方面的考慮,應(yīng)用服務(wù)方將生物識(shí)別任務(wù)外包給云服務(wù)器時(shí),需要部署有效的隱私保護(hù)機(jī)制對(duì)用戶的生物特征數(shù)據(jù)進(jìn)行脫敏處理,并保證云服務(wù)器可以在不獲知數(shù)據(jù)明文的前提下完成生物識(shí)別,認(rèn)證用戶身份。
如何在保證生物數(shù)據(jù)隱私的前提下完成生物識(shí)別近年來成為了學(xué)術(shù)界關(guān)注的熱點(diǎn)問題,研究人員針對(duì)生物識(shí)別應(yīng)用設(shè)計(jì)了大量的隱私保護(hù)方案。
文獻(xiàn)[6-10]首先考慮了非外包場景下的安全生物識(shí)別方案。在該場景中,生物數(shù)據(jù)庫所有者并不將數(shù)據(jù)庫外包存儲(chǔ),而是本地進(jìn)行生物數(shù)據(jù)的匹配計(jì)算;整個(gè)識(shí)別過程中,數(shù)據(jù)庫所有者維護(hù)的生物數(shù)據(jù)庫和待識(shí)別用戶提交的生物特征均不會(huì)泄露給對(duì)方。針對(duì)上述場景,文獻(xiàn)[6-8]先后提出了基于同態(tài)加密的隱私保護(hù)技術(shù)。隨后,文獻(xiàn)[9-10]結(jié)合混淆電路技術(shù)對(duì)上述方案進(jìn)行了改進(jìn),實(shí)現(xiàn)了效率上的提升。然而,這些方案[6-10]中數(shù)據(jù)庫所有者和待識(shí)別用戶的計(jì)算及通信開銷均隨著數(shù)據(jù)庫容量的增大而線性增加。當(dāng)處理大規(guī)模生物數(shù)據(jù)庫時(shí),這些方案將帶來巨大的計(jì)算和通信開銷。此外,上述方案[6-10]均是基于非外包場景設(shè)計(jì),方案中涉及的大量基于生物數(shù)據(jù)明文的計(jì)算因隱私保護(hù)的考慮無法外包給云服務(wù)器。因此,數(shù)據(jù)庫所有者和待識(shí)別用戶實(shí)際上無法節(jié)約本地的計(jì)算開銷,這一進(jìn)步說明在外包場景中部署上述方案[6-10]并不可行。
近年來,針對(duì)云計(jì)算場景,文獻(xiàn)[11-16]先后提出了多個(gè)生物識(shí)別外包((Biometric Identification Outsourcing,BIO)方案。這些方案均涉及生物數(shù)據(jù)庫所有者、待識(shí)別用戶和云服務(wù)器三個(gè)參與方,設(shè)計(jì)目標(biāo)是保證云服務(wù)器可以在不獲知生物數(shù)據(jù)庫明文和待識(shí)別用戶生物特征明文的前提下,協(xié)助生物數(shù)據(jù)庫所有者完成生物識(shí)別。文獻(xiàn)[11]首先提出了基于秘密分享算法的多服務(wù)器安全生物識(shí)別(Multiple Server Secure Biometric Search,MSSBS)方案。在該方案中,生物數(shù)據(jù)庫所有者首先在本地將數(shù)據(jù)庫拆分成n 份并存儲(chǔ)到多個(gè)云服務(wù)器上,并假設(shè)云服務(wù)器哪怕串謀也只能獲取其中至多k 份。在這種假設(shè)下,MSSBS 方案[6]可以保證生物數(shù)據(jù)的安全,使得云服務(wù)器能在不獲知生物數(shù)據(jù)明文的情況下完成識(shí)別。作為后續(xù)工作,文獻(xiàn)[12]提出了基于兩個(gè)互不串謀的云服務(wù)器的外包隱私保護(hù)生物認(rèn)證(Outsourceable Privacy-Preserving Biometric Authentication,O-PPBA)方案。然而,該方案每處理一次生物識(shí)別請(qǐng)求都需要兩個(gè)云服務(wù)器之間的頻繁交互,這帶來了極大的通信開銷。此外,上述MSSBS[11]和O-PPBA[12]方案的假設(shè)均不夠?qū)嶋H,無法抵擋現(xiàn)實(shí)應(yīng)用中云服務(wù)器之間的串謀攻擊。
最近,研究人員也設(shè)計(jì)了多個(gè)基于單個(gè)云服務(wù)器BIO 方案。Yuan 等人[13]設(shè)計(jì)了基于矩陣混淆機(jī)制的生物數(shù)據(jù)隱私保護(hù)技術(shù),并相應(yīng)構(gòu)造了BIO 方案。該方案[13]聲稱在云服務(wù)器知曉數(shù)據(jù)庫中部分?jǐn)?shù)據(jù)明密文對(duì)的情況下仍能保證數(shù)據(jù)隱私。然而,Wang 等人[14]分析了文獻(xiàn)[13]中方案的安全漏洞,通過設(shè)計(jì)具體攻擊指出,云服務(wù)器可以基于生物數(shù)據(jù)明密文對(duì)恢復(fù)出數(shù)據(jù)庫擁有者的密鑰,并進(jìn)一步恢復(fù)出整個(gè)生物數(shù)據(jù)庫明文。為保護(hù)密鑰的安全,Wang 等人[14]利用矩陣相似變換的特殊性質(zhì)設(shè)計(jì)了新的數(shù)據(jù)隱私保護(hù)技術(shù),并構(gòu)造了兩個(gè)新BIO方案(CloudBI-I及CloudBI-II),以抵抗具有不同背景知識(shí)的云服務(wù)器。但是,文獻(xiàn)[15]指出,Wang 等人[14]進(jìn)行的方案安全性分析并不完備,CloudBI-I/Cloud-BI-II方案[14]仍存在其他的隱私缺陷。文獻(xiàn)[15]設(shè)計(jì)了多個(gè)具體的攻擊,通過這些攻擊云服務(wù)器可以精確恢復(fù)出其他方案參與方的隱私生物數(shù)據(jù)。為抵抗文獻(xiàn)[15]提出的攻擊,Hahn 等人[16]對(duì)Wang 等人[14]的方案進(jìn)行了改進(jìn),在利用矩陣變換的基礎(chǔ)上通過添加噪聲的方式對(duì)生物數(shù)據(jù)進(jìn)行了進(jìn)一步的保護(hù),并聲稱可以保證數(shù)據(jù)的隱私性。然而通過分析發(fā)現(xiàn),Hahn等人[16]的BIO方案仍具有安全隱患,云服務(wù)器仍可以推斷出其余方案參與方的數(shù)據(jù)隱私。
綜上所述,設(shè)計(jì)可實(shí)際部署的云環(huán)境中的生物識(shí)別外包方案目前仍是一個(gè)開放性難題。本文將針對(duì)這個(gè)問題展開研究,設(shè)計(jì)安全高效的數(shù)據(jù)隱私保護(hù)技術(shù),解決上述難題。
本文主要研究生物識(shí)別外包計(jì)算問題,技術(shù)貢獻(xiàn)可以概括如下:
(1)對(duì)最新研究方案[16]進(jìn)行了詳細(xì)的安全性分析,并提出了一個(gè)具體的攻擊算法。利用該攻擊,云服務(wù)器可以準(zhǔn)確地恢復(fù)整個(gè)明文生物數(shù)據(jù)庫。
(2)將數(shù)據(jù)拆分技術(shù)[17]與特定矩陣變換相結(jié)合,設(shè)計(jì)了全新的生物特征數(shù)據(jù)加密算法,并構(gòu)造了改進(jìn)的生物識(shí)別外包方案EBIO(Enhanced Biometric Identification Outsourcing scheme)。同時(shí),本文對(duì)改進(jìn)方案進(jìn)行了安全性及復(fù)雜度分析。理論結(jié)果表明,EBIO 方案可以在保證生物數(shù)據(jù)隱私的前提下高效完成生物識(shí)別任務(wù)。
(3)對(duì)EBIO方案進(jìn)行了原型實(shí)現(xiàn),并基于不同規(guī)模的生物數(shù)據(jù)庫對(duì)方案進(jìn)行了性能評(píng)估。實(shí)驗(yàn)結(jié)果表明,EBIO 方案可以高效完成生物識(shí)別任務(wù),對(duì)于方案各參與方均不會(huì)造成過高的計(jì)算和通信開銷。
本文考慮如圖1 所示的系統(tǒng)模型。典型的BIO 方案涉及數(shù)據(jù)庫擁有者(記為Owner)、待識(shí)別用戶(記為User)以及云服務(wù)器(記為Cloud)三個(gè)參與方,包括數(shù)據(jù)庫加密(圖中步驟0)以及生物識(shí)別(圖中步驟1~4)兩個(gè)階段。
圖1 BIO方案系統(tǒng)模型
假設(shè)Owner 預(yù)先采集了m 個(gè)用戶的生物特征,并建立明文生物數(shù)據(jù)庫D={b1,b2,…,bm}。在數(shù)據(jù)庫加密階段,Owner 首先調(diào)用密鑰生成算法(KeyGen)生成密鑰K ,隨后調(diào)用數(shù)據(jù)加密算法(DateEnc)加密每個(gè)采集的生物特征記錄bi得到其密文Ci,并將密文數(shù)據(jù)庫DE={C1,C2,…,Cm}發(fā)送給Cloud。
在生物識(shí)別階段,User 首先提交生物特征向量bt給Owner進(jìn)行識(shí)別,后者調(diào)用檢索加密算法(QueryEnc)加密bt得到密文Ct,并將Ct發(fā)送給Cloud。收到Ct后,Cloud執(zhí)行密文匹配算法(Match),以密文數(shù)據(jù)庫DE以及查詢生物特征密文Ct為輸入,輸出與bt最為相似的生物數(shù)據(jù)記錄密文Ch。云端識(shí)別計(jì)算完成后,Cloud將Ch返回給Owner。最后,Owner 調(diào)用驗(yàn)證算法(Verify)解密Ch并判斷bh與bt是否匹配,并將最終生物識(shí)別結(jié)果返回給User。
與現(xiàn)有研究[6-16]保持一致,本文假設(shè)Owner 采集的生物特征記錄bi以及User 提交的查詢生物特征bt均由n 維特征向量表示,即bi=[bi,1,bi,2,…,bi,n] ,bi=[bt,1,bt,2,…,bt,n](特征向量的生成方法不在本文的討論范圍內(nèi))。特征向量之間的相似度由歐氏距離衡量,兩個(gè)向量相互匹配指兩者之間的歐氏距離小于某一預(yù)設(shè)值(記為ε),如dist(bh,bt)<ε。
綜上,基于圖1所示系統(tǒng)框架的BIO方案共包含五個(gè)具體算法(KeyGen、DateEnc、QueryEnc、Match、Verify),其中只有Match算法由Cloud執(zhí)行。
本文沿用文獻(xiàn)[14]中的敵手模型,假設(shè)系統(tǒng)中的Cloud為敵手,并將其根據(jù)已知信息的不同分為三類:
(1)第一類敵手僅僅知道生物數(shù)據(jù)庫密文DE={C1,C2,…,Cm}以及查詢生物特征向量密文Ct,即該敵手的已知信息為K1={DE,Ct}。
(2)第二類敵手在第一類敵手的基礎(chǔ)上還知道明文數(shù)據(jù)庫D={b1,b2,…,bm}中k(k ?m)個(gè)明文生物特征記錄,但不知道對(duì)應(yīng)密文,即敵手的已知信息為K2={DE,Ct,P},其中P ?D 且|P|=k(即P 是D 包含k 個(gè)生物特征記錄的子集)。
(3)第三類敵手在第一類敵手的基礎(chǔ)上還能與User 串謀,可任意選擇l 個(gè)明文查詢生物特征向量并獲知其對(duì)應(yīng)密文,即敵手的已知信息為
由于K1?K2且K1?K3,第一類敵手的已知信息為第二類和第三類敵手的子集。因此,如果一個(gè)生物識(shí)別外包方案可以抵抗第二類或第三類敵手的攻擊,則該方案自然可以抵抗第一類敵手攻擊。
然而,K2和K3之間不存在包含關(guān)系,即K2?K3且K3?K2。因此,生物識(shí)別外包方案在第二類和第三類敵手攻擊下的安全性是分別考慮的。由于兼顧第二類和第三類敵手已知信息的敵手過于強(qiáng)大,與現(xiàn)有研究工作[13-16]保持一致,本文也不考慮這類敵手的攻擊。
基于上述系統(tǒng)模型和敵手模型,可實(shí)際部署的BIO方案需滿足正確性、隱私性及高效性三個(gè)設(shè)計(jì)目標(biāo)。
(1)正確性:如果Owner、User 和Cloud 均誠實(shí)執(zhí)行BIO 方案,那么Cloud 返回的Ch滿足dist(bh,bt)=min{dist(b1,bt),dist(b2,bt),…,dist(bm,bt)} ,即Cloud 可遍歷得到D 中與bt最相似的生物特征記錄的密文Ch。
(2)隱私性:在BIO 方案執(zhí)行過程中,Cloud 不能基于其已知信息獲得任何隱私生物特征數(shù)據(jù),包括明文生物特征記錄bi∈D 以及明文查詢生物特征向量bt。
(3)高效性:BIO 方案在實(shí)現(xiàn)上述正確性和隱私性目標(biāo)的同時(shí),不應(yīng)給方案各參與方帶來過高的計(jì)算和通信開銷。
Hahn 等人[16]提出了一個(gè)BIO 方案,并聲稱當(dāng)Cloud知道部分?jǐn)?shù)據(jù)庫明密文對(duì)的情況下還能保證方案的安全性,即Cloud不能獲知數(shù)據(jù)庫中其他任意的生物特征記錄明文或者查詢生物特征向量明文。本章首先對(duì)Hahn等人方案[16]進(jìn)行簡單回顧,隨后將設(shè)計(jì)具體攻擊算法證明該方案并不能抵抗文中[16]假設(shè)的敵手。
(1)數(shù)據(jù)庫加密階段:Owner 首先選取隨機(jī)可逆陣M1,M2∈R(n+2)×(n+2)作為密鑰。隨后,Owner 調(diào)用算法1 加密每個(gè)生物特征記錄bi得到Ci,并將密文數(shù)據(jù)庫DE={C1,C2,…,Cm}發(fā)送給Cloud;其中算法1的步驟1中diag(x1,x2,…,xn)表示以x1,x2,…,xn為對(duì)角線元素的對(duì)角矩陣。
算法1 Hahn等人方案數(shù)據(jù)加密算法
輸入:生物特征記錄明文bi=[bi,1,bi,2,…,bi,n]∈D,密鑰(M1,M2)
1.擴(kuò)展bi為對(duì)角矩陣Bi=diag(bi,1,bi,2,…,bi,n,bi,n+1,1),其中
2.隨機(jī)選取單位下三角矩陣Qi,計(jì)算Ci=M1QiBiM2。輸出:生物特征記錄密文Ci
(2)生物識(shí)別階段:User 與Owner 協(xié)同執(zhí)行算法2,最終由Owner 生成查詢生物特征向量密文Ct,并發(fā)送給Cloud。
算法2 Hahn等人方案檢索加密算法
輸入:查詢生物特征向量明文bt=[bt,1,bt,2,…,bt,n]∈D,密鑰(M1,M2)
1.User擴(kuò)展bt為對(duì)角矩陣Bt=diag(bt,1,bt,2,…,bt,n,1,rt),其中rt為隨機(jī)實(shí)數(shù);User同時(shí)選取擾動(dòng)向量ht=[ht,1,ht,2,…,ht,n],并將其擴(kuò)展為對(duì)角矩陣Ht=diag(ht,1,ht,2,…,ht,n,0,0)。
2.User 計(jì)算bt與ht的歐氏距離dist(bt,ht) ,并將B′t=2dist(bt,ht)Bt+Ht發(fā)送給Owner。
3.Owner 隨機(jī)選取單位下三角陣Qt,并計(jì)算Ct=BiQiM2
輸出:生物特征記錄密文Ci
當(dāng)收到Ct后,Cloud調(diào)用算法3找到與bt最相似的生物數(shù)據(jù)向量密文,其中算法3 步驟1 中tr(·)表示矩陣求跡符號(hào),即tr(CiCt)表示矩陣CiCt的跡(對(duì)角元素之和)。這里,省略與安全性分析無關(guān)的方案內(nèi)容(如驗(yàn)證算法等),可以參考文獻(xiàn)[16]了解具體細(xì)節(jié)。
算法3 Hahn等人方案密文匹配算法
輸入:密文生物數(shù)據(jù)庫DE={C1,C2,…,Cm},密文查詢生物數(shù)據(jù)Ct
1.計(jì)算si=tr(CiCt),?i=1,2,…,m。
2.求得h 滿足sh=max{s1,s2,…,sm},并相應(yīng)輸出Ch。
輸出:識(shí)別結(jié)果Ch
Hahn 等人[16]聲稱,Cloud 即便知曉數(shù)據(jù)庫中部分生物記錄明密文對(duì),仍無法獲取其他任何生物數(shù)據(jù)。文章接下來將介紹一個(gè)具體攻擊,證明具有上述能力的Cloud可以恢復(fù)出整個(gè)明文生物數(shù)據(jù)庫。
不失一般性,假設(shè)Cloud 已知(bi,Ci)i=1,2,…,k。根據(jù)算法3,對(duì)于任意密文查詢生物特征向量Ct,Cloud將基于每個(gè)Ci計(jì)算tr(CiCt)來完成識(shí)別。本節(jié)接下來將介紹一個(gè)具體攻擊,利用該攻擊Cloud可以基于其已知信息恢復(fù)出整個(gè)明文數(shù)據(jù)庫D。該攻擊可分為以下兩個(gè)步驟。
(1)獲取查詢生物特征明密文對(duì)根據(jù)矩陣求跡運(yùn)算的性質(zhì),成立:
根據(jù)假設(shè),每個(gè)bi=[bi,1,bi,2,…,bi,n]對(duì)Cloud都可知,故Cloud可以基于上述等式構(gòu)造如下線性方程組:
當(dāng)k >n+2 時(shí),Cloud 可以求解上述方程組確定[,,…,并重構(gòu)得到B′t。重復(fù)上述步驟,Cloud可得到多個(gè)查詢生物特征明密文二元組(B′t(i),i=1,2,…,n+1,并保證之間線性獨(dú)立。
(2)構(gòu)建線性方程恢復(fù)明文生物特征記錄
對(duì)于任意Cj∈DE,Cloud基于上述確定的計(jì)算:
根據(jù)上述等式,Cloud可構(gòu)造如下線性方程組:
算法4 對(duì)Hahn等人方案的攻擊算法
輸入:生物特征記錄明密文對(duì)(bi,Ci)i=1,2,…,k,查詢生物特征向量密文(N >n+2),密文生物特征記錄Cj∈DE
1.for l=1 to N do
2. 基于已知bi=[bi,1,bi,2,…,bi,n]構(gòu)建線性方程組:
4.end for
6.對(duì)于密文生物特征記錄Cj,構(gòu)造線性方程組
求解對(duì)應(yīng)明文bj。
輸出:生物特征記錄明文bj
根據(jù)第1.1 節(jié)的相關(guān)研究工作介紹,目前尚未有可實(shí)際部署的BIO 方案。本章將結(jié)合數(shù)據(jù)拆分技術(shù)[17]以及特定矩陣變換設(shè)計(jì)隱私保護(hù)技術(shù),并構(gòu)造在第2.2 節(jié)敵手模型下安全高效的生物識(shí)別方案。
本章構(gòu)造的方案EBIO 基于第2.1 節(jié)的系統(tǒng)模型,包括數(shù)據(jù)庫加密和生物識(shí)別兩個(gè)階段,涉及(KeyGen、DateEnc、QueryEnc、Match、Verify)5 個(gè)算法。在數(shù)據(jù)庫加密階段,Owner 調(diào)用密鑰生成算法KeyGen 生成3 個(gè)(n+2)×(n+2) 階隨機(jī)可逆陣M ,N1、N2作為密鑰。隨后,Owner 調(diào)用算法5(數(shù)據(jù)加密算法)加密每個(gè)生物特征記錄bi∈D 得到密文Ci,并將密文數(shù)據(jù)庫DE={C1,C2,…,Cm}發(fā)送給Cloud。
算法5 數(shù)據(jù)加密算法(DataEnc)
輸入:生物特征記錄明文bi=[bi,1,bi,2,…,bi,n]∈D,密鑰(M,N1,N2)
1.擴(kuò)展bi為b?i=[bi,1,bi,2,…,bi,n+1],其中bi,n+1=-(bi,12+…+bi,n2)。
輸出:生物特征記錄密文Ci=(C′i,C″i)
在生物識(shí)別階段,對(duì)于User提交的查詢生物特征向量bt,Owner 調(diào)用算法6(檢索加密算法)加密bt得到密文Ct=(Ct,1,Ct,2),并將其發(fā)送給Cloud。
算法6 檢索加密算法(QueryEnc)
輸入:查詢生物特征向量明文bt=[bt,1,bt,2,…,bt,n]∈D,密鑰(M,N1,N2)
1.擴(kuò)展bt為=[bt,1,bt,2,…,bt,n,1,rt] ,這里rt∈R 為隨機(jī)實(shí)數(shù)。
3.隨機(jī)選取單位下三角矩陣T ∈R(n+2)×(n+2),計(jì)算V1=,V2=。
4.隨機(jī)選取單位下三角矩陣R1, R2∈R(n+2)×(n+2),計(jì)算Ct,1=V1BtR1M-1,Ct,2=V2BtR2M-1。
輸出:查詢生物特征向量密文Ct=(Ct,1,Ct,2)
隨后,Cloud調(diào)用算法7(密文匹配算法)基于DE及Ct找到與bt最相似的生物數(shù)據(jù)記錄,并向Owner 返回該記錄對(duì)應(yīng)的密文Ch。
算法7 密文匹配算法(Match)
輸入:密文生物數(shù)據(jù)庫DE={C1,C2,…,Cm},查詢生物向量密文Ct=(Ct,1,Ct,2)
1.計(jì)算si=+tr(C″iCt,2),?i=1,2,…,m。
2.求得h 滿足sh=max{s1,s2,…,sm},并相應(yīng)輸出Ch。
輸出:識(shí)別結(jié)果Ch=(C′h,C″h)
最后,Owner 調(diào)用算法8(驗(yàn)證算法)解密Ch,并判斷bh是否為bt匹配的生物特征記錄,并相應(yīng)向User返回生物識(shí)別結(jié)果。
算法8 驗(yàn)證算法(Verify)
1.計(jì)算M-1C′h+M-1,提取對(duì)角線元素重構(gòu)bh。
2.計(jì)算dist(bh,bt)。
輸出:若dist(bh,bt)<ε,返回1;否則,返回0
定理1 EBIO方案是正確的生物識(shí)別外包計(jì)算方案。
證明 根據(jù)第2.3節(jié)中的正確性定義,本節(jié)接下來證明,若EBIO方案參與方均誠實(shí)執(zhí)行協(xié)議,則Cloud返回的Ch滿足
由于V1,V2,,R1,R2均為單位下三角陣,根據(jù)矩陣求跡運(yùn)算的性質(zhì),得到:
因此,若si>sj,則有:
綜上,如果sh=max{s1,s2,…,sm},那么:
EBIO的正確性得證。
根據(jù)第2.2 節(jié)敵手模型,第一類敵手的已知信息是第二和第三類敵手的子集。因此,如果EBIO 方案可以抵抗第二類或第三類敵手的攻擊,那么該方案自然可以抵抗第一類敵手攻擊。本節(jié)接下來將分別證明EBIO方案在第二類和第三類敵手攻擊下的隱私性保護(hù)性。
定理2 EBIO方案在第二類敵手攻擊下是隱私保護(hù)的生物識(shí)別外包計(jì)算方案。
證明 根據(jù)第2.3節(jié)中的隱私性定義,本節(jié)接下來證明在EBIO 方案中,第二類敵手不能基于其已知信息K2={DE,Ct,P}來獲得其他任何隱私的生物特征數(shù)據(jù)(包括明文生物特征記錄bi?P 以及明文查詢生物特征向量bt);其中,DE為生物數(shù)據(jù)庫密文,Ct為查詢生物特征向量密文,P 是包含k(k ?m)個(gè)生物特征記錄的D 的子集。
首先證明敵手不能通過直接解密Ci獲得bi。根據(jù)3.1節(jié)方案構(gòu)造,每個(gè)bi首先轉(zhuǎn)換成,然后加密生成。由于矩陣M,都是由Owner隨機(jī)選取的,敵手在不知道這些隨機(jī)矩陣的情況下,無法直接對(duì)Ci進(jìn)行解密恢復(fù)得到bi。類似地,敵手也無法對(duì)Ct進(jìn)行解密恢復(fù)得到bt。
接下來證明敵手不能基于已知的明文生物特征記錄集合P 獲取更多的信息。由于EBIO方案采用了隨機(jī)數(shù)據(jù)拆分技術(shù),因此數(shù)據(jù)加密算法和檢索加密算法均不屬于距離保持變換(Distance Preserving Transformation,DPT),即?bi,bj∈D ,敵手不能從dist(bi,bj)推導(dǎo)得到其對(duì)應(yīng)密文Ci和Cj。根據(jù)文獻(xiàn)[17]的安全性分析,現(xiàn)有基于已知樣本的簽名鏈接攻擊(the Signature Linking Attack)[17]以及主成分分析的攻擊(PCA-Based Attack)[0]對(duì)非DPT變換均不奏效,因此在EBIO方案中敵手無法基于其已知的明文生物特征記錄集合P 獲取隱私信息。
進(jìn)一步地,由于敵手不知道已知生物數(shù)據(jù)記錄的對(duì)應(yīng)密文,故文獻(xiàn)[15]以及本文第3.2 節(jié)提出的基于生物特征記錄明密文對(duì)的攻擊均不適用。因此,敵手無法基于已知的生物特征記錄明文獲取更多的隱私信息。
綜上所述,EBIO 方案在第二類敵手攻擊下是隱私保護(hù)的。
定理3 EBIO方案在第三類敵手攻擊下是隱私保護(hù)的生物識(shí)別外包計(jì)算方案。
證明 根據(jù)第2.3節(jié)中的隱私性定義,本節(jié)接下來證明在EBIO 方案中,第三類敵手不能基于其已知信息來獲得其他任何隱私的生物特征數(shù)據(jù)(包括bi∈D 以及l(fā)),其中DE為生物數(shù)據(jù)庫密文,Ct為查詢生物特征向量密文,是敵手選擇的查詢生物特征向量明文,而是其對(duì)應(yīng)密文。
接下來證明敵手不能基于已知的查詢生物特征向量明密文對(duì)獲取更多的信息。不失一般性,假設(shè)敵手已知l 組明密文對(duì),其中為求解隨機(jī)矩陣,敵手關(guān)于有(n+1)(n+2)l個(gè)未知數(shù),關(guān)于有2(n+2)2l個(gè)未知數(shù),關(guān)于M 有(n+2)2個(gè)未知數(shù),然而敵手基于已知的僅能夠造如下2(n+2)2l 個(gè)線性方程:
由于未知數(shù)個(gè)數(shù)((n+1)(n+2)l+2(n+2)2l+(n+2)2)大于方程數(shù)個(gè)數(shù)2(n+2)2l,敵手無法基于已知明密文對(duì)恢復(fù)出用于生物數(shù)據(jù)加密的隨機(jī)矩陣,因此無法對(duì)生物數(shù)據(jù)密文進(jìn)行解密。
綜上所述,EBIO 方案在第三類敵手攻擊下是隱私保護(hù)的。
根據(jù)第2.2 節(jié)的敵手模型,由于第二類和第三類敵手均強(qiáng)于第一類敵手,因此EBIO 自然在第一類敵手攻擊下也是隱私保護(hù)的。
本節(jié)接下來對(duì)EBIO方案各參與方的計(jì)算和通信開銷進(jìn)行分析。假設(shè)矩陣向量乘法和矩陣間乘法的計(jì)算復(fù)雜度分別為O(n2)和O(n3),這里n 表示生物特征向量的維度。
計(jì)算開銷:在數(shù)據(jù)庫加密階段,Owner 將花費(fèi)O(mn3)的一次性開銷離線加密m 個(gè)生物特征記錄。在生物識(shí)別階段,Owner 將花費(fèi)O(n3)的開銷加密每個(gè)查詢生物特征向量;接著,Cloud 將花費(fèi)O(mn3)的開銷計(jì)算{si}i=1,2,…,m以及O(m)的時(shí)間開銷確定集合中的最大值sh;最后,Owner花費(fèi)O(n3)來驗(yàn)證云端識(shí)別結(jié)果。
通信開銷:在數(shù)據(jù)庫加密階段,Owner 將一次性花費(fèi)O(mn2)開銷上傳整個(gè)密文生物數(shù)據(jù)庫;而在識(shí)別階段,針對(duì)單個(gè)識(shí)別請(qǐng)求,User 將花費(fèi)O(n)的開銷發(fā)送bt,而Owner和Cloud僅需要O(n2)的開銷。
綜上所述,Owner在線生物識(shí)別階段的總計(jì)算開銷為O(n3) 。由于本地完成生物識(shí)別的計(jì)算開銷為O(mn),當(dāng)m >n2時(shí),EBIO方案可以給Owner可以帶來本地開銷顯著的節(jié)約。
為更好地說EBIO 方案的高效性,比較了EBIO 方案和相關(guān)方案中各參與方的計(jì)算和通信開銷,結(jié)果如表1所示;其中m 表示明文數(shù)據(jù)庫D 中的生物特征記錄數(shù)目,n 表示各生物特征向量的維度??傮w來看,EBIO方案和CloudBI-II方案[14]中各參與方在初始化和識(shí)別階段的復(fù)雜度相同,而比Hahn等人方案[16]在識(shí)別階段的計(jì)算上更為高效。然而,根據(jù)文獻(xiàn)[15]以及本文第3.2節(jié)的安全性分析,CloudBI-II方案[14]和Hahn等人方案[16]均無法同時(shí)抵抗第二和第三類敵手的攻擊。綜上所述,EBIO方案在保持計(jì)算/通信高效的同時(shí)實(shí)現(xiàn)了更強(qiáng)的隱私保護(hù)。
為進(jìn)一步驗(yàn)證本文提出EBIO 方案的可用性,本章將對(duì)EBIO進(jìn)行原型實(shí)現(xiàn)以及實(shí)驗(yàn)驗(yàn)證。與現(xiàn)有BIO方案[13-16]的實(shí)驗(yàn)評(píng)估方法保持一致,本章也采用隨機(jī)生成的指紋數(shù)據(jù)庫作為實(shí)驗(yàn)數(shù)據(jù)集;數(shù)據(jù)庫中每一個(gè)指紋特征都由FingerCode編碼[19]表示,即每一個(gè)指紋特征都表示為640 維的特征向量(即n=640),向量每一維都是8 bit整數(shù)。搭建了與文獻(xiàn)[14]中類似的實(shí)驗(yàn)環(huán)境。具體來說,模擬了具有1 000個(gè)節(jié)點(diǎn)的云服務(wù)器,其中每個(gè)節(jié)點(diǎn)都是一臺(tái)配置8 GB內(nèi)存和3.5 GHz I7 4771處理器的臺(tái)式機(jī),并利用單獨(dú)的一個(gè)節(jié)點(diǎn)模擬用戶端。EBIO 方案的所有算法都由MATLAB 進(jìn)行實(shí)現(xiàn)。根據(jù)第1.1 節(jié)相關(guān)工作介紹以及第3章的安全性分析,現(xiàn)有基于單個(gè)云服務(wù)器的BIO方案均存在安全漏洞,因此本章將不對(duì)現(xiàn)有方案進(jìn)行實(shí)現(xiàn)。
EBIO方案的數(shù)據(jù)庫加密階段僅涉及Owner的一次性開銷,并不影響在線生物識(shí)別的效率,因此本章主要討論EBIO 方案在生物識(shí)別階段的開銷。表2 描述了Owner和Cloud在生物識(shí)別階段的計(jì)算和通信開銷。表中數(shù)據(jù)顯示,隨著生物數(shù)據(jù)庫規(guī)模不斷增加,Owner 在生物識(shí)別階段的計(jì)算開銷(包括加密查詢生物特征向量bt以及重建bh并計(jì)算dist(bh,bt)的開銷)保持不變,而Cloud 的計(jì)算開銷(即計(jì)算{si}i=1,2,…,m的開銷)隨著數(shù)據(jù)庫規(guī)模的增加線性增加。
表1 EBIO方案和相關(guān)方案的復(fù)雜度及安全性對(duì)比
表2 EBIO方案生物識(shí)別階段中Owner和Cloud端的計(jì)算和通信開銷
實(shí)驗(yàn)結(jié)果進(jìn)一步表明,盡管Cloud端的開銷是線性增加的,但由于EBIO 的密文匹配算法(算法7)易并行化實(shí)現(xiàn),這部分開銷可以均攤至每個(gè)Cloud 節(jié)點(diǎn),并由它們并行完成。因此,Cloud 可以高效地完成識(shí)別。例如,當(dāng)生物數(shù)據(jù)庫包含百萬量級(jí)(106個(gè))指紋特征向量時(shí),Cloud 完成一次生物識(shí)別的時(shí)間僅約22 s。通過將繁重的識(shí)別任務(wù)外包給Cloud,Owner 完成一次生物識(shí)別只需要進(jìn)行幾次簡單的矩陣變換,因此計(jì)算開銷大幅度降低。如表2 所示,Owner 處理一次識(shí)別請(qǐng)求的計(jì)算開銷在0.25 s以內(nèi),顯著小于Cloud的計(jì)算開銷。
在通信開銷方面,Owner和Cloud的開銷均為常數(shù),并與數(shù)據(jù)庫容量獨(dú)立。對(duì)于每一次生物識(shí)別請(qǐng)求,Owner和Cloud的總通信開銷僅為6.30 MB。
為了更直觀地說明Owner通過部署EBIO帶來的計(jì)算開銷上的節(jié)約,本節(jié)比較了Owner本地進(jìn)行單次生物識(shí)別計(jì)算和部署EBIO借助Cloud進(jìn)行單次生物識(shí)別計(jì)算的開銷進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如圖2所示。
圖2 Owner處理單次生物識(shí)別任務(wù)的計(jì)算開銷
實(shí)驗(yàn)結(jié)果表明,Owner在非外包場景下本地處理一次生物識(shí)別請(qǐng)求的計(jì)算開銷將會(huì)隨數(shù)據(jù)庫容量增加而線性增長。而通過部署EBIO 方案,當(dāng)生物數(shù)據(jù)庫容量增加時(shí),Owner處理一次生物識(shí)別請(qǐng)求的計(jì)算開銷保持不變,且顯著小于非外包場景下的計(jì)算開銷。當(dāng)處理大規(guī)模生物數(shù)據(jù)庫時(shí),這種開銷節(jié)約將十分顯著。例如,當(dāng)數(shù)據(jù)庫包含100萬個(gè)生物特征記錄時(shí),非外包場景下Owner的開銷是3.80 s,而部署EBIO方案Owner的開銷僅為0.17 s。
考慮到網(wǎng)絡(luò)應(yīng)用中常常存在多個(gè)User 同時(shí)提交生物識(shí)別請(qǐng)求的情況,本節(jié)還比較了Owner在非外包和外包場景下同時(shí)處理多個(gè)生物識(shí)別請(qǐng)求的計(jì)算開銷。如圖3描述了Owner同時(shí)處理10個(gè)生物識(shí)別請(qǐng)求的情況。
圖3 Owner同時(shí)處理10次生物識(shí)別任務(wù)的計(jì)算開銷
實(shí)驗(yàn)結(jié)果表明,當(dāng)生物數(shù)據(jù)庫規(guī)模確定時(shí),Owner在外包和非外包場景下處理多個(gè)生物識(shí)別請(qǐng)求的計(jì)算開銷均會(huì)隨生物識(shí)別請(qǐng)求數(shù)目的增加而線性增加。由于在EBIO 方案中,Owner 將高代價(jià)的生物識(shí)別計(jì)算外包給了Cloud,因此本地的計(jì)算開銷將顯著小于非外包場景的計(jì)算開銷。當(dāng)Owner 同時(shí)處理的生物識(shí)別請(qǐng)求數(shù)目越多時(shí),Owner 通過部署EBIO 方案節(jié)約的計(jì)算開銷將更加顯著。例如,當(dāng)數(shù)據(jù)庫包含100萬個(gè)生物特征記錄時(shí),非外包場景下Owner 同時(shí)處理10 個(gè)生物識(shí)別請(qǐng)求的開銷約38.0 s,而部署EBIO方案Owner的開銷僅為1.6 s。
綜上所述,EBIO 方案可以高效地完成生物識(shí)別任務(wù),能滿足實(shí)際應(yīng)用的需求。
本文對(duì)云環(huán)境中的生物識(shí)別外包方案進(jìn)行了系統(tǒng)的研究。首先描述了生物識(shí)別外包(BIO)方案的系統(tǒng)模型、敵手模型和設(shè)計(jì)目標(biāo)。隨后本文對(duì)最新研究進(jìn)展[16]進(jìn)行了詳盡的安全性分析,通過具體攻擊揭示了文獻(xiàn)[16]中方案的安全缺陷。為實(shí)現(xiàn)安全高效的生物識(shí)別外包,本文結(jié)合數(shù)據(jù)拆分技術(shù)[17]以及特定的矩陣變換重新設(shè)計(jì)了生物特征數(shù)據(jù)加密算法,構(gòu)造了改進(jìn)的生物識(shí)別外包方案EBIO。理論分析表明,EBIO方案能保證識(shí)別結(jié)果的準(zhǔn)確性,同時(shí)可以確保生物特征記錄和查詢生物特征向量的隱私性。本文還對(duì)EBIO方案進(jìn)行了原型實(shí)現(xiàn)。實(shí)驗(yàn)結(jié)果表明,EBIO 方案可以高效地完成生物識(shí)別,不會(huì)給方案各參與方帶來過高的計(jì)算和通信開銷。