This paper introduces two-party protocols for various operations on two integer intervals that are privacy-preserving in the semi-honest model. Specifically, this work proposes new protocols for determining whether two intervals overlap; computing the boundaries and size of the overlap; and selecting a random sub-interval within the overlap. The protocols are presented both for homomorphic encryption and for secret sharing as basic secure multi-party computation techniques. Moreover, this paper presents a comprehensive performance evaluation of the newly-developed protocols.
The central role of privacy-preserving interval operations has already been recognized in the literature: For example protocols to privately conduct range queries (e.g., [5]) or to privately determine whether or not an integer lies in a particular interval (e.g., [28]) are crucial building blocks for enabling the search on encrypted data (e.g., [5,32]), to design privacy-preserving online analytical systems (e.g., [1,34]), or to conduct private information retrieval (e.g., [17]). However, the privacy-preserving interval protocols known in literature are limited to operate on single intervals and thus cannot be used for a wide range of applications requiring operations on two intervals. This includes scheduling applications where time ranges are represented as intervals (e.g., [11,24]) or distributed intrusion detection systems operating on intervals of port and IP address ranges (e.g., [21,22]).
As a main contribution, this paper proposes protocols implementing privacy-preserving operations on two intervals. In particular, this work presents protocols for determining whether two intervals overlap, for computing the boundaries of the overlap interval, for calculating (only) the width of the overlap, for determining if the overlap has at least a certain size, and for sampling a random sub-interval within the overlap.1
Preliminary versions of the presented protocols based on homomorphic encryption are included in the dissertation of Daniel Mayer [23].
Since integer intervals are essentially sets of integers, existing protocols for set operations (e.g., [12,15]) could be used to implement some of the interval operations mentioned above. However, intervals have a particular structure in that they contain continuous integers bound by well-defined maximum and minimum values. Exploiting this structure allows us to devise efficient protocols with computation, communication, and round complexities in , i.e., the complexities are independent of the number of elements in the intervals. This is not possible for protocols implementing privacy-preserving set operations as they at least linearly depend on the number k of elements in the input sets, where the computation and communication overheads are at least in (cf. [12,15]).
The novel protocols are designed as Secure Multi-Party Computation (SMPC) protocols and are proven secure against semi-honest (i.e., passive) adversaries. To date, several approaches to SMPC co-exist including secret sharing and homomorphic encryption. However, both of these approaches have barely ever been compared w.r.t. the performance of protocols implementing the same functionality (exceptions are [33] and [26] which likewise compare the implementation of some specific protocols secure in the semi-honest model w.r.t. both approaches). Thus, as a second contribution, this paper discusses the implementation of the novel protocols for both SMPC approaches and provides a detailed performance comparison of the protocols.
The rest of this paper is arranged as follows. Section 2 presents definitions and notations used throughout this paper. Next, Section 3 introduces existing and novel building blocks for the interval operations. Section 4 discusses the interval operation protocols in detail. A performance analysis is provided in Section 5. Finally, concluding remarks and future work is discussed in Section 6.
Preliminaries
Notation and definitions
indicates that s is drawn uniformly at random from S. refers to the set of natural numbers less than or equal to . refers to the jth entry of vector V. The index set of all parties participating in a protocol execution is denoted as with . For two-party protocols, set . Furthermore, let λ denote the empty string. A closed integer interval , in the following just referred to as interval, is defined as a totally ordered set w.r.t. ⩽ containing all positive integers (). Given two intervals and , the overlap interval is denoted as . For an interval , the width of that interval is equal to . A function is called negligible, if it decreases faster than the reciprocal of any polynomial:
(Negligible).
A function is called negligible if for every positive polynomial there exists an such that for all .
Semantic security against chosen plaintext attack of an asymmetric cryptosystem (equivalent to IND-CPA) with encryption function and public/private key pair can be defined by means of the following experiment [19]:
A challenger generates a random key pair .
A probabilistic polynomial time adversary , given , selects two plaintext messages , of equal length and sends and to .
, given , selects and returns .
With the knowledge of , , and , tries to determine such that and outputs .
The output of the experiment is 1 if and 0 otherwise.
(Semantic security).
An asymmetric cryptosystem with security parameter s is semantically secure against chosen plaintext attacks if no adversary exists who attains an experiment output of 1 with a probability significantly greater than , i.e., it holds that .
Secret sharing
A threshold secret sharing scheme allows the distribution of a secret s (for now, assume s to be an integer) among ι parties such that each subgroup of at least τ parties can reconstruct s using Lagrange interpolation while any subgroup of size or smaller cannot obtain any information on secret s. Various such threshold secret sharing schemes exist (e.g., [3,6,31]).
The secret sharing based protocols use Shamir’s secret sharing scheme [31] which is based on polynomial interpolation. The holder of a secret (p is prime and referred to as security parameter) generates a random polynomial of degree over with and determines the ι shares of s as . Party obtains share . Sharing denotes the vector of shares for s.2
For the two-party case where , set , .
Given two sharings , , it is possible to perform a privacy-preserving addition, subtraction, and multiplication of the corresponding two secrets . Due to the linearity of Shamir’s secret sharing scheme, the addition and subtraction of two sharings, written and , can be computed share-wise, where each party operates on its own shares and computes and , respectively. Similarly, a publicly known constant can be added, subtracted, or multiplied to a sharing of a secret , denoted as , , and , where each party locally computes , , and , respectively. In contrast to addition and subtraction, the multiplication of two sharings and , written as , requires interaction of at least parties. For the two party setting, this means that an additional party has to be involved when multiplying two sharings (see [7] for details). The involvement of an additional party is addressed in alignment with the party setting of the SMPC framework SEPIA [8] which distinguishes between input peers and privacy peers (see Section 5). Furthermore, it is possible to reshare a sharing , denoted by : Let be a polynomial of degree over uniquely determined by . Then, computes a different sharing of s uniquely determining a polynomial of the same degree over but with different coefficients sampled uniformly at random from such that (see [4]).
Homomorphic encryption
All of the privacy-preserving protocols based on homomorphic encryption use an additively homomorphic cryptosystem which is semantically secure against chosen-plaintext attacks and for which there is a threshold variant. The following discusses a threshold variant of the Paillier cryptosystem [14,30] which satisfies the requirements and is used throughout the paper:
Key generation. Choose of bit length k, where p, q are safe primes (i.e., there are prime numbers and such that and ) and k is the security parameter. Set , , , and . The private key is shared among ι parties using Shamir’s secret sharing scheme [31]. The public key which is the same for each party consists of g, N, and , where .
Encryption. To encrypt a message m in plaintext space, pick and compute where c is an element in ciphertext space.
Threshold decryption. A ciphertext c can be jointly decrypted by a set of τ parties (, ) each holding a secret share:
where , is the partial decryption of c computed by party using its secret share , and .
The plaintext space forms the additive group , and the ciphertext space forms the multiplicative group . Let and . The Paillier ( threshold) cryptosystem provides for homomorphic addition, written as , and homomorphic scalar multiplication, written as . A ciphertext can be randomized, denoted as , by computing . Furthermore, denotes where is the multiplicative inverse of in . In the following, and always refer to the encryption function and the decryption function of threshold Paillier, respectively. For convenience, the shared private key and the public key (held by both considered parties) is omitted from notation.
Security against semi-honest adversaries
This paper considers semi-honest, non-adaptive, computationally bounded adversaries [16]. A semi-honest adversary controls a set of corrupted parties which follow the protocol correctly but – in contrast to honest parties – may record all generated random data and received messages. For a non-adaptive adversary, the set of corrupted parties is fixed throughout a protocol execution. The underlying communication channels are assumed to be authentic, i.e., the channel can be tapped but the transferred data is resistant to tampering. In the context of two-party protocols, the adversary controls at most one single party.
A formal definition of security comprising privacy and correctness requires defining the term computational indistinguishability:
(Computational indistinguishability).
Let U be a countable set and let , be two probability ensembles. X and Y are said to be computationally indistinguishable, denoted , if for every probabilistic polynomial time distinguisher and every there exists a negligible function negl such that
where denotes that runs in polynomial time in u on an input value chosen according to .
Let be a two-party functionality where provides private input and learns output ().3
Note that depending on , some additional input like a security parameter or random bits may be required. Such kind of additional input is assumed to be implicitly given.
Let π be a two-party protocol implementing functionality . The view of during an execution of π on input and security parameter k is denoted as , where represents ’s internal random tape and represents the jth message received during a protocol execution of π. The output of protocol π on input and security parameter k is referred to as .
(Security w.r.t. semi-honest adversaries [16]).
Protocol π securely, i.e., correctly and privately, computes functionality in the presence of a semi-honest adversary if there exist two probabilistic algorithms with running in polynomial time in security parameter k such that
In the following, the security parameter k is assumed to be implicitly given and sufficiently large. The security parameter is omitted from the remaining considerations for convenience. is called a simulator. The values which simulates on input and to generate a view which is computationally indistinguishable from are enclosed by square brackets to distinguish between simulated values and those occurring during a real protocol execution. If not stated otherwise, sets . Note that a simulator for an honest party is implicitly determined by the corresponding protocol.
To facilitate the security proof of a protocol π implementing functionality where π consists of a finite set of sub-protocols securely computing functionalities in the semi-honest model, it is possible to apply the Sequential Composition Theorem [9] which states that if securely computes in the semi-honest model where the sub-protocol calls of π are replaced by calls to a trusted third party computing , then π securely computes in the semi-honest model. In this context, sequential means that the calls of the trusted party proceed sequentially (instead of concurrently).
To prove the security of the protocols, this paper proceeds in two steps as it is done in [2]. First, it needs to be shown that . This step is referred to as Correct Output Distribution (COD). A second step then proves that of a party can be simulated under consideration of the given outputs of both parties such that and the corresponding simulated view are computationally indistinguishable, referred to as Correct View Distribution (CVD). If the output of is encrypted with a semantically secure cryptosystem, as it is the case for Paillier, it additionally needs to be proved that the distribution of the decrypted output value of π is computationally indistinguishable from the distribution of the decrypted output prescribed by the definition of functionality . This step is referred to as Correct Distribution of Decrypted Output (CDDO). Note, that this step is necessary to assure the correctness of π and that it is not captured by Definition 4, because does not imply the correctness of π when π provides encrypted output.
To refer to a concrete functionality or protocol π, the templates and are used where is an implementation of with name describing the functionality to be computed and indicating the underlying SMPC approach (H for homomorphic encryption, S for secret sharing). The notation indicates that all parties have common (encrypted) input and output for homomorphic encryption based protocols. For secret sharing based protocols the notation is used instead of . If not stated otherwise, for homomorphic encryption based protocols, input integers are elements in while for secret sharing based protocols input integers are elements in . For achieving simulatability of the novel protocols, it is required that in case of homomorphic encryption based protocols, each sub-protocol returns a randomized output and in the case of secret sharing based protocols, each sub-protocol returns a reshared output. This can be achieved by utilizing the operation introduced for secret sharing and homomorphic encryption in Sections 2.2 and 2.3: Calling before providing the protocol output assures that the encrypted or shared output is independent of the protocol input. Thus, the output of sub-protocols can be simulated by uniformly sampling random values from the corresponding domains.
Building blocks
This section reviews a number of functionalities that serve as building blocks for the novel privacy-preserving interval protocols. First, functionalities known from literature which specify integer operations for comparison and selection are introduced. Next, this section presents two binary operations. One of the latter functionalities is a new building block for efficiently computing two separate XOR operations and combining the results with an AND operation.
Operations for comparison and selection
The following three functionalities have in common that they describe a less than operation on the private input values but differ in the way of providing output.
( (secure comparison (SC) less than (LT))).
Let hold integer and let hold integer as their private inputs. Then, functionality is given by where is a sharing of where indicates whether or not .
( (secure comparison (SC) less than (LT) with shared output (SO))).
Let hold integer and let hold integer as their private inputs. Then, functionality is given by with and such that indicates whether or not ( if and otherwise ).
( (input symmetric (IS) less than (LT) strong conditional oblivious transfer (SCOT))).
Let hold integer and a ciphertext and let hold integer and a ciphertext . Then, functionality is given by where is a fresh encryption of if and is a fresh encryption of otherwise.
Given the functionalities based on a less-than operation, it is straight-forward to derive the corresponding greater-than (GT), less than or equal (LTE), and greater than or equal (GTE) variants. For example for the corresponding variants are given as follows: , , and .
A protocol, , implementing which is secure in the semi-honest model has been proposed, e.g., in [10]. Protocols implementing functionalities and have been introduced and proved secure in the semi-honest model in [36] and [13], respectively. It is important to note that the protocol in [36] differs from the one proposed in [25] in that it allows for comparing encrypted values where no party needs to know the corresponding plaintexts. The new protocols presented in Sections 4.4 and 4.5 use this property.
An additional functionality, referred to as , enables the selection of a random data entry satisfying a specific condition out of a given set of data entries. A homomorphic encryption based protocol implementing functionality has been introduced and proved secure in the semi-honest model in [35].
( (conditional (C) random (R) selection (S))).
Let and both hold m vectors of length n of integers (, ). Let be an encrypted binary indicator vector and let be data vectors (). Then, functionality is given by with () where assuming .
Note that a secret sharing variant of which operates on shared vectors instead of encrypted vectors can be constructed analogously to the protocol presented in [35] using protocols for oblivious shuffling and conditional swapping, both known from literature (e.g., [20,37]), as basic building blocks.
Binary operations
The following two functionalities describing binary operations can be used as building blocks in homomorphic encryption based SMPC protocols.
( (exclusive (X) OR)).
Let hold bit and hold bit . Then, functionality is given by .
( (XOR-AND-XOR)).
Let hold two bits and let hold two bits . Then, functionality is given by with .
In designing a protocol implementing functionality (see Protocol 1), it is crucial to observe that the computation of can be written as
for computing
: ,
: ,
1. ,
2.
3.
4.
5. outputλ
6. output
Simulator for
Input of : ,
:
1. Select .
2. Set .
3. Select .
4. Set .
Output of :
Lethold two bitsand lethold two bits. Then, protocolsecurely computes functionalityin the semi-honest model.
(CDDO.) From Eq. (1) follows directly that the decrypted output of corresponds to and thus is correctly distributed.
(COD.) Since is randomized by the last homomorphic addition of Step 4 of Protocol 1 and the underlying cryptosystem is semantically secure, both distributions and are computationally indistinguishable, where and .
(CVD.) Since does not receive any message from during the participation in , a simulator which generates a transcript which is – conditioned on the parties’ outputs – computationally indistinguishable from merely has to simulate the three random numbers drawn by to compute the encryptions of , , and . In constructing a simulator (see Table 1), it is necessary to simulate and the random numbers from which are used by to compute the ciphertexts and (cf. Step 4, Protocol 1). Analogously to , the random numbers used by for encryption can be simulated by selecting two values uniformly at random from . Since the underlying cryptosystem is semantically secure, it suffices for to simulate the learned message by selecting three elements from uniformly at random. Conditioned on the parties’ outputs ( does not have any output), is computationally indistinguishable from the output of . □
Privacy-preserving operations on two intervals
Using the building blocks presented above, the following presents the novel privacy-preserving protocols for various operations on two private intervals (provided by ) and (provided by ) having one of the possible arrangements depicted in Fig. 1. Obviously, the computation, communication, and round complexity of the first four protocols (see Sections 4.1–4.4) are in (for a fixed security parameter). The complexity of the protocol for sampling a random sub-interval within the overlap is discussed more detailed in Section 4.5. For each operation, the respective functionality is formalized and a homomorphic encryption based protocol as well as a secret sharing based protocol are presented. Homomorphic encryption based protocols and their security proofs are discussed in detail. Secret sharing based protocols are presented by describing how to modify the corresponding homomorphic encryption based protocols. A detailed proof of security is provided for the first secret sharing based protocol, while the proofs for the other protocols are only outlined and can be done analogously to the first one.
Possible alignments of two intervals and .
Testing for interval overlap
( (testing (T) for interval (I) overlap (O))).
Let and hold intervals and , respectively. Then, functionality is given by and functionality is given by where indicates whether .
In order to devise a protocol implementing , it is crucial to recognize that two intervals , overlap iff (cf. Fig. 1). Based on this observation, the main idea of the protocols implementing is to utilize secure comparisons and to compute the logical AND operation on the results in a privacy-preserving manner.
Protocol implementing. A protocol based on threshold homomorphic encryption and implementing has to assure that no party learns the intermediate results of the two required comparison operations. Therefore, a secure comparison protocol which provides shared output (see Section 3) is employed such that the output bit of each party can be used in subsequent protocol steps without leaking the result of the comparison (see Protocol 2). In order to obtain the final result , the shared output bits resulting from and have to be combined as . This can be accomplished in a privacy-preserving manner by leveraging protocol (see Section 3).
for checking
:
:
1.
2.
3.
4. output
5. outputλ
Simulator for
Input of : ,
:
1. Select and set and .
2. Set .
3. Set .
Output of :
Protocol implementing. The nature of secret sharing based protocols allows for following a more direct approach to devise a protocol for . First, both parties jointly compute and . The results are combined by computing which constitutes the protocol output. Note that a resharing of in order to obtain an output share which is independent of the input share is not required since this requirement is already achieved by the multiplication operation.
Letandhold intervalsand, respectively. Then, protocol() securely computes functionality() in the semi-honest model.
(.) (CDDO.) The correctness of the distribution of the decrypted output of follows directly from the fact that and thus iff .
(COD.) The output of the last sub-protocol, , called by returns a fresh encryption, , of the computation result which is independent from the input of . Since also constitutes the output of and due to the fact that the underlying cryptosystem is semantically secure, both distributions and are computationally indistinguishable, where and .
(CVD.) First, consider the case where is corrupted. solely has to simulate the sub-protocol calls of , , and . By applying the sequential composition theorem, it suffices for to simulate ’s respective outputs , , and . Since , are uniformly distributed in and independent of the input of and , it suffices for to draw two bits uniformly at random (see Step 1, Table 2). Since is part of the input of the simulator, just sets . Conditioned on the parties’ outputs ( does not have any output), is computationally indistinguishable from the output of . For the case that is corrupted, CVD can be proven analogously except that Step 2 of (see Table 2) has to be omitted and that the view of has to fit () which is obviously satisfied because there exists no computable relationship between and .
(.) (COD.) Let , , , be the input polynomials uniquely determined by , , , , respectively. Furthermore, let , be the polynomials determined by , and let be the output polynomial uniquely determined by . In order to prove COD, it needs to be shown that (i) is a polynomial of degree 1 with and that (ii) iff and otherwise . (i) follows directly from the fact that and define two polynomials of degree 1 and according to the specification of the multiplication of two sharings presented in Section 2.2, is of degree 1 with . In addition, (ii) holds because iff holds and otherwise since at least one of the polynomials , evaluates to 0 for .
(CVD.) In order to prove CVD, the sequential composition theorem is applied and simulator is described; for the case that is corrupted, can be constructed analogously. On input and (), selects , , sets , and sets . Finally, outputs . In , , result from freshly generated polynomials of degree 1 with coefficients uniformly at random drawn from according to the specification of and . Thus, and are uniformly distributed in . Furthermore, and are independent of according to the implementation of the multiplication operation of two shares (cf. Section 2.2).4
Note that it is unnecessary to simulate the view of an additional third party which is consulted to compute the multiplication of two shares because by applying the sequential composition theorem, it suffices to simulate the output of the multiplication protocol without dealing with the internal functioning of the protocol.
It follows that, conditioned on the parties’ outputs, the output of and are computationally indistinguishable. □
Compute the boundaries of the overlap interval
( (overlap (O) interval (I))).
Let and hold intervals and , respectively. Then, functionality is given by and functionality is given by where and if and otherwise .
In order to devise a protocol implementing , it first has to be determined how the relative alignment of and affects the location of the overlap (cf. Fig. 1). Assuming that , the relative alignment of the intervals is determined solely by the relationship between and as well as between and . As a result, the exact boundaries of can be derived as follows:
The essential conclusion which can be drawn from Eqs (2)–(5) is that and .
Protocol implementing. The idea behind is to leverage functionalities and to compute the encrypted boundaries of . However, if , must not learn anything about ’s interval boundaries. Therefore, the parties first invoke an implementation of on and in order to determine where indicates whether the intervals overlap and use this ciphertext in the remaining computation (see Protocol 3). It is important to note that it does not suffice to decrypt and abort in the case that and do not overlap. Otherwise, would learn that there is no overlap which is more than should learn according to Definition 12. Instead, sends to and both parties use homomorphic scalar multiplication to compute , and , , respectively (cf. Protocol 3). As a result, if , values , , , and will be equal to zero and likewise the overlap but without leaking the result to . For the case that , values , , , and remain unchanged by the scalar multiplication and the correct encrypted boundaries of are returned.
Protocol implementing. Protocol can be implemented as follows. First, is computed on and to obtain a shared bit indicating whether . is used to compute , , , and . Next, both parties compute the shared comparison results of and which are used in a joint computation of the protocol output: , .
for computing
:
:
1.
2.
3.
4.
5.
6.
7.
8.
9. output
10. outputλ
Simulator for
Input of : ,
:
1. Select and set .
2. Set .
3. Set .
4. Set .
Output of :
Letandhold intervalsand, respectively. Then, protocol() securely computes functionality() in the semi-honest model.
(.) (CDDO.) The correctness of the distribution of the decrypted output of follows directly from the conclusion drawn from Eqs (2)–(5) and the fact that if then and thus as prescribed by Definition 12.
(COD.) The argument, that the output of is correctly distributed is the same as presented for .
(CVD.) First, consider the case where is corrupted. By applying the sequential composition theorem, it suffices for (see Table 3) to simulate , , and . Since and are part of the input of , it remains to simulate which can be done by selecting an element from uniformly at random. Conditioned on the parties’ outputs ( does not have any output), is computationally indistinguishable from the output of . For the case that is corrupted, has to simulate which can be done as in case of . Besides, fits to ’s output because there exists no computable relationship between them.
(.) (COD.) COD follows from the security proof of because the implementation of follows the design of .
(CVD.) CVD follows from the same argumentation as presented for : By applying the sequential composition theorem, it suffices for a simulator to simulate the outputs of the sub-protocol calls including the multiplication and resharing operations. Since those values are reshared and thus independent of each other, they can be simulated by uniformly sampling random elements from . □
Compute the width of the interval overlap
( (width (W) of the interval (I) overlap (O))).
Let and hold intervals and , respectively. Then, functionality is given by and functionality is given by where .
Protocol implementing. Protocol (see Protocol 4) prescribes that both parties first compute the encrypted boundaries and of by calling where only learns the result. Next, computes the encrypted width of : .
Protocol implementing. First compute followed by performing a local subtraction where constitutes the protocol output.
Letandhold intervalsand, respectively. Then, protocol() securely computes functionality() in the semi-honest model.
(.) (CDDO.) Obviously, the decrypted output of is correctly distributed because the width of results from the difference of the bounds of the overlap interval which are provided by .
(COD.) Since and are fresh encryptions of the bounds of , can be considered as a fresh encryption of which is independent of the input of .
(CVD.) In case that is corrupted, first selects followed by computing as in order to emulate the relationship of , , and in (cf. Table 4). By applying the sequential composition theorem and using the fact that the underlying cryptosystem is semantically secure, it follows that the simulated view is computationally indistinguishable from (conditioned on the parties’ outputs). In case that is corrupted, just outputs and an empty random tape in order to simulate .
(.) (COD.) Since the design of is identical to the design of , COD directly follows from the security of .
(CVD.) Simulating the view of () proceeds analogously to : selects and computes as . Choosing uniformly at random from assures that is uniformly distributed in , too. The argumentation that the output of is computationally indistinguishable from is the same as in the case of . □
Determine if the width of the overlap is above a threshold
().
Let hold interval and hold and threshold value ω. Then, functionality is given by and functionality where indicates whether .
for computing
:
:
1.
2.
3. output
4. outputλ
Simulator for
Input of : ,
:
1. Select and set .
2. Compute .
3. Set .
Output of :
Protocol implementing. First, both parties jointly execute such that obtains the encrypted width of the overlap interval . Second, both parties engage in an execution of followed by jointly computing which returns an encrypted bit to indicating whether (see Protocol 5).
Protocol implementing. Analogously to , a protocol implementing functionality can be constructed by first executing in order to compute a sharing of . Next, it is checked whether by calling . The result of the latter sub-protocol is a shared bit indicating the result of the comparison which constitutes the output of the protocol.
Letandhold intervalsand, respectively, as well as width ω. Then, protocol() securely computes functionality() in the semi-honest model.
(.) (CDDO.) Obviously, indicates whether . Thus, is correctly distributed according to Definition 14.
(COD.) The argument that the output of is correctly distributed is the same as in case of .
(CVD.) simulating a corrupted party is given in Table 5. Since the underlying cryptosystem is semantically secure and is uniformly distributed in as well as independent of the input of , and can be drawn uniformly at random from their corresponding domains. By applying the sequential composition theorem, the simulated view is computationally indistinguishable from (conditioned on the parties’ output). merely selects . Since the protocol output is a fresh encryption of , there is no computable relationship between and . Conditioned on the parties’ outputs, the output of is computationally indistinguishable from .
for checking
:
: , ω
1.
2.
3.
4. output
5. outputλ
Simulator for
Input of : ,
:
1. Select and set .
2. Select and set .
3. Set .
4. Set .
Output of :
(.) (COD.) Since the design of is identical to (for , Steps 2 and 3 of Protocol 5 coincide), COD directly follows from the security of .
(CVD.) Correct view distribution of follows by the same argument as for : By applying the sequential composition theorem, it suffices for (), simulating a corrupted party , to select and set because in and are independent of each other. □
Compute a random sub-interval within the overlap
( (random (R) sub-interval (SI) selection)).
Let and hold intervals and , respectively. Furthermore, let and be publicly known threshold values such that . Then, functionality is given by and functionality is given by where is a randomly selected sub-interval of of width ω.
A homomorphic encryption based protocol with communication and computation complexity in (for a fixed security parameter) implementing , where , has been proposed in [13]. The following presents a new protocol implementing with communication and computation complexity in . The key idea is to encrypt all possible interval widths and then utilize an implementation of functionality (see Section 3) to randomly select a left interval bound such that if is set to , is a random sub-interval of . Note that the communication complexity of conditional random selection dominates the communication complexities of and . Conditional random selection based on homomorphic encryption () has a communication complexity in , whereas the communication complexities of secret sharing-based variants of conditional random selection (including ) are in [35].
Protocol implementing. In protocol implementing functionality (see Protocol 6), both parties first engage in computing the bounds and of by calling and learns the result. Subsequently, creates an encrypted vector containing encryptions of the integers from zero up to followed by the computation of a ciphertext with (cf. Step 3, Protocol 6) and sending the results of the computation to . In Step 5, the parties generate an encrypted indicator vector containing ciphertexts () where indicates whether . In order to generate the entries of , both parties call and obliviously combine their private output bits using protocol . In the next step, the parties execute protocol to obtain where corresponds to an element chosen uniformly at random from and since it is assumed that an overlap of at least width ω exists (cf. Definition 15). In order to obtain a valid left and right bound of , computes and . The resulting interval is a sub-interval of and . Finally, outputs .
Protocol implementing. A secret sharing based protocol implementing can be constructed analogously to . Instead of calling a protocol implementing , it suffices for the secret sharing based protocol to leverage an implementation of . The oblivious XOR operation called in Step 5 of Protocol 6 can be omitted since in contrast to , operates on sharings.
Letandhold intervalsand, respectively, and let ω andbe publicly known threshold values such that. Then, protocol() securely computes functionality() in the semi-honest model.
(.) (CDDO.) In Steps 2–5 of Protocol 6, two encrypted vectors , are constructed such that contains the encryptions of all possible interval widths of and contains boolean values each indicating whether the plaintext of the corresponding entry in is in . Applying on , results in a pair where is an encrypted integer drawn uniformly at random from and is an encrypted indicator of value 1. Computing an encrypted lower interval boundary as and the upper interval boundary as yields an encrypted sub-interval selected uniformly at random from such that the distribution of and is as prescribed by Definition 15.
(COD.) The correct output distribution of follows from the fact that the output values of are fresh encryptions of and because and are fresh encryptions of and .
(CVD.) First, consider the case where is corrupted. (see Table 6) has to simulate ’s random tape , a call of , calls of and , as well as a single call of . From the construction of , , , and the fact that the underlying cryptosystem is semantically secure, it follows that there exists no computable relationship between , , , , , and ’s output from each call of . Thus, ’s random tape can be simulated by selecting values uniformly at random from of which values are implicitly used in to build (Step 2, Protocol 6) and one value to compute an encryption of ω (Step 3, Protocol 6). By applying the sequential composition theorem, it suffices for to simulate ’s output of , , and by selecting , , each , and the entries of uniformly at random from their corresponding domains, as justified above. In order to simulate the output of , has to consider the relationship between , and in : has to be emulated as . By contrast, can be simulated as . Conditioned on the parties output, is computationally indistinguishable from the output of . In turn, selects , , each , and (). Since there is no computational relationship between the view of and the output of , the output of is computationally indistinguishable from (conditioned on the parties’ outputs).
for selecting a random sub-interval of width ω from
: , ω,
: , ω,
1.
2.
3.
4.
5. fortodo
6.
7.
8.
9. output
10. outputλ
Description of simulator for
Input of : , , ω,
:
1. Select and set , .
2. Select () and set , .
3. For to :
3.1. Select , set .
3.2 Select , set .
4. Set and .
5. Compute , set .
6. Select and set .
Output of :
(.) (COD.) The design of is identical to the design of (for , both instructions of Step 5 of Protocol 6 coincide). Thus, the correct output distribution of follows from the security of .
(CVD.) The simulation of the view of a corrupted party for follows the same argument as presented for . The learned shares are independent of each other and thus can be simulated by uniformly sampling from . As for , the only exception is the correlation between , , and which can be simulated by () as . □
Performance evaluation
This section provides a comprehensive evaluation of the novel privacy-preserving two-party interval operations w.r.t. run-time (duration of a protocol execution) and network performance (cumulated bits communicated during a protocol execution). The goal of the performance evaluation is to determine the impact of the protocols’ input parameters (key length in case of homomorphic encryption, field size in case of secret sharing) on the one hand and the implementation approach on the other hand. The homomorphic encryption based protocols are implemented on top of an extension of the SMC-MuSe Framework introduced in [27], while the secret sharing based protocols were implemented using the SEPIA framework [8]. The SMC-MuSe Framework [27] is implemented in Java, utilizes the Paillier cryptosystem, and provides privacy-preserving operations on multisets. The authors of this paper extended this framework to support standard data types and implemented basic functionalities which are useful in the SMPC context, e.g., secure bit and integer operations and an oblivious transfer. SMC-MuSe supports arbitrary key lengths for the Paillier cryptosystem. SEPIA is a Java based framework using Shamir’s secret sharing. In addition to a set of basic privacy-preserving arithmetic operations, SEPIA allows for the implementation of novel building blocks. A specific characteristic of SEPIA is that it distinguishes between two types of parties: input peers and privacy peers. Input peers solely provide the privacy peers with previously shared input data, while the privacy peers perform the actual computation steps and compute the output which is returned to the input peers. In contrast to SMC-MuSe, SEPIA is restricted to operate on integers of at most 64 bits.
In the first place, the performance tests are geared to comprehensively evaluate the two SMPC approaches to implement privacy-preserving interval operations on an individual basis. However, the run-time and the network performance of both approaches w.r.t. the expected bit size of the interval boundaries are also compared. Recognizing the differences in implementation environment and setup, the evaluation is not meant to lead to general comparative statements for superiority of one approach vs. the other.
Test environment
While the setting for the implementation of the homomorphic encryption based interval protocols comprises two processes each running a single party, the setting for the secret sharing based protocols implemented with SEPIA requires two input peers and three privacy peers, since the multiplication of sharings is required in each of the novel protocols (see discussion in Section 2.2). For both implementation variants, the communication takes place via TCP/IP loopback. All tests were executed on a Dell OptiPlex 980 with an Intel i7 CPU at 2.93 GHz and 16 GB RAM running Ubuntu Linux 14.04.
The essential input parameter influencing the performance of the homomorphic encryption based protocols is the key length. The performance of the secret sharing based protocols depends on the field size which in turn determines the maximum bit size of the integer interval boundaries (which is relatively low compared to the homomorphic encryption based variants supporting boundaries in the order of magnitude of the key length) that can be used as input to the protocols. Therefore, the protocols implemented in SEPIA are evaluated for different field sizes of 32, 48, and 64 bit.
Run-time (left) and network performance (right) of , , , .
Run-time (left) and network performance (right) of , , , .
A direct comparison between both approaches is based on the bit length of the bounds of the input intervals. More precisely, for interval boundaries below 32, 48, and 64 bit, respectively, the performance results of the secret sharing based protocols are compared with the results of the homomorphic encryption based protocols for a fixed key size of 2048 bit.5
NIST recommends an RSA modulus (and thus a Paillier modulus [18]) of at least 2048 bit [29].
Note that for a fixed key length/field size, the interval bounds can be chosen arbitrarily from the corresponding plaintext space/field without affecting the protocol performance. For each test instance, 40 protocol executions were averaged.
Measurement results and discussion
The plots presented in Fig. 2 (resp., Fig. 3) show the correlation between the key length (resp., field size) and the run-time as well as the network performance for the implementations of , , , and (resp., , , , and ). The performance evaluation for and (see Fig. 4) also considers parameter which has an impact on the computation and communication complexity of both protocols. In Fig. 3, the run-time (resp., traffic) for the homomorphic counterparts for 2048 bit keys are additionally plotted in order to allow a comparison between both SMPC approaches based on the maximum permissible bit lengths of the interval boundaries. Note that due to the similarity of protocols and (resp., and ) their performance is virtually identical.
Run-time (left) and network performance (right) of and .
Run-time. The run-time of the homomorphic encryption based protocols , , , and is below 7.5 seconds for key lengths of 1024 and 2048 bit. Protocol even runs in the order of 100 milliseconds. Changing the key length from 2048 bit to 4096 bit implies an increase of the run-time by a factor of eight. The corresponding protocols based on secret sharing have a run-time between 6.5 and 33 seconds depending on the underlying field size. A doubling of the field size results in an increase of the run-time by a factor of approximately 1.7. Comparing the homomorphic encryption based protocols (for the fixed key size of 2048 bit) and the secret sharing based counterparts with regard to the supported bit length of the interval boundaries, it holds that , , , and run significantly faster (see Fig. 3, left plot). The maximum difference was measured for 64 bit interval bounds where runs faster than by a factor of approximately 4.4.
The operation of randomly computing a sub-interval from a given private overlap interval is more complex than the other presented interval operations. The run-times of ranges from 20 seconds to 4.5 minutes depending on and the underlying field size. One notes that for the field size only has a minor impact on the run-time of the protocol as can be seen in Fig. 4. This does not hold for where the run-times range from 4 seconds to 5 hours (run-times above an hour only occur for 4096 bit keys and ). Comparing (for the fixed key size of 2048 bit) and reveals that for protocol runs significantly faster for all considered bit lengths of the interval boundaries (see Fig. 4). This result is due to the fact that the implementation of vector shuffling which is used in sub-protocol of (in order to privately compute and ) is based on matrix multiplications which profit from SEPIA’s feature to parallelize a set of independent multiplications of shares (see [8]). The magnitude of this advantage increases with the size of which is responsible for the matrix dimension in .
Network performance. For , , , and , the cumulated amount of data is between 4 and 93 kB (depending on the protocol and the key size), while the corresponding secret sharing based protocols require between 700 kB and 3.5 MB (depending on the protocol and the field size). The amount of communicated data for the implementations of and is much higher: Depending on the input parameters, the implementation of causes 110 kB–45 MB cumulated network traffic, while the implementation of requires 3 MB–300 MB. Comparing the homomorphic encryption based protocols (for the fixed key size of 2048 bit) and the secret sharing based counterparts with regard to the supported bit length of the interval boundaries, the performance measurements revealed that the communication overheads of the secret sharing based protocols are significantly higher. As can be seen in Fig. 3, the communication overhead of the homomorphic encryption based protocols for 2048 bit keys is below 50 kB while the overhead for the secret sharing based protocols ranges from 700 kB (for , 32 bit) to 3.5 MB (for , 64 bit). A similar tendency can be observed in Fig. 4. The difference between both implementation variants w.r.t. the network performance can be attributed to the more complex party setting of SEPIA (which implies additional communication effort) and the fact that each presented secret sharing based protocol involves multiplications of two sharings (which cause interaction and the involvement of a third privacy peer). Furthermore, the communication-intensive initialization phase of SEPIA which requires the sharing of all input values is not necessary in SMC-MuSe since the encryptions of the input data can be computed locally.
Considering the network performance of the implemented privacy-preserving interval operations, the homomorphic encryption based protocols clearly outperform the secret sharing based protocols. With regard to the run-time measurements a similar unambiguous statement cannot be made. Here, the evaluation results depend on the building blocks used in the protocols. While the run-times of homomorphic encryption based protocols benefit from the fact that a single party can perform basic operations on ciphertext on its own (e.g., allowing to implement an efficient shuffling operation), the secret sharing based protocols profit from the fact that the bit length of the secrets the parties operate on can be adapted to the application scenario which generally is not possible for homomorphic encryption. However, secret sharing based protocols may suffer from the communication-intensive resharing operation (using homomorphic encryption, a single party can rerandomize a ciphertext) and from the fact that for the two-party case a third privacy peer is required to multiply two shared values.
Conclusion and future work
This paper introduced novel privacy-preserving protocols for various operations on two integer intervals which can readily be applied to a variety of tasks where privacy-preserving solutions are required. The novel protocols are designed based on homomorphic encryption and secret sharing. The experiments revealed that the homomorphic encryption based protocols perform better in terms of communication. Comparing the protocols for both approaches in terms of run-time, it could be determined that the evaluation results crucially depend on the utilized building blocks and how suitable the underlying SMPC approach is to efficiently realize these building blocks.
Going forward, we plan to extend the protocols to provide security against malicious (i.e., active) adversaries. Generally, a straight-forward augmentation of a protocol providing security in the semi-honest model with security against malicious adversaries (by utilizing zero-knowledge proofs of knowledge in order to enforce semi-honest behavior) is possible. However, this approach often entails a considerable overhead, making the resulting protocols impractical. While it seems likely that the design approaches of some of the privacy-preserving interval protocols can be reused, it is expected that a completely new design approach is needed for the more complex functionality of computing a random sub-interval within the overlap of a private interval in order to obtain a practical implementation secure against malicious adversaries. This is due to the fact that for the current implementations it is not clear how to (efficiently) combine existing zero-knowledge proofs in order to prevent malicious behavior.
Footnotes
Acknowledgments
In part, this work was supported by DFG Award ME 3704/4-1 and NSF Award CCF 1018616.
References
1.
R.Agrawal, R.Srikant and D.Thomas, Privacy preserving OLAP, in: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data, ACM, 2005, pp. 251–262. doi:10.1145/1066157.1066187.
2.
G.Asharov and Y.Lindell, A full proof of the BGW protocol for perfectly-secure multiparty computation, Report 2011/136, IACR Cryptology ePrint Archive, 2011, available from: http://eprint.iacr.org/2011/136.
3.
G.R.Blakley, Safeguarding cryptographic keys, in: Proceedings of the AFIPS National Computer Conference, Vol. 48, 1979, pp. 313–317.
4.
D.Bogdanov, Sharemind, programmable secure computations with practical applications, PhD thesis, University of Tartu, 2013.
5.
D.Boneh and B.Waters, Conjunctive, subset, and range queries on encrypted data, in: Theory of Cryptography: 4th Theory of Cryptography Conference, TCC 2007, Springer, Berlin, 2007, pp. 535–554. doi:10.1007/978-3-540-70936-7_29.
6.
E.F.Brickell, Some ideal secret sharing schemes, in: Advances in Cryptology – EUROCRYPT ’89: Workshop on the Theory and Application of Cryptographic Techniques, Springer, Berlin, 1990, pp. 468–475.
7.
M.Burkhart, Enabling collaborative network security with privacy-preserving data aggregation, PhD thesis, ETH, Zurich, 2011.
8.
M.Burkhart, M.Strasser, D.Many and X.Dimitropoulos, SEPIA: Privacy-preserving aggregation of multi-domain network events and statistics, in: Proceedings of the 19th USENIX Conference on Security, USENIX Association, 2010.
9.
R.Canetti, Security and composition of multi-party cryptographic protocols, Journal of Cryptology13(1) (2000), 143–202. doi:10.1007/s001459910006.
10.
I.Damgard, M.Fitzi, E.Kiltz, J.Nielsen and T.Toft, Unconditionally secure constant-rounds multi-party computation for equality, comparison, bits and exponentiation, in: Theory of Cryptography: 3rd Theory of Cryptography Conference, TCC 2006, Springer, Berlin, 2006, pp. 285–304. doi:10.1007/11681878_15.
11.
E.De Cristofaro, A.Durussel and I.Aad, Reclaiming privacy for smartphone applications, in: IEEE International Conference on Pervasive Computing and Communications (PerCom), 2011, pp. 84–92.
12.
E.De Cristofaro and G.Tsudik, Practical private set intersection protocols with linear complexity, in: Financial Cryptography and Data Security: 14th International Conference, Springer, Berlin, 2010, pp. 143–159.
13.
F.Foerg, D.Mayer, S.Wetzel, S.Wueller and U.Meyer, A secure two-party bartering protocol using privacy-preserving interval operations, in: Twelfth Annual International Conference on Privacy, Security and Trust (PST), 2014, pp. 57–66.
14.
P.-A.Fouque, G.Poupard and J.Stern, Sharing decryption in the context of voting or lotteries, in: Financial Cryptography: 4th International Conference, Springer, Berlin, 2001, pp. 90–104. doi:10.1007/3-540-45472-1_7.
15.
M.J.Freedman, K.Nissim and B.Pinkas, Efficient private matching and set intersection, in: Advances in Cryptology – EUROCRYPT 2004: International Conference on the Theory and Applications of Cryptographic Techniques, Springer, Berlin, 2004, pp. 1–19. doi:10.1007/978-3-540-24676-3_1.
16.
O.Goldreich, Foundations of Cryptography: Volume 2, Basic Applications, Cambridge University Press, 2009.
17.
B.Hore, S.Mehrotra and G.Tsudik, A privacy-preserving index for range queries, in: Proceedings of the Thirtieth International Conference on Very Large Data Bases, VLDB Endowment, 2004, pp. 720–731.
18.
C.Jost, H.Lam, A.Maximov and B.Smeets, Encryption performance improvements of the Paillier cryptosystem, Report 2015/864, Cryptology ePrint Archive, 2015, available from: http://eprint.iacr.org/2015/864.
19.
J.Katz and Y.Lindell, Introduction to Modern Cryptography, Chapman & Hall/CRC, 2007.
20.
S.Laur, J.Willemson and B.Zhang, Round-efficient oblivious database manipulation, in: Information Security: 14th International Conference, ISC 2011, Springer, Berlin, 2011, pp. 262–277. doi:10.1007/978-3-642-24861-0_18.
21.
A.X.Liu and F.Chen, Collaborative enforcement of firewall policies in virtual private networks, in: Proceedings of the Twenty-Seventh ACM Symposium on Principles of Distributed Computing, ACM, 2008, pp. 95–104. doi:10.1145/1400751.1400766.
22.
M.E.Locasto, J.J.Parekh, A.Keromytis and S.J.Stolfo, Towards collaborative security and P2P intrusion detection, in: Proceedings from the Sixth Annual IEEE SMC Information Assurance Workshop, 2005, pp. 333–339. doi:10.1109/IAW.2005.1495971.
23.
D.Mayer, Design and implementation of efficient privacy-preserving and unbiased reconciliation protocols, PhD thesis, Stevens Institute of Technology, 2012.
24.
D.A.Mayer, D.Teubert, S.Wetzel and U.Meyer, Implementation and performance evaluation of privacy-preserving fair reconciliation protocols on ordered sets, in: Proceedings of the First ACM Conference on Data and Application Security and Privacy, ACM, 2011, pp. 109–120.
25.
A.E.Nergiz, M.E.Nergiz, T.Pedersen and C.Clifton, Practical and secure integer comparison and interval check, in: IEEE Second International Conference on Social Computing, 2010, pp. 791–799.
26.
G.Neugebauer, Design and implementation of efficient multi-party protocols for privacy-preserving reconciliation, PhD thesis, RWTH Aachen University, 2014.
27.
G.Neugebauer and U.Meyer, SMC-MuSe: A framework for secure multi-party computation on multisets, Technical Report AIB-2012-16, RWTH Aachen, 2012.
28.
T.Nishide and K.Ohta, Multiparty computation for interval, equality, and comparison without bit-decomposition protocol, in: Public Key Cryptography – PKC 2007: 10th International Conference on Practice and Theory in Public-Key Cryptography, Springer, Berlin, 2007, pp. 343–360. doi:10.1007/978-3-540-71677-8_23.
29.
NIST, SP 800-57 Part 1 Revision 3: Recommendation for key management, 2012.
30.
P.Paillier, Public-key cryptosystems based on composite degree residuosity classes, in: Advances in Cryptology – EUROCRYPT ’99: International Conference on the Theory and Application of Cryptographic Techniques, Springer, Berlin, 1999, pp. 223–238.
31.
A.Shamir, How to share a secret, Communications of the ACM22 (1979), 612–613. doi:10.1145/359168.359176.
32.
E.Shi, J.Bethencourt, T.-H.H.Chan, D.Song and A.Perrig, Multi-dimensional range query over encrypted data, in: IEEE Symposium on Security and Privacy, 2007, pp. 350–364.
33.
T.Veugen, F.Blom, S.J.A.de Hoogh and Z.Erkin, Secure comparison protocols in the semi-honest model, Journal of Selected Topics in Signal Processing9(7) (2015), 1217–1228. doi:10.1109/JSTSP.2015.2429117.
34.
L.Wang, Y.Li, D.Wijesekera and S.Jajodia, Precisely answering multi-dimensional range queries without privacy breaches, in: Computer Security – ESORICS 2003: 8th European Symposium on Research in Computer Security, Springer, Berlin, 2003, pp. 100–115. doi:10.1007/978-3-540-39650-5_6.
35.
S.Wueller, U.Meyer, F.Foerg, S.Wetzel and U.Meyer, Privacy-preserving conditional random selection, in: Thirteenth Annual Conference on Privacy, Security and Trust (PST), 2015, pp. 44–53.
36.
S.Wueller, U.Meyer, F.Foerg, S.Wetzel and U.Meyer, Privacy-preserving conditional random selection – Extended version, 2015.
37.
B.Zhang, Generic constant-round oblivious sorting algorithm for MPC, in: Provable Security: 5th International Conference, ProvSec 2011, Springer, Berlin, 2011, pp. 240–256. doi:10.1007/978-3-642-24316-5_17.