一種基于cnn特征提取器的安全人臉認證系統(tǒng)設計方法
【技術領域】
[0001 ]本發(fā)明屬于生物特征識別領域,設及生物特征認證及加密技術,具體設及一種利 用CW#是取人臉特征并用化illier算法和不經(jīng)意傳輸協(xié)議進行加密的方法。
【背景技術】
[0002] 在生物特征識別領域,人臉W其免接觸、自然的識別方式等特點,有著廣闊的應用 前景,包括證件中的身份認證、安全監(jiān)測和監(jiān)控、網(wǎng)絡安全控制等。但傳統(tǒng)的生物特征識別 系統(tǒng)存儲時無任何加密措施,數(shù)據(jù)庫中的特征一旦被竊取意味著隱私信息的泄露,存在著 較大的安全和隱私隱患。且生物特征具有不可撤銷性,不可多次重置,因此研究具有高認證 率且安全的人臉認證系統(tǒng)具有重要的應用意義。
[0003] 人臉認證是指判斷兩幅人臉圖片是否來自同一個人,認證系統(tǒng)用來判斷請求者是 否為合法用戶。2006年之前,人臉認證算法中的特征大多為人為定義的,如LBP,SIFT and Gabor等,基于運些特征的認證算法的準確率也較有限。自2006年化nton在Science上發(fā)表 文章 "Reducing the dimensionality of data with neural networks"從來,深度學習在 圖像領域中取得了較好的成績,其應用也越來越廣泛。
[0004] 目前較為流行的認證算法是將深度神經(jīng)網(wǎng)絡提取的特征輸入二分類器進行認證, 雖取得了較好的認證性能,但該類方法無法克服隱私信息泄露問題。例如:Matthew D.Zeiler在2014年的文章 "Visualizing and Understanding Convolutional Networks" 中證明,對于O^N中最后一層隱藏層的特征,可W通過解卷積,使其可視化,并得到輸入層的 大多數(shù)像素級信息。運也意味著在服務器中保存運些特征是不安全的,容易泄露用戶的隱 私信息。又如:2010年Margarita Osadchy在文章"SCiFi-A system for Secure Computation of化。6 Identification"中提出了安全的人臉認證系統(tǒng)SCiFi,利用基于人 臉碎片的方法,得到900位的二進制特征表達一幅人臉,使用兩個密碼學工具(同態(tài)加密算 法和不經(jīng)意傳輸協(xié)議),實現(xiàn)了兩個特征向量間漢明距離的安全計算。但認證率較低,程序 運1?耗日寸車交長,且文章 ('Reconstructing a fra邑merited face from a cryptographic identification protocol"證明SCiFi系統(tǒng)易受重建碎片人臉方法的攻擊。
[0005] 綜上所述,現(xiàn)有人臉認證方法無法較好地兼顧認證性能和安全性能,制約了算法 的實際應用。針對現(xiàn)有人臉認證系統(tǒng)中不能兼顧系統(tǒng)安全性和用戶隱私性的問題,提出將 Paillier加密算法和不經(jīng)意傳輸相結(jié)合,用于加密深度神經(jīng)網(wǎng)絡提取的特征,在不降低系 統(tǒng)認證性能的基礎上,保證用戶的隱私信息不被泄露,抵御惡意攻擊,增強系統(tǒng)的安全性。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的是提供一種易于加密的高精度安全認證系統(tǒng)設計方法。
[0007] 本發(fā)明采用的認證系統(tǒng)框架如圖1所示。系統(tǒng)包含兩個主要部分,服務器和客戶 端。服務器中保存注冊人臉的特征列表。當有用戶請求認證時,客戶端輸入一個人臉圖片, 服務器對比請求者的人臉圖片和系統(tǒng)中對應的人臉特征,判斷是否為合法用戶。系統(tǒng)的輸 出為:客戶端得知是否認證通過。
[0008] 系統(tǒng)具體采用如下的技術方案和步驟:
[0009] 前期準備階段
[0010] 1.設計深度卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)(Convolutional化ural化twork,C順)
[OCm]本發(fā)明采用的CNN結(jié)構(gòu)如圖2所示。網(wǎng)絡由4個卷積層、1個全連接層和一個softmax 層組成,其中前Ξ層卷積層后加 pooling層,神經(jīng)元的激活函數(shù)使用ReLU函數(shù)。首先將輸入 圖像歸一化成56巧6的RGB彩色圖像,圖中矩形的邊長表示feature map及濾波器的大小,矩 形的個數(shù)表示feature map的個數(shù)。由于卷積層數(shù)越高,得到的特征越全局化,為了兼顧圖 像的全局和局部特征,將第3個pooling層和第4個卷積層都與全連接層相連。本發(fā)明中,將 全連接層的神經(jīng)元個數(shù)設置為N,并將N個神經(jīng)元的激活值作為人臉圖片的特征。Softmax層 的輸出個數(shù)為訓練集的類別數(shù)。
[0012] 2.訓練CNN
[0013] 首先使用一個數(shù)據(jù)集對CNN做訓練,用人臉識別信號作為監(jiān)督信號。越大的訓練集 越有助于訓練網(wǎng)絡提取更加魯棒的特征,因此為了得到較好的認證性能,輸入α^Ν前對訓練 圖像做一定的數(shù)據(jù)增強,具體方法為截取輸入圖像的五個子塊(四個頂角和中屯、位置),并 作水平翻轉(zhuǎn),因此最終將訓練集增加到原來數(shù)量的十倍。
[0014] 3.提取人臉特征
[0015] 使用訓練好的作為人臉圖片的特征提取器,將最后一層隱藏層的神經(jīng)元激活 值作為特征。對輸入的每一幅圖片,得到Ν維的特征向量。由于在認證時只需考慮某個神經(jīng) 元是否被激活,因此對特征進行二值化處理。統(tǒng)計所有圖片的神經(jīng)激活情況,發(fā)現(xiàn)對于每一 個輸入圖片,總是半數(shù)的神經(jīng)元被激活,剩余半數(shù)的神經(jīng)元未被激活,即神經(jīng)元的激活值為 0,因此選擇的二值化方法為將所有大于0的特征值置為1,W去除噪聲,得到人臉的320bit 特征向量。
[0016] 注冊階段:
[0017] 1.對注冊的每一個用戶,采集人臉圖片,提取其二進制特征向量,使用化illier加 密算法對其進行加密,將加密后的特征存儲于服務器中。
[0018] 化illier算法的密鑰分為公共密鑰,設公共秘鑰為(η,g),用于加密,保存于服務 器和客戶端中。設置私人密鑰為(λ,μ),僅保存于客戶端中,用于解密。即,服務器掌握公共 密鑰,只可W對數(shù)據(jù)進行加密,并在加密域中進行計算,不能解密??蛻舳吮4嫠忻荑€,可 W進行加密和解密所有運算。
[0019] 認證階段:
[0020] 1.客戶端采集包含人臉的圖片,通過人臉檢測,得到人臉圖片。輸入CNN,提取到二 進制特征向量。
[0021] 2.對特征進行化i 11 ier加密,將特征密文發(fā)送給服務器,請求認證。
[0022] 3.服務器比較接收到的密文和數(shù)據(jù)庫中存儲的對應的特征密文,計算每一比特位 的漢明距的密文馬*巧),其中A = 受W讀示W(wǎng)滿W'這間的漢明距離,町和W'堤兩個人 臉特征對應第別立的值,^?,4-(??_;)表示對巧進行化1111曰過日密的密文。
[0023] 4.利用化i 11 ier加密的加法同態(tài)性,服務器計算總的漢明距加 。
[0024] 5.服務器選擇隨機數(shù)r,同樣利用同態(tài)性,計算Epk(dH+r),發(fā)送給客戶端。將漢明距 離和一個隨機數(shù)相加是為了避免客戶端直接得到漢明距離的值,從來進行多次更改嘗試和 蠻力攻擊。
[002引6.客戶端收到Epk(dH+:r),進行解密,得SJdH+r的值。
[0026] 7.使用不經(jīng)意傳輸協(xié)議將結(jié)果投影到合適的值。不經(jīng)意傳輸協(xié)議是一種可保護隱 私的雙方通信協(xié)議,能使通信雙方W-種選擇模糊化的方式傳送消息,保護接受者的隱私 不被發(fā)送者所知道。本發(fā)明采用"多傳一"的不經(jīng)意傳輸方式,具體方法是,服務器事先存儲 額外一個特定的向量(Ζο,Ζι, . . . ,Ζι),其中l(wèi)=max(dH),為漢明距離的最大值。服務器計算 (Χο,Χ?,. . .,Xl),其中每一位的值Xi = Z(i-r)mod(l+l),r為步驟5中服務器選擇的隨機數(shù),即向量 (Χο,Χι,. . .,Xi)是(Ζο,Ζι,. . .,Zi)循環(huán)移位r位的結(jié)果。然后將(Χο,Χι,. . .,Xi)發(fā)送給客戶 端。本發(fā)明中,通過統(tǒng)計多對正負樣本的漢明距離,選擇一個漢明距離的闊值dthreshDld,并設 置
[0027]
[0028] 即當漢明距離小于等于闊值dthreshold時,Zi為0,表示認證通過。當漢明距離大于闊 值dthreshDld時,Zi為1,表示認證請求未通過。
[0029] 8.客戶端根據(jù)dH+r的值檢索到向量(Χο,Χι,. . .,Xi)中的馬g+r,即為認證的輸出結(jié) 果,同樣,其中0表示通過認證請求,1表示不通過認證請求。
[0030] 與現(xiàn)有技術相比,本發(fā)明具有W下優(yōu)勢:
[0031] 1.認證準確率高
[0032] 和SCiFi系統(tǒng)相比,本發(fā)明將手工提取的特征更換為C順自動學習的特征,并進行 二值化W去除噪聲影響,認證準確率較高。在LFW庫view2上的測試認證率為91.48%。
[0033] 2.安全和隱私性好
[0034] 在整個認證的過程中,服務器不會得知請求者的任何特征信息,只能接收到特征 的密文信息而不能進行解密。而客戶端只得知是否認證通過,對包括漢明距離在內(nèi)的其他 信息一無所知。
[0035] 3.效率高
[0036] 本系統(tǒng)采用32化it的特征表示一幅人臉圖片,特征數(shù)據(jù)量較SCiFi系統(tǒng)降低了 2/ 3,因此加密和認證的耗時低,實時性高。
【附圖說明】
[0037] 圖1為本發(fā)明所設計的認證系統(tǒng)框架;
[0038] 圖2為本發(fā)明使用的特征提取器α^Ν的結(jié)構(gòu);
[0039] 圖3為本發(fā)明使用的兩個數(shù)據(jù)庫CASIA-web化ce和LFW中的幾個例子;
[0040] 圖4為對特征進行二值化的例子;
[0041] 圖5(a)