Improving Scalability of Universal Circuits for Large-Scale Private Function Evaluation

Master Thesis


Masaud Y. Alhassan


Private function evaluation allows to evaluate a function on another party's secret input, while maintaining the privacy of both the functionality being computed and of the input. Universal circuits (UCs) are circuits that can be programmed to compute any circuit up to a given size. Due to recent advances on the practicality of UCs [KS16,LMS16], the state-of-the-art construction is able to privately evaluate any function up to a certain threshold defined by the abilities of the computing device. Due to the memory-intensive algorithms used for generating and evaluating a universal circuit, this threshold prevents us from employing UCs in large-scale real-world applications in their current form. However, the scalability of UCs can be improved by using files to store independent parts and intermediate results of the algorithms.


The goal of the thesis is to improve the scalability of an existing UC implementation, and demonstrate the improvement on different platforms. Moreover, example application prototypes are to be implemented in order to demonstrate the practicality of the resulting UC implementation.


Applicants should have outstanding academic records and solid C/C++ programming skills.


The student will identify the parts of the UC generation and programming algorithm that can be processed independently given certain information as input. Thereafter, the student will modify the existing UC implementation to enable computation of the algorithm in a serialized manner.


  • [KS16]: Ágnes Kiss and Thomas Schneider: Valiant's Universal Circuit is Practical. In Eurocrypt'16.
  • [LMS16]: Helger Lipmaa, Payman Mohasse and Saeed Sadeghian: Valiant's Universal Circuit: Improvements, Implementation, and Applications. In Eprint 2016/017.