Skip to content

Releases: data61/MP-SPDZ

Semi-honest computation based on threshold semi-homomorphic encryption

17 Feb 03:51
Compare
Choose a tag to compare
  • Semi-honest computation based on threshold semi-homomorphic encryption
  • Batch normalization backward propagation
  • AlexNet for CIFAR-10
  • Specific private output protocols
  • Semi-honest additive secret sharing without communication
  • Sending of personal values
  • Allow overwriting of persistence files
  • Protocol signature in persistence files

Maintenance

11 Jan 06:13
Compare
Choose a tag to compare
  • Disassembler
  • Run-time parameter for probabilistic truncation error
  • Probabilistic truncation for some protocols computing modulo a prime
  • Simplified C++ interface
  • Comparison as in ACCO
  • More general scalar-vector multiplication
  • Complete memory support for clear bits
  • Extended clear bit functionality with Yao's garbled circuits
  • Allow preprocessing information to be supplied via named pipes
  • In-place operations for containers

Maintenance

04 Nov 06:30
Compare
Choose a tag to compare
  • Tested on Apple laptop with ARM chip
  • Restore trusted client interface
  • Directly accessible softmax function
  • Signature in preprocessing files to reduce confusing errors
  • Improved error messages for connection issues
  • Documentation of low-level share types and protocol pairs

Optimized matrix multiplication in Hemi

17 Sep 05:32
Compare
Choose a tag to compare
  • Optimized matrix multiplication in Hemi
  • Improved client communication
  • Private integer division as per Veugen and Abspoel
  • Compiler option to translate some Python control flow instructions
    to run-time instructions
  • Functionality to break out of run-time loops
  • Run-time range check of data structure accesses
  • Improved documentation of network infrastructure

ATLAS

06 Aug 09:27
Compare
Choose a tag to compare
  • ATLAS
  • Keras-like interface
  • Iterative linear solution approximation
  • Binary output
  • HighGear/LowGear key generation for wider range of parameters by default
  • Dabit generation for smaller primes and malicious security
  • More consistent type model
  • Improved local computation
  • Optimized GF(2^8) for CCD
  • NTL only needed for computation with GF(2^40)
  • Virtual machines suggest compile-time optimizations
  • Improved documentation of types

Training of convolutional neural networks

02 Jul 09:14
Compare
Choose a tag to compare
  • Training of convolutional neural networks
  • Bit decomposition using edaBits
  • Ability to force MAC checks from high-level code
  • Ability to close client connection from high-level code
  • Binary operators for comparison results
  • Faster compilation for emulation
  • More documentation
  • Fixed bug in dense layer back-propagation
  • Fixed security bug: insufficient LowGear secret key randomness
  • Fixed security bug: skewed random bit generation

ARM support

19 Apr 13:15
Compare
Choose a tag to compare
  • ARM support
  • Base OTs optionally without SimpleOT/AVX
  • Use OpenSSL instead of Crypto++ for elliptic curves
  • Post-sacrifice binary computation with replicated secret sharing similar
    to Araki et al.
  • More flexible multithreading

Distributed key generation for homomorphic encryption with active security

23 Feb 10:46
Compare
Choose a tag to compare
  • Distributed key generation for homomorphic encryption with active security similar to Rotaru et al.
  • Homomorphic encryption parameters more similar to SCALE-MAMBA
  • Fixed security bug: all-zero secret keys in homomorphic encryption
  • Fixed security bug: missing check in binary Rep4
  • Fixed security bug: insufficient "blaming" (covert security) in CowGear and ChaiGear due to low default security parameter

Maintenance

21 Jan 01:07
Compare
Choose a tag to compare
  • Infrastructure for random element generation
  • Programs generating as much preprocessing data as required by a particular high-level program
  • Smaller binaries
  • Cleaning up code
  • Removing unused virtual machine instructions
  • Fixed security bug: wrong MAC check in SPDZ2k input tuple generation

Various improvements

11 Dec 06:09
Compare
Choose a tag to compare
  • Virtual machines automatically use the modulus used during compilation
  • Non-linear computation modulo a prime without large gap in bit length
  • Fewer communication rounds in several protocols