You are currently viewing a new version of our website. To view the old version click .
Entropy
  • Article
  • Open Access

16 September 2023

A Novel Edge Cache-Based Private Set Intersection Protocol via Lightweight Oblivious PRF

,
,
,
and
College of Software, Henan Polytechnic University, Jiaozuo 454000, China
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Information-Theoretic Privacy in Retrieval, Computing, and Learning

Abstract

With the rapid development of edge computing and the Internet of Things, the problem of information resource sharing can be effectively solved through multi-party collaboration, but the risk of data leakage is also increasing. To address the above issues, we propose an efficient multi-party private set intersection (MPSI) protocol via a multi-point oblivious pseudorandom function (OPRF). Then, we apply it to work on a specific commercial application: edge caching. The proposed MPSI uses oblivious transfer (OT) together with a probe-and-XOR of strings (PaXoS) as the main building blocks. It not only provides one-sided malicious security, but also achieves a better balance between communication and computational overhead. From the communication pattern perspective, the client only needs to perform OT with the leader and send a data structure PaXoS to the designated party, making the protocol extremely efficient. Moreover, in the setting of edge caching, many parties hold a set of items containing an identity and its associated value. All parties can identify a set of the most frequently accessed common items without revealing the underlying data.

1. Introduction

Co-creation and sharing gained significance in the transition from the era of information technology to the era of digital technology. While information sharing brings convenience, the risk of privacy breaches also rises. The private set intersection (PSI) protocol is a widely used approach to distributed set computation. It is devoted to the joint intersection calculation of data from two or more parties. The PSI protocol guarantees that all parties can collaboratively calculate the intersection of the sets without disclosing anything beyond that intersection. PSI plays an important role in improving pattern matching [1], private contact discovery [2], advertisement conversion rate [3], and edge caching [4]. Edge caching is a key technology for communication networks. In order to utilize cache resources more efficiently, individual operators tend to keep their public items in a shared cache that can be accessed by all parties. However, since the cache is shared among multiple parties, these parties aim to identify the set of most frequently visited common data items and add them to the network edge cache. Their objective is to achieve this without revealing the actual underlying data. This is known as the multi-party shared cache problem, where determining the common term is a typical private set intersection problem.
Most of the current efficient PSI protocols are built on OT [5,6,7]. The OT-based PSI protocols offer greater advantages in terms of communication and computation when compared with PSI based on public key encryption [8,9] and PSI based on a garbled circuit [10,11,12]. Efficient OT extension techniques allow parties to generate many OT protocol instances at a low computational cost through a few public key operations. Chase et al. [5] implemented a two-party PSI protocol with one-sided malicious security. This protocol uses OT and a multi-point OPRF to achieve a good balance between computational and communication overhead. The protocol can only interact between two parties, and multiple runs are required to accomplish the intersection computation with multiple parties involved. Kavousi et al. [13] proposed a MPSI based on OT and multi-point OPRF. This protocol can only be implemented in the semi-honest model. Inbar et al. [14] presented an enhanced semi-honest MPSI protocol based on OT and a garbled Bloom filter (GBF). However, the protocols [13,14] require the transmission of the GBF for communication, creating a certain degree of communication burden.
In response to the above issues, we constructed an MPSI protocol for malicious actors that combines a PaXoS and multi-point OPRF based on OT. The protocol relies only on symmetric keys, hashing, coding techniques, and bitwise operations, thus providing good computational performance. This protocol can solve the problem of privacy-preserving edge cooperative cache sharing by making a simple transformation of this protocol. We show the following contributions:
  • Multi-party PSI protocol: We propose a specifically efficient MPSI protocol utilizing OT and a PaXoS. The PaXoS can be seen as a corresponding Encode/Decode algorithm achieving a constant rate. Therefore, our protocol has good computational performance. The protocol has low communication overhead since the clients only need to send a data structure. Theoretical analysis shows that the protocol leads to a better balance between communication and computational cost.
  • Security against malicious clients: We present that our protocol uses the data structure PaXoS to hide the key during encoding to resist malicious adversaries, which can achieve one-sided malicious security against the clients with almost no additional overhead. At the same time, we prove that the protocol can also resist any possible collusion attack from malicious clients.
  • Multi-party cooperative cache: Our MPSI protocol can be applied to edge caching scenarios by using cuckoo hashing and simple hashing. The protocol supports having data associated with each input and the extension of payloads to multi-party. In a multi-party cooperative cache (MPCCache) setting, the MPCCache protocol allows parties to compute a sum depending on the data associated with the intersection items. Compared with [4], our MPCCache protocol eliminates the computing burden associated with polynomial interpolation and improves computational efficiency.

3. Preliminaries

3.1. Notions

The computational and statistical security parameters are denoted by  λ  and  σ [ n ]  stands in for the set  { 1 , , n } R  indicates uniformly random selection. The notation  | |  denotes concatenation between strings.  { 0 , 1 } *  denotes the set of strings consisting of 0 and 1, where * means that the strings in the set can be of any length. We use  C  to indicate that the real world is indistinguishable from the ideal world. We denote with  v [ i ]  the i-th element of a vector  v  of length  l . The i-th column vector  i [ n ]  of the matrix  M n × m  is denoted by the symbol  M i . The Hamming weight of the binary string  x  is represented by  | | x | | H .

3.2. One-Sided Malicious Security

One-sided malicious security [5] is a security property found in cryptographic protocols wherein one party is allowed to engage in arbitrary malicious behavior in an attempt to compromise security while the other parties follow specified behavioral guidelines. In this context, only the targeted party is vulnerable to malicious action, whereas the other parties maintain their assigned roles and responsibilities. Our MPSI protocol achieves unilateral malicious security against the clients, as they are considered as a whole. We further prove that the proposed MPSI is secure against malicious clients.

3.3. Security Model

MPSI is a unique instance of secure multi-party computation (MPC). We adhere to the MPC standard security definition. The ideal functionality of MPSI is defined in Figure 1.
Figure 1. Ideal functionality of MPSI  F MPSI .
The security models [24] of secure multi-party computation are divided into semi-honest and malicious models. For the semi-honest model, an adversary can completely obey the protocol execution process, yet might record all the data in the protocol execution process and try to learn more from the data generated during the protocol execution process. The adversary under the malicious model can not only infer the sensitive information through the data of the protocol process but also refuse to participate in the protocol, alter the private input set information, or prematurely stop the protocol from running. Our protocol can achieve one-sided malicious security.
Definition 1.
(Malicious security against the clients) If there is a PPT adversary  A  who might unilaterally depart from the protocol in the real world, there exists a PPT adversary  S  who could modify the input to the ideal functionality and terminate the output in an ideal world. Then, the protocol Π can protect from malicious clients, such that for each input  X 1 , , X n :
Real A X 1 , , X n c Ideal S F X 1 , , X n .

3.4. Oblivious Transfer

Rabin et al. [25] proposed a crucial cryptographic primitive OT. In a 1-out-of-2 OT configuration, the receiver can have a choice bit  b { 0 , 1 } , while the sender can have input strings  ( m 0 , m 1 ) . The OT acts to prevent the receiver from knowing nothing regarding  m 1 b  and prevent the sender from learning anything about  b . OT necessitates costly public-key operations. Ishai et al. [26] described an OT extension technique that permits many OT executions at the cost of doing few public-key procedures. We can use the instantiation OT in [15]. The ideal functionality of OT is defined in Figure 2.
Figure 2. Ideal functionality of OT  F OT .

3.5. PaXoS

The following is a way to encode key-value mapping into a brief data structure using a PaXoS [19]. The associated Encode/Decode methods are frequently more convenient to describe when describing a PaXoS than the  u  mapping.
Encode ( ( x 1 , y 1 ) , , ( x t , y t ) ) : Given  t  items  ( x i , y i ) , where  x i { 0 , 1 }  and  y i { 0 , 1 } w , indicate via  M  the  t × m  matrix where the i-th row is  u ( x i ) . Note that  u ( x )  is the result of using the mapping  u  to  x . It is possible to find a data structure (matrix)  D = ( d 1 , , d m ) T ( { 0 , 1 } w ) m  satisfying  M × D = ( y 1 , , y t ) T . In particular, the subsequent linear system of equations is fulfilled when the  u ( x i ) ’s are linearly independent:
u ( x 1 ) u ( x 2 ) u ( x t ) × d 1 d 2 d m = y 1 y 2 y t .
Decode ( D , x ) : Given  D ( { 0 , 1 } w ) m  and  x { 0 , 1 } , we can extract the corresponding “value” via  y = u ( x ) , D = def j : v ( x ) j = 1 d j .

3.6. Multi-Point OPRF

Chase [5] presented a PSI protocol for two parties based on multi-point OPRF. The sender chooses a pseudorandom seed  s R 0 , 1 w , and the receiver computes a pseudorandom function  v = F k ( x i )  based on its set elements to construct two matrices:  A m × w  and  B m × w . For each  x i X 1 , the corresponding bits in matrices are the same, while others are different. The sender obtains a matrix  C m × w  depending on seed  s  and runs  w  OTs with the receiver. Each column of the matrix is either  A j  or  B j  for all  j [ w ] . Then, the sender computes  v = F k ( x i )  according to each element  x i X 2  to obtain all the resulting OPRFs  φ = H C 1 [ v [ 1 ] | | | | C w [ v [ w ] ]  and sends them to the receiver. Eventually, the receiver can find the intersection of the two sets based on its computed OPRF value.

3.7. Hamming Correlation Robustness

Under the assumption of correlation robustness for the underlying hash function, our MPSI structure is demonstrated to be secure.
Definition 2.
(Hamming Correlation Robustness [5]) If the distribution produced by the sampling of  s { 0 , 1 } n  at random is pseudorandom for  a 1 , , a m ,  b 1 , , b m { 0 , 1 } n , and has  | | b i | | H d  for each  i [ m ] ,  H  is d-Hamming correlation robust. Namely:
H a 1 [ b 1 · s ] , , H a m [ b m · s ] c F a 1 [ b 1 · s ] , , F a m [ b m · s ] ,
wheredenotes bitwise-AND and bitwise-XOR, respectively, and  F  is a random function.

3.8. Cuckoo Hashing and Simple Hashing

Hash technology is one of the essential tools for optimizing communication and computational complexity in PSI protocols. There are two commonly used construction methods for hash technology: simple hashing and cuckoo hashing [10]. Simple hashing can map elements to  k  positions in a hash table using  k  hash functions, with each bucket being capable of storing multiple elements. Cuckoo hashing can map elements to a specific location in a hash table using a hash function, and its basic idea is to use multiple hash functions to handle collisions. When collisions occur, cuckoo hashing evicts the element occupying the original position, which can be rehomed to alternative positions. If alternative positions are already occupied, the process repeats until all elements can find their homes. Typically, cuckoo hashing and simple hashing are combined to achieve optimal results in PSI protocols.

4. Our MPSI Protocol

4.1. Overview

In this section, we show the MPSI protocol. A couple of parties  P 1 , , P n  with respective private input sets  X 1 , , X n  desire to collectively compute  X 1 X n  without disclosing any more information. Note that we regard  t  as the set sizes for parties,  P n  as the leader, and  P i [ n 1 ]  as the client. The system model of the MPSI protocol is shown in Figure 3.
Figure 3. System model.
P n  constructs a random matrix  A m × w  and chooses strings for  P i [ n 1 ]  to generate the  A j i R { 0 , 1 } m  and sets  A j n = A j 1 A j n 1 , where  j [ w ] . For each  i [ n 1 ] , from its input elements,  P n  constructs unique matrices  B m × w P n  first initializes a matrix  E m × w  to all 1’s. For  x X n  computing  v = F k ( H 1 ( x ) ) B m × w  is designed such that  E j [ v [ j ] ] = 0  for all  j [ w ] , and hence  A j i [ v [ j ] ] = B j i [ v [ j ] ] = C j i [ v [ j ] ]  for all  i [ n 1 ]  and  j [ w ] . Then,  P i [ n 2 ]  locally encode a data structure PaXoS of their input sets  D i Encode x , C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ]  using the entries of the received matrix and send  D i  to  P n 1 P n 1  decodes all the  D i . Then, they compute and sends the OPRF values  φ = H 2 i = 1 n 2 Decode ( D i , x ) C 1 n 1 [ v [ 1 ] ] | | | | C w n 1 [ v [ w ] ]  to  P n . After receiving the OPRF values,  P n  computes  φ = H 2 C 1 n [ v [ 1 ] ] | | | | C w n [ v [ w ] ]  according to its input set, which allows  P n  to find the intersection. This implies that, if  x I , the hash function’s input from  P n 1  and  P n  will be equal. While the output of the PRF would be pseudorandom to  P n  if  x I , the hash function’s input from  P n 1  will be dramatically different from any  P n ’s input.

4.2. Our Protocol

We show our MPSI protocol in Figure 4. The selection of  m w l 1 , and  l 2  in our MPSI protocol follows [5] and they show how to choose the parameters concretely.
Figure 4. Our MPSI protocol.

4.3. Protocol Correctness

P n  constructs the special matrices  A i  and  B i  for  P i [ n 1 ]  such that  v = F k ( H 1 ( x ) )  computed for each  x X n  satisfies  A j i [ v [ j ] ] = B j i [ v [ j ] ]  for all  j w . Let  x  be the intersection element. Since each column of matrix  A j n  is composed of uniform random shares as  A j n = A j 1 A j n 1  for  j w , after the client  P i [ n 1 ]  runs OTs with  P n , the matrix  C j i  is obtained, satisfying  A j i [ v [ j ] ] = C j i [ v [ j ] ] . It holds that  A j n [ v [ j ] ] = i = 1 n 1 C j i [ v [ j ] ]  for each  x I .
Based on the nature of the constructed data structure, we have  Decode ( D i , x ) = C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ] . So, for  x I , let  v = F k ( H 1 ( x ) ) , and we can always satisfy  H 2 i = 1 n 1 C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ] = H 2 A 1 i [ v [ 1 ] ] | | | | A w i [ v [ w ] ] .

4.4. Protocol Security

Theorem 1.
If  F  is a PRF,  H 1  and  H 2  are random oracles, and the underlying OT is protected against malicious receivers, then our MPSI protocol has one-sided malicious security which can be secure against malicious clients when  m w ,  l 1 , and  l 2  are chosen appropriately.
Proof of Theorem 1.
We consider any client  P = { P 1 , , P n 1 }  corrupted by an adversary  A . Let  l  clients  P 1 , , P l  be corrupted, making the number of uncorrupted clients  ( n l 1 ) . Given  { X i } i [ l ] , the simulator  S  interacts with  { P i } i [ l ]  as follows.  S  samples random matrices  { C i } i [ l ] { 0 , 1 } m × w  and performs malicious OT simulator on  { P i } i [ l ]  with outputs  C 1 i , , C w i S  honestly chooses PRF key  k  and sends  k  to  { P i } i [ l ] . The simulator  S  constructs random data structures representing honest parties according to the randomness of the matrices.  T 1  and  T 2  are initialized to an empty table. In  P i [ n 1 ] ’s query  x  to  H 1 S  records  ( x , H 1 ( x ) )  in table  T 1 i . In  P n 1 ’s query  y  to  H 2 S  records  ( y , H 2 ( y ) )  in table  T 2 . When  P n  receives OPRF value  Ψ S  finds all  φ Ψ  such that  φ = H 2 ( y )  for some  y  in  T 2 , and  y = i [ l ] C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ] j [ n t 1 ] C 1 j [ v [ 1 ] ] | | | | C w j [ v [ w ] ]  where  v = F k ( H 1 ( x ) )  for  x T 1 1 T 1 n 1 . Finally,  S  can send these  x  to ideal functionality.
Let  Q 1 i , Q 2  be a set of queries  P i [ n 1 ]  and  P n 1  make to  H 1  and  H 2 , respectively, and let  Q = i = 1 n 1 Q 1 i Q 1 i = | Q 1 i | , and  Q 2 = | Q 2 | . We will misuse notation: for matrix  C m × w  and vector  u [ m ] w C [ v ]  means  C 1 [ v [ 1 ] ] | | | | C w [ v [ w ] ] . For the set  V  of vectors in  [ m ] w , the set  C [ V ] | v V  is denoted by  C [ V ] .
We prove  Real A X 1 , , X n c Ideal S F X 1 , , X n .
Hyb0
The outputs of parties in the real world.
Hyb1
Similar to  Hyb 0 , but  S  performs OT simulator on  { P i } i [ l ]  to obtain  s i . If  s i [ j ] = 0 , it randomly chooses string  A j i  of length  m  and constructs matrix  B j i = A j i D j , and it randomly chooses string  B j i  of length  m  and constructs matrix  A j i = B j i D j ; otherwise, it gives  C 1 i , , C w i  to OT simulator as output.  Hyb 1  is computationally indistinguishable from  Hyb 0  due to OT security against malicious receiver.
Hyb2
Similar to  Hyb 1  except that the protocol terminates if there exists  x a , x b X 1 X 2 X n x a x b  such that  H 1 ( x a ) = H 1 ( x b ) . Since  H 1  is a random oracle, the protocol is aborted with negligible probability.
Hyb3
Same as  Hyb 2 , but, for each OPRF value  φ  received by  P n , if  φ H 2 ( Q 2 ) , then  P n  ignores  φ . Since  H 2  is a random oracle, the probability of changing  P n ’s output is negligible.  φ  equals the output of  H 2  on one of  P n ’s elements with negligible probability.
Hyb4
Same as  Hyb 3  except that the protocol terminates if there exists  y Q 2 y A F k ( H 1 ( X n ) )  with  y y  and  H 2 ( y ) = H 2 ( y ) . Since  H 2  is a random oracle, the protocol is aborted with negligible probability.
Hyb5
Same as  Hyb 4 , but, for each OPRF value  φ  received by  P n P n  ignores  φ  when calculating the set intersection if  φ = H 2 ( y )  for some  y Q 2 , where  y i [ t ] C i F k ( H 1 ( Q ) ) j [ n t 1 ] C j F k ( H 1 ( Q ) ) .
This hybrid changes output only if there exist  x X n  satisfying  φ = H 2 A F k ( H 1 ( x ) ) , which implies  y = A F k ( H 1 ( x ) )  via the terminate condition added in  Hyb 4 .
Note that if  x X n  and  x Q , because of the construction of  E , we then have  y = A F k ( H 1 ( x ) ) = i [ l ] C i F k ( H 1 ( x ) ) j [ n l 1 ] C j F k ( H 1 ( x ) ) i [ t ] C i F k ( H 1 ( Q ) ) j [ n l 1 ] C j F k ( H 1 ( Q ) ) . Therefore, we need only think about  x X n \ Q . For all  x X n A F k ( H 1 ( x ) ) = i [ l ] C i F k ( H 1 ( x ) ) j [ n l 1 ] C j F k ( H 1 ( x ) ) , the output of  Hyb 5  changes only if there exist  x X n \ Q y Q 2  satisfying  y = i [ l ] C i F k ( H 1 ( x ) ) j [ n l 1 ] C j F k ( H 1 ( x ) ) .
Suppose there is a PPT adversary  A  that, with non-negligible probability, produces  Q Q 2 , and  X n  such that there exist  y Q 2 x X n \ Q  satisfying  y = i [ l ] C i F k ( H 1 ( x ) ) j [ n l 1 ] C j F k ( H 1 ( x ) ) . Then, [5] shows we can break the security of the PRF.
Hyb6
Same as  Hyb 5  except that the protocol terminates if there exists  x a Q x b X n  such that,  y = i [ l ] C i F k ( H 1 ( x a ) ) j [ n l 1 ] C j F k ( H 1 ( x a ) ) = A F k ( H 1 ( x b ) )  but  x a x b . The protocol is aborted with negligible probability because of the security of the PRF.
Hyb7
Same as  Hyb 6  except that  P n ’s outputs are substituted by its outputs in the ideal world.  Hyb 7  can change  P n ’s outputs if and only if there exists a value  φ  received by  P n  and considered by  P n  such that  φ = H 2 i l C i F k ( H 1 ( x a ) ) j n l 1 C j F k ( H 1 ( x a ) )  for some  x a Q , and  φ = A F k ( H 1 ( x b ) )  for some  x b X n x a x b . Because  H 2  is a random oracle,  i [ l ] C i F k ( H 1 ( x a ) ) j [ n l 1 ] C j F k ( H 1 ( x a ) ) A F k ( H 1 ( x b ) )  is aborted via terminate condition in  Hyb 6  with negligible probability.
Hyb8
Same as  Hyb 7  except that the protocol does not terminate.  Hyb 7  and  Hyb 8  are computationally indistinguishable since  H 1  and  H 2  are random oracles and  F k  is a PRF.
Hyb9
The output in the ideal world. The difference between  Hyb 9  and  Hyb 8  is that  S  samples a random matrix  C  and encodes a data structure PaXoS, which is identically distributed.

5. Performance Evaluation

5.1. Complexity Analysis

To better evaluate the complexity of the protocol, we first need to perform a simple analysis of the overall protocol process. It is important to note that this protocol uses only inexpensive tools such as OTs and bitwise operations, making it concretely efficient. We treat  t  as the set sizes and set  m = t  as in [5]. So,  w  can be viewed as a value dependent on  λ  by fixing  m  and  t .
Party  P n  is referred to as the leader carrying the majority overhead of the protocol, while the others are referred to as clients. Regarding the complexity of the protocol,  P n  designs matrices of a particular form, requiring linear complexity in  t . Then, they perform  w  OTs for clients independently, resulting in linear complexity in the number of OTs. Moreover,  P i [ n 2 ]  just do encoding operations for data structure  D i , and  P n 1  does hashing, bitwise-XOR, and decoding operations, which require linear communication and computation complexities. Although the computational overhead of  P n 1  is larger than that of other clients, they do not need to encode and send a data structure. From this, we can regard the overall communication and computation costs as uniformly distributed across all clients.
Note that our protocol can be divided into offline and online phases. Only lightweight procedures are required in the online phase, and communication and computation costs associated with performing OT can be handled in the offline phase. In addition, the bits exchanged among the parties concerning the random OT and the optimized malicious OT extension are summarized in Table 3.
Table 3. Bits sent for leader and client.

5.2. Comparison

It should be noted that, due to the variations in architectures and security levels, making a fair comparison is challenging. Nevertheless, we have endeavored to include some recent studies pertaining to diverse security models (e.g., semi-honest, malicious, etc.). So, we contrast the complexity of communication and computation with [13,14,15] in Table 4, where  n  is the number of parties,  k  is the number of hash functions,  t  is the size of input sets, and  λ  is the security parameter. In our MPSI protocol, the communication and computation complexity of the leader are  O ( t n λ ) , which is linear in the number of parties. Meanwhile, the complexity for the client remains constant regardless of the number of parties involved (namely,  O ( t λ ) ) because the client  P i [ n 1 ]  only needs to compute and send a data structure  D i  and does not need to perform additional data transfers with other parties. Therefore, our protocol achieves a good trade-off between communication and computation overhead.
Table 4. Complexity of MPSI protocols.
Figure 5 shows the security levels of the discussed protocols. Compared with [13], our protocol achieves a stronger security model without sacrificing communication and computation costs. We implement one-sided malicious security and [14] implements the Aug semi-honest model. It is difficult to define which security model is more practical, but our protocol has better computation and communication performance. Although the security model in [15] is higher-performing, our protocol has greater communication performance and achieves a better trade-off between communication and computation.
Figure 5. Comparison of security levels.

5.3. Experimental Evaluation

In order to compare the runtime overhead of each protocol more intuitively, simulation experiments and a results analysis were performed. It should be noted that the time consumed by this protocol is the average time of multiple experiments. The experimental platform was Windows 10, Intel (R) Core (TM) i5-8250U CPU @ 1.60 GHz 1.80 GHz, 8.00 GB of RAM, and a compiled environment of Dev-C++5.11.
We first consider the total time required for each protocol to execute with different numbers of set elements. It is assumed that  n = 100 k = λ = 128 , and  t = 2 10 , 2 11 , 2 12 , 2 13  are chosen for the comparison experiment, and Figure 6 shows the total running time of the protocol as a function of the number of elements contained in the set.
Figure 6. Running time vs. set cardinality.
From Figure 6, the total time overhead in each protocol grows essentially linearly as the number of set elements continues to increase. However, the time of our MPSI protocol increases the slowest when the fixed set cardinality is small. Our MPSI protocol has the slowest time growth rate.
In addition, the effect of the change in the number of parties on the running time of the protocol is further considered. Suppose that the maximum number of elements contained in the set is  t = 1000 , the security parameters are kept fixed at  k = λ = 128 , and the number of parties  n = 10 1 , 10 2 , 10 3 , 10 4  is selected for the comparison experiment. The total protocol runtime as a function of the number of parties is shown in Figure 7.
Figure 7. Running time vs. the number of parties.
From Figure 7, the running time of all protocols increases gradually with the number of parties. The time overheads of our MPSI protocol are lower than those of the other protocols when n is fixed. In addition, our MPSI protocol has the slowest time growth rate.

6. MPCCache in Edge Computing

This section aims to address the problem of edge collaborative content caching, wherein all parties can jointly cache the most frequently accessed common data items in shared caches. Figure 8 shows the difference between the traditional cache model and edge cache model. Our challenge is to find how to determine a set of the most frequently accessed common items without revealing any underlying data.
Figure 8. Traditional cache model and edge cache model.

6.1. Our MPCCache

We describe how to use our MPCCache protocol to handle the edge cache case. The network operators  P i [ n ]  respectively own set  K i = { ( x 1 i , z 1 i ) , , ( x t i , z t i ) } , where  x i { 0 , 1 }  denotes an identify element and  z i { 0 , 1 } w  denotes its associated value. Note that the latter may represent the anticipated frequency of content being accessed or the value to network operators of the cached content. Let the common items  I = i = 1 n X i = { x 1 , x 2 }  be the intersection of the identifiers, where  X i = { x 1 i , , x t i }  is the set of identity for  P i [ n ] . For each common item  x I , calculate a sum of the associated values  z ; that is,  s u m x = i = 1 n z ( x ) . The sum of a common item is determined as the total of the individual values of the operators for the item.
We present the MPCCache protocol in Figure 9 P i [ n 1 ]  conduct simple hashing and  P n  conducts cuckoo hashing that maps common items to the same bucket. According to the PaXoS, all the buckets are compressed into a data structure so that  P n  can efficiently compute the MPCCache. In detail,  P i [ n 1 ]  choose  q j n  and  s j n  uniformly at random for  j [ β ] . Notice that  A j n [ v [ j ] ] = i = 1 n 1 C j i [ v [ j ] ]  for each  x I . For  ( x , z ) K i  and  v = F k ( H 1 ( x ) ) P i [ n 1 ]  compute  f x j i = d e f C 1 1 [ v [ 1 ] ] | | , , | | C w 1 [ v [ w ] ] q j i  and  g x j i = d e f z s j i , and send the encoding  Encode ( x | | j , f x j i )  and  Encode ( x | | j , g x j i )  to  P n , where  x j = ( HT [ j ] | | j )  means that  x  is in  j th  bucket.  P n  can use  x j n ( x | | j ) | x GT n [ j ] j [ β ]  to obtain the correct decoding  f x j i  and  g x j i  if  x j n = x j i ; it is otherwise random. Then,  P n  computes  q j n = d e f i = 1 n 1 f x j i A 1 n [ v [ 1 ] ] | | | | A w n [ v [ w ] ]  and  s j n = d e f i = 1 n 1 g x j i + z . Finally,  P i [ n ]  input  q j [ β ] n  and  s j [ β ] n , respectively, to check whether  i = 1 n q j i = 0  is based on a garbled circuit, and, if so, obtain the sum of the corresponding common item  i = 1 n s j i .
Figure 9. Our MPCCache protocol.

6.2. Correctness and Security

Correctness: Section 4.3 proves that  A j n [ v [ j ] ] = i = 1 n 1 C j i [ v [ j ] ]  for each  x I  and  v = F k ( H 1 ( x ) ) ; that is,  A 1 n [ v [ 1 ] ] | | | | A w n [ v [ w ] ] = i = 1 n 1 C 1 1 [ v [ 1 ] ] | | | | C w 1 [ v [ w ] ] . Via the property of the data structure PaXoSs  D x i  and  D z i  constructed by  P i [ n 1 ] , for  x I j [ β ] , and  v = F k ( H 1 ( x ) ) , we always have  i = 1 n 1 Decode ( D x i , x | | j ) = i = 1 n 1 C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ] q j i i = 1 n 1 Decode ( D z i , x | | j ) = i = 1 n 1 ( z i s j i ) . At the same time,  P n  defines  q j n = d e f i = 1 n 1 Decode ( D x i , x | | j ) A 1 n [ v [ 1 ] ] | | | | A w n [ v [ w ] ]  and  s j n = d e f i = 1 n 1 Decode ( D z i , x | | j ) + z  in terms of the  D x i  and  D z i  they receive from  P i [ n 1 ] . That is, when  x I , it always satisfies that  i = 1 n q j i = 0  and  i = 1 n s j i = i = 1 n z i .
Theorem 2.
If  F  is a PRF and  H 1  is a random oracle, then the construction of our MPCCache protocol has colluding semi-honest security, given the OT, PaXoS, GC, and appropriate parameters.
Proof of Theorem 2.
If we consider  l parties  { P i } i [ l ]  to be corrupted by an adversary  A , then the number of uncorrupted parties is  ( n l ) . Given  { K i } i [ l ] , the simulator  S  interacts with  { P i } i [ l ]  as follows.  S  samples random matrices, performs OT, chooses the PRF key  k  and sends  k  to  { P i } i [ l ] . The simulator  S  constructs random data structures representing honest parties according to the randomness of the matrices.  S  sends two data structures  D x i  and  D z i  constructed on a PaXoS to ideal functionality. We prove  Real A K 1 , , K n c Ideal S F K 1 , , K n .
Hyb0
The outputs of parties in the real world.
Hyb1
Same as  Hyb 1 Hyb 2 , and  Hyb 6  in Section 4.4.
Hyb2
Similar to  Hyb 1  except that the decoding executions of the PaXoS are replaced as follows. When  { P i } i [ l ]  does not contain  P n S  receives nothing from the data structure PaXoS. When  { P i } i [ l ]  contains  P n , if  x I P n  receives  D x i  and  D z i , thus  C 1 i [ v [ 1 ] ] | | | | C w i [ v [ w ] ] q j i ( z i s j i )  for the PaXoS involving the non-colluding party  { P i } i [ n l ]  and  j [ β ] . Note that  q j i  and  s j i  are used in the above expression for each bin  j [ β ] . Since these values are uniform, so are  D x i  and  D z i . Therefore, we replace the decoding outputs of the PaXoS with random ones. Otherwise, all the decoding outputs of the PaXoS are uniformly random from the perspective of  P n  and  { P i } i [ l ] Hyb 2  is computationally indistinguishable from  Hyb 1  due to the PaXoS’s security.
Hyb3
The output in the ideal world. The only difference between  Hyb 3  and  Hyb 2  is that  S  executes the output of the circuit.

7. Conclusions

In this work, we design an efficient MPSI protocol and the MPCCache protocol to better solve the information leakage problem in resource sharing. The proposed MPSI protocol derived from multi-point OPRF demonstrates concrete efficiency in achieving one-sided malicious security. The protocol also leads to a better trade-off between communication and computational overhead. It is based on OT and a data structure PaXoS and achieves linear computation and communication complexity concerning the input set size of each party. In our MPSI protocol, the asymptotic communication and computational complexity of the clients are largely determined by the size of the input sets rather than the number of parties (namely,  O ( t λ ) ). Overall, this research has contributed to the development of efficient MPSI protocols for multiple parties in practice. In fact, we apply the MPCCache protocol to edge caching scenarios using a simple transformation of the MPSI protocol. The MPCCache protocol under the semi-honest model can support the computation of specific functions on intersections. It is our belief that future work can improve the fairness of the MPSI protocol, as well as propose more application scenarios with practical application value.

Author Contributions

Conceptualization, J.Z., L.Y. and Y.T.; methodology, L.Y. and Y.T.; validation, J.Z., L.Y. and Y.T.; formal analysis, L.Y. and M.J.; writing—original draft preparation, L.Y.; writing—review and editing, Y.T., S.W. and M.J.; supervision, Y.T. and S.W.; funding acquisition, J.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by Henan Key Laboratory of Network Cryptography Technology (No. LNCT2022-A11), the Henan Province Key R&D and Promotion Special Project (No. 212102210166), and the PhD Foundation of Henan Polytechnic University (No. B2021-41).

Institutional Review Board Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Wei, X.; Xu, L.; Cai, G.; Wang, H. Secure approximate pattern matching protocol via Boolean threshold private set intersection. Int. J. Intell. Syst. 2022, 37, 9245–9266. [Google Scholar] [CrossRef]
  2. Kales, D.; Rechberger, C.; Schneider, T.; Senker, M.; Weinert, C. Mobile private contact discovery at scale. In Proceedings of the 28th USENIX Security Symposium (USENIX Security 19), Santa Clara, CA, USA, 14–16 August 2019; pp. 1447–1464. [Google Scholar]
  3. Ion, M.; Kreuter, B.; Nergiz, E.; Patel, S.; Saxena, S.; Seth, K.; Shanahan, D.; Yung, M. Private intersection-sum protocol with applications to attributing aggregate ad conversions. Cryptol. ePrint Arch. 2017. preprint. Available online: https://eprint.iacr.org/2017/738 (accessed on 11 September 2023).
  4. Nguyen, D.T.; Trieu, N. MPCCache: Privacy-preserving multi-party cooperative cache sharing at the edge. In Financial Cryptography and Data Security: 26th International Conference, FC 2022, Grenada; Springer International Publishing: Berlin/Heidelberg, Germany, 2022; pp. 80–99. [Google Scholar] [CrossRef]
  5. Chase, M.; Miao, P. Private set intersection in the internet setting from lightweight oblivious PRF. In Proceedings of the Advances in Cryptology–CRYPTO 2020: 40th Annual International Cryptology Conference, Santa Barbara, CA, USA, 17–21 August 2020; pp. 34–63. [Google Scholar] [CrossRef]
  6. Pinkas, B.; Rosulek, M.; Trieu, N.; Yanai, A. SpOT-light: Lightweight private set intersection from sparse OT extension. In Proceedings of the Advances in Cryptology–CRYPTO 2019: 39th Annual International Cryptology Conference, Santa Barbara, CA, USA, 18–22 August 2019; pp. 401–431. [Google Scholar] [CrossRef]
  7. Pinkas, B.; Schneider, T.; Zohner, M. Scalable private set intersection based on OT extension. ACM Trans. Priv. Secur. TOPS 2018, 21, 1–35. [Google Scholar] [CrossRef]
  8. Cong, K.; Moreno, R.C.; da Gama, M.B.; Dai, W.; Iliashenko, I.; Laine, K.; Rosenberg, M. Labeled PSI from homomorphic encryption with reduced computation and communication. In Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, Republic of Korea, 15–19 November 2021; pp. 1135–1150. [Google Scholar] [CrossRef]
  9. Chen, H.; Huang, Z.; Laine, K.; Rindal, P. Labeled PSI from fully homomorphic encryption with malicious security. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, Toronto, ON, Canada, 15–19 October 2018; pp. 1223–1237. [Google Scholar] [CrossRef]
  10. Pinkas, B.; Schneider, T.; Weinert, C.; Wieder, U. Efficient circuit-based PSI via cuckoo hashing. In Proceedings of the Advances in Cryptology–EUROCRYPT 2018: 37th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Tel Aviv, Israel, 29 April–3 May 2018; pp. 125–157. [Google Scholar] [CrossRef]
  11. Pinkas, B.; Schneider, T.; Tkachenko, O.; Yanai, A. Efficient circuit-based PSI with linear communication. In Proceedings of the Advances in Cryptology–EUROCRYPT 2019: 38th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Darmstadt, Germany, 19–23 May 2019; pp. 122–153. [Google Scholar] [CrossRef]
  12. Chandran, N.; Gupta, D.; Shah, A. Circuit-PSI With Linear Complexity via Relaxed Batch OPPRF. Proc. Priv. Enhancing Technol. 2022, 1, 353–372. [Google Scholar] [CrossRef]
  13. Kavousi, A.; Mohajeri, J.; Salmasizadeh, M. Efficient scalable multi-party private set intersection using oblivious PRF. In Proceedings of the Security and Trust Management: 17th International Workshop, STM 2021, Darmstadt, Germany, 8 October 2021; pp. 81–99. [Google Scholar] [CrossRef]
  14. Inbar, R.; Omri, E.; Pinkas, B. Efficient scalable multiparty private set-intersection via garbled bloom filters. In Proceedings of the Security and Cryptography for Networks: 11th International Conference, SCN 2018, Amalfi, Italy, 5–7 September 2018; pp. 235–252. [Google Scholar]
  15. Ghosh, S.; Nilges, T. An algebraic approach to maliciously secure private set intersection. In Proceedings of the Advances in Cryptology–EUROCRYPT 2019: 38th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Darmstadt, Germany, 19–23 May 2019; pp. 154–185. [Google Scholar] [CrossRef]
  16. Kolesnikov, V.; Kumaresan, R.; Rosulek, M.; Trieu, N. Efficient batched oblivious PRF with applications to private set intersection. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016; pp. 818–829. [Google Scholar]
  17. Pinkas, B.; Schneider, T.; Zohner, M. Faster private set intersection based on {OT} extension. In Proceedings of the 23rd USENIX Security Symposium (USENIX Security 14), San Diego, CA, USA, 20–22 August 2014; pp. 797–812. [Google Scholar]
  18. Nevo, O.; Trieu, N.; Yanai, A. Simple, fast malicious multiparty private set intersection. In Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, Republic of Korea, 15–19 November 2021; pp. 1151–1165. [Google Scholar] [CrossRef]
  19. Pinkas, B.; Rosulek, M.; Trieu, N.; Yanai, A. PSI from PaXoS: Fast, malicious private set intersection. In Proceedings of the Advances in Cryptology–EUROCRYPT 2020: 39th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Zagreb, Croatia, 10–14 May 2020; pp. 739–767. [Google Scholar] [CrossRef]
  20. Ben-Efraim, A.; Nissenbaum, O.; Omri, E.; Paskin-Cherniavsky, A. Psimple: Practical multiparty maliciously-secure private set intersection. In Proceedings of the 2022 ACM on Asia Conference on Computer and Communications Security, 30 May–2 June 2022; pp. 1098–1112. [Google Scholar]
  21. Bui, D.; Couteau, G. Private Set Intersection from Pseudorandom Correlation Generators. IACR Cryptol. ePrint Arch. 2022, 2022, 334. [Google Scholar]
  22. Chida, K.; Hamada, K.; Ichikawa, A.; Kii, M.; Tomida, J. Communication-Efficient Inner Product Private Join and Compute with Cardinality. Cryptol. ePrint Arch. 2022. preprint. Available online: https://eprint.iacr.org/2022/338 (accessed on 11 September 2023).
  23. Miao, P.; Patel, S.; Raykova, M.; Seth, K.; Yung, M. Two-sided malicious security for private intersection-sum with cardinality. In Proceedings of the Advances in Cryptology–CRYPTO 2020: 40th Annual International Cryptology Conference, Santa Barbara, CA, USA, 17–21 August 2020; pp. 3–33. [Google Scholar] [CrossRef]
  24. Goldreich, O. Foundations of Cryptography: Volume 2, Basic Applications; Cambridge University Press: New York, NY, USA, 2009. [Google Scholar]
  25. Rabin, M.O. How to exchange secrets with oblivious transfer. Cryptol. ePrint Arch. 2005. preprint. Available online: https://eprint.iacr.org/2005/187 (accessed on 11 September 2023).
  26. Ishai, Y.; Kilian, J.; Nissim, K.; Petrank, E. Extending Oblivious Transfers Efficiently. Crypto 2003, 2729, 145–161. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.