Skip to content
Marcella Hastings edited this page Apr 8, 2020 · 2 revisions

ABY3 is a library-style framework for secure computation that provides fine-grained control over computation efficiency via multiple protocol support. It is modeled after ABY and supports exactly three parties.

It supports three sharing schemes: Arithmetic sharing, Boolean sharing, and Yao's garbled circuits. Specifically, it implements three protocols: X, Y, Z. Users can manually switch between circuit types during the secure computation.

Usability

There's a nicely commented tutorial in the repo that explains some of the library structure and types (it's not compiled by default though, you'll have to make your own main to do so). There isn't extended documentation listing, e.g. all secure types supported.

True to the spirit of ABY, ABY3 gives you plenty of power that can have a large effect on efficiency. In particular, the programmer can basically choose when rounds of communication happen.

There's also good documentation on how to compile the framework.

Links

  • source
  • paper - note that the software implements a slightly different, less optimized version that described in this paper
Clone this wiki locally