Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
1–10 of 69 posts
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#2Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#3The trace below shows our signal for one block of AES-256 encryption running on a SmartFusion2 target. We use OpenSSL's implementation of AES on the ARM Cortex-M3 core of the SmartFusion2. There are clear, distinct patterns for each stage of processing. We see I/O to and from the Cortex-M3, calculations for the key schedule, and the 14 encryption rounds.
So it was a software implementation.
I wonder if and how effective this attack would be against devices with hardware implementations of AES.
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#4This was the AES implementation this was tested against: The trace below shows our signal for one block of AES-256 encryption running on a SmartFusion2 target. We use OpenSSL's implementation of AES on the ARM Cortex-M3 core of the SmartFusion2. There are clear, distinct patterns for each stage of processing. We see I/O to and from the Cortex-M3, calculations for the key schedule, and the 14 encryption rounds. So it…
Unless steps have been taken to equal power consumption between different paths, theoretically there is nothing stopping this from working on a hw implementaion of AES.
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#5Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#6Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#7This was the AES implementation this was tested against: The trace below shows our signal for one block of AES-256 encryption running on a SmartFusion2 target. We use OpenSSL's implementation of AES on the ARM Cortex-M3 core of the SmartFusion2. There are clear, distinct patterns for each stage of processing. We see I/O to and from the Cortex-M3, calculations for the key schedule, and the 14 encryption rounds. So it…
All it does is messuring power consumtion and uses knowledge about the implementation to calculate the key. Unless steps have been taken to equal power consumption between different paths, theoretically there is nothing stopping this from working on a hw implementaion of AES.
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#8Earlier quoted context omitted.
All it does is messuring power consumtion and uses knowledge about the implementation to calculate the key. Unless steps have been taken to equal power consumption between different paths, theoretically there is nothing stopping this from working on a hw implementaion of AES.
...how about a random-power-consumer? would it help?
Like adding random timings won't prevent timing attacks, adding random sized strings won't prevent chosen plaintext or padding attacks, etc...
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#9This was the AES implementation this was tested against: The trace below shows our signal for one block of AES-256 encryption running on a SmartFusion2 target. We use OpenSSL's implementation of AES on the ARM Cortex-M3 core of the SmartFusion2. There are clear, distinct patterns for each stage of processing. We see I/O to and from the Cortex-M3, calculations for the key schedule, and the 14 encryption rounds. So it…
All it does is messuring power consumtion and uses knowledge about the implementation to calculate the key. Unless steps have been taken to equal power consumption between different paths, theoretically there is nothing stopping this from working on a hw implementaion of AES.
Hardware implementations are designed to make this hard. They also use a lot less power, so any measurements are more difficult / take longer.
Re: Tempest attacks against AES: Stealing keys using minimal equipment [pdf]
#10Earlier quoted context omitted.
All it does is messuring power consumtion and uses knowledge about the implementation to calculate the key. Unless steps have been taken to equal power consumption between different paths, theoretically there is nothing stopping this from working on a hw implementaion of AES.
...how about a random-power-consumer? would it help?