Cold boot attacks are a class of attacks wherein memory remanence eff?ects are exploited to extract data from a computer's memory. The idea is that modern computer memories retain data for periods of time after power is removed, so an attacker with physical access to a machine may be able to recover, for example, cryptographic key information. The time during which data is retained can be increased by cooling the memory chips. However, because the memory gradually degrades over time once power is removed, only a noisy version of the data may be recoverable. The question then naturally arises: given a noisy version of a cryptographic key, is it possible to reconstruct the original key?
Hence, inspired by cold boot attacks, Heninger and Shacham (Crypto 2009) initiated the study of the problem of how to recover an RSA private key from a noisy version of that key. They gave an algorithm for the case where some bits of the private key are known with certainty. Their ideas were extended by Henecka, May and Meurer (Crypto 2010) to produce an algorithm that works when all the key bits are subject to error. In this paper, we bring a coding-theoretic viewpoint to bear on the problem of noisy RSA key recovery. This viewpoint allows us to cast the previous work as part of a more general framework. In turn, this enables us to explain why the previous algorithms do not solve the motivating cold boot problem, and to design a new algorithm that does (and more). In addition, we are able to use concepts and tools from coding theory - channel capacity, list decoding algorithms, and random coding techniques - to derive bounds on the performance of the previous algorithms and our new algorithm
Antigoni Polychroniadou, Ã…rhus University and FACT Center.