An oblivious linear function evaluation protocol, or OLE, is a two-party protocol for the function , where a sender inputs the field elements a, b, and a receiver inputs x and learns . OLE can be used to build secret-shared multiplication, and is an essential component of many secure computation applications including general-purpose multi-party computation, private set intersection and more.
In this work, we present several efficient OLE protocols from the ring learning with errors (RLWE) assumption. Technically, we build two new passively secure protocols, which build upon recent advances in homomorphic secret sharing from (R)LWE (Boyle et al. in: EUROCRYPT 2019, Part II (2019) 3–33 Springer), with optimizations tailored to the setting of OLE. We upgrade these to active security using efficient amortized zero-knowledge techniques for lattice relations (Baum et al. in: CRYPTO 2018, Part II (2018) 669–699 Springer), and design new variants of zero-knowledge arguments that are necessary for some of our constructions.
Our protocols offer several advantages over existing constructions. Firstly, they have the lowest communication complexity amongst previous, practical protocols from RLWE and other assumptions; secondly, they are conceptually very simple, and have just one round of interaction for the case of OLE where b is randomly chosen. We demonstrate this with an implementation of one of our passively secure protocols, which can perform more than 1 million OLEs per second over the ring , for a 120-bit modulus m, on standard hardware.
Oblivious linear function evaluation, or OLE, is a two-party protocol between a sender, with input , and a receiver, who inputs and receives . OLE is an arithmetic generalization of oblivious transfer to a larger field , since OLE over can be seen as equivalent to oblivious transfer on the messages , by setting and , so the receiver learns . Similarly to oblivious transfer, OLE can be used in constructions of secure two-party and multi-party computation, and is particularly useful for the setting of securely computing arithmetic circuits over [4,30,32,37], where OT tends to be less efficient. As well as general secure computation protocols, OLE can be used to carry out specific tasks like private set intersection [34], secure matrix multiplication and oblivious polynomial evaluation [45,48].
OLE can be constructed from a range of “public-key” type assumptions. In the simplest, folklore construction, the receiver encrypts its input x using a linearly homomorphic encryption scheme and gives this to the sender. Using the homomorphic properties of the scheme, the sender computes an encryption of and sends this back to the receiver to decrypt. This approach can be instantiated with Paillier encryption or lattice-based encryption based on the learning with errors (LWE) [47] or RLWE assumptions [42], and has been implicitly used in several secure multi-party computation protocols [14,39,44]. There are also constructions of OLE from coding-theoretic assumptions [33,37,45] which mostly rely on the hardness of decoding Reed–Solomon codes in certain parameter regimes with a high enough noise rate. These constructions are asymptotically efficient, but so far have not been implemented in practice, to the best of our knowledge. For the special (and easier) case of vector-OLE, which is a large batch of many OLEs with the same input x from the receiver, there are efficient constructions from more standard coding-theoretic assumptions over general codes, which also have good performance in practice [4,16,17,48].
Despite the fact there are many existing constructions of OLE, either implicit or explicit in the literature, very few of these works study the practical efficiency of OLE in its own right (except for the special case of vector-OLE). Instead, most of the aforementioned works either focus on the efficiency of higher-level primitives such as secure multi-party computation, or mainly discuss asymptotic efficiency rather than performance in practice. In this work, we advocate for the practical study of OLE as a standalone primitive. This has the benefits that it can be plugged into any higher-level application that needs it in a modular way, potentially simplifying analysis and security proofs compared with a more monolithic approach.
Our contributions
We present and study new OLE protocols with security based on the ring learning with errors (RLWE) assumption, with passive and active security. Our passively secure protocols are very simple, consisting of just one message per party, and our most efficient variant achieves the lowest communication complexity of any practical (implemented) OLE protocol we are aware of, requiring around half the bandwidth of previous solutions. We add active security using zero-knowledge proofs, which have a low amortized complexity when performing a large number of OLEs, giving only a small communication overhead over the passive protocols. To adapt existing zero-knowledge proof techniques to our protocols, we have to make several modifications, and describe a new amortized proof of knowledge that can be used to show a batch of secret-key (R)LWE ciphertexts is well-formed (previous techniques only apply to public-key ciphertexts).
We have implemented and benchmarked our most efficient passively secure protocol, and show it can compute more than 1 million OLEs per second on a standard laptop, over a -bit ring where m is the product of two CPU word-sized primes. The communication cost per OLE is around 4 elements of per party, and the amortized complexity of our actively secure protocol is almost the same, when computing a large enough number of OLEs. This is almost half the communication cost of previous protocols based on RLWE, and less than 25% of the cost of an actively secure protocol based on oblivious transfer and noisy Reed–Solomon encodings [33].
It is also worth noting that this work corresponds to the extended version of [9]. In particular, the list of new added material includes: (1) detailed proofs for the main results obtained in Sections 3 and 4, (2) a formal description of the missing functionalities in [9], (3) a full description of the considered computational problems and commitment schemes (Section 2), (4) additional details on the existing protocols used for comparison (Section 1.4), and (5) additional details on the zero-knowledge arguments used to make the proposed protocols actively secure (Section 5).
Outline
In Section 1.3 below, we present an overview of the main techniques in our constructions. We then describe some preliminaries in Section 2. Section 3 contains our OLE protocols based on public-key RLWE encryption, which only require a standard public key infrastructure as a setup assumption. In Section 4, we present more efficient protocols which reduce communication using secret-key encryption, and a more specialized setup assumption. Then, in Section 5, we present details on the zero-knowledge arguments which are used to make the previous protocols actively secure. Finally, in Section 6, we analyze the concrete efficiency of our solutions, compare this with previous OLE protocols, and present implementation results for our most efficient passively secure protocol.
Techniques
Our protocols construct a symmetric variant of OLE, where one party, Alice, inputs a field element , the other party, Bob, inputs , and the parties receive random values α and β (respectively) such that . This can easily be used to construct an OLE by having the sender, say Alice, one-time-pad encrypt her additional input using α, allowing Bob to correct his output accordingly. In this formulation, OLE is also equivalent to producing an additive secret-sharing of the product of two private inputs; this type of secret-shared multiplication is an important building block in multi-party computation protocols, for instance in constructing Beaver multiplication triples [12]. In our protocols, we first create OLEs over a large polynomial ring , which comes from the RLWE assumption, and then convert each OLE over to a batch of N OLEs over , for some prime modulus m, using packing techniques from homomorphic encryption [49].
Our point of departure is the recent homomorphic secret sharing scheme by Boyle et al. [20], based on LWE or RLWE. Homomorphic secret sharing is a form of secret sharing in which shares can be computed upon non-interactively, such that the parties end up with an additive secret sharing of the result of the computation. HSS was first constructed under the DDH assumption [19] and variants of threshold and multi-key fully homomorphic encryption [29], followed by the more efficient lattice-based construction of [20], which supports homomorphic computation of branching programs (or, “restricted multiplication” circuits where every multiplication gate must involve at least one input wire). Note that any “public-key” type two-party HSS scheme that supports multiplication leads to a simple OLE protocol: each party sends a secret-sharing of its input, then both parties multiply the shares to obtain an additive share of the product.
Efficient OLE from a public-key setup
Our first construction can be seen as taking the HSS scheme of Boyle et al. and optimizing it for the specific functionality of OLE. When plugging in their scheme to perform OLE, a single share from one party consists of two RLWE ciphertexts: one encrypting the message, and one encrypting a function of the secret key, which is needed to perform the multiplication. Our first observation is that, in the setting of OLE where we have two parties who each have one of the inputs to be multiplied, we can reduce this to just one ciphertext per party, where Alice sends an encryption of her input u multiplied by a secret key, and Bob sends an encryption of his input. Both of these ciphertexts, including the one dependent on the secret key, can be created from a standard public-key infrastructure-like setup where Alice and Bob have each others’ RLWE public keys, thanks to a weak KDM security property of the scheme. This gives a communication complexity of two elements per party, for a RLWE ciphertext modulus q, to create a single ring-OLE over . We can also obtain a further saving by sending one party’s ciphertext at a smaller modulus .
Reducing communication with a dedicated setup
Our second protocol considers a different setup assumption, where the parties are assumed to have access to a single OLE over , which gives them secret shares of the product of two RLWE secret keys. With this, we are able to replace the public-key RLWE ciphertexts from the previous protocol with secret-key ciphertexts, which can be of size just one ring element instead of two. This cuts the overall communication in half, and also reduces computational costs.
Achieving active security
To obtain security against active corruptions, we need to ensure that both parties’ RLWE ciphertexts are correctly generated, in particular, that the small “error” polynomials used as encryption randomness were generated correctly (and not too large). For a public key RLWE encryption, this boils down to proving knowledge of a short vector , such that where , are public values defined by the RLWE public key and ciphertext, respectively. In practice, we do not know efficient methods of proving the above statement. Instead, we can obtain good amortized efficiency when proving knowledge for many such relations of the form
for the same matrix , where now the secret may have slightly larger coefficients than the original secret . This overhead is known as the soundness slack parameter, and comes from the fact that a dishonest prover can sometimes make the proof succeed even when is slightly larger than the claimed bound. Efficient amortized proofs for (1) have been given in several works [7,24,26,40], most recently with a communication overhead that is independent of the number of relations being proven [5].
Proving correctness of a batch of public-key RLWE ciphertexts can be essentially done by proving a batch of relations of the form in (1), allowing use of these efficient amortized proofs. To achieve active security in our public-key OLE protocol, we use a slightly modified version of the proof from [5], by allowing different size bounds to be proven for different components of . This gives us tighter parameters for the encryption scheme.
On the other hand, for our second protocol, things are not so straightforward. To see why, recall that a batch of secret-key RLWE ciphertexts have the form:
Here, is a random element in the polynomial ring , is a small error value in , and is the secret key. We want to prove that both s and have small coefficients.
The problem is, since is different for each ciphertext, these cannot be expressed in the form of (1), since they are not linear in a fixed public value. This was not the case for the public-key setting, where every ciphertext is linear in the fixed public key; here, by switching to a secret-key encryption scheme to improve efficiency, we can unfortunately no longer apply the amortization techniques of [5].
Furthermore, there is a second obstacle, since we now have a special preprocessing phase which gives out shares of , for the parties’ RLWE secret keys and . These must be the same secret keys that are used to produce the encryptions, and to ensure this, we also have to tie these together into the ZK proof statement.
To work around these issues, we perform two steps. Firstly, we modify the preprocessing so that each party gets a commitment to its secret key, under a suitable homomorphic commitment scheme (which can also be based on lattices [8]). We then design a new proof of knowledge, which proves knowledge of short satisfying (2) with similar amortized efficiency to the proof from [5] for (1). Our proof simultaneously guarantees the secret s is the same s that was committed to in the preprocessing, leveraging the homomorphic properties of the commitment scheme.
Previous works
OLE from additively homomorphic encryption (AHE)
There is a standard approach to building OLE using linearly homomorphic encryption, where sends to , who multiplies this with his input v and adds it to for a random . For example, this is the method that is implicitly used in the BDOZ [14] and LowGear [39] protocols for actively secure multi-party computation. One drawback of this method, seen in [14], is that to obtain active security, needs to prove that he multiplied v correctly into the ciphertext sent by . This proof of correct multiplication is prohibitively more expensive than proofs of plaintext knowledge, since we do not know of any efficient way to amortize a large batch of them. The LowGear protocol [39] avoids the proof of correct multiplication (while still using a proof of plaintext knowledge from ) by assuming an additional property of the RLWE encryption scheme called “enhanced CPA” security. This is implied by linear-only encryption, a non-falsifiable assumption used in some zero-knowledge constructions [15].
We evaluate this approach in the “AHE” row of Table 1 below, using parameters based on [39].
OLE from RLWE
Concurrently and independently to our work, an efficient instantiation of the AHE-based template described above is presented in [28], essentially using the LPR encryption scheme as described here. To achieve circuit privacy, the authors in [28] do not rely on traditional “noise drowning” techniques. Instead, the authors devise a more efficient method involving “quotient-and-rounding”. This method reduces the sizes of the ciphertexts and allows for cheaper arithmetic.
OLE from somewhat homomorphic encryption (SHE)
Another approach is to use a somewhat (or partially) homomorphic encryption scheme that supports one multiplication, as well as addition, such as BGV [21]. This method has been used to create multiplication triples in many protocols in the SPDZ family [25,26]. To use this to create OLE, each party first sends an encryption of its input u or v, and then multiply the ciphertexts homomorphically. Next, one party sends an encryption of a random value, which is added to this before being decrypted towards the other party with a distributed decryption protocol. This requires 3 ciphertexts to be sent in all, plus one additional element for the distributed decryption, where one party sends its “partial decryption” to the other party, who decrypts the result.2
This has slightly lower costs than the SPDZ protocol, since we have simplified the distributed decryption for the two-party OLE setting.
We evaluate this approach in row “SHE” of Table 1, using SHE parameters from the Overdrive variant of SPDZ [39].
OLE from noisy Reed–Solomon encodings (RS)
Another approach is based on oblivious transfer and noisy encodings via Reed–Solomon codes [33,37,45]. Here, the protocol of Ghosh et al. [33] has the best concrete efficiency, and achieves active security almost for free on top of previous passive protocols using simple consistency check. The protocol has not been implemented, but according to estimates from [30], an optimistic choice of parameters for the underlying security assumption leads to a communication cost of 32 field elements per OLE. This still leads to a higher communication cost than our protocols. Note that although the other protocols, being based on RLWE encryption, will likely have similar computational costs, we cannot easily compare the computational efficiency of the RS protocol, since it has not been implemented.
Other OLE protocols
There are several other ways of constructing OLE which are not presented in Table 1, which we now briefly discuss here. Recently, Rathee et al. implemented passively secure protocols for Beaver triple generation over rings using RLWE [46]. These are based on the AHE approach described above, except they also use a CRT optimization where the plaintext space is reduced by using several ciphertexts with different plaintext moduli. This optimization is better suited to their setting with multiplication over general rings mod , and does not seem to give a benefit for our setting of a large prime plaintext space.
As mentioned earlier, we can also use Paillier encryption to build OLE from linearly homomorphic encryption, and add active security using either zero-knowledge proofs [14] or a common reference string [23]. However, Paillier ciphertexts are very large (at least 4096 bits) and have a high computational overhead, since exponentiations are in many settings much more costly than polynomial operations in RLWE. It may be advantageous to use Paillier when only a few OLEs are desired, but in the amortized setting it seems unlikely to be competitive. OLE can also be constructed from string oblivious transfer, with Gilboa’s method [35]. Using OT extension [36] this can be quite cheap computationally [38], but has a much higher communication cost that is quadratic in the field bit length, instead of linear for all the protocols in Table 1, and around an order of magnitude higher than our protocol.
Finally, Boyle et al. [18] combined homomorphic secret sharing with a PRG based on the hardness of solving multivariate quadratic equations, to produce a large batch of n Beaver triples or OLEs with communication. This interesting approach clearly has much lower communication than our methods, but it only achieves such low communication when producing a very large number of triples (more than ), so will not be suitable for many applications. Furthermore, its computational efficiency is much worse than our protocol.
Preliminaries
In this section we introduce some preliminaries and notation we will use. As basic notation, we write to denote the component-wise product of the vectors , .
Rings & rounding
Let q be an odd integer and be a power of two. We define the ring as well as as the reduction of the polynomials of modulo q. Representing the coefficients of uniquely by its representatives from we define as the largest norm of any coefficient of f when considered over the above interval. We define by the uniform distribution over the finite set R and furthermore let .
We now introduce the computational problems we use over , which are Ring-LWE, Module-LWE and Module-SIS. We use Ring-LWE in our basic OLE protocols, while Module-LWE and -SIS are used for our zero-knowledge argument with homomorphic commitments.
(Ring-LWE).
Let be a ring as defined above, and . Let be a discrete Gaussian distribution over with standard deviation σ, and be some secret key distribution over . We say that an algorithm has advantage ϵ in solving the problem if
(Module-LWE).
Let be a ring as defined above, . The problem asks to distinguish the distribution for a short , from the uniform distribution when given . We say that an algorithm has advantage ϵ in solving the problem if
The Module-LWE problem is widely believed to be hard for polynomial-time distinguishers when is sampled from a discrete Gaussian distribution over with large enough standard deviation. The version of Module-LWE we give here has a more aggressive error distribution, but is often used in practice.
A related well-known problem is called Module-SIS.
(Module-SIS).
Let be a ring as defined above and . The problem asks to find a short vector with satisfying when given a random . We say that an algorithm has advantage ϵ in solving the problem if
Rounding
We define by the scaling of each coefficient of f by over the reals and then rounding to the nearest integer in respectively. A simple but useful result we will use throughout our protocols is the following.
Let,andfor somewith. Then.
It suffices to consider the case and , since, by the union bound, the general case can be obtained by multiplying the probability obtained in this particular case by .
Let be uniformly random, let be bounded in norm by B, and let . Let E be the event . To bound the probability of E notice that, due to the fact that , e cannot change the nearest integer to x unless at least one of these coefficients lies in a ball of radius centered at for some integer k. This condition is equivalent to x lying in a ball of radius B centered at for some integer k. Since is uniformly random, the probability of this event is upper bounded by . □
Gaussian distributions and simulatability
The continuous normal distribution over centered at with standard deviation is defined by the function
If then we just write . For a countable set we furthermore define .
The discrete normal distribution over centered at with standard deviation is defined as
Throughout this work we apply to vectors from in which case we mean that with being the coefficient-wise embedding of into . We similarly consider sampling -elements from as sampling each coefficient independently from this distribution.
In order to use random variables sampled according to the aforementioned distribution we have to be able to estimate the size of its values. The following statement allows doing so:
Rejection sampling for product distributions. We will have to perform rejection sampling on vectors whose elements are distributed according to different Gaussian distributions (in particular, they can have different standard deviations). Throughout this work we will use the following
Letand forletsuch that all elements ofhave norm less than,such thatandbe a probability distribution. Ifandthen the following algorithm:
, …,
, …,
Outputwith probability
is within statistical distanceof the distribution of the following algorithm:
, …,
, …,
Outputwith probability
whereoutputs something with probability at least.
In order to prove Lemma 3, we make use of the following Theorem, which was proved by Lyubashevsky [40] and lies at the core of many lattice-based constructions:
Letsuch that all elements of V have norm less than T,such thatandbe a probability distribution. Then there exists a constantsuch that the distributions of the following algorithm:
Outputwith probability
is within statistical distanceof the distribution of the following algorithm:
Outputwith probability
whereoutputs something with probability at least.
For concreteness, if for then , meaning that the output of is within statistical distance of and that outputs something with probability at least .
We can now use the aforementioned theorem to prove Lemma 3:
We perform the experiment from Theorem 1 for each of the k components using discrete Gaussian distributions in the process. Since α is fixed among all components, then in particular the constant M will be the same across all k individual experiments. By a union bound, we obtain the statistical distance by adding up all k identical terms. The fact that outputs the vector with probability at least follows by the independence of the k experiments. □
Ring-LWE based encryption scheme
In this work we use basic ideas from RLWE-based encryption, particularly in our public-key based construction from Section 3. We describe here a simplified version of the public-key encryption scheme from [42], which we refer to as . The key generation, encryption and decryption procedures are defined as follows:
On input a public random , first sample and . Output and where .
Our protocols do not directly use the decryption algorithm, but our simulator in the proof of Theorem 3 does.
Notice that this works if the total noise is bounded by .
On top of these standard procedures, we also use an algorithm which produces an encryption of , where s is the secret key. As observed in [20] (and implicit in [3,22]), this can be done using only the public key by adding the message to the second component of an encryption of zero.
:
Sample , and output , where and .
Oblivious linear function evaluation
The functionality we implement in this work is oblivious linear evaluation (OLE), which, in a nutshell, consists of producing an additive sharing of a multiplication. A bit more precisely, and have each one secret input and , respectively, and their goal is to get additive random shares of the product . The formal description of the functionality appears in Fig. 1.
Note that our OLE functionality produces several OLE instances simultaneously, and we write to denote the component-wise product of the vectors , .
Oblivious linear evaluation functionality.
SIMD for lattice-based primitives
The OLE functionality above produces OLEs over the ring , however, in practice, we wish to produce OLEs over . To do this, we exploit plaintext packing techniques used in homomorphic encryption [49] based on the Chinese remainder theorem. We choose such that the polynomial splits completely into a product of linear factors modulo m. This implies that is isomorphic to N copies of , so a single OLE over the ring can be directly used to obtain a batch of N OLEs over . The isomorphism can be efficiently computed using fast Fourier transform techniques. Therefore, with a single call to our OLE functionality in Fig. 1, we can easily produce a batch of OLEs over .
Commitments and zero-knowledge arguments
In this work, in order to achieve active security, we make extensive use of commitments schemes and zero knowledge arguments of knowledge.
Commitment schemes
Consider the tuple with as implicit input. is a PPT algorithm which generates a public parameter . is a PPT algorithm which on input and a message x outputs c, r. Finally, is a deterministic poly-time algorithm which on input , x, c, r outputs a bit b.
For an algorithm let
then we say that C is computationally binding if is a PPT algorithm and C is statistically binding if is computationally unbounded.
Furthermore, for an algorithm if
then we say that the commitment scheme is statistically hiding if is computationally unbounded or computationally hiding if is a PPT algorithm.
A commitment scheme is additively homomorphic if for two commitments , as well as a constant c, it holds that as well as there exists a polynomial-time algorithm such that .
In this work we mainly use two different commitment schemes, namely the somewhat additively homomorphic commitment scheme of Baum et al. [8] (denoted as ) as well as a compressing statistically secure commitment scheme . One can easily instantiate either using the Random Oracle or [27]. The scheme of [8] is only somewhat homomorphic, meaning that it only supports a limited number of addition of commitments due to the growth of r. More details on the used commitment scheme can be found in Section 2.7 below.
Zero-knowledge arguments of knowledge (ZKA)
Let be an NP relation. For we call the public parameter, x the statement and w the witness. A Zero-Knowledge Proof of Knowledge for is an interactive protocol Π between a PPT prover and a PPT verifier with the following three properties:
Completeness:
If with input , x, w and with input , x follow the protocol honestly, then outputs 0 only with negligible probability.
Soundness:
The interactive protocol Π is called knowledge-sound with knowledge error ε if for all deterministic polynomial-time algorithms4
The term “argument of knowledge”, in contrast to “proof of knowledge”, relates to the setting in which soundness is only guaranteed against a polynomially bounded prover.
with input , x that convince an honest verifier with probability at least ε there exists an expected polynomial-time algorithm which, given black-box access to , outputs such that except with probability .
Honest-Verifier Zero-Knowledge:
There exists a PPT algorithm called the simulator whose output distribution on input , x and interacting with a PPT algorithm is indistinguishable of a transcript of Π run by , .
The actual zero-knowledge arguments that are used with respect to the commitment scheme C can be found in Section 2.7 below.
Instantiating (somewhat homomorphic) commitments
After having introduced the formal definitions for commitment schemes and zero-knowledge proofs in Section 2.6 we will now recap an implementation which we use in our construction, namely the somewhat homomorphic commitment scheme of Baum et al. [8] and its accompanying zero-knowledge proofs.
A specific property of the scheme of [8] is that it allows “relaxed openings”, meaning that an opening of a commitment does not just consist of the message x and randomness r but also some additional factor f. The guarantee is then that the scheme is binding as long as it is hard to come up with two and that open the same commitment . In order to define f properly let as well as . [43] showed under which conditions all elements of , are invertible.
Somewhat homomorphic commitments
The commitment scheme of [8] consists of the following algorithms:
:
Given , N, k, n, β, sample as well as . Set and and output .
:
On input a valid public key and a value sample , compute
and output .
:
On input a valid public key and , , as well as output 1 iff
and 0 otherwise.
[8] showed that their construction is binding under the assumption and hiding under the assumption.
It can directly be seen that the commitment scheme is somewhat homomorphic:
If is a commitment that can be opened as then for a public the commitment can be opened as .
For h commitments with openings we have that has opening if still fulfills the bound of .
In comparison to fully linearly homomorphic commitments it is not possible to generate a commitment from with opening x such that opens to for a public α without losing the binding property. Instead, one has to use a zero-knowledge proof to show such a relation. Below we will describe both the standard proof of knowledge for the commitment scheme as well as the proof of linear relation.
Zero-knowledge proof of opening
The commitment scheme of [8] comes with a highly efficient proof of knowledge and other efficient proofs. The disadvantage of this class of proofs is that soundness does not reduce to a standard opening but instead will extract with . These “extended openings” are never generated by an honest party but possibly by an adversary and are not sufficient in our application.
Instead, we use a “standard” proof of knowledge for a commitment which follows the standard Fiat-Shamir with Aborts signature. The algorithm can be found in Fig. 2.
Zero knowledge argument for opening .
Letandas well as. The algorithm from Fig.
2
is a zero-knowledge argument of knowledge that is complete with probability, computationally sound and statistically honest-verifier zero knowledge.
Observe that this argument has a much higher communication complexity (by a factor κ) than the optimized AoK of [8] for this commitment scheme, but it has the aforementioned advantage of being more “exact”. Furthermore, in the overall work we will only use it once.
Zero-knowledge proof of linear relation
Zero knowledge argument for linear relation .
Based on [8] one can easily prove a linear dependency between the openings of two commitments. Consider the relation
One can use the zero-knowledge proof as outlined in Fig. 3 to prove , meaning that each of the n commitments has an opening that is away from the opening of .
Letand. The algorithm from Fig.
3
is a zero-knowledge argument of knowledge that is complete with probability, computationally sound and statistically honest-verifier zero knowledge.
The proof follows as a generalization of the linearity-proof for two commitments of [8]. The only difference is that we adjusted the size of to allow a rejection-sampling for the whole vector , at once, which leads to a slightly worse bound on the extracted openings. □
One important property of the protocol is that the extracted opening for both , will have the same value f for both commitments.
OLE from PKI setup
PKI setup functionality.
Actively secure OLE protocol from a PKI setup. The passively secure version of the protocol is obtained by removing the framed steps.
In this section we present our first OLE construction, which is particularly simple and efficient. Furthermore, the only setup required is a correlated form of public key infrastructure for the LPR encryption scheme from Section 2.3 in which and have each a secret/public key pair for the LPR scheme, where the component of the public key is the same for both. This can be seen as a PKI setup in which the public keys are derived using some public randomness. The precise functionality is given in Fig. 4.
Our protocol, , can be found in Fig. 5. The passively secure version is obtained from the active one by removing the zero knowledge arguments, whose steps are framed in the description of the protocol. To provide a high level idea of our construction, we first recall the main techniques from the homomorphic secret-sharing scheme of Boyle et al. [20]. Suppose two parties have additive secret shares of a RLWE secret key , and are also given secret shares modulo q of x, and a public ciphertext , for some messages x, y. Boyle et al. observed that if each party locally decrypts using its shares, denoted , , we have:
Applying the rounding operation from decryption on the above shares then gives exact additive shares of , provided the error is much smaller than .
To create the initial shares of x and , it is enough to start with shares of s and ciphertexts encrypting x, , since each ciphertext can then be locally decrypted to obtain shares of these values. Boyle et al. also described a variant which removes the need for encryptions of , but at the cost of an additional setup assumption involving shares of .
Our OLE protocol from this section builds upon this blueprint, with some optimizations. First, we observe that in the two-party OLE setting, it is not necessary to give out to obtain shares of x, since one of the parties always knows x so they can simply choose these shares to be x and 0. (This is in contrast to the homomorphic secret-sharing setting, where the evaluating parties may be a set of servers who did not provide inputs.) Since we only do one multiplication, it’s therefore enough to give out the two ciphertexts and , compared with four ciphertexts used in the HSS scheme from [20]. Since both ciphertexts can be easily generated from the public-key setup, this leads to a very simple protocol where each party (in parallel) sends a single message that is either an encryption of its input, or its input times s.
As an additional optimization, we show that the second ciphertext encrypting y can be defined at a smaller modulus p instead of q, since we only care about obtaining the result modulo , which saves further on bandwidth.5
This optimization is possible since we skip the “modulus lifting” step from [20], which is only needed when doing several repeated multiplications.
The protocol described above is passively secure, but an active adversary can break the security of this construction by sending incorrectly-formed ciphertexts. Due to our simple communication pattern this turns out to be the only potential source of attack, which we rule out by having the parties prove, in zero knowledge, that their ciphertexts are correctly formed.
Passive security
We now proceed to the security proof of our protocol , which consists of protocol in Fig. 5 without the zero knowledge arguments framed in the protocol description.
Our proof requires that a random element of is invertible with high probability. As we will see, this technicality allows the simulator to “solve equations”, matching real and ideal views. For our choice of parameters this is always the case, and for this we make use of the following lemma.
Let, where eachis an ℓ-bit prime. If the polynomialof degree N used to definesplits completely modas, where eachis linear, then the probability that a uniformly random element fromis not invertible is upper bounded by.
The conditions in the lemma imply that , and an element in is not invertible if and only if one of its components in from the decomposition above is zero. This happens with probability for each component, so by the union bound, the probability that at least one of these components is zero is bounded by . □
Given the above, the probability that at least one component of a vector in is not invertible is upper bounded by . For all our parameter sets in Section 6, this quantity is below for , which is good enough for our purposes since we need it only as an artefact for the proof and it does not lead to any concrete attack or leakage.6
This restriction can be easily overcome by modifying the definition of security against passive adversaries, allowing the adversary to choose its output. However, we prefer to stick to more standard security definitions.
We also use invertibility to argue correctness of the protocol: it is necessary in the simulation argument to find solutions for a certain equation. If this probability is not good enough for a certain application, the parties could use a PRF to rerandomize their shares so that this lemma can be applied without invertibility. However, in order to keep our exposition simple we do not discuss such extension.
Another simple but useful lemma for our construction is the following.
Assume that. Given, the set ofsuch thatis given byfor. In particular, the mappinggiven byis a surjective regular mapping, meaning that every element in the codomain has an equal number of preimages.
Finally, we have the following proposition, concerning correctness of our construction. It follows as a corollary of Proposition 2 by setting the soundness slack parameter τ to be 1, so we defer the proof to that section.
Assume that. Letbe the inputs to Protocol, and letbe the outputs. Then, with probability at least,.
With these tools at hand we proceed with the main result from this section.
Assume that. Then protocol, which consists of protocolwithout the underlined steps, realizes functionalityin the-hybrid model under the RLWE assumption.
Let us consider first the case in which is passively corrupt. The transcript of the computation for an environment that corrupts consists of the inputs , the values from the setup phase , the intermediate messages and the outputs . Our goal is to show the existence of a simulator that, on input , can simulate the transcript above so that it is indistinguishable from a real execution.
The simulator proceeds as follows. It emulates the setup phase by sampling a, , , , as in the real execution, and it sets . Then it lets , samples and samples a uniformly random subject to . To find a suitable , we first apply Lemma 7 to obtain a random preimage of under rounding. We then choose by finding such that . This can be done since all entries in are invertible with probability at least .
To argue that the distribution of the values outputted by are computationally indistinguishable from those in the real execution, we consider a hybrid distribution as follows:
Hybrid.
The execution is as in the ideal world, but the functionality is modified so that can choose the output . This way, instead of getting and then sampling so that , the simulator samples completely at random and then defines , and sends this to the functionality .
Hybrid.
The execution is as in the hybrid , but instead of sampling uniformly at random, these are obtained as encryptions of the input from for the real-world .
The ideal execution and the hybridare statistically indistinguishable.
This follows from Lemma 7 and from the invertibility of all the entries in , since these imply that the function is a regular function and as a result one can either sample its output and then sample a uniform input that maps to , which corresponds to the ideal world, or one can sample the input uniformly first and then compute the output, which corresponds to the hybrid .
The hybridsandare computationally indistinguishable.
This is based on the security of the RLWE problem. We define an adversary playing the CPA game for the LPR encryption scheme, which is defined as follows: receives a public key from the challenger and it then replies with some message , the challenger then tosses an internal coin and returns to where the pair is either an encryption of or a uniformly random pair. The goal of is to guess the internal bit from the challenger.
Our adversary proceeds by playing an honest and the simulator above, using the public key received from the challenger. Upon receiving ’s input from , sends to the challenger and receives plays the protocol, but uses in place of .
We notice the following. If is an encryption of , then the execution corresponds to the hybrid . On the other hand, if is uniform, then this is precisely the hybrid . Therefore, the advatange of is upper bounded by the advantage of , which is negligible from the security of the LPR encryption scheme.
The real execution and the hybridare statistically indistinguishable.
Our first observation is that the intermediate values from the setup phase and the intermediate messages follow the exact same distribution in both executions, so the only potential distinguishing point is the output pair : In the hybrid it holds that and , whereas in the real world is defined as . It suffices to show then that holds in the real world as well. This holds with probability at least , as shown in Proposition 1.
This concludes the proof of the claim, and with it, the proof of the theorem. □
Active security
As we saw in the previous section, the correctness of our construction relies on the different terms involved having a certain bound: The input must be smaller than m, the noise terms used for the encryption have to be upper bounded by , and the randomness and used for the encryption must be less than . An actively corrupted party who chooses randomness outside these bounds can easily distinguish between the real and ideal executions.
To achieve active security, each party proves in zero-knowledge that the ciphertexts they send are correctly formed. We begin by analyzing the case of a corrupt . Consider the message from , which consists of a batch of ciphertexts
Rewriting this, has to prove knowledge of vectors (over ) , , , satisfying
and , , and . This can be written in matrix form as follows
where is the i-th row of and the bound vector is . Such type of statements can be proven efficiently using the amortized proof from [5], as we discuss more thoroughly in Section 5.
We can similarly define a relation for the message that sends, and we call this relation . We note however that in the proof of Theorem 2 we did not actually use any bound on the message , so we may exclude the bound from this relation.
For the rest of this section we assume the existence of zero knowledge arguments of knowledge for the relations and . As mentioned above, we show how to construct these in Section 5.1. Note that when proving knowledge of the relation or above, if the prover is malicious then our proof actually only guarantees that , where τ is the soundness slack parameter of the zero knowledge argument. We therefore need to choose our parameters with respect to the larger bounds, to ensure correctness of the protocol.
We begin with the following proposition, which shows that, under an appropriate choice of parameters, our protocol guarantees correctness.
Assume that. Letbe the inputs to Protocol, and letbe the outputs. Assume that the relationsanddefined in Section
3.2
hold, but that at most one of them has slack parameter τ.7
That is, the bounds in one of the two relations have an extra factor of τ. This corresponds to what can be guaranteed for a corrupt party via the zero knowledge argument.
Then, with probability at least,.
Let us begin by writing the individual public keys as and , and let and , so where . Assuming that b is honestly generated, it holds that and similarly . Therefore, and . We also write and . It follows then that
By recalling that , we can write this as . Rounding this equation modulo p, we see that
From we know that and that for are upper bounded by . By a well-known bound on products of elements in , it holds that as well as . Therefore we can upper-bound . Also, since is close to uniform, it follows from Lemma 1 that with probability at least . From this we conclude that with high probability.
Now, we can perform a similar analysis for by writing
We can multiply both sides by to get , and recalling that with high probability we obtain that
If holds with slack τ and with slack 1, then we know that , and for , so . On the other hand, if holds with slack 1 and with slack τ, then we know that , and for , so . Either case, it holds that . Hence, rounding this equation modulo m, and using Lemma 1, we conclude that with probability at least , as required. □
With this tool at hand, the security of the actively secure version of our protocol can be proven.
Assume that. Protocolrealizes functionalityunder the RLWE assumption.
We define a simulator that interacts with the environment as follows.
Corrupt Bob. The simulator emulates an honest party , and it also emulates the PKI resource by sampling and two key pairs and , and sending the public key to both and , to and to . After this setup phase the emulated receives from , and she runs the zero knowledge argument for honestly and, if the proof succeeds, uses the knowledge on the secret key to decrypt a message .
The emulated computes and sends the input and output to the functionality , where . Then it sends to and then runs the zero knowledge argument for honestly, which she can do since she knows the witness.
To argue that the real and the ideal world are indistinguishable, it is useful to consider the following hybrid:
Hybrid.
The execution is as in the ideal world, except that the actual input from real-world is used to define , and the zero knowledge argument for uses this input.
The real execution is statistically indistinguishable from the hybrid.
Begin by noticing that there is no difference between the intermediate messages in these two executions. The only potential difference originates in the input/output relation: in the hybrid it is the case that , so we only need to show that this is the case too in the real execution.
To see this, first observe that the extractor from the ZKA for can interact with to obtain a witness for , i.e. such that with , , and . What the simulator computes, on the other hand, is , where , and then rounds to p. The bounds above imply that , which just needs to be below to guarantee correct decryption. This is clearly implied by the bound in the theorem statement.
As a result, the value that the simulator decrypts is exactly the from the witness. At this point we can apply Proposition 2 with τ being the slack parameter from the ZKA to conclude that holds in the real world with probability at least .
The hybridis computationally indistinguishable from the ideal world.
Here we notice that the only difference between these two scenarios is the message (and its corresponding ZKA). It suffices then to argue that these two are indistinguishable, which intuitively hold because of the security of the encryption scheme and the zero knowledge property of the ZKA for .
In a bit more detail, consider an adversary for the following game: gets a public key and sends to a challenger who samples a bit internally and returns if the bit is 0, and if the bit is 1. This is essentially the semantic security of the LPR encryption scheme and its security can be proved based on RLWE [42]. Our adversary is defined as follows: it runs a copy of internally and interacts with by playing the honest and the simulator . gets from the challenger and uses this for the PKI setup. Notice that does not know the secret key s that the challenger used, but it still can give a uniformly random secret key , which implicitly defines a secret key for (that does not know!).
The simulator then receives from and passes this value to the challenger, getting back the challenge . uses this as the second message from to . Now, the main issue with the interaction above is that cannot prove now, since she does not know the witness. To this end, consider the simulator for the ZKA for . has the public parameters and the instance information from the interaction with , so it can use to interact with and pass the ZKA. If claims the resulting interaction is from the ideal world, then outputs 0, and if claims the interaction is in the real world then outputs 1.
We claim now that the adversary above wins the game with an advantage that is negligibly close to the advantage with which distinguishes from the ideal world, which implies that the latter must be negligible, as the original claim stated. To see this, first notice that, for a fixed , cannot distinguish between interacting with and interacting with a prover who knows the witness. This holds by the zero knowledge property of the ZKA. As a result, the advantage of is negligibly close to the difference between the probability of outputting “ideal world” and the probability of outputting “” when the ZKA is computed correctly. Finally, given that the interaction of with corresponds to either the ideal world (for challenge 0) or the hybrid (for challenge 1) when the ZKA is computed correctly, we conclude that this difference is precisely the distinguishing advantage of , which concludes the proof of the claim and with it the proof of indistinguishability for a corrupt .
Corrupt Alice (sketch). The proof in this setting is similar to the one considered above and therefore we only provide a sketch. The simulator uses the same idea of encrypting a dummy input on behalf of the emulated honest , and running the ZKA for honestly. To prove indistinguishability of the ideal and real worlds, a similar hybrid as above is considered where this message uses the real .
Proving that the hybrid is indistinguishable from the real world follows along the same lines as above. However, proving that the hybrid is indistinguishable from the ideal world requires a small change, given that now is not encrypted, but KDM-encrypted. This, fortunately, is not a problem since KDM-encryptions are indistinguishable from proper encryptions, as shown in [20]. □
OLE from correlated setup
Ciphertexts in the public key version of the LPR cryptosystem consist of two ring elements. However, in the secret key variant, we can reduce this to one element, since the first element is uniformly random so can be compressed using, for example, a PRG. Given this, a natural way of shaving off a factor of two in the communication complexity of our protocol from Section 3 would be to use secret key encryption instead of public key.
In this section we present an OLE protocol that instantiates precisely this idea. The communication pattern is very similar to the one from Protocol , in which there is a setup phase, then sends an encryption of his input to (and proves in zero-knowledge its correctness for the actively secure version), and then does the same. The challenge, here, is that now, as we are using secret-key encryption to obtain his ciphertext in the first message, there is no way for Bob to encrypt multiplied by the (combined) secret key.
To make this work, we replace the PKI setup functionality from the previous section with a more specialized setup, where gets and gets such that . This can be seen as an OLE itself, where the values being multiplied are small RLWE secret keys; under this interpretation, our protocol can be seen as a form of “OLE extension” protocol. The intuition for why this setup is useful, is that Bob’s secret-key ciphertext can now be distributively “decrypted” using the shares of , which (after rounding) leads to shares of . In the second phase, these shares are then used to “decrypt” Alice’s ciphertext, giving shares of the product .
Preprocessing for OLE with passive security.
Actively secure OLE protocol based on RLWE. The passively secure version of the protocol is obtained by removing the framed steps.
The setup functionality is described in Fig. 6, where we present both the passive and active versions of the functionality, with the main difference being that in the active setting we must ensure that the corrupt party uses the same secret key for encrypting its input as the secret key distributed in the setup phase. Thus, in this case, when the corrupted party proves in zero knowledge the correctness of its encryption, it also proves that the secret key is the same as in the setup phase. This requires the setup functionality in the active case to output some extra information that allows us to “bind” the key from the setup with the key from the encryption sent, for which we use commitments. We discuss this in more detail when we look at active security in Section 4.2. In Section 4.3, we also discuss how this setup functionality can be implemented in practice.
Our protocol is described in full detail in Fig. 7. As in Section 3, we present the full, actively secure version, but outline in a box those steps that are only necessary for active security.
Passive security
The following proposition states that our construction satisfies correctness when the parties are honest, and follows from Proposition 4 in Section 4.2, which analyzes the case where the bounds satisfied by the values from one of the parties may not be sharp.
Assume that. Letbe the inputs to Protocol, and letbe the outputs. Then, with probability at least,.
With this proposition, we proceed to the proof of security of our passively secure protocol.
Assume that. Then protocol, which consists of protocolwithout the underlined steps, realizes functionalityin the-hybrid model under the RLWE assumption.
Let be a simulator interacting with the real-world adversary and the functionality . We begin by considering the case in which is passively corrupt. It turns out that the case in which is corrupt is completely symmetric.
The simulator receives as input the corrupt party’s input , and it emulates an honest with a dummy input. It also emulates the resource by sending random and to from the proper distributions. begins by invoking the ideal functionality on input to get back for . Then samples and uniformly at random, and chooses a uniformly random such that . This is possible since, by applying Lemma 7 twice, sampling such boils down to finding such that for some fixed , which can be found since is invertible with probability at least from Lemma 6. Finally, emulates the protocol interaction by setting the initial public value , and it waits for from . At this point simulates the second message by sending to on behalf of the emulated honest party .
Now we argue that the simulation above is indistinguishable from a real-world execution, which amounts to showing that the view of the environment, defined as , is indistinguishable in both executions. To this end, we consider an intermediate hybrid which is defined as follows:
Hybrid.
, instead of being uniformly random, it is sampled as in the real execution: .
The hybridand the real world executions are statistically indistinguishable.
To see this, first notice that in the hybrid above and are uniformly random subject to . Also, , and are uniformly random, is defined as , equals (for secrets and that does not know) and is uniformly random subject to .
Our goal is to show that the distribution above is the same distribution as in the real execution. To this end, first notice that in the real execution , and are also uniformly random. Also, and are computed as in the hybrid. Furthermore, is uniformly random and is defined as , which implies that is uniformly random from Lemma 7. This is the same as choosing first uniformly at random and then sampling conditioned on the equation above, which is what happens in the hybrid. Given the above, it remains to argue that in the real world with overwhelming probability, which is precisely what Proposition 3 shows.
We conclude then from the above that the distributions in the real world and in the hybrid are identical. Hence, to finish with the proof of the theorem, if suffices to show that the hybrid and the ideal world are indistinguishable.
The hybridand the ideal world executions are computationally indistinguishable.
Begin by noticing that the only difference between these distributions is the choice of : In the ideal execution it is completely uniform, but in the hybrid it is sampled as . As a result, distinguishes from the ideal world if and only if it distinguishes . Such would imply an adversary for the RLWE game, defined as follows: This adversary plays an honest and the simulator . On input a sample for the RLWE game, above is invoked with and in place of and , respectively, where is the input that received from .
We see that if the sample is an RLWE sample, i.e. for some s, then the distribution generated by is identical to the distribution in the hybrid , where gets s as . On the other hand, if is uniformly random, then the distribution generated by is identical to the distribution in the ideal world. Therefore, if claims the execution is in the ideal world, concludes that is a uniform sample, and otherwise it concludes it is an RLWE sample. would break the game with essentially the same distinguishing advantage as ’s, which contradicts the security of . □
Active security
An active adversary in the protocol can cheat by sending incorrect messages. For example, a corrupt may send an incorrectly formed , and one can show that, in fact, by choosing appropriately a corrupt may learn some information about ’s input . A similar attack can be carried out by a corrupt . Hence, to achieve active security, we must ensure that the message sent by and the message sent by are computed honestly.
We implement zero knowledge arguments to show precisely these statements. proves that he knows , and of the appropriate sizes such that , and proceeds similarly.
An additional technicality, however, is that (and respectively ) has to be exactly the same value that was distributed during the setup phase. To enforce this, we consider a modified setup functionality for the actively secure setting that, on top of distributing , also distributes commitments to and that can be used in the relation of the zero knowledge argument (Fig. 6).
Given that the protocol is essentially symmetric with respect to the roles of and , from now on we focus on discussing the case of a corrupt . A similar argument applies for the case of corrupt . The message that sends is formed by adding n RLWE samples to , which is a scaled version of its input . Furthermore, the RLWE samples must be generated using the secret distributed in the setup phase. As a result, the relation that will prove is
and can be defined similarly.8
As in public-key protocol from Section 3.2, does not need to prove the bound on her input .
Here in the honest case starts with , but the guarantee given by the zero-knowledge argument will be for a substantially larger factor τ (see Section 5). The relation essentially shows that the message that sends is well formed, and furthermore, that the used for constructing this message is exactly the same as the one provided in the setup phase.
For the purpose of this section we assume the existence of zero knowledge arguments for the relations and . We develop such results in Section 5.
Now, to proceed with the security proof of our protocol, we first present the following proposition, which states that our construction satisfies correctness even when the bound on the parameters may have some slack.
Assume that. Letbe the inputs to Protocol, and letbe the outputs. Assume that the relationsandhold, but that at most one of them has slack parameter τ. Then, with probability at least,.
We begin by noticing that , so, taking into account that in the real world guarantees that , we have that . Rounding this equation mod p, and noticing that rounds exactly to the integer , we obtain .
Now, if has slack τ and has slack 1, it follows that and , which implies that . On the other hand, if has slack 1 and has slack τ, it follows that and , which also implies that . Since is uniformly random, and given that , Lemma 1 implies that with probability at least .
For the second message, we see that in the real world sends to , where is ’s input. Now, if has slack τ and has slack 1, it follows that and , which implies that . On the other hand, if has slack 1 and has slack τ, it follows that and , which implies too that . Using Lemma 1, we can conclude that , except with probability at most . □
Given this, we can prove the security of our actively secure OLE protocol, as stated in the following theorem.
Assume that. Then protocolrealizes functionalityin the-hybrid model under the RLWE assumption.
As usual, we define a simulator that interacts with the real-world adversary and the functionality . As stated before, we only consider the case in which is actively corrupt, since the analysis for is similar.
The simulator emulates an honest with dummy input, and it also emulates the resource honestly which distributes to . The emulated also interacts with to sample and .
Upon receiving from , the emulated engages with in the zero knowledge argument for , and if the emulated accepts, uses defines as the quotient of the (componentwise) division between and . Then defines as an honest would do, with dummy input , and sends to the functionality , where is defined as . then sends to , and at this point the emulated can play the zero knowledge argument for honestly since it knows the witness for the relation (recall that used a dummy input for ).
We claim that the ideal and real world executions are indistinguishable to . To this end, we consider the following hybrid:
Hybrid.
The execution is as in the ideal world, except that the actual input from real-world is used to define , and the zero knowledge argument for uses this input.
The real execution is computationally indistinguishable from the hybrid.
This argument is similar to the one applied in the first claim in the proof of Theorem 4. Intuitively, the fact that the actual input is used to define implies that from this message onwards the hybrid and the real world look identical. Furthermore, if the first zero knowledge argument succeeds, then we know that is well formed, and at this point the proof becomes essentially identical to the one in the passive case. We now proceed with the details.
Let us begin by considering the extractor for the zero knowledge argument for . Notice that convinces with the same probability in both worlds since, up to that point, the two interactions are indistinguishable. If this probability is negligible then clearly and the real execution would be indistinguishable, as the interaction would terminate here. Otherwise, the extractor would extract from a witness for the relation , which means that , where , , and , where was the commitment produced in the setup phase. Furthermore, from the computationally binding property of the commitment scheme we see that, with overwhelming probability, , where was the value distributed in the setup phase.
Now, notice that the real world and the hybrid coincide in the second zero knowledge argument for the relation , so cannot distinguish up to this point either. Hence, to conclude the argument about the two worlds being indistinguishable, it remains to be shown then that the input/output relation is the same in both worlds. To see this, first observe that the extracted from the first zero knowledge argument is the same as the one extracted by in the world , which follows directly from the uniqueness of the quotient and the fact that . As a result, we can apply Proposition 4 to obtain that with overwhelming probability in the real world, which is precisely the relation in the hybrid . With this we conclude then that is indistinguishable from the real world.
The hybridis computationally indistinguishable from the ideal world.
Intuitively, this holds since the only difference between the hybrid and the ideal world is the message and its zero knowledge argument: In the actual input is used to construct , but in the ideal world a dummy input of 0 is used instead. These cannot be distinguished due to the security of RLWE and the zero knowledge property of the ZKA.
In a bit more detail, consider an adversary for the following game: gets from a challenger, where is either (challenge 0) or (challenge 1) for some chosen by and , that are kept secret. This is essentially the semantic security of the LPR encryption scheme and its security can be proved based on RLWE [42]. Our adversary is defined as follows: it runs a copy of internally, getting from which is passed to the challenger. Furthermore, interacts with as the simulator , using the message received by the challenger as the second message from to .
The main issue with the interaction above is that cannot prove now, since it does not know the witness. To this end, consider the simulator for the ZKA for . has the public information from the interaction with , so it can use on input x to interact with and pass the ZKA. If claims the resulting interaction is from the ideal world, then outputs 0, and if claims the interaction is in the real world then outputs 1.
We claim now that the adversary above wins the game with an advantage that is negligibly close to the advantage with which distinguishes from the ideal world. To see this, first notice that, for a fixed , cannot distinguish between interacting with and interacting with a prover who knows the witness. This holds by the zero knowledge property of the ZKA. As a result, the advantage of is negligibly close to the difference between the probability of outputting “ideal world” and the probability of outputting “” when the ZKA is computed correctly. Finally, given that the interaction of with corresponds to either the ideal world (for challenge 0) or the hybrid (for challenge 1) when the ZKA is computed correctly, we conclude that this difference is precisely the distinguishing advantage of .
The above implies that the distinguishing advantage of has to be negligible, which concludes the proof of the claim and with it the proof of the theorem. □
A careful analysis of the above proof of shows that we only need the existence of a witness for the statements proven in Zero-Knowledge, but the proofs themselves must not be proofs of knowledge. Consider, for example, the case of a corrupted . The argument is that the simulator exists in the -hybrid and therefore already knows . This value must have been used to set up by soundness of the ZK proof for . The simulator can therefore remove from , round the outcome to recover and then recover the randomness as well. As a result, we may relax the conditions on the zero knowledge argument by not requiring a proof of knowledge, as the mere soundness from the ZKA would suffice.
Realising the setup functionality
To implement the setup functionality, , that is needed in these protocols, we can use a modified version of the public-key OLE protocol, , from Section 3. To realise with passive security, the parties simply run on their inputs , . For the case of active security, the parties also send a commitment to their input, and must then prove that the ciphertexts from are well-formed and consistent with the commitment. Note that here, we do not want to use the zero-knowledge proof from Section 3.2, firstly because it is designed for an amortized setting rather than a one-time setup, and secondly, because it only proves approximate bounds on the error polynomials, which would lead to worse parameters in our OLE protocol.
Instead, each party can run a one-shot zero-knowledge proof, to prove that the error terms and plaintexts in each ciphertext come from exactly the correct (e.g. ternary) distribution. For example, this can be done efficiently using MPC-in-the-head techniques [10]. Another possibility may be to adapt the techniques of Esgin et al. [31], who give efficient one-shot proofs for ternary lattice relations based on the same commitment scheme used in our construction.
Zero-knowledge arguments
In this section we describe in detail the zero-knowledge arguments that are necessary to implement the actively secure versions of our OLE protocols. Both of the arguments are amortized, meaning that i) they prove n statements in parallel and ii) for large enough n the communication from the prover to the verifier becomes strictly sublinear in n. While the first argument follows directly from [5], the second one is a non-trivial modification of this approach. It implies an amortized argument for proving well-formedness of secret-key (R)LWE ciphertexts, which to the best of our knowledge, has not been done previously and may be of independent interest.
Argument for public OLE
Zero knowledge argument for .
Recall the relations and considered in Section 3.2. We present in this section a zero-knowledge argument of knowledge for these relations. We begin by noticing that these relations can be expressed in matrix-form as where is derived from the public parameters, is the target and is the secret we want to prove knowledge of. More concretely
where we show that has a bound of , , , for each row, respectively.
We consider one single relation , defined as in (or ), but using the 2-norm instead of the ∞-norm.9
The choice of norm is irrelevant for the purpose of the existence of a proof, since bounds in one norm can be translated to the other.
To prove this relation, we use the interactive argument between and that is outlined in Fig. 8. We obtain the following theorem.
Assume that,,. Let,and. Furthermore, letbe a statistically hiding and computationally binding commitment scheme. Then the aforementioned protocol is a zero-knowledge argument of knowledge forwiththat is complete with probability, computationally sound and statistically zero-knowledge.
The proof follows directly from Theorem 1 of [5] where the zero-knowledge argument is done individually for each row of using Lemma 3. We will therefore only sketch the most important parts.
Completeness. We will focus on the contribution of throughout the argument but it generalizes to , , accordingly. We know that for it holds that . Thus for all elements of the vector and hence . Using from the statement as well as Lemma 3 we can see that will be sent with the required probability. As therefore particularly we can upper-bound its norm using Lemma 2 setting and using . Therefore Step 4b succeeds with overwhelming probability, while Step 4a holds by linearity.
Honest-Verifier Zero-Knowledge. In the simulation will simply sample as in the protocol, generate
set and commit to the respective value . then outputs the transcript with probability . Observe that indistinguishability follows by Lemma 3 as well as the statistical hiding property of .
Soundness. By a standard heavy-column argument we can rewind a successful prover on different challenges for the same first message and are able to obtain multiple transcripts for different , but fixed . Observe that by the binding property of we must have that always opens to the same value. This allows us to obtain multiple equations of the form . We will extract , , , by rewinding with all columns of , being fixed during rewinding except for the i-th column, which means that all except for the i-th part of will disappear when being multiplied by . Then by the aforementioned equation and the bounds on the from successfully produced transcripts the result follows. The lower bound of is a consequence of the heavy-column argument of [5]. □
Argument for private OLE
For the OLE in Fig. 7 with preprocessing the relation which each party has to prove looks different from the aforementioned and we cannot apply the same argument as above. In more detail, one of the two relations (the other follows along the same lines) that we want to prove is
where .10
Observe that, again, we have switched to the 2-norm.
Towards constructing an interactive argument, we first observe that the equation to be proven can be alternatively written as
which means that all such statements are in fact linear in s. At first glance it might seem plausible to apply a standard amortization technique such as in Fig. 8 but that is not possible: amortization techniques require that the instances are linear in a public value, whereas in our case we need to exploit linearity in the secret. In Fig. 9 we present a zero-knowledge argument for the specific relation whose overhead is , i.e. the number of additional vectors in only depends on the statistical security parameter κ.
Zero knowledge argument for .
Assume that,. Let,and. Furthermore, let C be a statistically hiding and computationally binding commitment scheme. Then the aforementioned protocol is a zero-knowledge argument of knowledge forwiththat is complete with probability, computationally sound and statistically zero-knowledge.
The proof uses elements of the proof of Theorem 6, though some modifications are necessary to obtain the full statement.
Completeness. The proof of completeness follows along the exact same lines as the proof of Theorem 6, except that we now only have 2 vectors to perform rejection sampling on and not 4. All of the bounds can be determined the exact same way, and the correctness of the opening follows by homomorphism of the commitment scheme and the completeness of the arguments for and . We assume that both arguments succeed with probability which yields the claim.
Honest-Verifier Zero-Knowledge. The simulator will start by a simulation of the argument for . If this sub-simulator outputs then we will continue simulating, otherwise abort if the sub-simulator for aborts and output its aborting transcript.
As in the proof of Theorem 6, the simulator then generates honestly and samples , . Given this, we can compute , as in the protocol.
Next, sample the commitments as uniformly random commitments and generate the such that the equation from Step 6 holds. With probability we output and abort, otherwise we generate as the output of the statistical zero-knowledge simulator of the argument for . Here, we abort and only output if this sub-simulator aborts or otherwise output if the sub-simulator succeeds.
Observe that the overall probability of outputting a full simulated transcript is , a transcript without and a transcript only containing with probability which is the same as in the protocol. The values , are distributed as in the protocol by Lemma 3 whereas are statistically indistinguishable from those of the protocol due to the statistical hiding of the commitment scheme. Then, since , are statistically indistinguishable from the real transcript of the arguments for , the statement follows.
Soundness. Assume that there exists a prover that can convince a verifier with probability . Observe that s randomness tape is fixed, except for the inputs coming from the interaction. We first rewind the prover on the subprotocol for where we extract the opening . Observe that by the binding property of C is not able to open c to any with throughout the rest of this argument.
Next, we fix some choice for and continue with the rest of the protocol with , calling this new hybrid algorithm . This fixes the commitments for the remaining protocol. By the standard heavy-column Lemma, with probability at least we have that the fraction of choices of and randomness in which make output a valid transcript is at least .
Using the same fixing of we now arrive at a prover which with probability outputs valid transcripts with probability at least . Using the soundness of in Step 7 we have that any must contain a value of the form for some as in can only be opened to s due to the binding property of the scheme. Observe that these openings of can be transformed into openings of by linearity of the scheme, i.e. they do also work for .
Next, using the same heavy-column argument as in the proof of Theorem 6 we can then for each extract two accepting transcripts that have , where all columns of are identical to except for column i, which means that there is a j such that
where by the definition of , it must now hold that
Setting and then yields the necessary values of the appropriate bounds. Observe that the loss in success probability is only constant (i.e. we can amplify it back by repeating the experiment) and that the extractor runs in expected time . □
In terms of complexity of the aforementioned protocol, we start by sending commitments of elements, then sample bits and then send two -vectors , which are of length ℓ each. Furthermore, we need to run a ZK argument of both relations , which each require additional -elements of communication (see Section 2.6. Therefore we obtain total communication.
On utilizing other zero-knowledge arguments
Both and can also be proven using other zero-knowledge arguments, and we will now explain why we chose this specific approach.
On individual arguments. An alternative to the use of amortized arguments such as those used in our protocol is to use arguments for each linear relation separately, e.g. using [10]. For n such instances the overall communication will then at least be and also computation must now be performed for each of the n instances. Amortization allows to instead reduce computation and communication to net κ instances, thus reducing the overhead.
On other amortized proofs. The recent work of [6] extended previous MPC preprocessing to use the more efficient challenge spaces of [5]. This can most likely be applied in our setting too and would lead to an earlier point at which amortization outperforms individual arguments. We leave this as interesting future work.
On generic proofs. Generic argument systems such as [2] or [13] outperform our proofs in terms of communication for large enough instances due to their sublinear (in the proven circuit) communication. This low communication comes at the expense of higher computation on the prover side, thus potentially decreasing the throughput of our protocol. [2,13] can use amortization over multiple instances, but so far it has not been studied how these perform in the lattice setting in comparison to specialized amortization techniques.
Evaluation
In this section, we evaluate the efficiency of our OLE protocols, and compare this with protocols based on previous techniques. Firstly, we look at the communication complexity and compare this with other protocols. Then, in Section 6.3, we present implementation results for our passively secure secret-key protocol to demonstrate its practicality.
Choosing parameters
We estimate parameters for our OLE protocols according to the correctness requirement in Proposition 2. For RLWE we use a ternary secret distribution (so, ) a Gaussian error distribution with and ; the soundness slack parameter is for passive protocols and otherwise. The statistical security parameter is .
Comparison to previous protocols
Comparison of the complexity of our OLE protocols with previous works based on homomorphic encryption
1 round means that each party sends one message simultaneously. 2 rounds either means that each party sequentially sends one message (for AHE), or one simultaneous message, twice in succession (for SHE).
Table 1 presents the communication complexity, measured from the protocol specifications, of our two public-key and secret-key OLE protocols, and compares this with two other protocols based on RLWE-based homomorphic encryption, either additively homomorphic (AHE) or somewhat homomorphic (SHE), as well as a protocol based on noisy Reed–Solomon encodings (RS). As can be seen from the table, ours is the only protocol with just a single round of communication, where each party simultaneously sends just one message (as in a non-interactive key exchange), whereas both other protocols require two rounds. Our secret-key protocol, which requires some special preprocessing, has the lowest communication cost of all the protocols, with both passive and active security. Furthermore, compared with the previously most efficient protocol based on AHE with active security, our active protocols avoid the need for assuming linear-only encryption, which is a relatively strong and un-studied assumption, compared with standard RLWE.
A full description of these protocols can be found in Section 1.4.
Experimental results
We have implemented the passive version of the secret-key protocol (see in Fig. 7) in Go language, making use of the ring package provided by the lattigo library [41]. Our implementation features a full-RNS (Residue Number System) realization of all the protocol operations, using a moduli of 60-bit limbs. For comparison purposes, we have also implemented the AHE-based OLE protocol described in Appendix A. The implementation of the OLE passive protocol has been integrated into the lattigo library [41].
The execution times of the protocol steps were tested on a laptop with an Intel Core i7-8550U processor with 16 GB RAM, running Arch Linux with kernel 5.6.4 and Go 1.14.2 The latency is not simulated, as it is highly dependent on the particular deployment; we include instead the communication complexity of the involved messages, from which the latency can be derived.
Parameter sets and run times in the passive case of Fig. 7
Parameter
Par. set 1
Par. set 2
q
360 bits (6 limbs)
480 bits (8 limbs)
p
240 bits (4 limbs)
360 bits (6 limbs)
m
60 bits (1 limb)
120 bits (2 limbs)
bit security
# OLEs
2097152
2097152
(a) Example parameter sets ( and ) and global run times for the passive case of Fig. 7 (uniformly random ternary secret keys and Gaussian noise with ).
Bob
Par. set 1
Par. set 2
Alice
Par. set 1
Par. set 2
Step
Step
Step
Step
Step
Step
1st msg.
1st msg.
2nd msg.
2nd msg.
(b) Run times in the passive case of Fig. 7 for the example parameter sets of Table 2(a) ( and , uniformly random ternary secret keys and Gaussian noise with ).
Total run times expressions and extrapolated run times in the passive case of Fig. 7
Run time expressions for Bob and Alice
(a) Total run time expressions for Bob () and Alice ().
Total time
Par. Set 1
Par. Set 2
(b) Extrapolated run times () in the passive case of Fig. 7.
Parameter sets and communication costs for the passive case of Fig. 7 and Appendix A
Parameter
Par. set 1
Par. set 2
p
240 bits (4 limbs)
360 bits (6 limbs)
m
60 bits (1 limb)
120 bits (2 limbs)
bit security
# OLEs
2097152
2097152
Alice time
Bob time
Total time
(a) Example parameter sets and global run times for the passively secure OLE based on AHE from Appendix A (uniformly random ternary secret keys and Gaussian noise with ).
(b) Communication cost in the passive case of Fig. 7 and the passively secure OLE based on AHE from Appendix A.
We have chosen two practical parameter sets for both protocols (see Tables 2(a) and 4(a)), both featuring more than 110 bits of security,11
We have used the LWE security estimator of Albrecht et al. [1] (available online in https://bitbucket.org/malb/lwe-estimator) to give bit-security estimates.
and achieving more than 2 million scalar OLEs per protocol run. Table 2(b) includes the run times corresponding to each party (Alice and Bob) and Table 4(b) (see Appendix A) shows the communication costs.
It is worth noting that the public key version from Fig. 5 is not explicitly tested, but it incurs in a similar computational complexity as the one from Fig. 7; it presents, though, an increase on the communication complexity, as the interchanged messages are composed of two polynomials instead of one.
As the latency is not simulated, in order to compare with other protocols, we must consider that the total run time of ours would be , being (resp. ) the corresponding run time for Bob (resp. Alice). Tables 3(a) and 3(b) include the corresponding expressions and also extrapolate total protocol run times for some specific values of network bandwidth . corresponds to the time of each included in Table 2(b), and (resp. ) is the time needed to transmit ciphertext (resp. ).
Extrapolated runtimes are approximately equal or lower than those obtained with the protocol based on AHE from Appendix A; note that for the last one we are not taking into account transmission runtimes. Consequently, we can see that the proposed protocols in this paper achieve both a better efficiency and lower communication cost than the one based on AHE from Appendix A.
Footnotes
Acknowledgments
We thank the anonymous reviewers for comments which helped to improve the paper. This work has been supported by the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme under grant agreement No 669255 (MPCPRO), the Danish Independent Research Council under Grant-ID DFF–6108-00169 (FoCC), an Aarhus University Research Foundation starting grant, the Xunta de Galicia & ERDF under projects ED431G2019/08 and Grupo de Referencia ED431C2017/53, and by the grant #2017-201 (DPPH) of the Strategic Focal Area “Personalized Health and Related Technologies (PHRT)” of the ETH Domain.
Passively secure OLE from linearly homomorphic encryption
We start out with two parties having as inputs where has and . Furthermore, assume that has as well. Our goal is, again, to compute such that . Here · is the product of ring elements or of a scalar multiplication with a vector, while ⋆ denotes the element-wise multiplication of two vectors.
First, samples according to the ternary distribution, uniformly at random as well as as a discrete Gaussian with the same standard deviation (approximated using a Binomial distribution). It sends to .
In the first round of the OLE, samples as a discrete Gaussian with the same standard deviation (approximated using a Binomial distribution). then samples uniformly at random, computes and sends , to .
In the second round, samples according to the ternary distribution, according to a discrete Gaussian with but moreover uniform with infinity norm smaller than . It sets and and sends , to .
Finally, computes and outputs this.
We see that
and the desired relation holds. The noise terms add up to where due to its size statistically drowns the other three terms, which makes simulation possible. This is because with overwhelming probability and , so with overwhelming probability, while and are a lot smaller.
Furthermore, since we also require that this term will not lead to a wrap-around mod p during decryption and the result will be correct with overwhelming probability. Observe that will not actually have to send because it can be sampled from a PRG-seed by both , , meaning that the communication only requires 3 -elements for one -OLE once is set up.
References
1.
M.R.Albrecht, R.Player and S.Scott, On the concrete hardness of learning with errors, J. Mathematical Cryptology9(3) (2015), 169–203, http://www.degruyter.com/view/j/jmc.2015.9.issue-3/jmc-2015-0016/jmc-2015-0016.xml. doi:10.1007/s10623-015-0048-8.
2.
S.Ames, C.Hazay, Y.Ishai and M.Venkitasubramaniam, Ligero: Lightweight sublinear arguments without a trusted setup, in: ACM CCS 2017, B.M.Thuraisingham, D.Evans, T.Malkin and D.Xu, eds, ACM Press, 2017, pp. 2087–2104. doi:10.1145/3133956.3134104.
3.
B.Applebaum, D.Cash, C.Peikert and A.Sahai, Fast cryptographic primitives and circular-secure encryption based on hard learning problems, in: CRYPTO 2009, S.Halevi, ed., LNCS, Vol. 5677, Springer, Heidelberg, 2009, pp. 595–618. doi:10.1007/978-3-642-03356-8_35.
4.
B.Applebaum, I.Damgård, Y.Ishai, M.Nielsen and L.Zichron, Secure arithmetic computation with constant computational overhead, in: CRYPTO 2017, Part I, J.Katz and H.Shacham, eds, LNCS, Vol. 10401, Springer, Heidelberg, 2017, pp. 223–254. doi:10.1007/978-3-319-63688-7_8.
5.
C.Baum, J.Bootle, A.Cerulli, R.del Pino, J.Groth and V.Lyubashevsky, Sub-linear lattice-based zero-knowledge arguments for arithmetic circuits, in: CRYPTO 2018, Part II, H.Shacham and A.Boldyreva, eds, LNCS, Vol. 10992, Springer, Heidelberg, 2018, pp. 669–699. doi:10.1007/978-3-319-96881-0_23.
6.
C.Baum, D.Cozzo and N.P.Smart, Using TopGear in overdrive: A more efficient ZKPoK for SPDZ, in: SAC 2019, K.G.Paterson and D.Stebila, eds, LNCS, Vol. 11959, Springer, Heidelberg, 2019, pp. 274–302. doi:10.1007/978-3-030-38471-5_12.
7.
C.Baum, I.Damgård, K.G.Larsen and M.Nielsen, How to prove knowledge of small secrets, in: CRYPTO 2016, Part III, M.Robshaw and J.Katz, eds, LNCS, Vol. 9816, Springer, Heidelberg, 2016, pp. 478–498. doi:10.1007/978-3-662-53015-3_17.
8.
C.Baum, I.Damgård, V.Lyubashevsky, S.Oechsner and C.Peikert, More efficient commitments from structured lattice assumptions, in: SCN 18, D.Catalano and R.De Prisco, eds, LNCS, Vol. 11035, Springer, Heidelberg, 2018, pp. 368–385. doi:10.1007/978-3-319-98113-0_20.
9.
C.Baum, D.Escudero, A.Pedrouzo-Ulloa, P.Scholl and J.R.Troncoso-Pastoriza, Efficient protocols for oblivious linear function evaluation from ring-LWE, in: Security and Cryptography for Networks – 12th International Conference, SCN 2020, Proceedings, Amalfi, Italy, September 14–16, 2020, C.Galdi and V.Kolesnikov, eds, Lecture Notes in Computer Science, Vol. 12238, Springer, 2020, pp. 130–149. doi:10.1007/978-3-030-57990-6_7.
10.
C.Baum and A.Nof, Concretely-efficient zero-knowledge arguments for arithmetic circuits and their application to lattice-based cryptography, in: PKC 2020, Part I, A.Kiayias, M.Kohlweiss, P.Wallden and V.Zikas, eds, LNCS, Vol. 12110, Springer, Heidelberg, 2020, pp. 495–526. doi:10.1007/978-3-030-45374-9_17.
11.
C.Baum and A.Nof, Concretely-efficient zero-knowledge arguments for arithmetic circuits and their application to lattice-based cryptography, in: Public-Key Cryptography – PKC 2020, Springer, 2020.
12.
D.Beaver, Efficient multiparty protocols using circuit randomization, in: CRYPTO’91, J.Feigenbaum, ed., LNCS, Vol. 576, Springer, Heidelberg, 1992, pp. 420–432. doi:10.1007/3-540-46766-1_34.
13.
E.Ben-Sasson, A.Chiesa, M.Riabzev, N.Spooner, M.Virza and N.P.Ward, Aurora: Transparent succinct arguments for R1CS, in: EUROCRYPT 2019, Part I, Y.Ishai and V.Rijmen, eds, LNCS, Vol. 11476, Springer, Heidelberg, 2019, pp. 103–128. doi:10.1007/978-3-030-17653-2_4.
14.
R.Bendlin, I.Damgård, C.Orlandi and S.Zakarias, Semi-homomorphic encryption and multiparty computation, in: EUROCRYPT 2011, K.G.Paterson, ed., LNCS, Vol. 6632, Springer, Heidelberg, 2011, pp. 169–188. doi:10.1007/978-3-642-20465-4_11.
15.
D.Boneh, Y.Ishai, A.Sahai and D.J.Wu, Lattice-based SNARGs and their application to more efficient obfuscation, in: EUROCRYPT 2017, Part III, J.-S.Coron and J.B.Nielsen, eds, LNCS, Vol. 10212, Springer, Heidelberg, 2017, pp. 247–277. doi:10.1007/978-3-319-56617-7_9.
16.
E.Boyle, G.Couteau, N.Gilboa and Y.Ishai, Compressing vector OLE, in: ACM CCS 2018, D.Lie, M.Mannan, M.Backes and X.Wang, eds, ACM Press, 2018, pp. 896–912. doi:10.1145/3243734.3243868.
17.
E.Boyle, G.Couteau, N.Gilboa, Y.Ishai, L.Kohl, P.Rindal and P.Scholl, Efficient two-round OT extension and silent non-interactive secure computation, in: ACM CCS 2019, L.Cavallaro, J.Kinder, X.Wang and J.Katz, eds, ACM Press, 2019, pp. 291–308. doi:10.1145/3319535.3354255.
18.
E.Boyle, G.Couteau, N.Gilboa, Y.Ishai, L.Kohl and P.Scholl, Efficient pseudorandom correlation generators: Silent OT extension and more, in: CRYPTO 2019, Part III, A.Boldyreva and D.Micciancio, eds, LNCS, Vol. 11694, Springer, Heidelberg, 2019, pp. 489–518. doi:10.1007/978-3-030-26954-8_16.
19.
E.Boyle, N.Gilboa and Y.Ishai, Breaking the circuit size barrier for secure computation under DDH, in: CRYPTO 2016, Part I, M.Robshaw and J.Katz, eds, LNCS, Vol. 9814, Springer, Heidelberg, 2016, pp. 509–539. doi:10.1007/978-3-662-53018-4_19.
20.
E.Boyle, L.Kohl and P.Scholl, Homomorphic secret sharing from lattices without FHE, in: EUROCRYPT 2019, Part II, Y.Ishai and V.Rijmen, eds, LNCS, Vol. 11477, Springer, Heidelberg, 2019, pp. 3–33. doi:10.1007/978-3-030-17656-3_1.
21.
Z.Brakerski, C.Gentry and V.Vaikuntanathan, (Leveled) fully homomorphic encryption without bootstrapping, in: ITCS 2012, S.Goldwasser, ed., ACM, 2012, pp. 309–325. doi:10.1145/2090236.2090262.
22.
Z.Brakerski and V.Vaikuntanathan, Fully homomorphic encryption from ring-LWE and security for key dependent messages, in: CRYPTO 2011, P.Rogaway, ed., LNCS, Vol. 6841, Springer, Heidelberg, 2011, pp. 505–524. doi:10.1007/978-3-642-22792-9_29.
23.
M.Chase, Y.Dodis, Y.Ishai, D.Kraschewski, T.Liu, R.Ostrovsky and V.Vaikuntanathan, Reusable non-interactive secure computation, in: CRYPTO 2019, Part III, A.Boldyreva and D.Micciancio, eds, LNCS, Vol. 11694, Springer, Heidelberg, 2019, pp. 462–488. doi:10.1007/978-3-030-26954-8_15.
24.
R.Cramer, I.Damgård, C.Xing and C.Yuan, Amortized complexity of zero-knowledge proofs revisited: Achieving linear soundness slack, in: EUROCRYPT 2017, Part I, J.-S.Coron and J.B.Nielsen, eds, LNCS, Vol. 10210, Springer, Heidelberg, 2017, pp. 479–500. doi:10.1007/978-3-319-56620-7_17.
25.
I.Damgård, M.Keller, E.Larraia, V.Pastro, P.Scholl and N.P.Smart, Practical covertly secure MPC for dishonest majority – or: Breaking the SPDZ limits, in: ESORICS 2013, J.Crampton, S.Jajodia and K.Mayes, eds, LNCS, Vol. 8134, Springer, Heidelberg, 2013, pp. 1–18. doi:10.1007/978-3-642-40203-6_1.
26.
I.Damgård, V.Pastro, N.P.Smart and S.Zakarias, Multiparty computation from somewhat homomorphic encryption, in: CRYPTO 2012, R.Safavi-Naini and R.Canetti, eds, LNCS, Vol. 7417, Springer, Heidelberg, 2012, pp. 643–662. doi:10.1007/978-3-642-32009-5_38.
27.
I.Damgård, T.P.Pedersen and B.Pfitzmann, On the existence of statistically hiding bit commitment schemes and fail-stop signatures, in: CRYPTO’93, D.R.Stinson, ed., LNCS, Vol. 773, Springer, Heidelberg, 1994, pp. 250–265. doi:10.1007/3-540-48329-2_22.
28.
L.de Castro, C.Juvekar and V.Vaikuntanathan, Fast vector oblivious linear evaluation from ring learning with errors, 2020, https://eprint.iacr.org/2020/685.
29.
Y.Dodis, S.Halevi, R.D.Rothblum and D.Wichs, Spooky encryption and its applications, in: CRYPTO 2016, Part III, M.Robshaw and J.Katz, eds, LNCS, Vol. 9816, Springer, Heidelberg, 2016, pp. 93–122. doi:10.1007/978-3-662-53015-3_4.
30.
N.Döttling, S.Ghosh, J.B.Nielsen, T.Nilges and R.Trifiletti, TinyOLE: Efficient actively secure two-party computation from oblivious linear function evaluation, in: ACM CCS 2017, B.M.Thuraisingham, D.Evans, T.Malkin and D.Xu, eds, ACM Press, 2017, pp. 2263–2276. doi:10.1145/3133956.3134024.
31.
M.F.Esgin, N.K.Nguyen and G.Seiler, Practical exact proofs from lattices: New techniques to exploit fully-splitting rings, in: ASIACRYPT 2020, Part II, S.Moriai and H.Wang, eds, LNCS, Vol. 12492, Springer, Heidelberg, 2020, pp. 259–288. doi:10.1007/978-3-030-64834-3_9.
32.
D.Genkin, Y.Ishai, M.Prabhakaran, A.Sahai and E.Tromer, Circuits resilient to additive attacks with applications to secure computation, in: 46th ACM STOC, D.B.Shmoys, ed., ACM Press, 2014, pp. 495–504. doi:10.1145/2591796.2591861.
33.
S.Ghosh, J.B.Nielsen and T.Nilges, Maliciously secure oblivious linear function evaluation with constant overhead, in: ASIACRYPT 2017, Part I, T.Takagi and T.Peyrin, eds, LNCS, Vol. 10624, Springer, Heidelberg, 2017, pp. 629–659. doi:10.1007/978-3-319-70694-8_22.
34.
S.Ghosh and T.Nilges, An algebraic approach to maliciously secure private set intersection, in: EUROCRYPT 2019, Part III, Y.Ishai and V.Rijmen, eds, LNCS, Vol. 11478, Springer, Heidelberg, 2019, pp. 154–185. doi:10.1007/978-3-030-17659-4_6.
35.
N.Gilboa, Two party RSA key generation, in: CRYPTO’99, M.J.Wiener, ed., LNCS, Vol. 1666, Springer, Heidelberg, 1999, pp. 116–129. doi:10.1007/3-540-48405-1_8.
Y.Ishai, M.Prabhakaran and A.Sahai, Secure arithmetic computation with no honest majority, in: TCC 2009, O.Reingold, ed., LNCS, Vol. 5444, Springer, Heidelberg, 2009, pp. 294–314. doi:10.1007/978-3-642-00457-5_18.
38.
M.Keller, E.Orsini and P.Scholl, MASCOT: Faster malicious arithmetic secure computation with oblivious transfer, in: ACM CCS 2016, E.R.Weippl, S.Katzenbeisser, C.Kruegel, A.C.Myers and S.Halevi, eds, ACM Press, 2016, pp. 830–842. doi:10.1145/2976749.2978357.
39.
M.Keller, V.Pastro and D.Rotaru, Overdrive: Making SPDZ great again, in: EUROCRYPT 2018, Part III, J.B.Nielsen and V.Rijmen, eds, LNCS, Vol. 10822, Springer, Heidelberg, 2018, pp. 158–189. doi:10.1007/978-3-319-78372-7_6.
40.
V.Lyubashevsky, Lattice signatures without trapdoors, in: EUROCRYPT 2012, D.Pointcheval and T.Johansson, eds, LNCS, Vol. 7237, Springer, Heidelberg, 2012, pp. 738–755. doi:10.1007/978-3-642-29011-4_43.
41.
Lattigo 1.3.1, 2020, EPFL-LDS.
42.
V.Lyubashevsky, C.Peikert and O.Regev, A toolkit for ring-LWE cryptography, in: EUROCRYPT 2013, T.Johansson and P.Q.Nguyen, eds, LNCS, Vol. 7881, Springer, Heidelberg, 2013, pp. 35–54. doi:10.1007/978-3-642-38348-9_3.
43.
V.Lyubashevsky and G.Seiler, Short, invertible elements in partially splitting cyclotomic rings and applications to lattice-based zero-knowledge proofs, in: EUROCRYPT 2018, Part I, J.B.Nielsen and V.Rijmen, eds, LNCS, Vol. 10820, Springer, Heidelberg, 2018, pp. 204–224. doi:10.1007/978-3-319-78381-9_8.
44.
P.Mohassel and Y.Zhang, SecureML: A system for scalable privacy-preserving machine learning, in: 2017 IEEE Symposium on Security and Privacy, IEEE Computer Society Press, 2017, pp. 19–38. doi:10.1109/SP.2017.12.
45.
M.Naor and B.Pinkas, Oblivious transfer and polynomial evaluation, in: 31st ACM STOC, ACM Press, 1999, pp. 245–254. doi:10.1145/301250.301312.
46.
D.Rathee, T.Schneider and K.K.Shukla, Improved multiplication triple generation over rings via RLWE-based AHE, in: CANS 2019, 2019, https://eprint.iacr.org/2019/577.
47.
O.Regev, On lattices, learning with errors, random linear codes, and cryptography, in: 37th ACM STOC, H.N.Gabow and R.Fagin, eds, ACM Press, 2005, pp. 84–93. doi:10.1145/1060590.1060603.
48.
P.Schoppmann, A.Gascón, L.Reichert and M.Raykova, Distributed vector-OLE: Improved constructions and implementation, in: ACM CCS 2019, L.Cavallaro, J.Kinder, X.Wang and J.Katz, eds, ACM Press, 2019, pp. 1055–1072. doi:10.1145/3319535.3363228.