MP-SPDZ

Contents:

  • Getting Started
  • Running Computation
  • Recommended Reading
  • Compilation Process
  • Run-Time Options
  • High-Level Interface
  • Bytecode Utilities
  • The Journey of a Program
  • Compiler Optimizations
  • Virtual Machine
  • Low-Level Interface
  • Using High-Level Functionality in C++
  • Navigating the C++ Code
  • 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
MP-SPDZ
  • »
  • Recommended Reading
  • View page source

Recommended ReadingΒΆ

The following table lists papers relevant for every protocol supported by MP-SPDZ. This is the same as the output when using --papers during compilation. If you prefer a more general yet comprehensive introduction to MPC, we recommend A Pragmatic Introduction to Secure Multi-Party Computation.

Protocol shorthand

Papers

astra

https://eprint.iacr.org/2025/919

atlas

https://eprint.iacr.org/2021/833

brain

https://eprint.iacr.org/2019/164

ccd

https://eprint.iacr.org/2000/037, https://doi.org/10.1145/62212.62214

chaigear

https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2019/035

cowgear

https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2019/035

dealer-ring

https://mp-spdz.readthedocs.io/en/latest/readme.html#dealer-model

hemi

https://eprint.iacr.org/2022/933, https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2014/106

highgear

https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2019/035, https://eprint.iacr.org/2019/1300

lowgear

https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2019/035, https://eprint.iacr.org/2019/1300

mal-rep-bmr

https://eprint.iacr.org/2017/981

mal-shamir-bmr

https://eprint.iacr.org/2017/981

mal-ccd

https://eprint.iacr.org/2017/816, https://doi.org/10.1145/62212.62214

mal-rep-bin

https://eprint.iacr.org/2016/944

mal-rep-field

https://eprint.iacr.org/2017/816

mal-rep-ring

https://eprint.iacr.org/2019/164

mal-shamir

https://eprint.iacr.org/2017/816

mama

https://eprint.iacr.org/2016/505

mascot

https://eprint.iacr.org/2016/505

ps-rep-bin

https://doi.org/10.1109/SP.2017.15

ps-rep-field

https://eprint.iacr.org/2017/816

ps-rep-ring

https://eprint.iacr.org/2019/164

real-bmr

https://eprint.iacr.org/2017/981

rep-bmr

https://eprint.iacr.org/2017/981

rep4-ring

https://eprint.iacr.org/2020/1330

replicated

https://eprint.iacr.org/2016/768

rep-field

https://eprint.iacr.org/2016/768

ring

https://eprint.iacr.org/2025/919, https://eprint.iacr.org/2016/768

semi

https://eprint.iacr.org/2016/505, https://eprint.iacr.org/2020/521

semi-bin

https://eprint.iacr.org/2016/505, https://eprint.iacr.org/2020/521

semi-bmr

https://eprint.iacr.org/2017/981

semi2k

https://eprint.iacr.org/2016/505, https://eprint.iacr.org/2020/521

shamir

https://eprint.iacr.org/2000/037

shamir-bmr

https://eprint.iacr.org/2017/981

soho

https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2020/521

spdz2k

https://eprint.iacr.org/2018/482

sy-rep-field

https://eprint.iacr.org/2018/570

sy-rep-ring

https://eprint.iacr.org/2019/1298

sy-shamir

https://eprint.iacr.org/2018/570

temi

https://eprint.iacr.org/2022/933, https://eprint.iacr.org/2017/1230, https://eprint.iacr.org/2014/106, https://eprint.iacr.org/2000/055

tinier

https://eprint.iacr.org/2015/901

tiny

https://eprint.iacr.org/2018/482, https://eprint.iacr.org/2016/944

trio

https://eprint.iacr.org/2025/919

yao

https://eprint.iacr.org/2014/756, https://eprint.iacr.org/2019/1168

Further recommended reading extracted from the code can be found in the following table. This mostly refers to higher-level protocols based on the arithmetic blackbox provided by the protocols above. You can use --papers when compiling a concrete program to find which papers are relevant for a particular computation.

Keywords

Papers

approximate inverse square root

https://doi.org/10.1145/3411501.3419427

bit decomposition, equality, truncation

https://eprint.iacr.org/2018/403

bit decomposition, fixed-point division, fixed-point numbers, probabilistic truncation

https://www.ifca.ai/pub/fc10/31_47.pdf

client inputs

https://eprint.iacr.org/2015/1006

comparison

https://eprint.iacr.org/2025/919

comparison, modulo, truncation

https://eprint.iacr.org/archive/2019/131/20191015:083051

decision tree learning

https://doi.org/10.56553/popets-2023-0021

deep learning

https://eprint.iacr.org/2022/933

(e)daBits

https://eprint.iacr.org/2020/338

equality, modulo

https://www.researchgate.net/publication/225092133, https://doi.org/10.1007/978-3-642-15317-4_13 (paywall)

exponential, inverse trigonometric functions, logarithm, square root, trigonometric functions

https://eprint.iacr.org/2019/354

floating-point numbers, power of two, secret truncation

https://eprint.iacr.org/2012/405

full bit decomposition

https://doi.org/10.1007/978-3-540-71677-8_23

heap queue, ORAM

https://eprint.iacr.org/2014/137

loop optimization

https://eprint.iacr.org/2024/1990

path oblivious heap

https://eprint.iacr.org/2019/274

probabilistic truncation, secret truncation

https://eprint.iacr.org/2019/131

sorting

https://eprint.iacr.org/2014/121

sorting

https://eprint.iacr.org/2013/143

square-root ORAM

https://doi.org/10.1109/SP.2016.21

Next Previous

© Copyright 2025, CSIRO's Data61.

Built with Sphinx using a theme provided by Read the Docs.