I am interested in security, programming, and distributed systems. I am a member of the Programming Principles and Tools and Security groups at Microsoft Research in Cambridge, UK. Since 2006, I also lead a project on Secure Distributed Computations at the Microsoft-Inria Joint Centre in Orsay, France.
My recent research subjects include models for cryptography, information-flow security, secure multiparty sessions, refinement types for F#, authorization policies, secure logs, secure implementations of communication abstractions, access control for mobile code, concurrency in C#, private authentication, and the verification of cryptographic protocols for Internet security and Web Services security.
I joined Microsoft Research in 1998. Before that, I graduated from Ecole Polytechnique in 1992, worked for a year on deductive databases at BULL, obtained a second engineering degree from Ecole Nationale des Ponts et Chaussées in 1995, then did a PhD in computer science at Inria Rocquencourt. In my PhD, I applied some concurrency theory to model distributed programming: I proposed a variant of the pi calculus as the core of a distributed programming language. I used this calculus to model the behavior of programs and implementations, in particular agent-based mobility, partial failure, and security. I also wrote the distributed runtime for a prototype implementation of the language.