RSA Key Extraction via Low- Bandwidth Acoustic Cryptanalysis Daniel Genkin, Adi Shamir, Eran Tromer
Mathematical Attacks InputOutput Crypto Algorithm Key Goal: recover the key given access to the inputs and outputs
Side Channel Attacks Power Vibration Timing Sound Heat EM InputOutput Radiation Crypto Algorithm Key Bad InputsErrors Goal: recover the key given access to the inputs, outputs and measurements Goal: recover the key given access to the inputs and outputs Crypto Algorithm Key Crypto Device Key
ENGULF [Peter Wright, pycatcher, p. 84] In 1956, a couple of Post Office engineers fixed a phone at the Egyptian embassy in London.
ENGULF (cont.) “The combined MI5/GCHQ operation enabled us to read the Egyptian ciphers in the London Embassy throughout the Suez Crisis.”
Acoustic cryptanalysis on modern CPUs
Distinguishing various CPU operations
Distinguishing various code lengths loops in different lengths of ADD instructions
RSA decryption
RSA key distinguishability and here is the sound of the keys (after signal processing)keys
Modular exponentiation
Single multiplication is way to fast for us to measure Multiplication is repeated 2048 times (0.5 sec of data)
Acoustic leakage of key bits
Results Key extraction is possible up to 4 meters away using a parabolic microphone
Results Key extraction is possible up to 1 meter away without a parabolic microphone
Results Key extraction is possible up to 30cm away using a smartphone
Karatsuba multiplication
The recursion tree
Basic multiplication Repeated for a total of 8 times in this call and for a total of up to ~172,000 times!, allowing for the leakage to be detectable using low bandwidth means (such as sound).
1.Play loud music while decrypting (or other kind of noise) 2.Parallel software load Countermeasures --- bad ideas!
Countermeasures (ciphertext randomization)
Thank you! (questions?)