我們如何推斷 NSA 或 GCHQ 等破譯機構的加密能力?
我在 Applied Cryptography 中讀到 NSA 是世界上最大的硬體買家和最大的數學家雇主。
- 鑑於NSA或GCHQ等密碼破解機構在過去約 40 年中進行了一流的未發表密碼學研究,我們如何推斷其對稱密碼密碼分析能力?
- 鑑於這些機構可能擁有與差分密碼分析等效的未公開和未知密碼分析技術(我們只知道差分密碼分析,因為 NSA/IBM 之外的人重新發現了它),我們可以對針對這些密碼的攻擊建立什麼樣的計算下限?
例如,在不了解差分密碼分析的情況下,我們能否在 md5中輕鬆找到碰撞的良好下限?
這個問題僅限於對稱密碼。
應用密碼學是一本正在變得,比如說,不是最近的書。NSA 的預算相當多,但不是無限的,還有其他組織,特別是大型私人公司,也有令人印象深刻的手段。例如,Google或蘋果是在密碼學領域進行研發活動的公司,他們有可能在特定問題上投入 10 億美元(他們可能比聯邦機構更容易管理和更靈活地這樣做) .
此外,密碼學的公共研究領域也發生了相當大的變化。在 1980 年代初期,有幾個專門討論密碼學的會議。2011年有一百多個!該領域只是擴大、膨脹到如此之多,以至於沒有任何一個組織,即使是 NSA、微軟或蘋果,都可以聲稱使用了不可忽略的可用大腦資源比例。這是最近發生的變化:根據我個人的經驗,通貨膨脹真正開始於 1995 年左右。
這是關於 NSA能力可以說的一件事。他們不告訴他們僱用誰以及從事什麼工作;但我們可以估計 NSA 發現先進的密碼分析技術的機率,這些技術已經避開了公共學者的掌握。正如萊布尼茨所說,發現是“四處飄蕩”的想法的產物,誰會真正製造發現是隨機選擇。換句話說,如果 NSA 僱傭了 1% 的頂級密碼學家,那麼他們將獲得 1% 的進步。即使存在諸如科學資本之類的東西(當科學家與許多其他科學家在實驗室中工作時,他們的工作效率會更高,並且當地有很強的研究相同主題的傳統),但 NSA 遠遠領先於它的可能性仍然很小。其他人。
還有一點是關於激勵的。NSA 是一個預算漏洞,但它有目標:即保護美國免受其敵人(世界其他地區)的侵害。當 NSA 說一種算法很好(比如 AES)時,其他美國組織(公共和私人)開始使用它。可以肯定的是,NSA 希望能夠破解廣泛使用的加密系統;但是,(在我看來)這對他們來說是 NSA 的一個更重要的目標,他們希望美國組織使用的加密不會被他們的敵人破解。因此,對於 NSA 來說,推廣一種他們只能破解的算法是有意義的如果他們有充分的理由相信只有他們可以打破它。NSA 和所有的秘密服務機構一樣,知道什麼是秘密:他們保守秘密,但他們也認為自己並不完全了解競爭對手的秘密。相應地,我再次發現 NSA 知道如何破解 AES 令人難以置信,因為他們一直將其作為“解決方案”來炫耀,並且沒有任何跡象表明計劃定義另一個對稱加密標準,即使只是作為備份。
所以這就是我對秘密組織的未知能力的推理:我查看他們的資源,並將他們的可觀察行為與他們的目標相匹配。這導致了以下結論:如果 NSA 能夠破解 AES,那麼他們要麼可以訪問一些非地球技術和科學(電影中的一個流行主題,例如黑衣人),要麼他們並沒有真正試圖保護他們應該保護的組織。或兩者。
在純粹的科學層面上,我們沒有證據證明對稱原語確實存在(特別是雜湊函式;但我們也不知道是否有可能,以圖靈所說的方式,有一個對稱密碼記憶體表示短於 $ \log n! $ bits:表示隨機選擇的排列所需的位數 $ n $ 位)。現在我們有候選:定義了我們不知道如何破解的分組密碼。並且不要阻止我們知道無法破解的密碼。因此,沒有真正的“下限”可以對抗未知的密碼分析進展。
分組密碼中的大多數漏洞都與密鑰安全有關。除了小於 256 位的密鑰大小或更少的加密輪次之外,成功的攻擊對任何東西都沒有實際意義。
由於除了 S-box 和 P-box 之外沒有可供 AES 選擇的變數,因此聖杯是密鑰管理。針對 AES 的橫向攻擊依賴於糟糕的管理或實施中的錯誤(弱 PRNGS、定時攻擊、位注入、選擇性明文等)。
鑑於此,人們會假設攻擊者不會花費資源來解決更難的問題(AES),而是攻擊更容易的問題(橫向攻擊)。閱讀PRISM 的幻燈片,該程序的成本太低,無法包括任何類型的計算密集型追求。推斷 PRISM 是一項關鍵的共享工作並不是一個很大的飛躍。
幾個帳戶似乎表明 NSA 正在積極破壞標準級別的安全性或與軟體開發人員勾結。如果任何一個命題都是正確的,那麼任何認真的密碼學家都需要使用每個組件都已知並且不包括閉源作業系統和軟體黑盒的系統。
這些都是我心中的擔憂,而不是美國國家安全域對 AES 的暴力向量的可行性。
即使在斯諾登的展覽中,該領域的傑出人物也是如此。 布魯斯·施奈爾(Bruce Schneier)可以訪問斯諾登的文件,他說數學是合理的,但軟體有問題,這就是 NSA 解密分叉數據流的方式。