Hacker News new | ask | show | jobs
by alkonaut 2581 days ago
I suppose then "adding timing noise" here would also require making sure instructions don't have fixed and dependable execution times, because then you can just manufacture a clock by incrementing a number and knowing how many clock cycles the increment is. So an increment cannot be a known number of cycles. It does sound messy.
2 comments

Adding random delay makes timing attacks more costly by not impossible. Any random noise can simply be filtered out by performing the attack multiple times and averaging the measurements. This even works over the network with milliseconds of random delays.
But then you'd have to increase execution times, and here we are ...
That's true of course. So basically adding timing noise is equivalent to adding artificial slowdowns. The only upside I suppose is that it might solve all timing sidechannel attacks in one go. So it's not 3% for one and 4% for the next and so on. It's a one time cost to disable timing as an attack vector.
Adding randomness doesn't solve the issue, it just slows it down somewhat. Fast operations are still going to be faster on average, etc.