Cipher security summary
Attacks against common ciphers From Wikipedia, the free encyclopedia
This article summarizes publicly known attacks against block ciphers and stream ciphers. Note that there are perhaps attacks that are not publicly known, and not all entries may be up to date.
Table color key
No known successful attacks — attack only breaks a reduced version of the cipher
Theoretical break — attack breaks all rounds and has lower complexity than security claim
Attack demonstrated in practice
Best attack
This column lists the complexity of the attack:
- If the attack doesn't break the full cipher, "rounds" refers to how many rounds were broken
- "time" — time complexity, number of cipher evaluations for the attacker
- "data" — required known plaintext-ciphertext pairs (if applicable)
- "memory" — how many blocks worth of data needs to be stored (if applicable)
- "related keys" — for related-key attacks, how many related key queries are needed
Common ciphers
Summarize
Perspective
Key or plaintext recovery attacks
Attacks that lead to disclosure of the key or plaintext.
Cipher | Security claim | Best attack | Publish date | Comment |
---|---|---|---|---|
AES128 | 2128 | 2126.1 time, 288 data, 28 memory | 2011-08-17 | Independent biclique attack.[1] |
AES192 | 2192 | 2189.7 time, 280 data, 28 memory | ||
AES256 | 2256 | 2254.4 time, 240 data, 28 memory | ||
Blowfish | Up to 2448 | 4 of 16 rounds; 64-bit block is vulnerable to SWEET32 attack. | 2016 | Differential cryptanalysis.[2] Author of Blowfish (Bruce Schneier) recommends using Twofish instead.[3] SWEET32 attack demonstrated birthday attacks to recover plaintext with its 64-bit block size, vulnerable to protocols such as TLS, SSH, IPsec, and OpenVPN, without attacking the cipher itself.[4] |
Twofish | 2128 – 2256 | 6 of 16 rounds (2256 time) | 1999-10-05 | Impossible differential attack.[5] |
Serpent-128 | 2128 | 10 of 32 rounds (289 time, 2118 data) | 2002-02-04 | Linear cryptanalysis.[6] |
Serpent-192 | 2192 | 11 of 32 rounds (2187 time, 2118 data) | ||
Serpent-256 | 2256 | |||
DES | 256 | 239 – 243 time, 243 known plaintexts | 2001 | Linear cryptanalysis.[7] In addition, broken by brute force in 256 time, no later than 1998-07-17, see EFF DES cracker.[8] Cracking hardware is available for purchase since 2006.[9] |
Triple DES | 2168 | 2113 time, 232 data, 288 memory; 64-bit block is vulnerable to SWEET32 attack. | 2016 | Extension of the meet-in-the-middle attack. Time complexity is 2113 steps, but along with proposed techniques, it is estimated to be equivalent to 290 single DES encryption steps. The paper also proposes other time–memory tradeoffs.[10] SWEET32 attack demonstrated birthday attacks to recover plaintext with its 64-bit block size, vulnerable to protocols such as TLS, SSH, IPsec, and OpenVPN.[4] |
KASUMI | 2128 | 232 time, 226 data, 230 memory, 4 related keys | 2010-01-10 | The cipher used in 3G cell phone networks. This attack takes less than two hours on a single PC, but isn't applicable to 3G due to known plaintext and related key requirements.[11] |
RC4 | Up to 22048 | 220 time, 216.4 related keys (95% success probability) | 2007 | Commonly known as PTW attack, it can break WEP encryption in Wi-Fi on an ordinary computer in negligible time.[12] This is an improvement of the original Fluhrer, Mantin and Shamir attack published in 2001.[13] |
Distinguishing attacks
Attacks that allow distinguishing ciphertext from random data.
Less-common ciphers
Summarize
Perspective
Key recovery attacks
Attacks that lead to disclosure of the key.
Cipher | Security claim | Best attack | Publish date | Comment |
---|---|---|---|---|
CAST (not CAST-128) | 264 | 248 time, 217 chosen plaintexts | 1997-11-11 | Related-key attack.[15] |
CAST-128 | 2128 | 6 of 16 rounds (288.51 time, 253.96 data) | 2009-08-23 | Known-plaintext linear cryptanalysis.[16] |
CAST-256 | 2256 | 24 of 48 rounds (2156.2 time, 2124.1 data) | ||
IDEA | 2128 | 2126.1 time | 2012-04-15 | Narrow-biclique attack.[17] |
MISTY1 | 2128 | 269.5 time, 264 chosen plaintexts | 2015-07-30 | Chosen-ciphertext, integral cryptanalysis,[18] an improvement over a previous chosen-plaintext attack.[19] |
RC2 | 264 – 2128 | Unknown[clarification needed] time, 234 chosen plaintexts | 1997-11-11 | Related-key attack.[15] |
RC5 | 2128 | Unknown | ||
SEED | 2128 | Unknown | ||
Skipjack | 280 | 280 | ECRYPT II recommendations note that, as of 2012, 80 bit ciphers provide only "Very short-term protection against agencies".[20] NIST recommends not to use Skipjack after 2010.[21] | |
TEA | 2128 | 232 time, 223 chosen plaintexts | 1997-11-11 | Related-key attack.[15] |
XTEA | 2128 | Unknown | ||
XXTEA | 2128 | 259 chosen plaintexts | 2010-05-04 | Chosen-plaintext, differential cryptanalysis.[22] |
Distinguishing attacks
Attacks that allow distinguishing ciphertext from random data.
See also
- Block cipher
- Hash function security summary
- Time/memory/data tradeoff attack
- Transport Layer Security
- Bullrun (decryption program) — a secret anti-encryption program run by the U.S. National Security Agency
References
Wikiwand - on
Seamless Wikipedia browsing. On steroids.