Brute Force Attack

Brute Force Attack, aka Exhaustive Key Search, is a #Cryptanalysis technique that attempts to obtain an intelligible plaintext by trying every possible key on a piece of ciphertext. On average, \(\frac{N}{2}\) number of keys must be tried before a success, where \(N\) annotates the total number of possible keys. Therefore, we know that the time used by Brute Force Attack is proportional to the key size: the larger the key size, the longer the time taken to crack the algorithm.

For example, suppose the key size used is 32 bits. The total number of possible keys should be \(2^{32}\), and it requires \(\frac{2^{32}}{2} = 2^{32 - 1} = 2^{31}\) attempts on average. Assume that the speed to decrypt is 1 decryption per µs, it will be \(2^{31}\) µs \(= 2^{31} \times 10^{-6}\) s \(= 2^{31} \times 10^{-6} \div 60\) min, which is \(35.79\) minutes. If the speed to decrypt increased to \(10^6\) decryption per µs, it will be \(\frac{2^{31}}{10^6}\) µs \(= 2^{31} \times 10^{-6 - 6}\) s \(= 2^{31} \times 10^{-12}\) s \(= 2.147 \times 10^{-3}\) s or \(2.147\) ms.

If a #Cryptanalysis could crack an encryption scheme with an attempts less than of the Brute Force Attack, then it is considered to be a Cryptanalytic Attack on the scheme.

Links to this page
#security