Logical relations for encryption

Eijiro Sumii, Benjamin C. Pierce · 2005

The theory of relational parametricity and its logical relations proof technique are powerful tools for reasoning about information hiding in the polymorphic *-calculus. We investigate the application of these tools in the security domain by defining a cryptographic *-calculus--an extension of the standard simply typed *-calculus with primitives for encryption, decryption, and key generation-- and introducing syntactic logical relations (in the style of Pitts and Birkedal-Harper) for this calculus that can be used to prove behavioral equivalences between programs that use encryption. We illustrate the framework by encoding some simple security protocols, including the Needham- Schroeder public-key protocol. We give a natural account of the well-known attack on the original protocol and a straightforward proof that the improved variant of the protocol is secure.

Read the paper · More papers on PaperTik