如果你還在使用基于早期信號標準的GSM手機,那么你最好在使用手機的過程中小心一點了。因為根據國外媒體的最新報道,安全研究專家通過測試發現,他們只需要使用三張NVIDIA GeForce GTX690顯卡(GPU)就可以破解GSM A5加密算法。
A5加密算法是何物?
A5算法在1989年由法國人開發,它是一款主要用于GSM系統的序列密碼算法。A5加密算法用于對那些從移動電話到基站的通信連接進行加密,該算法先后有三個版本,分別為A5/1、A5/2和A5/3,如果沒有特別說明,通常所說的A5指的是A5/1。關于GSM加密的問題,有些人認為密碼的安全問題將阻礙GSM手機的推廣;另一些人則認為A5加密算法的強度太弱,無法抵抗一些情報機構的竊聽。A5加密算法的特點是效率高,適合在硬件上高效實現,而且它能也通過已知的統計檢驗。
總之,A5加密算法的基本思路并沒有什么問題,而且它的執行效率非常高。但是從密碼學和安全性的角度出發,這個算法就存在很多的安全問題了。
GSM通信加密存在嚴重的安全問題
近期,一群來自新加坡科技研究局(A*STAR)的安全研究專家表示,在普通GPU處理器的幫助下,他們可以在幾秒鐘之內破解GSM移動數據所采用的加密算法。實際上,人們早在2009年就已經知道A5/1加密算法中存在嚴重的安全問題了。
由于當初在2G通信技術正式投入使用之前,相關部門對2G通信加密中存在的安全問題一直不予披露,而且考慮到保密性,所以這些加密算法也沒有提交給同行進行安全審核,所以才導致了目前的這種狀況存在。其中,A3加密算法專門用于身份驗證,A5加密算法專門用于信息加密,A8加密算法專門用于密鑰生成。
GSM只會對訪問網絡的用戶身份進行驗證。因此,通信的加密安全層只能夠提供數據保密和身份驗證功能。但需要注意的是,這是一種功能有限的身份驗證,因為它并不具備不可否認性這種特征。為了實現通信的安全,GSM采用了多種加密算法。比如說,GSM使用了A5/1和A5/2這兩種流密碼來確保用戶語音通話數據的安全。但是,這兩種加密算法中卻存在嚴重的安全問題,攻擊者可以通過下面這兩種方法破解這兩個加密算法:
1.通過實時的唯密文攻擊來破解A5/2;
2.通過彩虹表攻擊破解A5/1;
GSM中主要存在的一些安全問題如下:
1. 通過固定網絡傳輸的通信數據沒有受到加密保護;
2. 無法抵御某些主動攻擊;
3. 只有連接至安全的固定網絡才可以保證GSM的通信安全;
4. GSM中的合法攔截只是一種事后補救措施;
5. 終端識別碼不可信任;
單純從技術的角度出發,3G通信網絡棄用了不安全的A5/1流密碼,轉而使用KASUMI分組密碼【維基百科傳送門】,但是KASUMI分組密碼中同樣存在很多嚴重的安全問題。
破解GSM的A5/1加密算法
來自新加坡科技研究局(A*STAR)的信息通信安全專家JiqiangLu解釋稱:
“GSM使用了一種名為A5/1的流密碼來保護通信數據的安全,而A5/1使用了一個64位的密鑰和一種十分復雜的密鑰流生成器來抵御一些基本的攻擊,例如密鑰窮舉和基于字典的暴力破解攻擊。”
首先,安全研究人員利用了GSM通信加密中的兩個安全漏洞,并且在普通商用硬件的幫助下,花費了55天的時間計算出了一個彩虹表。據了解,這個彩虹表的大小為984GB。得到了彩虹表之后,安全專家就可以在短短的九秒內確定用于加密通信數據的密鑰了。
我們可以看到,這種新型的攻擊方式不僅極大程度地提升了傳統暴力破解攻擊的成功率,而且還大大降低了計算密碼和攻擊所需的時間。
Jiqiang Lu補充說到:
“我們在攻擊過程中使用了一個彩虹表,這個彩虹表是通過離線迭代計算生成的,它包含有密鑰和其相對應的輸出密碼。當攻擊者在攻擊過程中接收到了輸出數據之后,他就可以通過識別彩虹表中密鑰和密碼的對應關系來確定輸出數據的有效性。”
在測試設備方面,安全研究人員使用的是一臺由三塊NVIDIAGeForce GTX 690顯卡GPU所組成的計算裝置,這個裝置的成本約為一萬五千美金。
安全研究專家在其發表的白皮書中寫到【白皮書】:
“我們在實驗過程中使用了一臺由三張NVIDIAGeForce GTX690顯卡所組成的通用圖形處理單元(GPGPU)計算機,這臺計算機的總成本約為一萬五千美金。我們花費了55天的時間計算出了一個彩虹表,在這個彩虹表的幫助下,我們只需要九秒鐘的時間就可以通過在線攻擊來破解A5加密算法了。
在事先獲取到4個密鑰序列的情況下,破解成功率為34%;如果能夠事先獲取到8個密鑰序列,那么破解成功率就可以達到56%,其中每個密鑰序列長度為114位。如果能夠使用兩個這樣的彩虹表來進行攻擊,那么在事先得知8個密鑰序列的情況下,我們9秒內的在線攻擊成功率將高達81%。
實驗結果表明,A5/1加密算法確實非常的脆弱,因此GSM應該立即停止使用這種加密算法。”