value f
α
(i) · f
β
(i) using a random polynomial. Then
each party aggregates the input of other parties and
reduces the size of the polynomial through interpola-
tion to compute his share of α· β. A protocol for mul-
tiplication and addition using similar ideas as GRR
but using additive secret sharing (without modulo) is
given in (Maurer, 2006). In the case of three parties
a secret a is split into three parts a
0
,a
1
,a
2
such that
the sum equals a. In (Maurer, 2006) each party gets
two distinct parts. Multiplication of two secrets a and
b is analogous to GRR by computing all nine pairs
a
i
· b
j
, aggregating them locally and sharing the result
using independent randomness. A party then aggre-
gates all received numbers to obtain the result a · b.
To compute (a · b) · c each party would send its share
of a · b to one other party, such that each party again
holds two shares of the result. A key disadvantage
of (Maurer, 2006) is that shares double in size after
every multiplication, making it impractical for even a
modest number of multiplications. This is in contrast
to GRR which reduces the size of shares (using com-
putationally costly interpolation) and to our scheme,
which also does not grow the size of shares.
In contrast, we encrypt a using a single randomly
chosen key, yielding two shares a + k and k. This
leaves one party (the helper) without a share, which
is not the case for any other discussed protocols.
The paper by Yao (Yao, 1986) from the late
80ies still forms the underpinning for many works
evaluating Boolean circuits using garbled circuits.
The original scheme allowed for a circuit only to
be evaluated once without revealing information
about the circuit. A lot of improvements have
been made of several aspects of the protocol, eg.
(Gentry et al., 2013; Bellare et al., 2013). Reusable
circuits come only with additive overhead in the
form of a polynomial in the security parameter and
circuit depth (Gentry et al., 2013). Our advantage
compared to (Gentry et al., 2013) is that we ensure
perfect security and encryption is much simpler (and
faster). Additionally, our communication complexity
does not depend on a polynomial depending on the
security parameter as well as the circuit depth, which
can easily dominate the communication costs. Yao’s
scheme has been generalized to multiple parties
by computing a common garbled circuit in BMR
(Beaver et al., 1990).
Goldreich-Micali-Widgerson (GMW) (Goldreich
et al., 1987) uses oblivious transfer to compute any
Boolean circuit. Values are encrypted such that each
party holds parts of the non-encrypted value. The
GMW protocol has round complexity linear in the
depth of the circuit. Oblivious transfer has been con-
tinuously optimized, eg. (Asharov et al., 2013) uses
symmetric cryptography. Still, using (Asharov et al.,
2013) for an oblivious transfer requires (as a lower
bound) at least the size of the security parameter,
which is significantly more than our total communi-
cation for an AND.
There is a vast number of secret sharing schemes,
eg. for a survey see (Beimel, 2011). Our linear en-
cryption schemes are known. For instance, (Ito et al.,
1989) encrypts a secret using XOR. Additive encryp-
tion as done in JOS roughly corresponds to (Ben-Or
et al., 1988) and has been also employed by (Catrina
and De Hoogh, 2010). Whereas prior work shared a
secret with all parties, we use a dedicated helper to
support computation and use the properties of the en-
cryption schemes to derive novel protocols.
Lately, also several systems and languages have been
developed, eg. (Demmler et al., 2015; Laud and
Randmets, 2015).
3 MODEL AND NETWORK
ARCHITECTURE
A client holds an arbitrary amount of secret values
and wishes to evaluate a function using n servers,
ie. parties, such that no party learns anything about
the input or the output.
1
Thus, typically, a client en-
crypts its secrets and distributes the shares among the
servers, the servers compute the function and return
their shares to the client. The client itself does not
participate in the computation and, therefore, does
not count as party. This differs from the classical
MPC model, where each party holds a secret (or at
least a share) and the output should be known by (at
least) one party. We can emulate the classical model:
The parties can always obtain the secret value of an
output through collusion (rather than transmitting all
their shares to the client) and, in case each party has
a secret, each party can execute the same protocol for
encryption and distribution of shares of its secret as
a client having all secrets. Thus, the extension to us-
ing several clients (each having some secret value) is
obvious.
We consider the semi-honest model with n = 3
parties out of which at most n − 2 parties can be cor-
rupted by an adaptive adversary. Our simplest net-
work consists of a client, a key holder (KH) and an
encrypted value holder (EVH) and a helper. The client
communicates with the KH and EVH. Generally, the
1
Aside from unconditional security, we also discuss purely
additive encryption(without modulo) that yields statistical
security only.
Lean and Fast Secure Multi-party Computation: Minimizing Communication and Local Computation using a Helper
225