Secure multiparty computation (MPC) techniques
enable multiple parties to compute joint
functions over their private data without
sharing that data with other parties, typically
by employing powerful cryptographic protocols to
protect individual’s data. One challenge when
writing such functions is that most MPC
languages force users to intermix programmatic
and privacy concerns in a single application,
making it difficult to change or audit a
program’s underlying privacy policy. Prior
policy-agnostic MPC languages relied on dynamic
enforcement to decouple privacy requirements
from program logic. Unfortunately, the resulting
overhead makes it difficult to scale MPC
applications that manipulate structured
data. This work proposes to eliminate this
overhead by instead transforming programs into
semantically equivalent versions that statically
enforce user-provided privacy policies. We have
implemented this approach in a new MPC language,
called Taypsi;
our experimental evaluation demonstrates that
the resulting system features considerable
performance improvements on a variety of MPC
applications involving structured data and
complex privacy policies.