999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SLIM 算法的9 輪不可能差分分析

2022-03-02 12:42:52鄭會超魏錦鵬
北京電子科技學院學報 2022年4期

鄭會超 魏錦鵬

北京電子科技學院,北京市 100070

引言

分組密碼是最成熟的密碼分支之一,具有速度快、易于標準化和便于軟硬件實現等特點,是一種非常重要的加密方案。 分組密碼作為信息與網絡安全中實現數據加密、消息鑒別及密鑰管理的核心密碼算法,在計算機通信和信息系統安全領域有著廣泛的應用。 近年來,隨著物聯網的發展,無線傳感器網絡(WSN)和無線射頻技術(RFID)的應用越來越廣泛,它們具有硬件制造、維護成本低,網絡健壯性、自組織性強,適用性廣泛的特點,已成為物聯網應用的關鍵組成部分。WSN 和RFID 基于無線網絡傳輸信息,攻擊者更加容易獲得、干擾甚至破壞信息傳輸。 由于物聯網上使用的微型計算設備計算能力有限,人們開始越來越關注輕量級分組密碼算法的研究來保證信息的安全[1]。 輕量級分組密碼算法作為一種特殊的分組密碼算法,它們在硬件實現、加密速度、運行功耗等方面與AES 等傳統分密碼相比有明顯的優勢,更適合物聯網微型計算設備使用。 在這種情況下,大量輕量級分組密碼算法被研究出來,其中比較典型的有Lblock[2],LED[3],PRESENT[4], SIMON[5], Midori[6], SKINNY[7],HIGHT[8],SIMECK[9]等。

一個密碼算法能夠被廣泛應用不僅應具有較高的實現效率,更重要的是保證算法的安全性。 然而,密碼設計者在設計密碼算法過程中,有時會追求高效性導致安全性降低,因此,采用多種密碼分析方法去分析算法的安全性是很有必要的。 目前輕量級分組密碼分析方法主要包括線性分析[10]、差分分析[11]、 截斷差 分分析[12]、不可能差分分析[13]、積分分析[14]、相關密鑰分析[15]、Biclique 分析[16]等。

2020 年,Aboushosha 等人提出了一個新的輕量級分組密碼SLIM[17]。 Aboushosha 等人表明,SLIM 算法能有效抵抗差分分析和線性分析,并給出了7 輪差分路徑和11 輪線性路徑。 目前還沒有文獻對SLIM 算法進行不可能差分分析,本文試圖對SLIM 算法進行不可能差分分析,以進一步評估其安全性。 本文充分利用了SLIM算法輪函數的具體細節,特別是挖掘非線性組件S 盒的差分性質,并結合P 置換設計,利用差分方程求解的方法構造出SLIM 算法的6 輪不可能差分區分器。 進一步,本文利用構造的區分器攻擊了9 輪SLIM 算法,攻擊的數據復雜度為229個選擇明文,時間復雜度為255.83次9 輪加密。

1 SLIM 算法簡介

1.1 SLIM 算法的整體框架

SLIM 算法整體采用Feistel 結構,輪函數采用類似于PRESENT 算法的SP 結構,其中S 盒為4 比特,P 置換采用16 比特的比特拉線設計。SLIM 算法的分組長度為32 比特,密鑰長度為80比特,算法總輪數為32 輪。 該算法的整體加密流程如圖1 所示。

圖1 SLIM 算法的加密流程

在加密時,將32 比特的分組數據分為左右各16 比特,即左支Li和右支Ri均為16 比特。若一輪迭代的輸入為(Li,Ri), 輸出為(Li+1,Ri+1),則有:Li+1=Ri;Ri+1=Li⊕F(Ri,Ki),其中,Ki表示第i 輪的輪密鑰,F 表示輪函數。

1.2 SLIM 算法的輪函數

SLIM 算法輪函數F 的加密流程由輪密鑰加、S 層和P 置換3 部分組成,如圖2 所示。

圖2 SLIM 算法輪函數F 的加密流程

輪密鑰加:分組加密數據的右支Ri與第i輪的輪密鑰Ki進行逐比特異或。

S 層:由4 個相同的4 比特S 盒并行加密,SLIM 算法中的 4 比特 S 盒與國際標準PRESENT 算法的S 盒相同,如表1 所列。

表1 SLIM 算法的S 盒

P 置換:按照比特拉線設計,即16 比特數據按照表2 的規律進行比特置換。 在表2 中,輸入的第i 比特經過P 置換后變為第P(i)比特。

表2 SLIM 算法的P 置換

在研究不可能差分區分器的構造時,由于輪密鑰不影響差分的傳播,因此本文不詳細介紹SLIM 的密鑰擴展算法,具體細節見文獻[17]。

2 SLIM 算法的6 輪不可能差分區分器

構造盡可能長的不可能差分區分器是不可能差分分析的核心。 本節首先挖掘SLIM 算法S盒的具體細節,給出一個關于S 盒的差分性質;然后利用該性質,結合P 置換的加密流程,構造出SLIM 算法的一條6 輪不可能差分區分器。根據表1 給出的SLIM 算法的S 盒,利用python編程搜索S 盒的差分分布表,如表3 所示。

表3 SLIM 算法S 盒的差分分布表

在表3 中,第1 列為S 盒的輸入差分,第1行為S 盒的輸出差分,輸入與輸出差分均用16進制表示,中間的值為該輸入輸出差分方程對應的解的個數。 例如,當S 盒的輸入差分為0x2時,輸出差分為0x3 時,滿足該差分方程的解的個數為2。 注意當解的個數為0 時,說明該輸入差分和輸出差分不匹配,即該輸入差分經過S 盒后不能傳播到該輸出差分。

通過觀察SLIM 算法S 盒的差分分布表,容易得到如下性質。

性質1 對于SLIM 算法的S 盒,當輸入差分分別為0x1,0x8,0x9 時,經過S 盒后輸出差分分別為***1,***1 和***0,以概率1 成立。其中*表示該比特差分可能為0 也可能為1。

證明 以0x8→***1 為例進行分析。 根據表3,當輸入差分為0x8 時,輸出差分可能為0x3,0x7,0x9,0xB,0xD,0xF,則輸出差分前3 比特0 或1 均能夠出現,但是最低比特差分一定為1,即輸出差分的形式為***1。 因此,0x8→***1 以概率1 成立。 類似地,可以說明0x1→***1和0x9→***0 以概率1 成立。

下面利用性質1 并結合P 置換的特點,給出定理1。

定理1 在SLIM 算法中,當輸入差分為(X,016),輸出差分為(016,Y) 時, (X,016) →(016,Y) 是SLIM 算法的一條6 輪不可能差分區分器,如圖3 所示。 其中X 滿足(*12| 1000),Y 滿足(012| 1000),*i表示連續i 個*,0i表示連續i 個0。 “|”表示比特串之間的連接。

證明 首先從正向加密開始計算,正向輸入差分為(X,016), 經過1 輪加密后輸出差分為(016,X), 經過2 輪加密后輸出差分為(X,F(X)),經過3 輪加密后輸出差分的左分支為F(X),計算結果如表4 所示。

表4 輸入差分X 的加密

然后從逆向進行運算,逆向的輸出差分為(016,Y),由于SLIM 算法結構為Feistel 型,加解密運算是相同的,所以逆向解密運算的輪函數與正向加密的輪函數相同。 輸出差分經過1 輪解密后,輸出差分仍為(016,Y),經過2 輪解密后輸出差分為(Y,F(Y)),經過3 輪解密后輸出差分右分支為F2(Y) ⊕Y。 計算結果如表5 所示。

表5 輸出差分Y 的解密

由圖3 可知,需要對比正向加密3 輪的輸出差分左分支與逆向解密3 輪的輸出差分的右分支,即需要對比F(X) 與F2(Y) ⊕Y 的值,由表4 和表5 容易看出二者之間存在矛盾,故(X,016) →(016,Y) 是SLIM 算法的一條6 輪不可能差分區分器,定理1 成立。

圖3 SLIM 算法6 輪不可能差分區分器

3 SLIM 算法的9 輪密鑰恢復攻擊

本節在上節構造的6 輪不可能差分區分器的基礎上,添加1 輪前置路徑和2 輪后置路徑,對SLIM 算法進行9 輪不可能差分攻擊。 圖4 為攻擊9 輪SLIM 算法的示意圖。

圖4 SLIM 算法9 輪不可能差分攻擊

步驟1 選取一個結構,在該結構內任意選擇兩個明文進行異或,它們的差分需要滿足如下形 式: (****, ****, ****, 1***, ****,****,****,1000)。 該結構能夠提供227個明文和253組明文對。

步驟2 選擇2n個上述結構,則這些結構總共能提供2n+27個明文和2n+53組明文對。 選擇密文差分滿足以下形式的密文對留下:(000*,00*0,0*00,1000,****,****,****,0***),保留下來的明密文對數目約為2n+53× 2-14=2n+39。

步驟3 對于保留下來的明密文對,猜測最后一輪的輪密鑰K9的全部16 比特密鑰,即~,使得關于4 個S 盒的差分方程都成立。在平均意義下,每4 個比特通過S 盒使差分方程成立的概率約為2-4,則4 個差分方程同時成立的概率為2-4×4。 因此,經過步驟3 后剩余明密文對的數目約為2n+39× 2-16= 2n+23。

步驟4 對于剩余的明密文對,猜測第8 輪的輪密鑰K8的低4 比特密鑰,即~,使得關于最右邊S 盒的差分方程成立,差分方程成立的概率約為2-4。 因此,經過步驟4 后剩余明密文對的數目約為2n+23× 2-4= 2n+19。

步驟5 對于經過上述步驟處理的剩余明密文對,猜測第1 輪的輪密鑰K1的全部16 比特密鑰,即~,若關于4 個S 盒的差分方程都成立,則篩除步驟3 到步驟5 中猜測的36 比特密鑰。

當猜測的36 比特候選密鑰滿足不可能差分的輸入輸出時,猜測的密鑰一定是錯誤的,密鑰是錯誤的概率是2-16。 經過2n+19組明密文對的篩選,最終剩余錯誤密鑰的個數N=(236- 1)×(1- 2-16)2n+19。 為使N?1,本文取n=2,此時錯誤密鑰都被淘汰,剩下的即為正確密鑰。

復雜度分析:在上述攻擊中,當n=2 時,數據復雜度為229個選擇明文。 時間復雜度主要由步驟3 到步驟5 提供。 在步驟3 中,解密過程涉及4 個S 盒,而1 輪解密共涉及4 個S 盒,因此步驟3 的時間復雜度為2× 241× 216× 4/4=258次1 輪解密;在步驟4 中,解密過程只涉及1 個S 盒,因此步驟4 的時間復雜度為2× 225× 216×24× 1/4= 244次1 輪解密;在步驟5 中,加密過程涉及4 個S 盒,而1 輪加密共涉及4 個S 盒,因此步驟5 的時間復雜度為2× 221× 216× 24×216× 4/4= 258次1 輪加密。 故總的時間復雜度為258+ 244+ 258≈259次1 輪加密,即259÷ 9 ≈255.83次9 輪SLIM 算法加密。

4 結束語

本文主要研究了SLIM 算法在抵抗不可能差分攻擊時的安全性問題。 通過仔細研究輪函數的結構,本文構造了SLIM 算法6 輪不可能差分區分器,并利用該區分器攻擊了9 輪SLIM 算法。 通過上述攻擊可以恢復K1的16 比特密鑰,K8的4 比特密鑰和K9的16 比特密鑰,共計36比特密鑰信息,該攻擊的數據復雜度為229個選擇明文,時間復雜度為255.83次9 輪加密。 本文研究表明SLIM 算法在抵抗不可能差分攻擊時有足夠的安全冗余。 SLIM 算法是否存在更長的不可能差分區分器是我們下一步的研究工作。

主站蜘蛛池模板: 激情综合网址| 国产色爱av资源综合区| 在线无码私拍| 国产91丝袜| 国产九九精品视频| 亚洲男人的天堂在线| 波多野结衣在线se| 午夜国产理论| 99在线观看国产| 粗大猛烈进出高潮视频无码| 亚洲天堂区| 一级毛片免费观看久| 国产女同自拍视频| 蜜桃臀无码内射一区二区三区| 国产一级在线播放| 欧美国产在线看| 国产永久免费视频m3u8| 999精品在线视频| 少妇精品在线| 亚洲中文在线看视频一区| 国产电话自拍伊人| 夜夜操狠狠操| 精品少妇人妻一区二区| 一本大道香蕉中文日本不卡高清二区| 日韩区欧美国产区在线观看| 97国产在线播放| 国产欧美视频一区二区三区| 亚洲中文字幕23页在线| 99re这里只有国产中文精品国产精品 | 午夜电影在线观看国产1区| 99热这里只有精品2| 国产美女免费| 在线观看免费国产| 视频一本大道香蕉久在线播放| 亚洲系列无码专区偷窥无码| 极品尤物av美乳在线观看| 国内精品91| 国产丝袜啪啪| 综合五月天网| 天天激情综合| 亚洲成人播放| 亚洲精品第五页| 国产精品爽爽va在线无码观看| 第九色区aⅴ天堂久久香| 午夜福利视频一区| 啪啪国产视频| 97在线视频免费观看| 日韩123欧美字幕| 人妻21p大胆| AV不卡国产在线观看| 不卡午夜视频| 亚洲精品无码抽插日韩| 99中文字幕亚洲一区二区| 亚洲欧美成人在线视频| 欧美三级自拍| 草逼视频国产| 无码不卡的中文字幕视频| 97免费在线观看视频| 亚洲中文字幕97久久精品少妇| 伊人激情综合网| 国产精品三区四区| 午夜福利无码一区二区| 91年精品国产福利线观看久久 | 国产真实二区一区在线亚洲| 国产情侣一区二区三区| 久久婷婷六月| 国产成人久视频免费| 亚洲人成色在线观看| 国产久操视频| 亚洲天堂免费| 青青草原国产av福利网站| 99ri国产在线| 久久超级碰| 激情网址在线观看| 亚州AV秘 一区二区三区| 日本免费一区视频| 欧美精品二区| 亚洲热线99精品视频| 98超碰在线观看| jizz在线免费播放| 日韩亚洲综合在线| 欧洲一区二区三区无码|