Passive attack: Difference between revisions
imported>Sandy Harris No edit summary |
imported>Sandy Harris No edit summary |
||
Line 8: | Line 8: | ||
* [[brute force attack]] — try all possible keys | * [[brute force attack]] — try all possible keys | ||
* [[algebraic attack]] — write the cipher as a system of equations and solve for the key | * [[algebraic attack]] — write the cipher as a system of equations and solve for the key | ||
* [[code book attack]] — collect all possible plaintext/ciphertext pairs | * [[code book attack]] — collect all possible plaintext/ciphertext pairs for a [[block cipher]], or the entire pseudorandom stream for a [[stream cipher]] | ||
However, all of those attacks are ''spectacularly impractical against real ciphers''. Brute force and algebraic attacks require the attacker to do far too much work. For a code book attack, he needs very large amounts of storage and a large collection of intercepts, all encrypted with the same key. If the cipher user changes keys at reasonable intervals, a code book attack is impossible. | However, all of those attacks are ''spectacularly impractical against real ciphers''. Brute force and algebraic attacks require the attacker to do far too much work. For a code book attack, he needs very large amounts of storage and a large collection of intercepts, all encrypted with the same key. If the cipher user changes keys at reasonable intervals, a code book attack is impossible. | ||
There are are whole range of other passive attacks; see [[cryptanalysis]]. | There are are whole range of other passive attacks; see [[cryptanalysis]]. |
Revision as of 07:23, 2 November 2008
In cryptography a passive attack on a communications system is one in which the attacker only eavesdrops; he may read messages he is not supposed to see, but he does not alter messages. This contrasts with an active attack in which the attacker may forge, alter, replace or reroute messages.
There are three passive attacks that will in theory break any cipher; variants of these work for either block ciphers or stream ciphers:
- brute force attack — try all possible keys
- algebraic attack — write the cipher as a system of equations and solve for the key
- code book attack — collect all possible plaintext/ciphertext pairs for a block cipher, or the entire pseudorandom stream for a stream cipher
However, all of those attacks are spectacularly impractical against real ciphers. Brute force and algebraic attacks require the attacker to do far too much work. For a code book attack, he needs very large amounts of storage and a large collection of intercepts, all encrypted with the same key. If the cipher user changes keys at reasonable intervals, a code book attack is impossible.
There are are whole range of other passive attacks; see cryptanalysis.