Time Machines, Computer Memory, and Brute Force Attacks Against Smartcards
An anonymous reader writes "IEEE Spectrum reports on a method that exploits the decaying contents of unpowered computer memory to create an hourglass-like 'time machine' that rate limits brute force attacks against contactless smartcards and RFIDs. The paper takes an odd twist on the 'cold boot' attack reported four years ago at USENIX Security. Not quite as cool as a hot tub time machine though. "
Full paper (PDF).
Why do I have to decrypt the summary?
Taking advantage of the (statistically) predictable decay rate of data stored in the RFID's SRAM is a cute trick for rough timekeeping, I have to admit.
It makes me wonder, though, and some perfunctory googling isn't giving me the immediate gratification that I demand, is there anything reasonably practical that could modify the decay rate for SRAM, ideally in a way that would be practical for an attack? Does a strong magnetic field affect contemporary transistors in any useful way? Would a hit of radiation before each attack attempt sufficiently scramble the RAM contents before it also scrambled the nonvolatile memory storing the secret being attacked?
Just like putting too much air into a balloon.
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
Unlike your top of line PC, there are a lot of constraints on an embedded chip especially one that cost pennies, can run on energy from the RF near field and amount of computation. Unlike white board software, this is real world Engineering where there is a trade-off between constraints/requirement/economic/physical that are opposite to each other. So might want to not mouth off without knowing the subject.
The chip is also highly observable and a lot of information can be deduced from the amount of time for the processing and power profile during execution.
Which makes it harder, actually.
The "trick" is basically the card using the slow decay of unpowered memory to detect if the card has been powered on recently, and if so, force a small delay. The goal is basically to limit the rate of attacks with minimal impact on proper use (if the card reads properly every time, this has near-zero impact on proper use - it might annoy a bit if your card doesn't read right, having to wait a second or two to swipe again, but that's neither a terribly common case nor a significant impact on real users).
Chilling it actually makes it worse for you, as the card will detect itself as "having been powered up recently" for longer than it would normally, so you limit your attack rate even more.