Next Article in Journal
Impact of Output Conductance on Current-Gain Cut-Off Frequency in InxGa1-xAs/In0.52Al0.48As Quantum-Well High-Electron-Mobility Transistors on InP Substrate
Previous Article in Journal
A 100-Gb/s PAM-4 DSP in 28-nm CMOS for Serdes Receiver
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure Multi-Party Computation of Graphs’ Intersection and Union under the Malicious Model

1
Department of Computer Science and Technology, Tianjin Ren’ai College, Tianjin 733299, China
2
School of Information Engineering, Inner Mongolia University of Science and Technology, Baotou 014010, China
3
School of Information Science and Technology, North China University of Technology, Beijing 100144, China
4
Department of Computer Science and Mathematics, Sul Ross State University, Alpine, TX 79830, USA
5
Information Security Center, State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China
*
Authors to whom correspondence should be addressed.
Electronics 2023, 12(2), 258; https://doi.org/10.3390/electronics12020258
Submission received: 28 November 2022 / Revised: 25 December 2022 / Accepted: 29 December 2022 / Published: 4 January 2023
(This article belongs to the Section Artificial Intelligence)

Abstract

:
In recent years, with the development of information security, secure multi-party computation has gradually become a research hotspot in the field of privacy protection. The intersection and union computation of graphs is an important branch of secure computing geometry. At present, the intersection and union of graphs are almost designed under the semi-honest model, and few solutions are proposed under the malicious model. However, the solution under the malicious model is more secure and has important theoretical and practical significance. In this paper, the possible malicious behaviors of computing the intersection and union of graphs are analyzed. Using the Lifted-ElGamal threshold cryptosystem and zero-knowledge proof method, the secure multi-party computation algorithm of graphs’ intersection and union under the malicious model is designed. The real/ideal model paradigm is used to prove the security of the algorithm, the efficiency of the algorithm is analyzed in detail, and the feasibility is verified through experiment.

1. Introduction

In recent years, the rapid development of the Internet has brought great convenience to our life. At the same time, privacy protection has become more and more important. Secure multi-party computation (MPC) is proposed to solve privacy computing problems.
In 1982, Yao [1] put forward the millionaire problem which pioneered the MPC field. Turing Award winner Goldwasser [2] predicted that MPC would become an integral part of computer science. Cramer [3] also predicted that MPC would become a new and powerful tool for privacy protection. Cryptologists have studied the MPC algorithms in various fields including secure scientific computing solutions [1,4,5,6], secure data mining [7,8], secure statistical analysis [9,10,11], secure computational geometry [12,13,14,15,16], and secure computing set [17,18,19,20]. These studies promoted the development of MPC.
The problem of secure graph computing is an important topic in secure computing geometry. The intersection and union of graphs are basic problems in secure graph computing, representing a secure and auto-configurable environment for mobile agents in ubiquitous computing scenarios, widely used in the medical, military, and other fields. For example, when studying family medical history in the medical field, we can use security map computing to solve the problem. We can use genes related to family medical history as graph nodes, and use edges to represent the relationship between characters to study related family medical history. This approach can protect patient information and achieve the purpose of privacy computing.
Akavia [21] used homomorphic encryption to solve the problem of generating graphs on the basis of participant edge information. This method can generate graphs under the premise of ensuring privacy, but the computational complexity is high.
Frikken [22] converted network information into a graph problem. All participants have relevant information and then generate relevant graphs. However, the calculation cost of this method is too high; furthermore, it involves an ideal third party and is not suitable for practical applications.
Zhou [23] used homomorphic encryption to store graphs in matrix mode, and then converted them into polynomials to calculate intersections. This scheme uses Paillier encryption for encryption and decryption during operation, which leads to high computational complexity, and the scheme cannot resist malicious attacks.
Wei [24] solved the problem of graph intersection and union calculation of the semi-honest model. First, he designed a new coding rule, then designed a scheme to solve graph intersection and union, and finally analyzed the correctness and security of the scheme. However, the algorithm was designed under the semi-honest model, which cannot resist malicious attacks.
According to the possible malicious attacks of the semi-honest model algorithm [25], the malicious model MPC algorithms of graphs’ intersection and union are designed in this study. The contributions are as follows:
(1)
In this paper, the intersection and union MPC algorithms under the semi-honest model are studied, and then the possible malicious attacks in the algorithms are analyzed.
(2)
According to the malicious attacks, based on the zero-knowledge proof method [26] and Lifted-ElGamal threshold cryptosystem [27], the MPC algorithms of graphs’ intersection and union under the malicious model are proposed.
(3)
Through the efficiency analysis, the algorithm remains efficient, and the real/ideal model paradigm [26] is used to prove the security of the algorithm under the malicious model.

2. Preliminary Knowledge

2.1. MPC Security Definition

Semi-honest model: The algorithm under the semi-honest model [25] refers to the situation where participants faithfully execute the algorithm according to the algorithm rules, but they may record the intermediate results of calculation and try to derive other participants’ information.
Malicious model: Under the malicious model [25], the participants of the algorithm may be malicious participants, and they cannot obey the rules of the algorithm. An MPC algorithm under the malicious model forces participants to execute the algorithm like those under the semi-honest model.
The definition of security under the malicious model: The definition of security under the malicious model involves the comparison between the real model and the ideal model. The security under the malicious model is described below [26].
Let a participant P i have secure data x i , and let X = x 1 , , x n ; a trusted third party (TTP) is needed to compute the function f ( X ) = ( f 1 ( X ) , , f n ( X ) ) . Let the malicious participant set be I = { i 1 , , i t } n = { 1 , , n } ; then, I ¯ is a collection of honest participants. The malicious participant’s data and calculation function can be represented as follows: let X = x 1 , , x n ; then X I = ( x i 1 , , x i t ) , f ( X ) = ( f 1 ( X ) , , f n ( X ) ) , and f I ( X ) = ( f i 1 ( X ) , , f i t ( X ) ) .
F ( { 0 , 1 } * ) n ( { 0 , 1 } * ) n is a probability polynomial time function of n element, Π is a algorithm for calculating F , A is a polynomial time algorithm of the attacker’s strategy in the real model algorithm, with ( I , A ) representing the attacker, and B is a probability polynomial time algorithm in the ideal model algorithm, with ( I , B ) representing the attacker.
In the ideal model, under the control of ( I , B ) , let the attacker select the random number r ; the auxiliary information is recorded as z , and the joint execution process of f ( X ) is recorded as I D E A L F , I , B ( Z ) ( X ) = γ ( X , I , z , r ) , where γ ( X , I , z , r ) is defined below.
If P 1 is an honest participant, then γ ( X , I , z , r ) = ( f I ¯ ( X ) , B ( X I , I , z , r , f I ( X ) ) ) , where X = ( x 1 , , x n ) and i I . Thus, x i = B ( X I , I , z , r ) i ; otherwise, x i = x i .
Suppose P 1 is a malicious participant. If B ( X I , I , z , r , f I ( X ) ) = , then
γ ( X , I , z , r ) = ( I ¯ , B ( X I , I , z , r , f I ( X ) ) , ) .
Otherwise,
γ ( X , I , z , r ) = ( f I ¯ ( X ) , B ( X I , I , z , r , f I ( X ) ) , ) .
In the real model, under the control of ( I , A ) , the joint execution process of algorithm Π is recorded as R E A L Π , I , A ( z ) ( X ) , defined as the output sequence generated by the interaction between n participants. The messages of participants in I are determined by A ( X I , I , z ) , and the messages of participants in I ¯ are completely determined by Π . That is, the messages of malicious participants are determined by A according to the initial input, auxiliary input z and all messages sent by all participants, including honest participants.
Definition 1.
Security under the malicious model.
For any probabilistic polynomial time algorithm A in the real model algorithm, an acceptable probabilistic polynomial time algorithm B can be found in the ideal model algorithm.
Accordingly, for any I n , there is I D E A L F , I , B ( Z ) ( X ) X , z c R E A L Π , I , A ( z ) ( X ) X , z , i.e., the algorithm Π can compute f securely.
Note 1: The security definition under the malicious model requires at least one honest participant to ensure the normal operation of the algorithm. If all participants are malicious, it is impossible to design an MPC algorithm [26].

2.2. Lifted-ElGamal Cryptosystem

The Lifted-ElGamal cryptosystem [27] is a modification based on the ElGamal public key encryption algorithm [28]. The multiplicative homomorphism of the ElGamal encryption algorithm is modified to obtain the additive homomorphism. The specific algorithm is described below.
Key generation: Given the secure parameter k , the algorithm generates a large prime p of k bits and a generator g in Z P * ; participants choose the random number x as their private key, and the corresponding public key is h = g x mod p .
Encryption: The random number r is selected for the encrypted message M ( M Z P * ) ; the ciphertext is E ( M ) = ( c 1 , c 2 ) = ( g r mod p , g M h r mod p ) .
Decryption: For ciphertext E ( M ) = ( c 1 , c 2 ) , the decryption process is g M = c 2 c 1 x mod p .
Additive homomorphism:
E ( M 1 ) × E ( M 1 ) = ( g r 1 mod p , g M 1 h r 1 mod p ) × ( g r 2 mod p , g M 2 h r 2 mod p ) = ( g r 1 + r 2 mod p , g M 1 + M 2 h r 1 + r 2 mod p ) = E ( M 1 + M 2 ) .

2.3. Lifted-ElGamal Threshold Cryptosystem

The threshold cryptosystem [29] has a public key jointly generated by n participants, and the decryption key is jointly held by all participants, which can be used to solve the problem of collusion attack. Assuming that at least t participants cooperate in decryption, the cryptosystem is called ( t , n ) threshold cryptosystem, which can resist the collusion attack of t 1 participants. In this paper, the cryptosystem resists the collusion attack of n 1 participants; that is, an ( n , n ) threshold cryptosystem is constructed, as described below.
Generation of public key: Given the security parameter k , the key generation algorithm generates a large prime p of k bits and a generator g in Z p * . Each participant P i randomly selects a p k i as their own private key and publishes h i = g p k i mod p . All participants jointly generate the public key h = g i = 1 n p k i mod p of the Lifted-ElGamal threshold cryptosystem.
The specific encryption algorithm is the same as the above Lifted-ElGamal cryptosystem (Section 2.2). During decryption, each participant needs to compute and publish c 1 p k i , and then jointly decrypt g M = c 2 i = 1 n c 1 p k i mod p .

2.4. Ciphertext Re-Randomization

In the probabilistic encryption system, a ciphertext can be changed into another different ciphertext of the same plaintext by the homomorphic encryption. This operation is the ciphertext re-randomization [30]. The Lifted-ElGamal cryptosystem has additive homomorphism; E ( M ) × E ( 0 ) = E ( M + 0 ) = E ( M ) can be used for re-randomization, where E ( M ) and E ( M ) are computationally indistinguishable.

2.5. Discrete Logarithms Equality

In [31], the method of proving the equal discrete logarithm was used to verify whether the decrypted data provided by the participant are correct under the malicious model.
Let G be a cyclic group whose order is m which is unknown; g is its generator, h is an element in G , and Alice knows α = g x , β = h x . Alice wants to prove log g α = log h β to Bob without publishing x . The proof process is described below.
Bob selects a random number r in G and computes X = g r , Y = h r , e = H ( g , h , α , β , X , Y ) , where H is a hash function. Bob sends r to Alice. Alice computes y = r + e × x , g y , and h y , and sends g y , h y to Bob. Bob can verify whether g y , h y meets H ( g , h , α , β , g y / α e , h y / β e ) = e .
Correctness:
g y / α e = g r + e x / α e = g r ( g x ) e / α e = g r α e / α e = X α e / α e = X ,   h y / β e = h r + e x / β e = h r ( h x ) e / β e = h r β e / β e = Y β e / β e = Y .
If H ( g , h , α , β , g y / α e , h y / β e ) = e , then it is judged that x is equal without publishing x .

2.6. 0–1 Coding Rule

Suppose that an undirected complete graph G 0 = ( V , W ) is composed of m vertex sets V and edge sets W (an undirected complete graph means that any two vertices have edges, i.e., there are m ( m 1 ) / 2 edges in total), where V = { v 1 , , v m } . The vertex and edge information of the graph are stored in a matrix M i . When there is vertex v i in the graph, the value of matrix element m i i is 1; otherwise, it is 0. If there is an edge between vertices v i and v j , the matrix m i j is 1; otherwise, it is 0. Since the matrix generated by an undirected graph is symmetrical about the diagonal, participants only need to take the diagonal of the matrix and its following elements to form a vector X i , which can represent a unique graph.
Example
Set a vertex set V = { v 1 , v 2 , v 3 , v 4 , v 5 } , as shown in Figure 1.
Then, the matrix according to the 0–1 coding rule G 1 can be expressed as M 1 . The triangle area in Figure 1, that is, the diagonal of the matrix and its following triangular elements can be used to form a vector X 1 = 1 , 0 , 0 , 1 , 0 , 1 , 1 , 0 , 1 , 1 , 0 , 0 , 1 , 1 , 1 .

3. The MPC Algorithm of Graphs’ Intersection and Union under the Semi-Honest Model

The algorithm under the semi-honest model is the basis of designing the malicious model algorithm. Therefore, in this paper, the possible malicious behavior of the algorithm under the semi-honest model is analyzed, and then the algorithm under the malicious model is designed. Wei [24] proposed new coding rule, in which, combined with the secure substitution and homomorphic encryption method, an MPC algorithm for the graphs’ intersection and union was designed. In this algorithm, the efficiency of Wei [24] was improved compared with that of Zhou [23].
Problem Description: Participant P i first generates the storage matrix M i of the graph according to the 0–1 coding rule, and then takes the diagonal of matrix M i and its following elements to form the vector X i . They want to compute the intersection of n graphs securely without publishing their respective information.
Calculation rules: Each participant uses the Lifted-ElGamal threshold cryptosystem. P 1 sends their own data to P 2 ; then, P 2 overwrites the element with 0 in their own data on P 1 , and P 2 encrypts the data and sends them to P 3 . P 3 performs the same operation, until P n completes encryption. After joint decryption, the diagonal and lower triangular elements of the matrix are restored, and its symmetry is used to restore the original matrix to obtain the intersection of the graph.
The set union calculation algorithm only needs to change the value 0 in steps (3) and (4) into 1 to compute the union of sets. Therefore, the graphs’ union MPC algorithm under the semi-honest model is not repeated.
Correctness of Algorithm 1: The correctness of Algorithm 1 can be guaranteed by the coding rule. For the intersection of each graph, the graph is first re-encoded with coding rule. During the execution, P 1 sends the encrypted vector to P 2 , and P 2 overwrites the element with 0 in their vector in the received vector, modifies it to 0, then re-randomizes it, and so on. In order to ensure that the final result only contains all elements with the value 1, only re-randomization is carried out in the process of algorithm execution. However, the Lifted-ElGamal threshold cryptosystem has additive homomorphism and can be re-randomized; thus, the intersection of all graphs can be jointly decrypted.
Algorithm 1.Graphs’ intersection MPC algorithm under the semi-honest model.
Input: Participants P 1 , P 2 , , P n respectively own graphs G 1 , G 2 , , G n .
Output: Intersection of G = G 1 G 2 G n .
Start: (1) All participants jointly select a large prime p and a generator g ; each participant P i selects p k i as their private key and publishes h i = g p k i mod p ; all participants jointly generate the public key of the Lifted-ElGamal threshold cryptosystem h = g i = 1 n p k i mod p .
(2) P 1 converts graph G 1 into storage matrix M 1 according to 0–1 coding rule, and takes M 1 diagonal and lower triangular elements to form vector X 1 = ( x 11 , x 12 , , x 1 t ) . After encryption, it is marked as E X 1 = E x 11 ,   E x 12 ,   E x 1 t , and sent to P 2 .
(3) Participant P i ( i = 2 , 3 , n ) overwrites the element in E ( X i ) with the value is 0 in E ( X i 1 ) . Then, the unmodified element is re-randomized and assigned to E ( X i ) , before being sent to P i + 1 .
(4) Participant P n overwrites the element in E ( X n 1 ) with the value of 0 in E ( X n ) . The unmodified element is re-randomized and assigned to E ( X n ) and then published.
(5) All participants jointly decrypt Y = D ( c ) , restore the storage matrix M of the intersection of graphs according to Y , and restore M to the intersection matrix of n graphs according to the 0–1 coding rule.
The algorithm ends.

4. The MPC Algorithm of Graphs’ Intersection and Union under the Malicious Model

4.1. Ideas and Solution

When designing the MPC algorithm of graphs’ intersection under the malicious model, the possible malicious behaviors in Algorithm 1 are analyzed, and corresponding preventive measures are proposed for these behaviors, such that the attacks of the malicious party cannot be implemented or the malicious behaviors are found, so as to force them to participate in the algorithm in an honest way.
First of all, it should be made clear that some malicious attacks cannot be prevented in the ideal model algorithm, nor can they be stopped under the malicious model [25]. There are mainly three kinds of malicious behaviors: (1) refusing to participate in the algorithm; (2) providing false input or replacing one’s own input; (3) terminating the algorithm.
The following malicious attacks may occur in Algorithm 1:
(1)
In step (3), P i i = 1 , 2 , , n retains the correct result and sends P i + 1 the wrong result.
(2)
In step (4), P n publishes an incorrect result.
(3)
When all participants jointly decrypt, the participant provides wrong decryption information, which leads to a decryption error.
In order to solve the above malicious attacks, one solution is to encrypt the graph vectors of all participants and make them public, whereby all participants compute the intersection of graphs to prevent malicious attacks in steps (1) and (2). Finally, the zero-knowledge proof is used to prevent malicious attack in step (3). This is used to design the MPC algorithm of graphs’ intersection under the malicious model.

4.2. Correctness Analysis

(1)
Steps (1) and (2) of Algorithm 2 are mainly to re-encode the elements in the graph according to the coding rule, before encrypting and publishing them after coding. Because each participant is encrypted after coding, the participants’ data cannot decrypt the data of other participants; therefore, the algorithm is correct.
(2)
In step (3), all participants compute the product of each column, and each participant computes the product of all column elements to avoid unfairness.
(3)
In step (4), the participant judges whether the decrypted data provided by the other participant is correct through the zero-knowledge proof. Here, the method of proving the equality of discrete logarithms is used to prove log g h i = log c k 1 y i . If they are all correct, the algorithm continues to be executed, and the intersection can be restored according to the results.
(4)
Step (5) uses the additive homomorphism of the Lifted-ElGamal threshold cryptosystem, i.e., E M 1 × E M 2 = E M 1 + M 2 , to decrypt, and the intersection elements are judged according to the decrypted value.
(5)
Example: suppose vertex set V = { v 1 , v 2 , v 3 , v 4 , v 5 } , p = 1117 ; participants P 1 , P 2 , P 3 , P 4 respectively have G 1 , G 2 , G 3 , G 4 as shown in Figure 2 to compute the intersection of the graph.
Algorithm 2. The MPC algorithm of graphs’ intersection under the malicious model.
Input: Participant P 1 , P 2 , , P n respectively own graphs G 1 , G 2 , , G n .
Output: Intersection of G = G 1 G 2 G n .
Preparation stage: The plaintext space of the Lifted-ElGamal threshold cryptosystem is Z p ; ( Z p , + ) is used to form an addition group. There is no difference between positive and negative in this group; however, if x + y = 0 mod p and x ( 0 , p / 2 ) , there must be y > p / 2 . In this case, y is the addition inverse of x . When encoding M 1 , the vertices and edges existing in the additive inverse of p ( n 1 ) are set.
All participants jointly select a large prime p and a generator g , and each participant P i selects p k i as their private key and publishes h i = g p k i mod p ; all participants jointly generate the public key of the Lifted-ElGamal threshold cryptosystem with additive homomorphism h = g i = 1 n p k i mod p .
Start: (1) P 1 sets the existing vertices and edges as the additive inverse of p ( n 1 ) , and the nonexistent vertices and edges as the random number r . P 2 , , P n re-encode according to the 0–1 coding rule, and take the diagonal and lower triangular elements to form the vector X i = ( x i 1 , x i 2 , , x i t ) .
(2) Vector X i of participant P i is encrypted and recorded as E ( X i ) = ( E ( x i 1 ) , E ( x i 2 ) , , E ( x i t ) ) , and E ( X i ) is made public.
(3) All participants compute the component product of each column separately.
Let c = ( c 1 , c 2 , , c t ) = ( i = 1 n E ( x i 1 ) , i = 1 n E ( x i 2 ) , , i = 1 n E ( x i t ) ) .
(4) All participants jointly decrypt; assuming decryption of c k = ( c k 1 , c k 2 ) , participant P i first computes and publishes y i = c k 1 p k i mod p , and then uses the zero-knowledge proof to prove to other participants that the decrypted data provided by themselves are correct, i.e., log g h i = log c k 1 y i . If the verification fails, this indicates that there is deception, and the algorithm is terminated. If the verification is passed, decryption continues.
(5) All participants decrypt and get g M k = c k 2 i = 1 n y i mod p . If g M k = 1, it exists in the intersection; if g M k 1 , it does not exist. According to the decrypted data and 0–1 coding rule, the intersection of the graph is restored.
The algorithm ends.
According to the 0–1 coding rule, the matrix of graph G 1 , G 2 , G 3 , G 4 can be expressed as shown in Figure 3.
The triangle area in Figure 3, that is, the diagonal of the matrix and the following elements can be taken to form a vector:
X 1 = 3 , 3 , 3 , 3 , 12 , 3 , 11 , 1 , 2 , 3 , 2 , 1 , 2 , 3 , 3 , X 2 = 1 , 0 , 0 , 1 , 0 , 1 , 1 , 0 , 0 , 1 , 0 , 0 , 0 , 1 , 1 , X 3 = 1 , 1 , 1 , 1 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 1 , X 4 = 1 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 0 , 0 , 1 , 1 , 1 .
After the elements are encrypted and published, the product of each column is computed. In the operation process, the third element of X 1 is used as p 3 , i.e., 1117 − 3 = 1114. Since the algorithm uses the Lifted-ElGamal threshold cryptosystem with additive homomorphism, it has the characteristics of E ( M 1 ) × E ( M 2 ) = E ( M 1 + M 2 ) .
It can be obtained that c = ( c 1 , c 2 , , c t ) = 0 , 2 , 1 , 0 , 13 , 0 , 13 , 2 , 2 , 5 , 3 , 1 , 3 , 5 , 6 .
According to the algorithm, if g M k = 1 , it exists in the intersection set; if g M k 1 , it does not exist. Therefore, the intersection set is X = 1 , 0 , 0 , 1 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 . After completing x according to the 0–1 coding rule, Restore X to the triangle area in the Figure 4, and the original matrix is restored as M . According to the coding rule, the graphs’ intersection can be obtained as shown in Figure 4.

4.3. Security Proof

The proof of the algorithm’s security under the malicious model was defined in [26], which is the real/ideal model paradigm.
Theorem 1.
Algorithm 2 is secure under the malicious model.
Because the status of each participant in the algorithm is equal, the participants can be divided into honest participants and malicious participants; only the largest set of collusive attackers needs to be considered. If the algorithm is secure for the set of maximum collusive attackers, the set of collusive attackers composed of any subset of the set of maximum collusive attackers is secure.
The maximum collusive attacks are composed of any n 1 participants, set as I = { P 2 , P 3 , , P n } .
It needs to be proven that, for any probabilistic polynomial time algorithm strategy A adopted by the attacker who controls all participants in I in the real model algorithm, there is a probabilistic polynomial time algorithm strategy B in the ideal model algorithm, such that { I D E A L f , I , B ( z ) ( X ) X , z } c { R E A L , I , A ( z ) ( X ) X , z } .
In the real model algorithm, the ciphertext X 1 disclosed in step (2) is encrypted by the threshold encryption algorithm. During decryption, all participants need to decrypt together; thus, this step is secure and does not disclose any information.
When executing the real model algorithm, I is taken as a whole, and the input of the algorithm is X = ( x 1 , A ( x 2 , , x n ) ) . When decrypting in step (4), if there is a participant P i ( i I ) who cannot prove that their decrypted data are correct, the algorithm is terminated. At this point, P 1 cannot get f ( x ) , but a malicious participant may get the correct f ( x ) . At this time, the attacker can determine the output result according to their own strategy. That is, the attacker outputs A ( X I , I , r , z , C , y i , v i , f ( X ) ) ; thus, { I D E A L f , I , B ( z ) ( X ) X , z } = { A ( X I , I , r , z , C , y i , v i , f ( X ) ) , } .
If the algorithm is not terminated, P 1 receives f ( x ) , and { I D E A L f , I , B ( z ) ( X ) X , z } = { A ( X I , I , r , z , C , y i , v i , f ( X ) ) , f ( X ) } , where r represents the random number selected by the attacker, z represents auxiliary information, c is the result obtained by calculating the product in step (3), y i is the decryption information provided by participant P i , and v i is the information to verify whether y i is correct according to the zero-knowledge proof.
In the ideal model algorithm, P 1 sends their data x 1 to TTP, whereas B sends malicious participant data X I to A , gets A ( X I ) , and sends it to TTP. TTP computes f ( X ) according to the obtained X = ( X 1 , A ( X I ) ) and sends the result to B . B randomly selects x 1 to make f ( x 1 , A ( X I ) ) = f ( x 1 , A ( X I ) ) . B executes the algorithm and provides I with the ciphertext vector C 1 of x 1 and y i ; v i is required for zero-knowledge proof.
When executing the algorithm, if the algorithm is terminated, TTP does not send P 1 the calculation result, whereby P 1 can only get ; otherwise, it sends the calculation result.
Whether TTP sends the correct result to P 1 or not, B uses ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) to invoke A , i.e., output A ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) . Therefore, if the real model algorithm is terminated, the output is { I D E A L f , I , B ( z ) ( X ) X , z } = { ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) , } . Otherwise, the output is { I D E A L f , I , B ( z ) ( X ) X , z } = { ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) , f ( X ) } .
Comparing the real model algorithm with the ideal model algorithm, it can be found that the output of P 1 is the same. Because C 1 , C 1 is the ciphertext encrypted by the probabilistic encryption algorithm, C 1 c C 1 . y i and y i are the same form; thus, y i c y i . v i and v i can be guaranteed by the zero-knowledge proof; thus, v i c v i . Therefore, A ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) c A ( X I , I , r , z , C 1 , y i , v i , f ( X ) ) , i.e., { I D E A L f , I , B ( z ) ( X ) X , z } c { R E A L , I , A ( z ) ( X ) X , z } .
Therefore, the ideal model algorithm and the real model algorithm are computationally indistinguishable, i.e., the algorithm is secure under the malicious model.

4.4. The MPC Algorithm of Graphs’ Union under the Malicious Model

The difference between the intersection algorithm and the union algorithm of graphics is, firstly, the different encoding methods and, secondly, the different determination results after decryption. In addition, the algorithm steps and encryption and decryption methods are the same; hence, correctness analysis and security proof of Algorithm 3 are omitted.
Algorithm 3.The MPC algorithm of graphs’ union under the malicious model.
Input: Participants P 1 , P 2 , , P n respectively own graphs G 1 , G 2 , , G n .
Output: Union of G = G 1 G 2 G n .
Preparation stage: All participants jointly select a large prime p and a generator g , and each participant P i selects a p k i as their private key and publishes h i = g p k i mod p ; all participants jointly generate the public key of the Lifted-ElGamal threshold cryptosystem with additive homomorphism h = g i = 1 n p k i mod p .
Start:
(1) G 1 , G 2 , , G n is encoded according to the 0–1 coding rule, and the diagonal and lower triangular elements are taken to form the vector X i = ( x i 1 , x i 2 , , x i t ) .
(2) Participant P i s vector X i is encrypted and recorded as E ( X i ) = ( E ( x i 1 ) , E ( x i 2 ) , , E ( x i t ) ) , and E ( X i ) is made public.
(3) All participants compute the component product of each column separately.
Let c = ( c 1 , c 2 , , c t ) = ( i = 1 n E ( x i 1 ) , i = 1 n E ( x i 2 ) , , i = 1 n E ( x i t ) ) .
(4) All participants jointly decrypt; assuming decryption of c k = ( c k 1 , c k 2 ) , participant P i first computes and publishes y i = c k 1 p k i mod p , and then use the zero-knowledge proof to prove to other participants that the decrypted data provided by themselves are correct, i.e., log g h i = log c k 1 y i . If the verification fails, it indicates that there is deception, and the algorithm is terminated. If the verification is passed, decryption continues.
(5) All participants decrypt and get g M k = c k 2 i = 1 n y i mod p . If g M k 1, it exists in the intersection; if g M k = 1 , it does not exist. According to the decrypted data and coding rule, the intersection of the graph is restored.
The algorithm ends.

5. Efficiency Analysis

5.1. Computational Complexity and Communication Complexity

In this paper, the MPC algorithm of graphs’ intersection and union under the malicious model was proposed. Since the graphs’ intersection and union MPC algorithm under the malicious model has not been seen yet, it cannot be compared with the existing algorithms under the malicious model. Therefore, the graphs’ intersection algorithm under the semi-honest model is selected for comparison with Algorithm 2. Since the application scenarios in [21,22] are different from this paper, the results in [23,24] are compared with Algorithm 2′s efficiency.
Computational complexity analysis.
The computational complexity of the algorithm is measured by modular exponential operation. Zhou [23] first used the Paillier encryption algorithm to express the set as a polynomial to compute the intersection. At this time, m 2 + 7 m + 2 modular exponential operations are required. The encryption process requires 2 m 2 modular exponential operations, homomorphic operation of matrix requires m 2 modular exponential operations, and decryption requires 2 m 2 modular exponential operations. That is, 6 m 2 + 7 m + 2 modular exponential operations are required to compute the intersection, and ( 6 m 2 + 7 m + 2 ) n 1 modular exponential operations are required for n party to compute the intersection.
Wei [24] used the Lifted-ElGamal threshold cryptosystem, which requires a total of n modular exponential operations. In the encryption process, n participants need a total of 3 n t modular exponential operations. The joint decryption process requires at most n t modular exponentiation. Therefore, in the case of n participants, Wei [24] needs n ( 4 t + 1 ) modular exponential operations, i.e., 2 m 2 n + 2 m n + n modular exponential operations.
In Algorithm 2, all participants jointly generate the public key h = g i = 1 n p k i mod p ; a total of n modular exponential operations are required. In the encryption process, encrypting a plaintext requires three modulo exponential operations. There are n participants in Algorithm 2, and each person has t vectors, i.e., 3 n t modulo exponential operations are required for encryption. In the decryption process, decrypting a ciphertext requires n t modular exponential operations. The method of proving the equality of discrete logarithms is used in the zero-knowledge proof. Every time the decrypted data are verified, there are four modular exponential operations, a total of n participants, a total of t decrypted vectors to be verified, and a total of 4 n t modular exponential operations. Therefore, this algorithm requires a total of n + 3 n t + n t + 4 n t = n ( 8 t + 1 ) modular exponential operations, i.e., 4 m 2 n + 4 n m + n modular exponential operations.
Communication complexity analysis.
In [23], when the set is expressed as a polynomial, it needs two rounds. When it is sent to the client to find the intersection, it needs one round. When it is sent to the server after homomorphic operation, it needs one round. That is, the two parties need four rounds. If the intersection of n parties is multiple two parties, a total of 4 ( n 1 ) rounds of communication are required.
In [24], when n participants first construct a threshold, n 1 rounds are needed. In the encryption and replacement process, n 1 rounds are needed. The decryption process needs n 1 rounds. Therefore, a total of 3 ( n 1 ) rounds are needed.
In Algorithm 2, when n participants to construct a threshold, n 1 rounds are needed. In the encryption process, n 1 rounds are needed. In the decryption process, ( t + 1 ) ( n 1 ) rounds are needed. Therefore, a total of ( 3 + t ) ( n 1 ) communication rounds are needed, as shown in Table 1.
As can be seen from the Table 1, compared with Zhou [23], Algorithm 2 is applicable to n participants, and the research scope is wider compared with Wei [24]. Algorithm 2 not only has high efficiency, but can also resist the attacks of malicious participants.

5.2. Experimental Simulation

In order to prove the efficiency of Algorithm 2, it was verified by experiment simulation. The experimental environment was as follows: Intel (R) core (TM) i5-8400 CPU, 8 GB memory, Windows 10 64 bit operating system, and Pychar + Python programming enviroment. The prime numbers p and q in [23] were set to 256 bits, and the parameter p of [24] and the Lifted-ElGamal cryptosystem were set to 512 bits. Under the malicious model, we outsourced the modular multiplication required for the cut-and-choose step of Algorithm 2 to improve efficiency.
The algorithms from [23,24] and Algorithm 2 in this paper were simulated in practice. Multiple experiments were carried out for each algorithm, and the experimental results were randomly selected 50 times to obtain the average value. The running time of the algorithms is shown in Figure 5.
It can be seen from the experimental results that the running efficiency of the algorithm in [23] was lower than that of Algorithm 2. Compared with [24], this paper used the threshold encryption and zero-knowledge proof to prove the correctness of decrypted data during decryption, which can resist malicious attacks.
Note 2: Under the malicious model algorithm, the zero-knowledge proof is usually used to force malicious participants to act like semi-honest participants. Through the zero-knowledge proof, the computational complexity is greatly increased and the execution efficiency is significantly reduced. Therefore, the zero-knowledge proof uses preprocessing or computing outsourcing methods to improve efficiency. This aspect of the data does not involve private data, and its calculation can be outsourced. This is feasible in our algorithms, which can at least double the efficiency.

6. Conclusions

The MPC algorithms of graphs’ intersection and union are important research problems in the field of MPC, with a very wide application prospect in family medical history and military activities. Most of the existing graphs’ intersection and union algorithms are secure under the semi-honest model, but not secure in the presence of malicious participants. In this paper, two malicious MPC algorithms were proposed. The innovation of this paper’s algorithm is that it can target multiple participants; combined with the threshold Lifted-ElGamal threshold cryptosystem, the graphs’ intersection and union MPC algorithms are designed under the malicious model. Using the real/ideal model paradigm, it is proven that the algorithm is secure under the malicious model and remains efficient compared with related studies.
In the future, we will continue to study the set problem under the malicious model, design more efficient MPC algorithms related to the confidentiality decision set under the malicious model, promote the development of MPC research, and further explore solutions for privacy protection.

Author Contributions

Conceptualization, X.L., X.-F.T. and D.L.; validation, X.-B.C., G.X. and N.N.X.; writing—original draft preparation, X.-F.T.; writing—review and editing, X.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China: Big Data Analysis based on Software Defined Networking Architecture (No. 62177019, F0701), the NSFC (62271070, 72293583, and 61962009), the Inner Mongolia Natural Science Foundation (2021MS06006), the 2023 Inner Mongolia Youth Science and Technology Talents Development Project (NJYT23106), the 2022 Fund Project of Central Government Guiding Local Science and Technology Development (20220175), the 2022 Basic Scientific Research Project of Direct Universities of Inner Mongolia (20220101), the 2022 “Western Light” Talent Training Program “Western Young Scholars” Project, the 14th Five Year Plan of Education and Science of Inner Mongolia (NGJGH2021167), the 2022 Inner Mongolia Postgraduate Education and Teaching Reform Project (20220213), the 2022 Ministry of Education Central and Western China Young Backbone Teachers and Domestic Visiting Scholars Program (2022015), the Inner Mongolia Discipline Inspection and Supervision Big Data Laboratory Open Project Fund (IMDBD202020), the Baotou Kundulun District Science and Technology Plan Project (YF2020013), the Inner Mongolia Science and Technology Major Project (2019ZD025), Project JCKY2021208B036, and the Fundamental Research Funds for Beijing Municipal Commission of Education.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Yao, A.C. Protocols for secure computations. In Proceedings of the 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982), Chicago, IL, USA, 3–5 November 1982; pp. 160–164. [Google Scholar]
  2. Goldwasser, S. Multi party computations: Past and present. In Proceedings of the Sixteenth Annual ACM Symposium on Principles of Distributed Computing, Santa Barbara, CA, USA, 21–24 August 1997; pp. 1–6. [Google Scholar]
  3. Cramer, R.; Damgård, I.B. Secure Multi-Party Computation. Ph.D. Thesis, Cambridge University Press, Cambridge, UK, 2015. [Google Scholar]
  4. Akram, A.; Giannakou, A.; Akella, V.; Lowe-Power, J.; Peisert, S. Performance analysis of scientific computing workloads on general purpose tees. In Proceedings of the 2021 IEEE International Parallel and Distributed Processing Symposium (IPDPS), Portland, OR, USA, 17–21 May 2021; pp. 1066–1076. [Google Scholar]
  5. Fagin, R.; Naor, M.; Winkler, P. Comparing information without leaking it. Commun. ACM 1996, 39, 77–85. [Google Scholar] [CrossRef]
  6. Yao, Y.; Xiong, N.; Park, J.H.; Ma, L.; Liu, J. Privacy-preserving max/min query in two-tiered wireless sensor networks. Comput. Math. Appl. 2013, 65, 1318–1325. [Google Scholar] [CrossRef]
  7. Wang, J.; Wu, L.; Zeadally, S.; Khan, M.K.; He, D. Privacy-preserving data aggregation against malicious data mining attack for iot-enabled smart grid. ACM Trans. Sens. Netw. 2021, 17, 1–25. [Google Scholar] [CrossRef]
  8. Li, S.; Mu, N.; Le, J.; Liao, X. Privacy preserving frequent itemset mining:Maximizing data utility based on database reconstruction. Comput. Secur. 2019, 84, 17–34. [Google Scholar] [CrossRef]
  9. Veeraragavan, N.R.; Nygård, J.F. Decansec: A decentralized architecture for secure statistical computations on distributed health registry data. In Proceedings of the 16th International Conference on Availability, Reliability and Security, Vienna, Austria, 17–20 August 2021; pp. 1–9. [Google Scholar]
  10. Wang, Z.; Pang, X.; Chen, Y.; Shao, H.; Wang, Q.; Wu, L.; Chen, H.; Qi, H. Privacy-preserving crowd-sourced statistical data publishing with an untrusted server. IEEE Trans. Mob. Comput. 2018, 18, 1356–1367. [Google Scholar] [CrossRef]
  11. Kumar, P.; Kumar, R.; Srivastava, G.; Gupta, G.P.; Tripathi, R.; Gadekallu, T.R.; Xiong, N.N. PPSF: A privacy-preserving and secure framework using blockchain-based machine-learning for IoT-driven smart cities. IEEE Trans. Netw. Sci. Eng. 2021, 8, 2326–2341. [Google Scholar] [CrossRef]
  12. Kikuchi, H.; Eto, K.; Waki, K.; Mori, T. Vulnerability of privacy visor used to disrupt unauthorized face recognition. In Proceedings of the 2021 IEEE Conference on Dependable and Secure Computing (DSC), Aizuwakamatsu, Japan, 30 January–2 February 2021; pp. 1–7. [Google Scholar]
  13. Chen, Z.; Li, S.; Chen, L.; Huang, Q.; Zhang, W. Fully privacy-preserving determination of point-range relationship. Sci. Sin. Inf. 2018, 48, 187–204. [Google Scholar] [CrossRef]
  14. Fu, A.; Zhang, X.; Xiong, N.; Gao, Y.; Wang, H.; Zhang, J. VFL: A verifiable federated learning with privacy-preserving for big data in industrial IoT. IEEE Trans. Ind. Inform. 2020, 18, 3316–3326. [Google Scholar] [CrossRef]
  15. Chen, Y.; Zhou, L.; Pei, S.; Yu, Z.; Chen, Y.; Liu, X.; Du, J.; Xiong, N. KNN-BLOCK DBSCAN: Fast clustering for large-scale data. IEEE Trans. Syst. Man Cybern. Syst. 2019, 51, 3939–3953. [Google Scholar] [CrossRef]
  16. Liu, X.; Liu, X.; Zhang, R.; Luo, D.; Xu, G.; Chen, X. Securely Computing the Manhattan Distance under the Malicious Model and Its Applications. Appl. Sci. 2022, 12, 11705. [Google Scholar] [CrossRef]
  17. Zhao, C.; Zhao, S.; Zhao, M.; Chen, Z.; Gao, C.-Z.; Li, H.; Tan, Y.-A. Secure multi-party computation: Theory, practice and applications. Inf. Sci. 2019, 476, 357–372. [Google Scholar] [CrossRef]
  18. Wei, Q.; Li, S.; Wang, W.; Yang, Y. Privacy-preserving computational geometry. Int. J. Netw. Secur. 2019, 21, 1071–1080. [Google Scholar]
  19. Xu, J.; Wang, A.; Wu, J.; Wang, C.; Wang, R.; Zhou, F. Spcss: Social network based privacy-preserving criminal suspects sensing. IEEE Trans. Comput. Soc. Syst. 2020, 7, 261–274. [Google Scholar] [CrossRef]
  20. Xia, F.; Hao, R.; Li, J.; Xiong, N.; Yang, L.T.; Zhang, Y. Adaptive GTS allocation in IEEE 802.15. 4 for real-time wireless sensor networks. J. Syst. Archit. 2013, 59, 1231–1242. [Google Scholar] [CrossRef]
  21. Akavia, A.; Moran, T. Topology-hiding computation beyond logarithmic diameter. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Paris, France, 30 April–4 May 2017; pp. 609–637. [Google Scholar]
  22. Frikken, K.B.; Golle, P. Private social network analysis: How to assemble pieces of a graph privately. In Proceedings of the 5th ACM Workshop on Privacy in Electronic Society, Alexandria, VA, USA,, 30 October 2006; pp. 89–98. [Google Scholar]
  23. Zhou, F.; Xu, Z.; Li, Y.; Xu, J.; Peng, S. Private graph intersection protocol. In Proceedings of the Australasian Conference on Information Security and Privacy, Auckland, New Zealand, 3–5 July 2017; pp. 235–248. [Google Scholar]
  24. Wei, Q.; Li, S.D.; Wang, W.L.; Du, R.M. Secure multi-party computation of graph intersection and union. J. Cryptologic Res. 2020, 7, 774–788. [Google Scholar]
  25. Goldreich, O. Foundations of Cryptography: Volumn 2, Basic Applications; Cambridge University Press: Cambridge, UK, 2009. [Google Scholar]
  26. Li, S.D.; Xu, W.T.; Wang, W.L.; Zhang, M.Y. Secure maximum (minimum) computation in malicious mode. Chin. J. Comput. 2021, 44, 14. [Google Scholar]
  27. Freedman, M.J.; Hazay, C.; Nissim, K.; Pinkas, B. Efficient set intersection with simulation-based security. J. Cryptol. 2016, 29, 115–155. [Google Scholar] [CrossRef]
  28. El Gamal, T. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 1985, 31, 469–472. [Google Scholar] [CrossRef]
  29. Desmedt, Y.; Frankel, Y. Threshold cryptosystems. In Proceedings of the Conference on the Theory and Application of Cryptology, Houthalen, Belgium, 10–13 April 1989; pp. 307–315. [Google Scholar]
  30. Paillier, P. Public-key cryptosystems based on composite degree residuosity classes. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Prague, Czech Republic, 2–6 May 1999; pp. 223–238. [Google Scholar]
  31. Fouque, P.-A.; Poupard, G.; Stern, J. Sharing decryption in the context of voting or lotteries. In Proceedings of the International Conference on Financial Cryptography, Anguilla, British West Indies, 20–24 February 2000; pp. 90–104. [Google Scholar]
Figure 1. (a) Specific examples of G 1 ; (b) matrix M 1 .
Figure 1. (a) Specific examples of G 1 ; (b) matrix M 1 .
Electronics 12 00258 g001
Figure 2. Example diagram of G 1 , G 2 , G 3 , G 4 .
Figure 2. Example diagram of G 1 , G 2 , G 3 , G 4 .
Electronics 12 00258 g002
Figure 3. Example diagram of M 1 , M 2 , M 3 , M 4 .
Figure 3. Example diagram of M 1 , M 2 , M 3 , M 4 .
Electronics 12 00258 g003
Figure 4. (a) matrix M ; (b) Intersection graph of G 1 , G 2 , G 3 , G 4 .
Figure 4. (a) matrix M ; (b) Intersection graph of G 1 , G 2 , G 3 , G 4 .
Electronics 12 00258 g004
Figure 5. The running time of experimental simulation.
Figure 5. The running time of experimental simulation.
Electronics 12 00258 g005
Table 1. Overall performance comparison.
Table 1. Overall performance comparison.
AlgorithmComputational ComplexityCommunication RoundsResist Malicious Attacks
Zhou [23] ( 6 m 2 + 7 m + 2 ) n 1 4 n 1 No
Wei [24] 2 m 2 n + 2 m n + n 3 ( n 1 ) No
Algorithm 2 4 m 2 n + 4 n m + n ( 3 + t ) ( n 1 ) Yes
t : m ( m + 1 ) 2 ; n : the number of participants; m : the number of vertices.
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.

Share and Cite

MDPI and ACS Style

Liu, X.; Tu, X.-F.; Luo, D.; Xu, G.; Xiong, N.N.; Chen, X.-B. Secure Multi-Party Computation of Graphs’ Intersection and Union under the Malicious Model. Electronics 2023, 12, 258. https://doi.org/10.3390/electronics12020258

AMA Style

Liu X, Tu X-F, Luo D, Xu G, Xiong NN, Chen X-B. Secure Multi-Party Computation of Graphs’ Intersection and Union under the Malicious Model. Electronics. 2023; 12(2):258. https://doi.org/10.3390/electronics12020258

Chicago/Turabian Style

Liu, Xin, Xiao-Fen Tu, Dan Luo, Gang Xu, Neal N. Xiong, and Xiu-Bo Chen. 2023. "Secure Multi-Party Computation of Graphs’ Intersection and Union under the Malicious Model" Electronics 12, no. 2: 258. https://doi.org/10.3390/electronics12020258

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop