SMC protocols

Secure Multiparty Computation (SMC) allows computation on encrypted data in a network of independent servers.

Each cryptographic protocols has different properties emphasizing either efficiency, security or robustness SMC systems. Tailoring the SMC protocols to the applications ensures the optimal result.


The core properties of a SMC system is defined by the security model for the solution:

  • Active security guarantees that every and even a malicious party must follow protocol and cannot learn anything apart from the intended output.
  • Passive security is faster without the error detection that check for a malicious party – which in passive mode can learn more than intended.
  • Model of trust can either be self trust (where a party only need to trust itself) or honest majority (a party must trust that a majority of the parties are honest). Honest majority allows fault tolerance since each party already trusts more than one party.
  • Basic operations is the basic computation operations and either basic boolean operations or arithmetic operations, boolean are faster for matching, arithmetic is preferred for statistical analysis.
  • Technology is the basic cryptographic technology, secret sharing is the most common one.
  • Fault tolerance is a feature that allows the MPC system to continue to operate if a party intentionally or unintentionally fails to operate.


The Partisia team covers the complete “supply chain” in developing SMC systems including:

  1. Designing the SMC protocols
  2. Mathematically proving the security properties
  3. Implementing the protocols
  4. Tailoring the implementation to the application in question


The table shows three of the most relevant SMC protocols.

Computing parties Configurable 2 or more Configurable 3 or more Configurable 3 or more
Model of trust Self trust Honest majority Honest majority
Passive/active security Active Active Active
Basic operations Arithmetic Boolean Tailored key management operations
Technology Secret sharing Secret sharing Secret sharing
Fault tolerance No Yes Yes
Examples of use Statistics Matching Key management


SPDZ: Open source project together with framework FRESCO. Partisia have implementation with proprietary extensions.

MACE: Multiparty Agile Computation Engine (MACE) is a generic SMC protocol originally designed for off-exchange matching. MACE is an efficient and highly configurable SMC protocol developed by Partisia.

SEPIOR: The Sepior SMC protocol is designed for Key Management as-a-Service (KMaaS) developed and patented by the Partisia spinout


A fourth protocol Virtual Ideal Functionality Framework (VIFF) has been used for the first commercial auction solution. VIFF is still operational as part of the Danish auction site but it has not been further developed in recent years and is greatly outperformed today.