Hardware Security
Which correctly pairs the principle behind timing attacks with a typical countermeasure?
- AIt exploits processing that is too fast; deliberately slow it down
- BIt exploits an inaccurate clock time; synchronize the clock
- CIt exploits processing time varying with secret values; implement code that takes the same time regardless of secrets (constant-time)
Show answer and explanation
Answer: C. It exploits processing time varying with secret values; implement code that takes the same time regardless of secrets (constant-time)
In an implementation that does extra work only when a key bit is 1, for example, repeated timing measurements reveal the key bits. The countermeasure is constant-time code, where branches, loop counts and memory access locations do not depend on secrets. Merely slowing everything down or adding random delays is not enough, because attackers can average away the noise with more measurements.
- A. Uniformly slowing down still leaks if time differences remain.
- B. It is not about clock time-of-day.
- C. Correct. Branches and memory accesses must not depend on secrets.