Software

MPC frameworks

SODA actively contributes to below MPC frameworks. More information is available in SODA report D4.2 “Proof-of-concept for results of tasks 1.2 and 2.2: implementations of key MPC technologies”.

FRESCO

FRESCO is a Java framework for efficient secure computation aiming at making the development of prototype applications based on secure computation easy. As part of this work package we have made substantial improvements and expansions to the FRESCO framework enhancing stability, usability and security:

  • New Application Interface
  • SPDZ Preprocessing
  • Network Improvements
  • New Protocols (Tinytables, SPDZ2k)
  • New Library functionality
  • Tools for outsourced MPC

For a more elaborate description consider the SODA D4.2 report.

FRESCO is available at GitHub at https://github.com/aicis/fresco, and the documentation can be found at Read the Docs at https://fresco.readthedocs.io/en/latest/. The public channel where we receive questions, bug reports and suggestions on how to improve FRESCO can be found at https://gitter.im/FRESCO-MPC/Lobby.

MPyC

MPyC is a Python framework for secure multiparty computation. MPyC targets usability and ease of use balanced with efficiency. These properties make it well-suited for education and rapid prototyping of MPC applications.

MPyC is available on GitHub at https://github.com/lschoe/mpyc. It also includes documentation. MPyC is also available as a package in the Python Package Index (PyPI).

Privacy-preserving analytics

Various machine learning algorithms implemented in FRESCO and MPyC can be found at https://github.com/aicis/fresco-ml and https://github.com/lschoe/mpyc respectively.

PySNARK

PySNARK is a Python-based system for zk-SNARK (zero-knowledge succinct non-interactive argument of knowledge) based verifiable computations and smart contracts. PySNARK makes it possible to program verifiable computations in Python. This solves the problem that it is quite hard to specify verifiable computations. PySNARK automatically creates a proof.

PySNARK is available from https://github.com/Charterhouse/pysnark.