一種針對aes-128算法的新型故障攻擊方法
2023-05-12 22:34:46 1
專利名稱:一種針對aes-128算法的新型故障攻擊方法
技術領域:
本發明涉及一種AES算法的故障攻擊技術,尤其是涉及一種針對AES-U8算法的新型故障攻擊方法。
權利要求
1.一種針對AES-U8算法的新型故障攻擊方法,其特徵在於包括以下步驟1)攻擊者隨機選擇一個明文,獲取該明文在初始密鑰作用下的正確密文,將該正確密文記為C,c =紐(幼^十足9;))十足1Q,其中,S表示AES-128加密算法中經第九輪列混淆操作後的狀態,K9表示AES-U8加密算法中第九輪子密鑰加操作所需的子密鑰,K9包含W[36]、 W[37]、W[38]和W[39]四列16個字節的信息,W[36]列包含K9中的第0個字節的信息K。9、 第1個字節的信息ΚΛ第2個字節的信息K29和第3個字節的信息K39,ff[37]列包含K9中的第4個字節的信息K/、第5個字節的信息K59、第6個字節的信息K69和第7個字節的信息 K79,W[38]列包含K9中的第8個字節的信息K89、第9個字節的信息Κ99、第10個字節的信息 K109和第11個字節的信息Kn9,ff[39]列包含K9中的第12個字節的信息K129、第13個字節的信息Κ139、第14個字節的信息K149和第15個字節的信息K159,SB表示AES-U8加密算法中第十輪加密的字節代換操作,SR表示AES-U8加密算法中第十輪加密的行變換操作,K10 表示AES-U8加密算法中第十輪子密鑰加操作所需的子密鑰,「 Θ 」為異或操作符號;2)攻擊者對步驟1)中隨機選擇的明文進行加密操作,在加密操作過程中任選已正確生成且已儲存在靜態存儲器中的K9的前三列中的一列,對所選列的所有字節進行隨機故障誘導,每次隨機故障誘導操作均獲得一個包含多個字節的隨機故障的有效錯誤密文,記為卩,^^^^幼^十鏟^十於^^^表示包含隨機故障的第九輪子密鑰,^^表示包含隨機故障的第十輪子密鑰;然後,攻擊者依照AES-U8加密算法的工作原理,採用差分分析技術恢復得到Kw的4個字節的信息;3)採用與步驟2)相同的操作,對K9的前三列中剩餘兩列分別進行隨機故障誘導,共恢復得到Kw的12個字節的信息;4)對K9的最後一列字節的信息進行暴力攻擊,獲取Kw的剩餘4個字節的信息;5)攻擊者根據AES-U8密鑰擴展算法的工作原理以及恢復得到的Kltl,逆向計算得到初始密鑰。
2.根據權利要求1所述的一種針對AES-U8算法的新型故障攻擊方法,其特徵在於所述的步驟2)中當隨機故障誘導操作選擇的是K9的第一列W[36]時,對W[36]的所有字節進行隨機故障誘導,獲得包含多個字節的隨機故障的有效錯誤密文F,並以此恢復得到Kki中的4個字節的具體過程為a_l、分別向W[36]的每個字節中引入8比特的隨機故障,得到包含隨機故障的第九輪子密鑰,記為茇9 ;a_2、根據^9以及AES-U8密鑰擴展算法的工作原理,獲得包含隨機故障的第十輪子密鑰,然後分別構建兩個4X4的二維數組,分別記為A和B,將A中的元素記為Ai, A, =^9十I,9,將B中的元素記為Bi,盡=Kw十;根據AES-U8密鑰擴展算法的工作原理,確定B與A之間存在線性關係,表示為
全文摘要
本發明公開了一種針對AES-128算法的新型故障攻擊方法,包括以下步驟首先攻擊者隨機選擇一個明文,獲取該明文在初始密鑰作用下的正確密文;然後攻擊者對隨機選擇的明文進行加密操作,在加密操作過程中任選第九輪的子密鑰的前三列中的一列,對其進行多字節隨機故障誘導,獲得包含隨機故障的錯誤密文;接著採用相同的操作,對第九輪的子密鑰中的剩餘三列分別進行多字節隨機故障誘導,直至完全恢復得到第十輪的子密鑰;再逆向計算得到初始密鑰,優點在於其攻擊第九輪子密鑰加操作所需的子密鑰中的任何一列都不會影響彼此的操作結果,因此可以同時使用多臺設備對AES-128密碼系統進行差分故障攻擊,進而可快速獲得初始密鑰信息,可節省更多的時間。
文檔編號H04L9/06GK102404108SQ20111032833
公開日2012年4月4日 申請日期2011年10月25日 優先權日2011年10月25日
發明者汪鵬君, 郝李鵬 申請人:寧波大學