MP-SPDZ is a comprehensive software framework designed to implement and benchmark over 40 different secure multi-party computation (MPC) protocols. It provides a common high-level interface for writing secure applications in Python or a domain-specific language, which are then compiled into bytecode and executed by the underlying protocol engine. The framework supports computation over arithmetic circuits (modulo integers or fixed-point numbers) and boolean circuits, allowing developers to choose the most efficient representation for their specific privacy-preserving task.
Glossary
MP-SPDZ

What is MP-SPDZ?
MP-SPDZ is a versatile open-source software framework for benchmarking and executing a wide array of secure multi-party computation protocols, supporting both arithmetic and boolean circuits with varying security guarantees.
The framework's primary utility lies in its ability to compare the performance of diverse cryptographic protocols—from semi-honest to maliciously secure—under a unified benchmarking suite. It implements state-of-the-art techniques like oblivious transfer extension, Beaver triples, and mixed-circuit optimizations. By abstracting the low-level cryptography, MP-SPDZ enables researchers and engineers to rapidly prototype secure applications such as private inference, secure aggregation, and privacy-preserving statistical analysis without mastering the intricacies of each underlying protocol.
Key Features of MP-SPDZ
MP-SPDZ is a versatile open-source software framework for benchmarking and running a wide variety of secure multi-party computation protocols, supporting both arithmetic and boolean circuits with different security guarantees.
Multi-Protocol Architecture
Implements over 40 protocol variants within a single unified framework, enabling direct comparisons between different MPC paradigms. The architecture abstracts the underlying protocol, allowing users to write a high-level program once and execute it using secret sharing, garbled circuits, or homomorphic encryption backends without modifying the source code. This design is critical for benchmarking the concrete efficiency of protocols like SPDZ, MASCOT, Overdrive, and TinyOT across different network configurations and security models.
High-Level Domain-Specific Language
Provides a Python-like high-level language that compiles to an internal bytecode representation, which is then executed by the chosen MPC protocol. The language supports standard programming constructs including loops, conditionals, arrays, and fixed-point arithmetic. This abstraction eliminates the need for engineers to manually design boolean or arithmetic circuits, dramatically lowering the barrier to implementing complex privacy-preserving applications such as secure neural network inference and private statistical analysis.
Mixed-Circuit Computation
Seamlessly integrates arithmetic circuits (modulo a prime) and boolean circuits within the same secure computation. The compiler automatically inserts conversion protocols between different secret-sharing domains, optimizing for the most efficient representation for each operation. For example, a comparison operation is executed efficiently in the boolean domain, while a matrix multiplication remains in the arithmetic domain, avoiding the prohibitive cost of emulating one circuit type within the other.
Malicious Security with MACs
Supports protocols with active security (malicious adversary model) using information-theoretic Message Authentication Codes (MACs). In protocols like SPDZ and MASCOT, every secret-shared value is accompanied by a MAC share, allowing parties to verify the correctness of computations at the final output stage. If a cheating party introduces a corrupt value, the MAC check fails with overwhelming probability, causing the protocol to abort and preventing the leakage of private inputs.
Preprocessing Model for Efficiency
Separates the protocol into a data-independent preprocessing phase and a data-dependent online phase. During preprocessing, parties generate correlated randomness such as Beaver triples and authentication tags using heavy public-key cryptography. The online phase then executes the actual function using only fast, information-theoretic operations on the pre-computed material. This model enables extremely low-latency secure computation once the offline phase is complete, making it suitable for near-real-time applications.
Extensive Machine Learning Integration
Includes native implementations of common ML operations and layers, enabling MPC-based inference on trained models. The framework provides optimized secure protocols for:
- Convolutional and fully-connected layers
- ReLU, Sigmoid, and Softmax activations
- Max-pooling and average-pooling
- Fixed-point arithmetic for fractional values This allows researchers to convert models from frameworks like PyTorch or TensorFlow and run private inference using the SecureML or MiniONN protocol backends.
Frequently Asked Questions
Clear answers to common questions about the MP-SPDZ framework, its protocols, performance characteristics, and practical usage in secure multi-party computation.
MP-SPDZ is a versatile open-source software framework for benchmarking and executing a wide variety of secure multi-party computation (MPC) protocols. It works by compiling high-level programs written in a Python-like language into bytecode that can be executed by multiple parties over a network. The framework supports both arithmetic circuits (computations over integers and fixed-point numbers) and boolean circuits (bitwise operations), allowing developers to implement everything from simple statistical functions to complex machine learning inference. MP-SPDZ implements over 40 protocol variants spanning different security models—semi-honest, malicious, and covert—and different underlying primitives including secret sharing, garbled circuits, and homomorphic encryption. The framework's name derives from the seminal SPDZ protocol family, but it has expanded to encompass many other MPC protocols including BMR, TinyOT, and replicated secret sharing schemes.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Core protocols, primitives, and frameworks that form the foundation of the MP-SPDZ benchmarking ecosystem.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us