vatt'ghern jaskier's ballads

Anthropic 讓還沒公開發布的 Claude Mythos 端出兩個密碼分析結果——一個攻破後量子簽章方案 HAWK,一個攻破了 7 輪 AES。乍看都是「AI 破解密碼學」的標題料,但寫這篇分析的密碼學家 Matthew Green,對兩者的態度幾乎是天差地別。

Matthew Green 拆 Anthropic 的密碼分析成果

完這篇,你會分得清楚 Anthropic 這兩個結果各自攻破了什麼、為什麼光看標題容易誤判兩者的份量、Green 拿什麼判準把它們拆開評分,以及「可驗證性成了瓶頸」這句話,對任何拿 AI 產生技術結果的人意味著什麼。

Claude Mythos 端出的兩個結果——具體發生了什麼

Anthropic 這次用來跑密碼分析的,是 Claude Mythos——Green 的說法是「他們(目前)還沒發布的進階模型」。模型端出了兩個結果,鎖定兩個完全不同的目標。

第一個瞄準 HAWK,一個提案中的後量子簽章方案,安全性建立在 module lattice isomorphism problem 這個數學問題上。模型產出的是一個 key-recovery 攻擊,Green 描述它「大致把演算法的安全位元數砍半」。這不是紙上談兵——「這個攻擊產生了真的能跑的程式碼,在幾個小時的 wall-clock time 內」完成,但跑的對象是 HAWK 作者自己為了這次測試提供的一個「削弱過的挑戰實例」,不是市面上真正在用的那組參數。

第二個瞄準 AES,幾乎每個系統都在用的對稱加密演算法。模型攻破的不是完整版 AES,是刻意削弱到只剩 7 輪的版本;完整版 AES 依金鑰長度不同是 10 到 14 輪。要跑這個攻擊,需要 2^89 次加密運算,而且事前得先「想辦法說服一個真正的加密者,在自己的金鑰下生出 2^105 次選擇明文的加密結果」——「想辦法說服」這幾個字,就是 Green 在挖苦這個前提有多不切實際。

兩個結果鎖定的不是同一種密碼學。HAWK 是非對稱式的簽章方案,安全性靠的是格(lattice)結構這種數學問題;AES 是對稱式加密,安全性靠的是把輪函式(round function)疊代夠多次。把兩個底子完全不同的攻擊放在同一篇文章裡評分,本身就是在提醒讀者:「AI 產生了一個密碼分析結果」這句話,沒有講清楚是哪一種密碼學、攻擊的是哪一種假設,單看這句話沒辦法判斷份量。

換句話說,讀者現在看到的,是還沒公開釋出的能力在密碼學這個領域的展示,不是市面上能直接呼叫的 Claude 模型做出來的結果。這一點不影響 Green 對兩個結果的評分——他評的是攻擊本身站不站得住腳,不是模型有沒有發布——但對任何想拿這篇文章當「AI 現在能做到什麼」參考的人來說,值得記住:這是一次還沒對外開放的能力測試,不是一般使用者現在就能重現的東西。

點長條看實際的十進位量級 · 3 根長條

點任一根長條,看它換算成十進位之後大概是多大的數字。
Y 軸是「2 的幾次方」,不是次方本身——長條愈高,代表實際運算量以指數成長。2^89、2^105 出自 Green 的文章;2^128 是 AES-128 完整金鑰空間的窮舉參考值,屬於公開常識,不是本文攻擊的對象。

工程師會怎麼看走眼——「砍半」與「7 輪」兩個詞的陷阱

只看標題,這兩個結果聽起來份量差不多,甚至 AES 那個聽起來更嚇人——畢竟 AES 是幾乎所有系統預設在用的加密演算法。這正是問題所在:「安全性砍半」聽起來像打了個折,砍掉的卻是位元數,不是百分比。位元數每少一位,蠻力搜尋的成本就砍半一次;位元數是指數上的變數,不是線性刻度。下面這個滑桿把這個關係攤開,拖動看看「原始安全強度」跟「砍半之後」之間,蠻力搜尋成本實際差了幾個量級。

拖動滑桿看砍半後的差距 · 32 到 256 位元

128 位元
原始:2^128 次運算
砍半:2^64 次運算
兩者相差 2^64 倍 ≈ 1.8 × 10^19 倍——不是「少了一半」,是少了十八億億倍。
示意用途:N 是任意設定的滑桿變數,不是 HAWK 的實際安全位元數——文章沒有給出 HAWK 原始的安全強度是幾位元,這裡只示範「砍半」這個詞在指數尺度上代表什麼。

「7 輪」這個詞也有同樣的陷阱:聽起來像「快被打穿了」,但完整 AES 有 10 到 14 輪,7 輪離「攻破真正在用的 AES」還很遠。Green 講得很直接:「攻擊 7 輪 AES 不是新東西:這類結果已經有好幾個了。」這件事在密碼學圈子裡本來就不是新聞——一般工程師沒有背景判斷「2^89 次運算」跟「2^128」比起來到底差多少個數量級,也不知道「7 輪」跟「10 到 14 輪」之間的落差有多大,標題把這些數字拿掉之後,兩個結果讀起來就變成同一種「AI 破解了密碼學」的新聞。

新聞標題只能塞一個動詞:「破解」。可是密碼分析裡「破解」本身有很多種強度——從「理論上找到比窮舉稍微聰明一點的做法」到「能在合理時間內讀出真實金鑰」,中間隔著好幾個數量級。把 HAWK 攻擊跟 7 輪 AES 攻擊都寫成「AI 破解了 XX 密碼演算法」,兩篇標題長得一模一樣,但底下的技術現實完全不同——一個是能跑的程式碼,一個是連跑都跑不動的紙上運算量。「7 輪」聽起來只是「輪數比較少一點」,但區塊加密的輪數不是等距刻度——每多一輪,雪崩效應(diffusion)就多疊代一次,破解需要的技巧會急遽變難,不是穩定線性地變難。7 輪到 10 輪只差 3 輪,聽起來不大,但這正是密碼分析社群幾十年來反覆嘗試、始終跨不過去的距離——如果這道牆真的只差「再加把勁」,它早就不會被稱為一道牆。

// 示意:位元數是指數變數,不是百分比
2^128  原始安全強度(示意值,非 HAWK 實際數字)
  → 安全性「砍半」
2^64   砍半後的安全強度
比值:2^128 / 2^64 = 2^64 ≈ 1.8 × 10^19 倍

把「標題會怎麼寫」跟「數字實際告訴你什麼」並排放在一起看,這個落差會更直觀。

切換兩個攻擊,比較標題框架與數字現實 · 2 個分頁

標題會說:AI 破解了後量子簽章 HAWK。

數字告訴你的:安全位元數大致砍半,攻擊在幾小時內對削弱過的挑戰實例跑完——是真的能執行的攻擊,但目標是提案中、尚未部署的演算法。

標題會說:AI 破解了 AES。

數字告訴你的:只打到 7 輪,完整版是 10 到 14 輪;需要 2^89 次運算,事前還得取得 2^105 次選擇明文——運算量大到跑不動,只是紙上分析,是對 2013 年舊工作的常數倍改進。

Green 的判準——新數學,還是把舊工具用到底;可不可驗證

Green 沒有拿「破解了什麼」當評分標準,他用了兩條軸線。第一條軸線問:這個結果動用的是全新的數學,還是把已經存在、大家都知道的工具用到極限?他對 HAWK 攻擊的評語是:「這個攻擊沒有發明任何從根本上是新的數學,它只是延伸了一堆早就擺在那裡的工具。」他甚至補了一句更直接的:「真正讓人覺得有意思的地方——講白了,也有點讓這個領域難堪——是這裡面沒有一個材料是稀奇的。」意思是,這件事理論上任何一個夠熟悉這些工具的密碼學家早就做得到,只是沒有人真的坐下來把它做完。

第二條軸線問:這個結果能不能被驗證?HAWK 的攻擊能被驗證,因為它「產生了真的能跑的程式碼」——你可以直接執行它,看它是不是真的在幾小時內完成。AES 那個結果不一樣:「因為這個攻擊實際上需要 2^89 次運算,沒辦法真的『跑』,我們拿到的只是一份紙上分析」,而且這份紙上分析「能不能真的換來實際的執行時間改善,還不確定」。

把這兩條軸線放在一起看,才看得出 Green 真正在乎的是什麼。單獨看「是不是新數學」,兩個結果其實很接近——都沒有發明新數學,都是把已知工具用到底。真正把兩者分開的,是第二條軸線:能不能被驗證。這也是為什麼 Green 沒有用「破解了什麼」或「攻破了哪個演算法」當標題式的評分——那些形容詞掩蓋了真正決定可信度的那個變數。這句「不確定能不能換來實際的執行時間改善」值得多想一秒:2^89 是理論上的運算次數,不是已經被寫成程式、放到硬體上實測過的數字。理論分析算出來的複雜度,跟真正動手實作之後拿到的執行時間,中間常常有落差——這正是 Green 把這個結果歸類成「紙上分析」,而不是「能跑的攻擊」的原因。

延伸舊工具 ← 數學新穎度 → 發明新數學 紙上分析、需人工審查 ← 可驗證性 → 產出可執行、可驗證程式碼 舊工具+可驗證 = 可信但不算突破 HAWK 攻擊 延伸既有工具、產出可執行碼 7 輪 AES 攻擊 延伸既有工具,但只有紙上分析,跑不動
兩個結果在數學新穎度上其實很接近——都不是全新數學。真正拉開評價的是縱軸:能不能被機器驗證。

並排看兩個結果——HAWK 的幾小時,對照 7 輪 AES 的紙上分析

把兩者的地位也放進來看,落差更清楚。HAWK「不是一個已經部署或已經被標準採用的演算法,它是一個提案中的演算法」——但 Green 也補了一句,它「在被評估納入未來標準的過程裡,已經走得相當前面」。攻擊本身「沒有在科幻小說的意義上打穿『真正部署中』的 HAWK」——修法也不難,理論上「把金鑰尺寸加倍」就能補上砍掉的那一半安全位元,代價是原本 HAWK 主打的效率優勢會被吃掉一部分。

反觀 7 輪 AES 那個結果,Green 直接把它放進歷史脈絡裡:「這個新的 Anthropic 結果,是對 2013 年那份舊工作做的一次適度的常數倍改進。」常數倍,不是數量級的躍進;而且攻擊對象是一個已經被學界打過好幾次的削弱版本,不是任何人真正在用的 AES。

這個地位差距不是文字遊戲。一個「提案中」的演算法被打出弱點,團隊可以直接回頭修規格——HAWK 攻擊的修法就是把金鑰尺寸加倍,雖然代價是犧牲一部分效率,但至少能在正式標準拍板前把這個代價算進去。已經部署出去的演算法就沒有這麼輕鬆:憑證、韌體、裝置都已經簽出去了,要改就是一整條遷移路徑。HAWK 現在被打中,某種意義上是幸運——它還沒走到「部署出去改不動」那一步。

維度HAWK 攻擊7 輪 AES 攻擊
安全衝擊大致把安全位元數砍半2^89 次運算+事先需要 2^105 次選擇明文
能不能執行能——幾小時內跑完削弱過的挑戰實例不能——運算量太大,只有紙上分析
部署/標準化狀態提案中演算法,尚未部署,但已走得相當前面攻擊對象是削弱到 7 輪的版本,非真實部署的 AES
跟舊工作的關係延伸既有工具,未發明新數學2013 年舊工作的適度常數倍改進
修補難度理論上加倍金鑰尺寸即可,代價是效率攻擊對象本來就不是真實部署,無需修補
五個維度都來自 Green 原文的描述,並排看才看得出兩者的落差不在「破解了什麼」,而在「能不能被驗證」跟「站在什麼位置」。

這篇文章裡反覆出現的術語,順手放個對照。

HAWK 的安全假設是 lattice isomorphism problem 格密碼的一種困難問題:判斷兩個格(lattice)之間是否存在保結構的一對一映射。HAWK 的安全性建立在這個問題目前沒有已知的高效解法上。 ;AES 攻擊需要的 chosen plaintext 攻擊者能力模型的一種:假設攻擊者可以拿到「自己選定的明文」對應的加密結果,用來反推金鑰。這是比「只能觀察密文」更強的攻擊者假設,實務上很難成立。 ,代表攻擊者得先讓受害者用同一把金鑰加密自己選好的一大堆明文——這是一個很強的前提。文章裡提到的 wall-clock time 攻擊實際跑起來、掛鐘量到的真實時間,跟「理論運算次數」是兩回事——只有能跑得動的攻擊才談得上 wall-clock time。 只出現在 HAWK 那一段,因為 AES 攻擊根本沒辦法真的執行。而 reduced-round 刻意減少加密演算法內部的輪數(round)做出來的弱化版本,是密碼分析研究裡常見的中間步驟——先打穿弱化版,觀察攻擊技巧能不能逐步往完整輪數推進。 AES,指的正是這種刻意削弱的研究用版本,不是真實部署的 AES。

可驗證性成了瓶頸——這對你意味著什麼

Green 把這整件事收在一句話上:「就算模型吐出了一個看起來像新結果的東西,這不代表這個結果是真的。」而且問題不只是模型偶爾會出錯——「即使模型真的擅長做出真的結果,它們更擅長做出看起來是真的、但其實會誤導人的結果。」這句話比「AI 會犯錯」重得多:它說的是,錯的結果跟對的結果,外觀上可能完全分不出來。

Green 的結論是:「可驗證性,現在才是真正的瓶頸。」HAWK 的攻擊之所以能被相信,是因為它產生了可以直接執行、直接驗證的程式碼——這種結果可以機器檢查,不需要等一個密碼學家把每一步手算一遍。AES 那個結果沒有這條路可走,2^89 次運算沒辦法真的執行,只能靠密碼學家人工審查每一步推導有沒有漏洞——而人工審查是這整套系統裡最稀缺、最慢的資源,不會因為模型輸出的速度變快就跟著變快。

實務上,這代表任何團隊如果打算把 AI 產生的技術結果直接拿去用——不管是資安掃描找到的漏洞、還是 benchmark 上宣稱的效能改進——都該先問同一個問題:這個結果有沒有辦法被機器重新驗證?有可執行的 repro 腳本、有形式化證明、有可以現場構造的反例,都算過關;如果答案只有「模型是這樣說的」,那就得把它當成一份還沒審查過的草稿,而不是一個已經確認的事實。這不是說模型產出的結果一定是錯的——HAWK 那個攻擊就是真的——而是說「模型說了」跟「已經驗證」之間,永遠隔著一道人工審查的關卡,這道關卡的產能,才是整個流程裡真正的速度上限。

STEP 1模型吐出一個看起來像新結果的東西——不管是攻擊、證明,還是效能改進的宣稱。
STEP 2能不能機器檢查?能跑的攻擊程式碼、能形式化檢查的證明、能構造出的反例,都算——HAWK 的攻擊在這一關就過了。
STEP 3不能的話,就只剩紙上分析——像 2^89 次運算的 AES 攻擊,沒辦法真的跑,只能等專家人工審查每一步推導。
STEP 4人工審查是這條路上最稀缺的資源,產能不會因為模型產出變快而跟著變快——這正是 Green 說的「可驗證性是瓶頸」。
捲動時每一步會依序反白,內容本身不論捲不捲動都完整可讀。

對任何拿 AI 產生技術結果的人來說,這是一條可以直接抄的判準:先問這個結果能不能被機器驗證——能重跑的程式碼、能形式化檢查的證明、能構造反例的宣稱都算;不能的話,就得假設它需要專家一步步審查,而審查產能永遠比模型產出速度慢。下次看到一個「AI 破解了 X」的標題,先別看它破解了什麼,先看它能不能被驗證。

判準:兩個結果動用的數學新穎度其實差不多——真正拉開評價的是能不能被驗證;HAWK 的攻擊跑得動,AES 的攻擊只能算,這條線決定了誰該被相信,誰只能先存疑。