被動攻擊
選擇明文攻擊
選擇密文攻擊
自適應選擇密文攻擊
暴力攻擊
密鑰長度
唯壹解距離
密碼分析學
中間相會攻擊
差分密碼分析
線性密碼分析
Slide attack cryptanalysis
Algebraic cryptanalysis
XSL attack
Mod n cryptanalysis
弱密鑰和基於口令的密碼
暴力攻擊
字典攻擊
相關密鑰攻擊
Key derivation function
弱密鑰
口令
Password-authenticated key agreement
Passphrase
Salt
密鑰傳輸/交換
BAN Logic
Needham-Schroeder
Otway-Rees
Wide Mouth Frog
Diffie-Hellman
中間人攻擊
偽的和真的隨機數發生器
PRNG
CSPRNG
硬件隨機數發生器
Blum Blum Shub
Yarrow (by Schneier,et al)
Fortuna (by Schneier,et al)
ISAAC
基於SHA-1的偽隨機數發生器, in ANSI X9.42-2001 Annex C.1 (CRYPTREC example)
PRNG based on SHA-1 for general purposes in FIPS Pub 186-2 (inc change notice 1) Appendix 3.1 (CRYPTREC example)
PRNG based on SHA-1 for general purposes in FIPS Pub 186-2 (inc change notice 1) revised Appendix 3.1 (CRYPTREC example)
匿名通訊 Dining cryptographers protocol (by David Chaum)
匿名投遞
pseudonymity
匿名網絡銀行業務
Onion Routing
密碼分析又稱破密術。密碼分析的目的是發現密碼機制的弱點,從事者可能是意圖顛覆系統惡意的攻擊者或評估系統弱點的設計人。在現代,密碼算法與協定必須被仔細檢查和測試,確定其保證的安全性。
大眾普遍誤解認為所有加密法都可以被破解。Bell Labs的Claude Shannon在二次世界大戰時期便證明只要鑰匙是完全隨機,不重復使用,對外絕對保密,與信息等長或比信息更長的壹次壹密是不可能破解的。除了壹次壹密以外的多數加密法都可以以暴力攻擊法破解,但是破解所需的努力可能是鑰匙長度的指數成長。
密碼分析的方式有很多,因此有數個分類。壹個常見的分別法則是攻擊者知曉多少信息。在唯密文攻擊中,密碼分析者只能存取密文,好的現代密碼系統對這種情況通常是免疫的。在已知明文攻擊中,密碼分析者可以存取多個明文、密文對。在選擇明文攻擊中,密碼分析者可以自選任意明文,並被賦予相對應的密文,例如二戰時布列顛所使用的園藝法。最後,選擇密文攻擊中,密碼分析者可以自選任意密文,並被賦予相對應的明文
對稱鑰匙加密的密碼分析通常旨在尋找比已知最佳破解法更有效率的方式。例如,以最簡單的暴力法破解DES需要壹個已知明文與解密運算,嘗試近半數可能的鑰匙。線性分析攻擊法對DES需要已知明文與DES運算,顯然比暴力法有效。
公開鑰匙算法則基於多種數學難題,其中最有名的是整數分解和離散對數問題。許多公開鑰匙密碼分析在研究如何有效率地解出這些計算問題的數值算法。例如,已知解出基於橢圓曲線的離散對數問題比相同鑰匙大小的整數因子分解問題更困難。因此,為了達到相等的安全強度,基於因子分解的技術必須使用更長的鑰匙。由於這個因素,基於橢圓曲線的公開鑰匙密碼系統從1990年代中期後逐漸流行。
當純粹的密碼分析著眼於算法本身時,某些攻擊則專註於密碼裝置執行的弱點,稱為副通道攻擊。如果密碼分析者可以存取到裝置執行加密或回報通行碼錯誤的時間,它就可能使用時序攻擊法破解密碼。攻擊者也可能研究信息的模式與長度,得出有用的信息,稱為流量分析,對機敏的敵人這相當有效。當然,社會工程與其它針對人事、社交的攻擊與破密術壹並使用時可能是最有力的攻擊法。