1995 Manuel Blum —— 把「秘密」變成數學的人#
「在他之前,密碼學是工程師的手藝;在他之後,『一個秘密 是什麼』有了嚴格定義。」
案件檔案#
| 項目 | 內容 |
|---|---|
| 得主 | Manuel Blum (1938–) |
| 得獎理由 | 計算複雜度理論及其在密碼學與程式檢查的應用 |
| 關鍵詞 | 計算不可辨識、零知識的基礎、CAPTCHA |
前因#
1970s,Diffie–Hellman(2015 案)開啟公鑰密碼學,但 「這套系統安全嗎」仍是口號。謎題:如何數學化地定義 「不可破解」「不可偽造」「不可辨識」? Blum 的回答 構成現代密碼學的語法。
線索與推理#
線索一:Blum 複雜度與 Blum 公理(1967)#
為「機器無關的複雜度」給出公理(Blum complexity axioms): 任何滿足兩條公理的複雜度測度都有相同的節約定理/加成 定理——複雜度理論的形式地基之一(1993 案的深化)。
線索二:計算不可辨識性(Computational Indistinguishability)#
兩個分佈 X, Y 計算上不可辨識 ⟺
對一切多項式時間區分器 D:
|Pr[D(X)=1] − Pr[D(Y)=1]| < negl(n)
這條定義由 Yao(2000 案)與 Goldwasser–Micali(2012 案) 發揚,Blum 是共同源頭。「安全的否定式定義」: 不是「無法破解」,而是「多項式時間攻擊者無法區分真偽」—— 密碼學從此有了可證明的語義。
線索三:Blum 整數與 Blum–Micali 偽隨機生成#
Blum 整數 N = pq(p,q ≡ 3 mod 4);Blum–Micali 生成器: 以離散對數困難性產生密碼學安全偽隨機序列——隨機性 本身成為可證明對象(接 1976 Rabin 案)。
線索四:互動證明與 CAPTCHA#
- Blum 等人提出透過「檢查結果而非檢查過程」驗證程式 的理論(program checking)。
- 2000 年代與學生 von Ahn 發明 CAPTCHA:用「人容易、 機器難」的問題區分人機——P vs NP 的日常應用(1982 案 的文化出口),後續 reCAPTCHA 更把人類勞動變成數位化 引擎。
理論評析#
Blum 的方法論:把直覺名詞變成複雜度類上的量化語句。
「秘密」= 敵人多項式時間內不可計算
「偽造」= 無多項式時間演算法輸出可通過驗證的字串
「隨機」= 與均勻分佈計算上不可辨識
這種「以攻擊者的計算模型定義安全」的思路,是現代 密碼學(2012、2015 案)與密碼學協議(安全多方計算、 零知識)的哲學起點。
後果#
- 可證明安全成為所有密碼標準的寫作規範(NIST 流程)。
- 他的學生譜系(Goldwasser、Micali、Rivest、Yao……) 拿下多座圖靈獎——師承密度最高的學派之一。
關聯案件#
→ 2000-Andrew-Yao與偽隨機性及複雜度理論、2012-Goldwasser-Micali與零知識證明、2015-Diffie-Hellman與公鑰密碼學