Methods of Attack
Attempts to crack a cryptosystem can be generally classified into four classes of attack methods:
Analytic attacks: An analytic attack uses algebraic manipulation in an attempt to reduce the complexity of the algorithm.
Brute-force attacks: In a brute-force (or exhaustion) attack, the cryptanalyst attempts every possible combination of key patterns, sometimes utilizing rainbow tables, and specialized or scalable computing architectures. This type of attack can be very time-intensive (up to several hundred million years) and resource-intensive, depending on the length of the key, the speed of the attacker’s computer . . . and the lifespan of the attacker.
Implementation attacks: Implementation attacks attempt to exploit some weakness in the cryptosystem such as vulnerability in a protocol or algorithm.
Statistical attacks: A statistical attack attempts to exploit some statistical weakness in the cryptosystem, such as a lack of randomness in key generation.