You have won the lottery and decide to buy yourself some hardware and start a company that breaks symmetric-key encryption schemes using known plaintext-ciphertext pairs and exhaustive search (brute force).
You buy 262, 144 = 2^18 machines that each have a 32-core 8.5899GHz processor . You can assume that testing one secret key requires one cycle on one core of one machine . Don’t worry about generating all the keys and memory accesses . If you use all the resources you have at your disposal, how long will it take to find the secret key (in the worst-case) in each of the following scenarios?
a) The keylength is 56 bits
b) The keylength is 80 bits
c) The keylength is 128 bits
d) The leylength is 256 bits
Show your work (which might be the code of a small python program or the actual calculations).
Now, the oldest rock found on earth is estimated to be 4.031 billion years old. Each of the answers above must be expressed in either seconds, minutes, days, years or orys (old rock years). Use the scale that makes the most sense for each part. Briefly comment on the results.
Note: You may (or may not) find the following useful: 8.5899 ≈ 2^33 / 10^9 .
(a) The Keylength is 56 bits
As there are 2^18 machines that each have a 32 core processor, testing that requires for one secret key requires one cycle on one core of one machine has 2^18 x 32.
Size of secret key 56 bits = 2^56
Therefore the Answer is 2^56 / (2^18 * 32) = 8589934592 seconds
(b) The Keylength is 80 bits
Size of secret key for 80 bits = 2^80
The Answer is 2^80 / (2^18 * 32) = 40031997222222 h (hour)
(c) The Keylength is 128 bits
Size of secret key for 128 bits = 2^128
The Answer is 2^128 / (2^18 * 32) = 1.2863019723491E+24 years
(d) The Keylength is 256 bits
Size of secret key for 256 bits = 2^256
The Answer is 2^256 / (2^18 * 32) = 4.3770589167935E+62 years
Get Answers For Free
Most questions answered within 1 hours.