蔡志鋒, 陳 偉
(1. 三江學院計算機科學與工程學院,江蘇 南京 210012;2. 東南大學計算機科學與工程學院,江蘇 南京 211189)
物聯(lián)網(wǎng)(IoT)作為萬物互連的基礎,能夠實現(xiàn)各類智能設備間的橋接,并最終匯入Internet。現(xiàn)代物聯(lián)網(wǎng)及其相關技術發(fā)展迅猛,由Gartner提供的數(shù)據(jù)顯示,在2016年時,其全世界接入的設備數(shù)量大約是60億,至2020年時,接入數(shù)量可達到260億。目前其應用已經(jīng)滲透到人們生活的方方面面,如智能交通、生態(tài)家居、車聯(lián)網(wǎng)等[1]。在物聯(lián)網(wǎng)規(guī)模急速擴張的同時,構成它的組件也在朝著多樣化方向發(fā)展,呈現(xiàn)出嚴重的差異性。盡管豐富的物聯(lián)網(wǎng)在不斷的為生活和工作提供便捷高效的需求,但是也存在著巨大的用戶數(shù)據(jù)安全風險。接入組件與網(wǎng)絡的復雜多樣,以及大量用戶產(chǎn)生的龐大數(shù)據(jù)信息,使得網(wǎng)絡傳輸數(shù)據(jù)很容易遭受攻擊[2],給大規(guī)模物聯(lián)網(wǎng)信息安全帶來嚴峻挑戰(zhàn),安全傳輸也由此成為大規(guī)模物聯(lián)網(wǎng)的重要研究課題[3]。
研究物聯(lián)網(wǎng)安全就要涉及密碼領域,通過原始明文的加密操作形成密文,從而能夠保證數(shù)據(jù)的完整、保密和可靠性等。由于受到物聯(lián)網(wǎng)組件的影響,不適合部署過于繁雜的密碼機制,導致一些優(yōu)秀的密碼機制無法應用其中。盡管如此,針對物聯(lián)網(wǎng)數(shù)據(jù)安全問題,仍然涌現(xiàn)出不少研究成果。文獻[4]提出將NTRU應用于物聯(lián)網(wǎng),同時針對節(jié)點采用了交互認證。文獻[5]基于文獻[4]設計了優(yōu)化NTRU的密碼機制,降低了密碼機制的復雜度。NTRU可以較好的防守量子攻擊,并且認證開銷少,適于物聯(lián)網(wǎng)部署。文獻[6]設計了CP-ABE方案,可以保持定長的密文與私鑰。該方法具有較好的效率,缺點是隱藏結構可能存在安全隱患。文獻[7]針對CP-ABE進行了優(yōu)化,并在此基礎上設計了屬性加密,雖然改善了CP-ABE的安全問題,但是是以損失效率為代價,密碼機制的速度會受數(shù)據(jù)屬性影響。文獻[8]把多變量公鑰引入物聯(lián)網(wǎng)中,實現(xiàn)數(shù)據(jù)的聚合加密傳輸。該方法的密碼機制有利于防守量子攻擊,但是聚合處理會有損傳輸效率。基于現(xiàn)有研究成果及其優(yōu)缺點,本文提出了擴展多變量公鑰,在傳統(tǒng)多變量公鑰的基礎上,擴展域維度。同時為避免線性方程影響,對原始域與擴域建立同構關系,并設計了相應加密和解密策略。
在研究多變量公鑰時,可以將其轉化為求解NP問題。假設某域為G(q),它的階數(shù)為q,其中包含的二次多項式描述為K={p1(x),p2(x),…,pk(x)},則在該域中計算多元變量可視作MQ模型。假定MQ的解集為x=(x1,x2,…,xn),K中對應的二次方程表示如下

(1)
pi(x)可以用于描述多變量公鑰。式中,n代表G(q)中的變量數(shù)量;aijm、βij和εi為系數(shù),且aijm∈G(q),βij∈G(q),εij∈G(q)。當某多項式p′在G(q)中非線性可逆,對于G(q)中的任意公鑰p,可以采取仿射處理得到
p=T°P′°T
(2)
其中,T與T′項在G(q)域中線性可逆。因為公鑰P需要通過T、P′和T′復合得到,所以T、P′和T′代表私鑰。公鑰P的仿射過程可視作IP模型。MQ模型與IP模型均為NP問題,由它們共同組成了多變量公鑰基礎。進行加密處理時,把明文表示為G(q)域中的多元變量x=(x1,x2,…xn),利用二次方程反射得到相應加密結果y=(y1,y2,…yn)。在解密處理時,采用簽名求逆方式,并把經(jīng)過簽名的數(shù)據(jù)通過二次方程計算,確認其是否有效。


(3)


(4)
根據(jù)式(4)將加密過程進行擴展,對應的公鑰p描述如下
(y1,y2,…yn-l1)=T-°π°F°π-°T′-(x1,x2,…,xn)
(5)


(6)
其中,aijm、βij、δij、γj和ε均為方程系數(shù)。根據(jù)(6)式可知,利用系數(shù)aijm、βij、δij、γj和ε,能夠確定出相應的二次方程。在簽名認證過程中,必須搜索出全部二次方程。這樣一來,就可以將方程搜索轉換為解空間搜索。在確定系數(shù)數(shù)量時,可采取如下公式

(7)

y′i=Pi(x1,x2,…,xn),1≤i≤m
(8)
該模型為一個方程組,在計算時,應該盡可能保證無關方程數(shù)量。模型對密文計算時得到的方程如下

(9)
由式(9)構建多變量方程,并結合式(8)對方程組進行重構,從而計算出相應系數(shù),完成恢復操作。
基于以上設計,密碼機制的具體流程描述如下,根據(jù)擴展次數(shù)求解系數(shù)的數(shù)量,并根據(jù)已知公鑰進行差分。構建(n-l1)×n矩陣ML為

(10)
由于方程組中的方程具有無關性,所以ML的行向量也具有無關性。此時,利用如下公式計算向量(r0,0,r1,0,…,rn-l1,0)

(11)
其中,Zi+1表示系數(shù)矩陣。根據(jù)式(11)完成矩陣R的恢復

(12)
利用矩陣R與T-的關系,恢復矩陣T-。

Frob(l1)mod n(G)·(e′0,0,e′1,0,…,e′n-l1,0)=0
(13)
通過求解,恢復得到中間矩陣E如下

(14)
根據(jù)T′-=E·ML-1進一步恢復得到T′-。
4)利用恢復得到的T-與T′-,代入公鑰方程P=T-°π°F°π°T′-,求解出映射F,恢復明文。


(15)

當發(fā)生線性攻擊時,多變量公鑰可以采取Tame變換,從而在原本的明密文關系方程中引進未知變量。即便在明密文映射數(shù)量達標,由于存在Tame類變量,同時本文方法引入投射與限定,去除了末尾部分公鑰方程,依然不能完成多變量求解。
當發(fā)生差分攻擊時,對于域中任意點a,多元變量與密文映射F的差分可以描述為
CF(a,x)=F(x+a)-F(x)-F(a)+F(0)
(16)
根據(jù)Y=F(X)=Xq(n-1)/2+1,可以推導出差分CF(a,x)應該具有如下性質
CF(σa,x)+CF(a,σx)=(σ+σ(n-1)/2)CF(a,x)
(17)
由此性質可得,傳統(tǒng)的多變量公鑰p=T°P′°T′在做差分處理后,結果是
CY(a,σx)+CY(σa,x)
=T°(σ+σq(n-1)/2)°T′-1(CY(a,x))
(18)
本文在公鑰方程中采用了減法,能夠避免對方程組的重構。結合擴展以后,公鑰方程轉換為P=T-°π°F°π°T′-,此時代入式(17)的性質可知,其對稱性已經(jīng)不滿足。這表明擴展后的公鑰加密有利于應對差分攻擊。
當發(fā)生秩攻擊時,攻擊者會利用對G(q)域的搜索,得到如下組合關系
M=υ1M1+υ2M2+…υuMu
(19)
該組合是線性的,且其秩需要符合關系rank(M)≤r。由此可知,秩攻擊也是一個NK問題。秩的復雜性與其大小有關,這就決定了秩存在被求解的可能性。本文對有限域采取了擴展,使得到的二次方程數(shù)量顯著增加。而二次方程又是由明文構成,不確定性嚴重。盡管低秩能夠被求解,可是二次方程的數(shù)量遠超過其有效范圍。所以,還是難以被秩攻擊破解。

實驗過程中,為充分模擬大規(guī)模物聯(lián)網(wǎng)數(shù)據(jù)傳輸,屬性基數(shù)設為50,以步長10進行遞增,形成累計10類傳輸狀態(tài)。并從加密和解密時間進行性能分析。在傳輸數(shù)據(jù)屬性遞增的過程中,采用256bits的安全級別,得到各安全傳輸方案的加密和解密時間,結果如圖1所示。由圖中曲線可知,本文方案的加密與解密時間都不受數(shù)據(jù)屬性數(shù)量的影響,在復雜屬性數(shù)據(jù)傳輸時,發(fā)送節(jié)點能夠對其進行快速高效的加密處理,接收節(jié)點能夠對其進行快速高效的解密處理。這是由于方案在加密時,無需針對單一屬性采取聚合或者求解加密組件。在解密時,方案只存在線性方程求解,沒有其它的雜湊處理。在整個密碼機制中,完全不和屬性數(shù)量產(chǎn)生關聯(lián),適用于大規(guī)模復雜物聯(lián)網(wǎng)傳輸應用場景。

圖1 加密與解密時間曲線
對多變量公鑰網(wǎng)絡傳輸?shù)陌踩赃M行驗證。實驗中針對任意節(jié)點采取定量(1000次)攻擊,統(tǒng)計方案成功抵御攻擊的概率。這里采用文獻[7]和文獻[8]方案進行對比驗證,抵御攻擊的結果如圖2所示。圖2描述了物聯(lián)網(wǎng)中任意10個節(jié)點的攻擊數(shù)據(jù),根據(jù)結果分析可知,本文方法抵御攻擊的整體性能明顯優(yōu)于對比方法,攻擊防守率最高達到99.93%,而文獻[7]和文獻[8]的攻擊防守率最高分別為99.79%和95.70%。此外,文獻方法攻擊節(jié)點的防守性能會存在較大的差異,網(wǎng)絡均衡性較差。而在部署本文方案時,實驗中所有攻擊節(jié)點的防守性能比較均衡,平均防守率為99.56%。這是因為本文設計的擴展多變量公鑰改變了域維數(shù),在篡改攻擊與秩攻擊時,通過乘積運算會顯著增加解密的復雜度。在擴域基礎上,又采用去掉末尾若干公鑰方程的方式,增加方程組重構難度,同時也打破其對稱性,能夠有效防止線性與差分攻擊。

圖2 抵御攻擊性能結果
基于網(wǎng)絡傳輸安全性實驗環(huán)境,統(tǒng)計各方案的密鑰更新速度,結果如圖3所示。根據(jù)統(tǒng)計結果,文獻[7]和文獻[8]的平均密鑰更新分別為144.76ms和139.08ms,本文則為80.14ms,無論是單個節(jié)點,還是整體比較,本文的密鑰更新速度都優(yōu)于對比方案。這主要是由于本文的密碼機制具有高效的加密與解密性能,適用于大規(guī)模物聯(lián)網(wǎng)傳輸場景。

圖3 密鑰更新速度結果
對攻擊節(jié)點的傳輸效率進行統(tǒng)計,得到結果如圖4所示。根據(jù)結果對比,本文的傳輸效率平均值為97.24%,分別高于文獻[7]和文獻[8]方法2.27%和3.15%。該結果表明在物聯(lián)網(wǎng)信息傳輸過程中,部署本文方案可以獲得更好的傳輸質量與魯棒性。

圖4 傳輸效率統(tǒng)計結果
為了提高大規(guī)模物聯(lián)網(wǎng)數(shù)據(jù)安全傳輸性能,本文提出了一種新型多變量公鑰方案。該方案利用對原始域的維度擴展,增加公鑰方程系數(shù),提升攻擊破解的復雜度。同時,采取刪除部分公鑰方程的方式,進一步增加破解難度。仿真過程中,首先驗證了新型密碼機制的加密和解密速度與傳輸數(shù)據(jù)屬性間的無關性;然后驗證了本文方法在數(shù)據(jù)傳輸時具有良好的抗攻擊性能,平均防守率達到99.56%,平均更新速度達到80.14ms,兩項指標均得到顯著提升;最后驗證了本文方法在傳輸效率方面的優(yōu)化,平均傳輸效率提升至97.24%。