Welcome to MP-SPDZ’s documentation!¶
MP-SPDZ is a framework for multi-party computation, a privacy-enhancing technology focused on input privacy. Please see this gentle introduction for more information on multi-party computation.
If you’re new to MP-SPDZ, consider the following:
Input/Output lists all the ways of getting data in and out.
- Getting Started
- Running Computation
- Compilation Process
- High-Level Interface
- Bytecode Utilities
- The Journey of a Program
- Compiler Optimizations
- Virtual Machine
- Low-Level Interface
- Machine Learning Quickstart
- Machine Learning
- Networking
- Input/Output
- Client Interface
- Multinode Computation Example
- Non-linear Computation
- Preprocessing
- Lowest-Level Interface
- Adding a Protocol
- Adding an Instruction
- Homomorphic Encryption
- Threshold ECDSA
- Troubleshooting
- Crash without error message,
Killed
, orbad_alloc
- List indices must be integers or slices
- Local variable referenced before assignment
compile.py
takes too long or runs out of memory- Cannot derive truth value from register
- Incorrect results when using
sfix
- Variable results when using
sfix
- Only party 0 produces outputs
- Order of memory instructions not preserved
- High number of rounds or slow WAN execution
- Odd timings
- Disparities in round figures
- Handshake failures
- Connection failures
- Internally called tape has unknown offline data usage
- Illegal instruction
- Invalid instruction
- Computation used more preprocessing than expected
- Required prime bit length is not the same as
-F
parameter during compilation - Windows/VirtualBox performance
mac_fail
- Crash without error message,