Paper 2011/038

Cold Boot Key Recovery by Solving Polynomial Systems with Noise

Martin Albrecht and Carlos Cid


A method for extracting cryptographic key material from DRAM used in modern computers has been recently proposed in [9]; the technique was called Cold Boot attacks. When considering block ciphers, such as the AES and DES, simple algorithms were also proposed in [9] to recover the cryptographic key from the observed set of round subkeys in memory (computed via the cipher’s key schedule operation), which were however subject to errors due to memory bits decay. In this work we extend this analysis to consider key recovery for other ciphers used in Full Disk Encryption (FDE) products. Our algorithms are also based on closest code word decoding methods, however apply a novel method for solving a set of non-linear algebraic equations with noise based on Integer Programming. This method should have further applications in cryptology, and is likely to be of independent interest. We demonstrate the viability of the Integer Programming method by applying it against the Serpent block cipher, which has a much more complex key schedule than AES. Furthermore, we also consider the Twofish key schedule, to which we apply a dedicated method of recovery.

Available format(s)
Secret-key cryptography
Publication info
Published elsewhere. Unknown where it was published
polynomial system solvingside-channel attacksblockciphernoise-tolerant learning
Contact author(s)
malb @ lip6 fr
2011-01-21: received
Short URL
Creative Commons Attribution


      author = {Martin Albrecht and Carlos Cid},
      title = {Cold Boot Key Recovery by Solving Polynomial Systems with Noise},
      howpublished = {Cryptology ePrint Archive, Paper 2011/038},
      year = {2011},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.