Information Security Seminar  RSS

Sessions

03/04/2007, 16:30 — 17:30 — Tagus-1.1
, INRIA Microsoft Research Joint Centre

Cryptographically secure implementations of non-interferent programs

Confidentiality and integrity properties in language-based security are specified with the help of a set of security levels, and a partial order that describes permitted flows of information. Security levels associated to variables of programs describe different policies specifying e.g. who can read (confidentiality) and who can write (integrity) a given piece of data. Preservation of specified confidentiality and integrity policies associated with variables can be proved using the definition of non-interference that states that the attacker knowledge is not augmented by execution of programs.
In a distributed setting, a permitted flow of information from one variable to another variable may require communication over untrusted channels, e.g. shared memory that can be access (read and modify) by active adversaries. In this case, primitives for encryption and signing are necessary. However, classical non-interference properties are too strict to express that attacker knowledge is not augmented by execution of programs with cryptography. Hence preservation of specified confidentiality and integrity policies cannot be proved using non-interference. Computational non-interference allows one to specify preservation of confidentiality and integrity properties, using computational hypotheses about the cryptography used in the language.
In this work we propose a sound translation from programs with private communication satisfying non-interference to programs with shared-memory communication and cryptography. To this end, we propose type systems for each language, and prove that the translation is typability preserving. Joint work with Cédric Fournet, Microsoft Research Cambridge.
Room 1.4. Note the exceptional date and location.