后門之王:談一談加密算法中的數(shù)學(xué)后門
政府和情報機構(gòu)力圖控制或繞過對數(shù)據(jù)及通信的加密防護(hù),而給加密算法開個后門,被認(rèn)為是實現(xiàn)加密控制的最佳辦法。安全研究人員常會找尋加密算法實現(xiàn)中的漏洞,但卻不會投入太多精力在查找數(shù)學(xué)后門上。
在加密防護(hù)上,研究人員開始驗證信息安全交換和電子商務(wù)的支撐技術(shù)。埃里克·菲利奧爾,法國高等計算機、電子及自動化學(xué)院(ESIEA)操作密碼學(xué)及病毒學(xué)實驗室研究主管。他認(rèn)為,只有在協(xié)議/實現(xiàn)/管理層面的后門實現(xiàn)被普遍考慮到了,而在查找數(shù)學(xué)后門或設(shè)計后門上投入的努力,還遠(yuǎn)遠(yuǎn)不夠。
近日舉行的歐洲黑帽大會上,菲利奧爾和他的同事阿諾德·般涅爾做了演講,題為“加密系統(tǒng)設(shè)計后門——我們能信任外國加密算法嗎?”,闡述了設(shè)計數(shù)學(xué)后門的可能性。
演講中,兩位研究人員提出了BEA-1塊加密算法。該算法類似AES,但含有一個可供進(jìn)行有效密碼分析的數(shù)學(xué)后門。
兩位法國密碼學(xué)家解釋道:“在不知道我們后門的情況下,BEA-1成功通過了所有統(tǒng)計檢驗和密碼分析,NIST和NSA都正式考慮進(jìn)行加密驗證了。尤其是,BEA-1算法(80位塊大小,120位密鑰,11輪加密)本就是為抵御線性和差分密碼分析而設(shè)計的。我們的算法在2017年2月公開,沒人證明該后門可被輕易檢測到,也沒人展示過其利用方法。”
他們是如何做到的
黑帽大會的演講中,菲利奧爾和般涅爾公開了該有意設(shè)置的后門,演示了如何利用該后門以區(qū)區(qū)600KB數(shù)據(jù)(300KB明文+300KB密文),在10秒鐘內(nèi)恢復(fù)出120位的密鑰。這就是個概念驗證,還有更復(fù)雜的后門可以被構(gòu)造出來。
往算法中插入后門,和檢測并證明后門的存在之間,在數(shù)學(xué)上是非常不對稱的。也就是說,我們必須創(chuàng)建某種概念上的單向函數(shù)。
菲利奧爾研究加密算法數(shù)學(xué)后門多年,今年早些時候還發(fā)表了一篇關(guān)于塊加密算法潛在問題的論文。
為什么即便在研究領(lǐng)域,數(shù)學(xué)也不流行
研究數(shù)學(xué)后門非常困難,吸引不了需要在時髦話題上頻繁發(fā)表論文的研究人員。此類研究基本上也就是在情報機構(gòu)(GCHQ、NSA等)的研發(fā)實驗室做做,而且更多是后門的設(shè)計而非檢測。
斯諾登爆料NSA花1000萬美元,讓 RSA Security 在其加密工具集中,默認(rèn)使用脆弱的雙橢圓曲線隨機數(shù)生成算法(Dual_EC_DRBG)。這就展現(xiàn)出數(shù)學(xué)后門,或者設(shè)計后門,不只存在于理論上,而是很現(xiàn)實的東西。并且,Dual_EC_DRBG不是個案。
數(shù)學(xué)后門的例子有很多,但只有少數(shù)幾個為人所知。
我確信所有出口版加密系統(tǒng)都會以某種方式嵌入后門,這直接違反了《瓦森納協(xié)定》。Crypto AG(瑞士通信及信息安全公司)出口的加密機中含有NSA的后門就是個絕佳案例。其他不那么出名的例子還有一些。
有多少數(shù)學(xué)后門存在?
我們很難確知實現(xiàn)后門和數(shù)學(xué)后門的普遍程度和重要性。證明后門的存在是個很困難的數(shù)學(xué)問題。但分析國際規(guī)則就能很清楚地看出,至少出口的加密設(shè)備/技術(shù)中是有后門的。更令人擔(dān)憂的是,大眾監(jiān)視的環(huán)境下,國內(nèi)使用的加密技術(shù)中會不會也有后門?
那么,同行審查能不能免除數(shù)學(xué)后門呢?
菲利奧爾表示,這恐怕需要改革:
能夠證明安全的“防御”遠(yuǎn)比能夠證明不安全的“攻擊”要難實現(xiàn)得多。最大的問題在于,學(xué)術(shù)上對安全證明困難度的忽視,造成我們都把“沒有證據(jù)證明不安全”,直接當(dāng)成了“安全的證據(jù)”。
攻擊者不會把自己能做的所有事都公布出來,尤其是在情報機構(gòu)勢力龐大的密碼學(xué)方面。于是,專家和學(xué)術(shù)研究界只能參考已知的攻擊案例。想象一下NSA這種40年來隨時有300名最聰明的數(shù)學(xué)家為其服務(wù)的機構(gòu)能產(chǎn)出什么?那就是整套數(shù)學(xué)知識全集啊!
菲利奧爾還認(rèn)為,作為行業(yè)標(biāo)準(zhǔn)被廣泛審查過的AES算法,也未必安全,雖然他并沒有證據(jù)證明該算法不安全。
即便我不能證明AES有漏洞,但也沒人能證明這算法里就沒有漏洞。老實說,美國會提供一個夠安全的軍用級加密算法而不施以任何形式的控制?反正我是不信的。
AES競賽本就是由NIST組織的,還有NSA的技術(shù)支持(這都是眾所周知的了)。在恐怖主義威脅甚囂塵上的時代,美國才不會蠢到不去籌備作為常規(guī)武器“對策”的東西呢。像美國、英國、德國、法國等有點兒體面的國家,都不會在有高安全需求的事務(wù)上使用外國算法。他們強制使用國產(chǎn)產(chǎn)品和標(biāo)準(zhǔn)——從算法到其實現(xiàn)。
加密算法的選擇、分析和標(biāo)準(zhǔn)化方式都需要改革。這得是個主要由開放密碼社區(qū)驅(qū)動的,完全開放的過程。