陶慎亮 朱 濤
(江蘇警官學院計算機信息與網絡安全系 南京 210031)
在密碼學中,通常都會提出一個前提:即該密碼算法的執行環境(終端)是可信任的,因此密鑰的安全性就成為最先關注的問題。然而在現實生活中,這個前提往往得不到滿足,這就使得密鑰的安全性受到了極大的威脅。例如,當用戶打開一個視頻播放器,該視頻播放器可以自行對加密的視頻信號進行解密,此時該視頻播放器的運行環境可以看作是不安全的,那么該軟件的整個解密過程對于此用戶(或攻擊者)而言是可見的,這樣可以輕而易舉得到密鑰信息。
針對以上所描述的問題,Chow 等在2002 年提出了一個概念:白盒攻擊環境[1]。所謂的白盒攻擊環境就是指攻擊者對軟件執行過程完全可見的環境。依照上文所述,用戶(或攻擊者)通過運行密碼軟件或者直接觀察便能輕而易舉地獲取到密鑰信息。在這種狀況下,如果依舊對密鑰進行保護無異于“亡羊補牢,為時晚矣”,此時就迫切地需要對于密鑰的特殊保護,需要用密碼算法的實現來對密鑰信息進行隱藏,由此,白盒密碼應運而生。它的目的和作用很明確,即將密鑰信息隱藏于白盒攻擊環境之中,避免密鑰在密碼軟件執行過程中被攻擊者強行獲取。
Chow 等對白盒密碼的設計思想[2]就是混淆—打亂明文到密文之間的映射關系即將密碼算法的輸入和輸出進行置亂,使得密碼算法被混淆,從而避免攻擊者強行得出密鑰信息?!?br>