Transforming out timing leaks

J Agat - Proceedings of the 27th ACM SIGPLAN-SIGACT …, 2000 - dl.acm.org
J Agat
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of …, 2000dl.acm.org
One aspect of security in mobile code is privacy: private (or secret) data should not be
leaked to unauthorised agents. Most of the work on secure information flow has until recently
only been concerned with detecting direct and indirect flows. Secret information can
however be leaked to the attacker also through covert channels. It is very reasonable to
assume that the attacker, even as an external observer, can monitor the timing (including
termination) behaviour of the program. Thus to claim a program secure, the security analysis …
One aspect of security in mobile code is privacy: private (or secret) data should not be leaked to unauthorised agents. Most of the work on secure information flow has until recently only been concerned with detecting direct and indirect flows. Secret information can however be leaked to the attacker also through covert channels. It is very reasonable to assume that the attacker, even as an external observer, can monitor the timing (including termination) behaviour of the program. Thus to claim a program secure, the security analysis must take also these into account.
In this work we present a surprisingly simple solution to the problem of detecting timing leakages to external observers. Our system consists of a type system in which well-typed programs do not leak secret information directly, indirectly or through timing, and a transformation for removing timing leakages. For any program that is well typed according to Volpano and Smith [VS97a], our transformation generates a program that is also free of timing leaks.
ACM Digital Library