AES 256被破解了?
對于TLNR(Too Long, Not Read)的讀者來說,先把答案放在這:是的,但也不盡然。
事件回顧如下:前幾日在互聯(lián)網(wǎng)上轉(zhuǎn)發(fā)的一條題為“AES 256加密被破 一套1500元設(shè)備5分鐘內(nèi)搞定”的新聞引起了各界的關(guān)注。新聞在國內(nèi)各大媒體轉(zhuǎn)載,熱門評論里不乏各種被高贊但實際上并不正確的說法:有說是字典攻擊無線信號,和破解AES是兩回事的,也有所是根據(jù)無線電特性來攻擊的,和AES沒關(guān)系的。還有想搞個大新聞的媒體直接說是路由器被破解,甚至還說成了5分鐘破解任何WiFi密碼的,唯恐天下不亂。
實際上這次的破解來自Fox-IT [1],確實攻擊了AES算法本身,利用了電磁輻射泄露的信息,可以實現(xiàn)無線攻擊(隔墻有耳)。這樣的攻擊形式稱為旁路攻擊(Side Channel Attack),在學(xué)術(shù)界和工業(yè)界已經(jīng)研究了20多年,是一種較為系統(tǒng)完善的攻擊方法,此次攻破AES256的方法是利用電磁旁路信號來完成差分功耗分析(DPA),獲取了密鑰。從介紹本身來看,是一個很不錯的工作,但不是AES首次被破解,AES 128早就可以用類似的方式破解,AES 256在DPA看來,和前者沒有本質(zhì)差異,在實驗室中早已破解。當(dāng)然也做不到5分鐘破解任何WiFi密碼。原因是SCA需要一定的物理條件,目前AES算法本身還是安全的,不必驚慌過度。
背景知識
以AES為例,AES是高級加密標(biāo)準(zhǔn)Advanced Encryption Standard的縮寫,是美國聯(lián)邦政府采用的一種分組加密標(biāo)準(zhǔn),也是目前分組密碼實際上的工業(yè)標(biāo)準(zhǔn)。AES廣泛使用在各個領(lǐng)域(當(dāng)然包括WiFi的加密過程),實際上目前主流的處理器中廣泛包含了AES的硬件加速器(低至售價幾美元的STM32中有CRYP [2],高至售價上千美元的Intel CPU中有AES-NI [3])。對于這樣一個成熟的密碼學(xué)標(biāo)準(zhǔn),密碼算法本身設(shè)計的十分完善,傳統(tǒng)的差分分析,線性分析等方法基本上不能在有限復(fù)雜度內(nèi)完成,AES在理論上是安全的。但是正如本文標(biāo)題描述的那樣,即便有絕對安全的算法,也做不到絕對安全的系統(tǒng)。唯物辯證法中有聯(lián)系的普遍性和多樣性原理,現(xiàn)代密碼系統(tǒng)在設(shè)計上理論安全,并不能替代密碼系統(tǒng)的實現(xiàn)安全性。攻擊者可以在不干擾密碼芯片運行的前提下,觀測時間,功耗,電磁輻射等旁路泄露,然后結(jié)合算法的實現(xiàn)進行密鑰還原,實現(xiàn)所謂的旁路攻擊。對于旁路攻擊的防御,涉及到密碼算法實現(xiàn)安全性這一范疇,很顯然,這次攻擊成功的AES 256,表明實現(xiàn)安全性的研究還有很長的路要走。