張曉璐
摘要:本文提出一種有效、實用的隱私保護方法,用于計算環(huán)境中大規(guī)模加密圖像數(shù)據(jù)的特征提取。為了保證運算的安全性,設(shè)計了安全乘法協(xié)議(SMP)和安全比較協(xié)議(SCP)。該方法對原始圖像數(shù)據(jù)進行隨機分割,并將特征提取操作分配到兩個不同的云服務(wù)器上,以保持其關(guān)鍵特性,同時實現(xiàn)效率和安全性要求。實驗結(jié)果表明,與現(xiàn)有的方法相比,該方法具有較高的召回率和精確度,并具有較低的計算和通信開銷。
關(guān)鍵詞:云計算:特征提?。弘[私保護
0引言
機器學(xué)習(xí)技術(shù)可以從大規(guī)模多媒體數(shù)據(jù)中發(fā)掘有價值的知識和隱藏的信息,但在本地處理大量多媒體數(shù)據(jù)是一項耗時的工作。由于云計算的快速發(fā)展和云計算服務(wù)的普及,數(shù)據(jù)所有者利用豐富的云計算資源,將大量的圖像數(shù)據(jù)和圖像處理任務(wù)遷移到遠程的云服務(wù)器上,以節(jié)省成本和增加服務(wù)的靈活性。然而,由于數(shù)據(jù)所有者和云所屬的信任域不同,云計算環(huán)境中的數(shù)據(jù)存儲和計算也引發(fā)了很大的安全性和隱私問題。作為機器學(xué)習(xí)中的關(guān)鍵預(yù)處理步驟,研究者在保護隱私的云計算框架中對特征提取進行了廣泛的研究,以便有效地去除不相關(guān)和冗余的數(shù)據(jù),并提高學(xué)習(xí)準(zhǔn)確性。在現(xiàn)有文獻中,研究者提出了各種隱私保護計算,包括模冪運算、線性方程和kNN搜索。這些工作主要關(guān)注數(shù)值數(shù)據(jù)或文本數(shù)據(jù)的工程計算問題。近幾年,密文域中的隱私保護數(shù)據(jù)搜索已經(jīng)擴展到基于內(nèi)容的多媒體檢索、人臉識別和指紋識別,以及如何在云計算環(huán)境中實現(xiàn)安全圖像搜索。然而,現(xiàn)有的研究均假設(shè)圖像已經(jīng)由特征提取算法預(yù)處理以獲得圖像的矢量表示。由于圖像特征提取在多媒體數(shù)據(jù)處理中的重要性及其對海量數(shù)據(jù)的繁重操作,特別是對于其巨大尺寸和大量特征點的衛(wèi)星數(shù)據(jù),從密文域提取或檢測圖像特征已開始吸引越來越多研究人員的研究興趣。
Hsu等人采用同態(tài)加密、探討加密域中隱私保護尺度不變特征變換(SIFT);然而該解決方案具有很高的計算開銷。Qin等人借助于保持加密和隨機排列,提出了一種改進的方案。Wang等人考慮基于形狀特征提取的安全和私有外包問題,并分別通過使用同態(tài)加密和亂碼電路協(xié)議提出了兩種具有不同安全級別的方法。雖然在隱私或效率方面付出了巨大努力,但是先前解決方案的一個共同限制是都缺乏關(guān)于保留原始圖像特征提取算法的關(guān)鍵特性的全面分析和評估。Hu等人借助于亂碼電路來解決這個問題,盡管該解決方案很好地保留了SIFT的關(guān)鍵特性,但仍有進一步降低其計算和通信成本的空間。更重要的是,其仍然無法消除邊緣響應(yīng),使得檢測到的關(guān)鍵點對于少量噪聲不穩(wěn)定。因此,如何在海量圖像數(shù)據(jù)上實現(xiàn)隱私保護圖像特征提取,同時減輕計算和通信負擔(dān)是一個具有挑戰(zhàn)性的問題,
1 問題描述
考慮一個基于云的多方圖像特征提取計算模型:數(shù)據(jù)所有者O、云服務(wù)器S1以及云服務(wù)器S2。假設(shè)數(shù)據(jù)擁有者O持有大量敏感圖像文件,而數(shù)據(jù)所有者缺少圖像處理所需的資源。因此,O會將圖像處理任務(wù)分配到具有豐富存儲和計算資源的云。假設(shè)S1和S2分別屬于兩個不同的云服務(wù)提供商。為了保護自身的隱私,O首先對每個圖像集進行加密處理,然后將密文(即加密后的圖像數(shù)據(jù))分發(fā)到S1和S2。通過一系列安全交互協(xié)議在密文域中運行SIFT算法之后,S1和S2將加密的特征描述符返回給數(shù)據(jù)所有者,數(shù)據(jù)所有者可以從其加密版本中恢復(fù)真實特征描述符。
現(xiàn)有研究指出,將圖像特征提取任務(wù)分配給一個云實體容易導(dǎo)致隱私的泄漏。因此,有必要使用至少兩個云實體來實現(xiàn)隱私保護。與此同時,假設(shè)云實體是半可信的。
本文的目標(biāo)是實現(xiàn)具有隱私保護的圖像特征提取,同時盡可能保留圖像的關(guān)鍵特征。為此,該方法需要實現(xiàn)以下的設(shè)計目標(biāo):
(1)安全約束。原始圖像內(nèi)容的隱私不能被泄露;
(2)有效性約束。由該方法提取的特征向量應(yīng)盡可能接近原始SIFT算法的結(jié)果:
(3)效率約束。與單獨執(zhí)行SIFT算法相比,數(shù)據(jù)所有者僅需要進行少量的計算。
2 安全運算協(xié)議
2.1 安全乘法協(xié)議SMP
假設(shè)兩個服務(wù)器S1和是2分別擁有私有的k比特長度的整數(shù)x1和y1的。在執(zhí)行協(xié)議之后,S1能夠接收到一個服從均勻分布的隨機值s1而S2接收到另一個服從均勻分布的隨機值r1,使得s1+r1=x1×y1(mod p)。
本文的安全乘法協(xié)議(SMP)能使雙方安全地計算多對私有整數(shù)的乘積,使計算和通信成本大大降低。由于僅考慮8位長度的輸入和16位的p值,乘積中間結(jié)果的長度會遠小于p的長度。因此,為了便于說明,在下文中將取模操作省略。在SMP開始時,S1將首先使用SIMD以打包方式加密x.然后將加密后的x發(fā)送給S2。S2將利用同態(tài)屬性將其與y相乘。最后,S2將使用隨機生成的數(shù)字加密乘法操作的結(jié)果,并將其發(fā)送到S1進行解密。
2.2 安全比較協(xié)議
安全比較協(xié)議(SCP),能夠在隱私得到保護的條件下將兩個整數(shù)進行比較。SCP協(xié)議通過結(jié)合SHE與SIMD來優(yōu)化安全標(biāo)量積協(xié)議(SPP),以實現(xiàn)在對多對整數(shù)進行比較的同時保護隱私,并使通信和計算開銷減少。
如果a1(b1)等于1.則認為x比y大(?。?。S1將首先對x進行逐位加密并將密文發(fā)送到S2。然后S2將基于同態(tài)性質(zhì)在密文上采用公式(1)進行計算。在k次循環(huán)后,S2會獲得最終的加密結(jié)果,并將其發(fā)送到S1進行解密。
3系統(tǒng)詳細設(shè)計
3.1 圖像加密
使用矩陣In.n表示像素為n×n的原始圖像i.矩陣的元素是一個8位的整數(shù)。數(shù)據(jù)所有者從O到255中隨機選擇n×n個整數(shù)以生成隨機矩陣I2(x.y),然后通過計算I1(x.y)來對I(x.y)進行加密:I1(x.y)=I(x.y)+I2(x.y)。密文I1和I2被發(fā)送到S1和S2。
3.2 關(guān)鍵點定位
服務(wù)器Si接收到密文Ii后,通過對Ii進行卷積和下采樣操作創(chuàng)建高斯空間Li(x.y.σ),即
在極值檢測過程中,每一個樣本點將會與其26個鄰居進行比較,也會與高斯差空間D(x.y.σ)中的相鄰尺度進行比較。如果樣本點均大于或者小于鄰居和相鄰尺度,則該樣本點會被選擇作為候選關(guān)鍵點。為了判斷D(x.y.σ)和D(x.y+1.σ)的大小,云服務(wù)器S1和S2分別計算△D1=D1(x.y.σ)-D1(x.y+1.σ)和△D2=D2(x.y.σ)-D2(x.y+1.σ),然后采用SCP算法比較△D1和△D2的大小。當(dāng)△D1≥AD2,則認為D(x.y.σ)≥D(x.y+1.σ);否則,D(x.y.σ)
在確定了候選的關(guān)鍵點后,將進行邊緣響應(yīng)移除操作,以去除不穩(wěn)定的關(guān)鍵點。對于云服務(wù)器S1的關(guān)鍵點D1(x.y.σ),其在x方向、y方向和xy方向的偏導(dǎo)數(shù)如下所示:
同理可以計算云服務(wù)器S2的關(guān)鍵點D(x.y.σ)的三個方向上的偏導(dǎo)數(shù)R2xx、R2yy和R2xy。S1和S2分別使用SMP協(xié)議計算R1xx和R2yy竹的乘積M1(R1xxR2yy)和M2(R1xxR2yy),并有M1(R1xxR2yy)+M2(R1xxR2yy)=R1xxR2yy。同理,S1可以通過計算得到M1(R1xxR2yy)和M1(R1xyR2xy),S2可以通過計算得到M2(R1yyR2xx)和M2(R1xyR2xy)。云服務(wù)器S1中的海塞矩陣的跡和行列式如下所示:
3.3 方向指定
一旦確定了關(guān)鍵點的位置,就應(yīng)根據(jù)像素差異計算梯度幅度和方向,以便建立方向直方圖。與參數(shù)σ相關(guān)聯(lián)的關(guān)鍵點D(x.y.σ)用于選擇具有最接近尺度的高斯平滑圖像l.所有以下計算以尺度不變的方式執(zhí)行。為了便于表達,將在以下討論中省略參數(shù)σ。
對于關(guān)鍵點L(x.y)上的方向計算,S1和S2將首先確定L(x.y+1)與L(x.y-1)之間,以及L(x+1.y)和L(x-1.y)之間的大小。當(dāng)L(x.y+1)>L(x.y-1)時,a=1;否則a=-1。當(dāng)L(x+1.y)≥L(x-1.y)β=1;否則β=-1。通過對L1(x.y+1)-L(x.y-1)和L2(x.y+1)-L2(x.y-1)使用SCP協(xié)議,可以實現(xiàn)安全比較。為了獲得更精細的方向范圍,S1進行以下的計算:
同理,S2也會計算△Diffi=Diff2y-kDiff2x,其中,常數(shù)k用來確定方向的間隔。然后S1和S2會使用SCP協(xié)議比較△Diff1和△Diff2的大小。如果△Diff1≥△Diff2,則方向大于aretank。重復(fù)上述步驟,可以得到一個粒度更小的方向度數(shù)范圍。
將梯度的幅度定義為m(x.y)=|Diffx|+|Diffy|,其中,Diffx=L(x+1.y)-L(x-1.y),Diffy=L(x.y+1)-L(x.y-1)。S1和S2分別計算其梯度幅度m、(x.y)和m.(x.y),然后在被相同的高斯窗口加權(quán)后,根據(jù)其方向分別累加m1和m2,以構(gòu)建加密方向直方圖H1和H2。
3.4 圖像描述符生成
S1和S2檢測到關(guān)鍵點上的主導(dǎo)方向后,將生成各自的描述符。首先,坐標(biāo)和梯度方向相對于關(guān)鍵點方向旋轉(zhuǎn)。在旋轉(zhuǎn)過程中需要確定梯度方向的值,因此使用其方向所在區(qū)間的中值來替換實際的方向值。例如,如果一個點的方向位于10°-20°的區(qū)間內(nèi),使用15°作為其梯度方向值來執(zhí)行旋轉(zhuǎn)操作。這種近似的取向替代對最終結(jié)果的影響可以忽略不計。其次,在關(guān)鍵點周圍的4×4子區(qū)域中,采樣點的梯度大?。磎(x.y))由高斯窗口加權(quán)并累積成4x4方向直方圖。接下來,每個直方圖由8個方向區(qū)間組成,每個區(qū)間的跨度為45°。為了提高系統(tǒng)效率,在方向分配階段預(yù)先計算所有梯度。最后,采用具有128個維度的特征向量表示關(guān)鍵點的16個直方圖。設(shè)V1和V2分別表示由S1和S2生成的特征向量,并會被發(fā)送到數(shù)據(jù)所有者O。數(shù)據(jù)所有者通過計算y=V1-V2來恢復(fù)實際特征向量,其將被歸一化為單位長度,以便實現(xiàn)仿射的變化的仿射變化的不變性。
4 實驗評估
本節(jié)采用圖像數(shù)據(jù)集INRIA Graffiti來評估安全SIFT外包方案的有效性和效率。實驗環(huán)境配置如下:操作系統(tǒng)為Linux Ubuntu.算法實現(xiàn)采用C+/高級編程語言,處理器為Intel酷睿3.1GHz.內(nèi)存為8GB。
將本文算法與ED-SIFT進行比較。為了更好地評估特征向量的獨特性和魯棒性,選擇測量關(guān)鍵點匹配的性能,即給定一個點,將在數(shù)據(jù)集中找到該點的所有匹配。將計算特征向量之間的歐幾里德距離,以找到數(shù)據(jù)集中的最近點和第二個最近的點。如果這兩個點之間的距離比率低于閾值t.則該點與其最近點匹配。使用召回率和匹配準(zhǔn)確度作為評估指標(biāo)。圖1是召回率和匹配準(zhǔn)確度之間的關(guān)系。匹配準(zhǔn)確度是準(zhǔn)確匹配數(shù)量與總匹配數(shù)量的比。圖2和圖3分別是計算和通信開銷的對比結(jié)果。結(jié)合三個實驗結(jié)果圖,可觀察到本文的方法無論是在召回率、精確度及開銷方面都要優(yōu)于現(xiàn)有的方法。
5 結(jié)束語
本文提出了一種新穎的隱私保護圖像特征提取方法,該方法由安全交互協(xié)議SMP和安全比較協(xié)議SCP組成。通過實驗,分析評估了該方法的有效性,實驗結(jié)果表明該方法優(yōu)于現(xiàn)有技術(shù)。未來的工作集中于在真實的云計算集群中部署該方法,進一步評估該方法在真實云計算流量下的性能。