跳到主要內容

Lucifer 加密演算法全解析:IBM 的 Feistel 架構設計與 DES 標準的歷史演進

Lucifer 加密演算法全解析

IBM 的 Feistel 架構設計與 DES 標準的歷史演進

在現代對稱加密的歷史中,Lucifer 是一個不可忽視的起點。這個由 IBM 於 1970 年代開發的分組加密演算法,直接催生了影響全球數十年的 DES 標準,是密碼學發展史上的關鍵里程碑。

Lucifer 的設計核心:Feistel 網路

Lucifer 由 IBM 密碼學家 Horst Feistel 主導設計,採用以其命名的 Feistel 網路(Feistel Network)結構。其核心機制是將明文區塊分為左右兩半,經過多輪的替換(Substitution)與置換(Permutation)交叉運算,最終合併輸出密文。

Feistel 結構最大的優點在於加密與解密使用相同的電路邏輯,僅需反轉子金鑰順序即可解密,大幅降低硬體實作成本。Lucifer 原始設計支援 64 位元區塊128 位元金鑰,在當時提供了極高的安全強度。

從 Lucifer 到 DES:NSA 介入與標準化爭議

1973 年,美國國家標準局(NBS,現為 NIST)公開徵求國家加密標準。IBM 以 Lucifer 為基礎提交方案,但在 NSA(國家安全局)介入後,演算法經歷了關鍵修改:金鑰長度從 128 位元削減至 56 位元,S-Box 設計亦遭調整。

此舉引發密碼學界的廣泛質疑,外界擔憂 NSA 刻意植入後門或降低安全性。儘管爭議不斷,修改後的版本於 1977 年正式發布為 DES(Data Encryption Standard)。事後研究證實,NSA 的 S-Box 修改實際上強化了對差分攻擊的抵抗力,但 56 位元金鑰過短的問題,最終導致 DES 於 1999 年被暴力破解宣告過時。

💡 重點整理

  • 設計者:IBM 密碼學家 Horst Feistel,1970 年代初期開發。
  • 原始規格:64 位元區塊、128 位元金鑰、多輪 Feistel 結構。
  • NSA 修改:金鑰縮短至 56 位元,S-Box 重新設計後強化了抗差分攻擊能力。
  • 歷史地位:Lucifer 是 DES 的直接前身,奠定現代分組加密的設計範式。

Lucifer 不只是一個被取代的舊演算法,它所確立的 Feistel 架構思想至今仍影響著 DES、3DES 乃至現代密碼設計的基本框架,是理解對稱加密演進不可繞過的起點。

📚 參考文獻

  1. NIST, Data Encryption Standard (DES), FIPS PUB 46-3 — csrc.nist.gov
  2. Horst Feistel, "Cryptography and Computer Privacy", Scientific American, 1973 — 原始 Feistel 結構論述。
  3. Bruce Schneier, Applied Cryptography, Wiley — 涵蓋 Lucifer 與 DES 設計細節的權威著作。