DES:回顧
「我們其實都是相當正直的人,」理查德·喬治在會議上如此宣稱,「我們只想確保自己做得盡可能乾淨透明。」那是 2011 年,當時國家安全局資訊保證處的技術總監喬治正在 RSA 會議上談論 DES 的歷史。與他同台的還有迪菲、赫爾曼、羅恩·里維斯特以及阿迪·沙密爾。
作為原始 DES 評估小組的一員,喬治曾認為既能處理數學運算,又能參與政治爭論,這樣的工作令他著迷。臨近從國家安全局退休時,他意識到自己是梅德堡堡壘中最後一位參與 DES 開發的人。於是,他主動向局長提出,應將整個 DES 的故事解密,局長也表示贊同。喬治隨後開始查閱國家安全局的內部紀錄,並結合自己的回憶,準備向世人講述 DES 的內幕。當沙密爾問及引發爭議的 56 位元密鑰長度時,喬治解釋說,國家安全局的通訊安全部與通訊情報部曾討論過是否應參與 DES 項目;若一項加密演算法被大規模部署,而通訊情報部無法破解或破解成本過高,那麼國家安全局提供情報的能力就會大幅受限。然而,這種顧慮必須與保護美國商業、私人、關鍵國家基礎設施以及非機密資料免遭不足保護的風險相平衡。在這個數據對於全球運作的美國企業越來越重要的時代,喬治說,國家安全局領導層認為「讓我們參與其中符合國家最佳利益。」從那時起,國家安全局便全力承擔起通訊安全的角色。不過,歷史紀錄中確實存在一些矛盾。有一份 1998 年由托馬斯·約翰遜撰寫的已解密國家安全局內部歷史記錄提到,國家安全局曾試圖說服 IBM 將密鑰長度從 64 位元減少到 48 位元,最終雙方妥協定為 56 位元。該記錄的來源並不十分明確,引用了一些目前未對外公開的資料。這段記錄似乎與喬治的說法相矛盾——喬治主張國家安全局決定使用 56 位元密鑰,是根據他們內部對技術演進速度以及 DES 服役期限的計算而做出的決策。當被問及這一矛盾時,喬治表示,「約翰遜那段話太可笑了……國家安全局絕不會試圖去說服 IBM什麼,所有決定都是由我們直接下達的。」喬治曾在局內進行過廣泛的 DES 文檔評估,從未見過任何來自 Rick Proto 的記錄;他也指出,Proto 在 1974 年時僅是數學研究部門的一位初級成員,顯然沒有足夠的資格提出那樣的見解。根據現有證據與缺乏支持約翰遜說法的資料,這一記錄中的矛盾可能只是歷史資料中的一個錯誤。希望未來有朝一日,相關源材料能夠解密,從而釐清這段含糊不清的記錄。
喬治還解釋了為何 DES 的 64 位加密變數中保留了 8 位作為奇偶校驗,結果僅形成了 56 位元的有效密鑰,這比省略奇偶校驗位所能達到的安全性要低得多。喬治指出,「有人說國家安全局加奇偶校驗位是為了縮短密鑰,其實那並非事實。」他進一步解釋說,國家安全局的設計方法受其傳統影響:
「奇偶校驗位是絕對關鍵的……我們在所有使用的變數上都加上奇偶校驗位,因為這些設備是在戰場上由士兵使用的。想像一下,當你身處泥濘中、炮火連天,卻還要嘗試從紙帶讀取資料,那情況往往非常糟糕,容易出現錯誤。而一旦出錯,就會導致使用者得到稍有偏差的數據……所以為了避免這些問題,我們就加上了奇偶校驗位;若校驗失敗,就必須重試,這就有效防止了錯誤。這就是奇偶校驗位存在的原因,而外界也因此認為『看,他們就是這麼做的』。」
當有人問及國家安全局是否在 DES 中植入後門時,喬治回答說:「我們知道自己並沒有那種足以隱藏真相的聰明才智。」儘管梅德堡堡壘外的密碼學界在二戰後發展較慢,但該領域的學術研究水平不斷提升,加上七十年代的反政府情緒以及尼克松剛被罷免,國家安全局清楚,未來數年內,研究人員將持續審查該標準,尋找政府篡改的跡象。雖然國家安全局很可能已發現一些外界尚未了解的數學真理,但他們也無法保證這些真理在 DES 服役期間會一直僅屬於他們的領域。喬治後來評論說,「這對密碼學和國家安全局來說都是一個大問題——我們夠聰明地知道,我們其實並不夠聰明去做那種事,而那絕對不是一件好事。」此外,國家安全局的聲譽也岌岌可危,正如喬治所說:
「我們希望向公眾提供一個擁有宣稱安全等級的演算法,我們不希望存在任何捷徑式的攻擊,也希望它能滿足全球的安全需求。所以當我們說密鑰必須是 56 位時,我們希望能夠坦率地說『我們目前知道的攻擊中,沒有能在 56 位以下破解的』,而我們也絕不願意陷入日後被揭露漏洞的風險。」
國家安全局未曾預見的是,DES 引發的疑慮竟成為推動密碼學研究進步的重要催化劑。赫爾曼曾評論,「DES 對我們這些在學術密碼學領域工作的人來說,就像是神賜的禮物……它給了我們一個目標,一個磨練密碼分析技能的契機,讓我們學到了很多東西。」里維斯特則表示,DES 給予學者們靈感,讓他們思考為什麼 DES 的結構會呈現如今的樣子,以及如何改進;因此,這一實踐不僅提升了他們在密碼學與密碼分析方面的能力,也促進了公鑰加密技術的發展。喬治總結道:
「DES 是密碼歷史上最重要的事件之一……它激發了像赫爾曼、迪菲和里維斯特這樣的人對密碼的興趣——從某種意義上說,它不僅是密碼研究發展的重要一步(它為世界提供了一個艱巨的研究課題),同時也是公鑰加密技術發展的關鍵因素。」
喬治接著說:「我們(國家安全局)當時並沒有意識到互聯網能夠聚集起一個虛擬的臨界質量,讓各地的人能夠協同合作,而這確實產生了重大影響。」雖然梅德堡堡壘外的密碼學社群在任何單一實體中都無法與國家安全局匹敵,但遍佈全國乃至全球的密碼學家,通過互聯網團結合作,使得學界得以挑戰政府作為密碼學唯一權威的地位。喬治說:「那個互聯網真是打亂了所有計劃,但那正是我沒料到的……我原以為大家會各自為政,結果並非如此,所有人都在共同努力。如果不是 DES,可能早已出現其他競爭對手;事情必然會發生,因為有太多聰明人在各個領域努力探索。」事後回顧,喬治坦言:「我對最終結果感到非常滿意——許多聰明人都做出了傑出的貢獻!」互聯網正逐漸消解時間與距離的限制,讓全球志同道合的人們能夠共同攻克那些孤軍無力解決的難題,密碼學的進步也因此成為不可逆轉的趨勢。
關於 S 盒的問題,隨著時間推移大致也自我解決了。差分密碼分析在 1980 年代末由 Eli Biham 與阿迪·沙密爾重新發現,他們將該攻擊方法應用於多種演算法均取得良好效果,但 DES 卻始終堅如磐石。然而,當沙密爾生成隨機 S 盒以取代國家安全局選定的 S 盒時,攻擊卻成功奏效,對此喬治說:「那種攻擊在真正的 S 盒上就是不起作用。」布魯斯·施奈爾觀察道,「學術界花了二十年才發現,國家安全局所做的『微調』實際上提升了 DES 的安全性。」對於國家安全局來說,外界對 DES 及 S 盒的疑慮具有兩重作用。首先,讓公眾以為 S 盒中存在國家安全局後門,使得人們不會專注於探究其實國家安全局是如何加強 S 盒以防止差分密碼分析這一機密技術;喬治回憶說,
「讓人們花時間研究這些排列究竟藏有何種後門,比起去思考我們為何這麼做,效果更好。與其讓他們去攻擊 S 盒,不如讓他們困惑於我們到底在做什麼,這種效果相當理想。」
第二,這種懷疑也阻礙了 DES 的廣泛傳播;喬治說,
「全世界都深信我們在 S 盒中植入了後門……有些 S 盒看起來確實非常糟糕,我們也很樂意看到它們那樣,因為那樣就成了全世界的攻擊目標,當大家都說『別相信這玩意兒』時,就達到了我們的目的。」
國家安全局只希望美國政府部門及相關企業能享有 DES 的保護,他們不希望敵人也能使用這種高水準的加密演算法。
數位權利活動家對喬治的敘述是否可信展開了爭論。喬治的說法中有些內容與 IBM 的 Walter Tuchman 1977 年時所說的「S 盒完全是我和 IBM 同事的作品」不符。或許 Tuchman 是出於某種考量自願說出不實之詞,不願揭露國家安全局的參與,或是他根本不知情 IBM 的 S 盒候選方案已被國家安全局取代——但後者似乎可能性不大。沙密爾在 2011 年曾反思說他,
從未相信過存在後門,因為從政治角度來看那毫無道理:俄羅斯軍方內部不可能使用 DES,類似地中國以及其他國家也不會如此;主要使用 DES 的是大型美國企業,而讓國家安全局設計一個既能被破解又允許國內大公司使用的方案,既知道如何破解,又可能讓其他人也能破解,從政治上來講完全不合邏輯。
喬治與公眾的交流獲得了數位權利活動家的歡迎,但由於情報工作的特殊性,許多人,包括迪菲在內,對喬治的說法仍表示不滿。政府面臨一個棘手的局面:當某項資訊長期被保密、甚至被層層謊言所保護時,政府又如何能夠隨後披露所有相關資訊,讓公眾相信他們已經無所隱瞞?許多數位隱私活動家始終質疑,是否還有更多關於 DES 的故事等待被揭露。