A fundamental challenge in writing software that operates on
sensitive information is preventing timing leaks. A timing
leak is when there exists a relationship between the values of secret
variables in your program and the execution time of your code or other
code running on the same hardware. Attackers who are aware of this
relationship can use a high-resolution timer to learn secret
information that they would not normally be able to access (e.g.
extract an SSL key from a web server).