Master Thesis

Secret Santa using multiparty computation

Secret Santa is a famous Christmas tradition in which members of a group are randomly assigned a person to whom they give a gift. The assignments in total are not known by anyone in the group and should remain a secret. An extended version of the game also allows members to specify restrictions in the draw. Specifically, a member can specify an excluded subgroup and the game should make sure that this member is not assigned a person from the excluded subgroup.

Multiparty Computation (or MPC) enables a group of participants, who do not necessarily trust each other, to jointly perform a computation. The term was introduced by Yao in 1982[1]. The participants agree on a function to compute. Each participant holds an input to that function. Using an MPC protocol they compute the output of the function on their secret inputs without revealing them. A famous example, given in [1], is the Millionaires’ problem: “Two millionaires wish to know who is richer; however, they do not want to find out inadvertently any additional information about each other’s wealth.” In this case, the function they wish to compute is x_1 < x_2, where the first participant knows the input x_1 and the second knows x_2. For more information and some important MPC protocols we refer to the chapters 3.1 to 3.3 of the book in [2].

The goal of this thesis is to perform the Secret Santa random assignment using MPC. That is, a group of people, with each member possibly having some restrictions, performs the draw in a decentralized and distributed manner. The first step is to formalize the problem and to design an MPC implementation of it. As a second step, a prototype should be realized.

References

[1] Protocols for Secure Computations

[2] A Pragmatic Introduction to Secure Multi-Party Computation

Contact Orestis Alpos for more information.

Nature of the project: Theory 40%, Systems 60%.