Next Article in Journal
Constructing 8 × 8 S-Boxes with Optimal Boolean Function Nonlinearity
Previous Article in Journal
A Two-Layer Transaction Network-Based Method for Virtual Currency Address Identity Recognition
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

On the Homomorphic Properties of Kyber and McEliece with Application to Post-Quantum Private Set Intersection

by
Anas A. Abudaqa
1,*,
Khaled Alshehri
2 and
Muhamad Felemban
3,4,5
1
Department of Computer Science, College of Engineering and Information Technology, Onaizah Colleges (OC), Qassim 56447, Saudi Arabia
2
Mathematics & Statistics Department, King Fahd University of Petroleum and Minerals (KFUPM), Dhahran 31261, Saudi Arabia
3
Interdisciplinary Research Center of Intelligent Secure Systems, King Fahd University of Petroleum and Minerals (KFUPM), Dhahran 31261, Saudi Arabia
4
Computer Engineering Department, King Fahd University of Petroleum and Minerals (KFUPM), Dhahran 31261, Saudi Arabia
5
Information and Computer Science Department, King Fahd University of Petroleum and Minerals (KFUPM), Dhahran 31261, Saudi Arabia
*
Author to whom correspondence should be addressed.
Cryptography 2025, 9(4), 66; https://doi.org/10.3390/cryptography9040066
Submission received: 23 August 2025 / Revised: 4 October 2025 / Accepted: 13 October 2025 / Published: 20 October 2025

Abstract

Crystals-Kyber and Classic-McEliece are two prominent post-quantum key encapsulation mechanisms (KEMs) designed to address the challenges posed by quantum computing to classical cryptographic schemes. While the former has been standardized by the National Institute of Standards and Technology (NIST), the latter is well-known for its exceptional robustness and as one of the finalists of the fourth round of post-quantum cryptography standardization. Private set intersection (PSI) is a privacy-preserving technique that enables two parties, each possessing a dataset, to compute the intersection of their sets without revealing anything else. This can be achieved thanks to homomorphic encryption (HE), which allows computations on encrypted data. In this paper, firstly, we study Kyber and McEliece, apart from being KEMs, as post-quantum public key encryption (PKE), and examine their homomorphic properties. Secondly, we design two different two-party PSI protocols that utilize the homomorphic capabilities of Kyber and McEliece. Thirdly, a practical performance evaluation under NIST’s security levels 1, 3, and 5 is conducted, focusing on three key metrics: storage overhead, communication overhead, and computation cost. Insights indicate that the Kyber-based PSI Protocol, which utilizes the multiplicative homomorphic property, is secure but less efficient. In contrast, the McEliece-based PSI protocol, while efficient in practice, raises concerns regarding its security as a homomorphic encryption scheme.

1. Introduction

Of late, cryptographers have become increasingly worried about advances in quantum computing. Once a powerful quantum computer is released, Shor’s algorithm [1] will break all widely deployed public key cryptosystems (PKC), specifically those based on factoring or discrete-log hard problems like RSA and elliptic curve constructions. Consequently, in 2017, NIST called for Post-quantum cryptography (PQC) proposals. Lattice-based and code-based cryptographic schemes are two of the main types of proposals submitted to the NIST PQC competition for standardization. Code-based and lattice-based cryptographic schemes are conceptually similar in using noise (error) for security but differ in their mathematical foundations. Both schemes leverage the difficulty of certain structured decoding problems [2]. Indeed, lattice-based cryptography replaces the ‘codeword plus random errors’ of the code-based cryptography with a ‘lattice point plus random errors’ [3].
In the NIST’s third round PQC competition, Crystal-Kyber [4], a lattice-based post-quantum key encapsulation mechanism (KEM), has been selected for standardization. Additionally, another four KEM algorithms have been selected to continue in the NIST’s fourth round. Among the four submissions, Classic-McEleiece [3,5], an important code-based post-quantum KEM candidate, is constructed based on the original McEliece [6] and its dual variant, Niederreiter [7,8] public key encryption (PKE), which have proved their stability and robustness against attacks for over 40 years.
Private set intersection (PSI) is a cryptographic multiparty computation problem first introduced in [9], where distrusted parties holding private sets of elements submit their sets as inputs, and only one or more parties receive the intersection and nothing else. In the classical formulation, the protocol enables two parties to jointly compute the intersection. However, the problem can be extended to a multiparty PSI, adding a layer of complexity. Moreover, there are many variants of PSI. For example, we can classify PSI into one-way PSI, where only one party learns the output, or mutual PSI, where all parties receive the output. We can also classify the problem by the sizes of the input sets, such as balanced PSI for inputs of comparable sizes or unbalanced PSI, where one input is much larger than the others. In another variant, the output can be other functions than the intersection, like PSI-CA, where the output is the cardinality of the intersection rather than the intersection itself. Moreover, the problem might demand additional requirements, such as threshold-PSI, where the parties obtain the output only when the cardinality is above a certain threshold, or size-hiding PSI, where the size of the inputs is hidden throughout the protocol.
The PSI has wide real-world applications like medical and criminal records, anomaly detection, private database queries, the military sector, and others. The following motivational example demonstrates one of the real-world MPSI scenarios.
Example [10]: Various military factories want to compare the quality of a specific precision instrument with others of the same type. To achieve this goal, they need to collect these precision instruments from different military factories. However, no military factory is willing to expose its own private data to others.
Thanks to homomorphic encryption (HE), the sets’ intersection can be computed, and privacy is still preserved. HE is a property of public-key cryptosystems that enables certain computations to be performed on ciphertexts, producing an encrypted result that, when decrypted, complies with the outcome of the same operations on the plaintexts. Most public-key encryption schemes support at least one type of homomorphic operation. For the PSI problem, we are interested in homomorphic schemes that support addition and/or multiplication operations.
Motivated by this, in this work, we investigate and compare the homomorphic capabilities of the underlying public key encryption (PKE) schemes of two important post-quantum KEM candidates, namely Crystal-Kyber and Classic-McEliece, in the context of the two-party PSI problem. While the homomorphic properties of McEliece/Niederreiter PKE have already been studied in the literature stripped of any concrete applications, the homomorphic properties of Kyber have not, to the best of our knowledge, been directly examined. Therefore, we go beyond revisiting these properties by designing two new PSI protocols based on the respective cryptosystems. We stress that our focus is to study and examine the underlying PKEs of the mentioned candidates and to clarify whether these two candidates, in addition to their role in KEM schemes, are appropriate for quantum-safe homomorphic encryption.

Contributions

The main contributions of this study are threefold:
  • Designs a two-party PSI protocol that utilizes McEliece’s additive homomorphic property and the Bloom filter data structure.
  • Designs a two-party PSI protocol that utilizes Kyber’s multiplicative homomorphic property.
  • Provides an experimental performance evaluation framework to compare the two proposed protocols, considering NIST’s security levels 1, 3, and 5, and focusing on three key metrics: storage overhead, communication overhead, and computation cost.
The rest of the paper is organized as follows. Section 2 presents important background on HE, Crystal-Kyber, and Classic-McEliece. A literature review is conducted in Section 3. The design of the proposed PSI protocols and the theoretical analysis are detailed in Section 4, while the experimental work and results are presented in Section 5. Section 6 provides the conclusion and outlines the future work.

2. Background

In this section, we recall the necessary information that helps to understand the rest of the paper. Before delving into the details of the dedicated cryptosystems, we provide the following definitions to distinguish between three closely related concepts: public key cryptosystem (PKC), public key encryption (PKE), and key encapsulation mechanism (KEM).
Definition 1 (Public Key Cryptosystem (PKC)). 
Any cryptographic scheme that uses a pair of keys (public and private) for performing cryptographic tasks, including encryption, digital signature, and key exchange, is broadly referred to as PKC.
Definition 2 (Public Key Encryption (PKE)). 
A specific type of PKC designed solely for exchanging secure messages between two or more legitimate parties. It uses the public key for encryption and the private key for decryption.
Definition 3 (Key Encapsulation Mechanism (KEM)). 
A PKC protocol that can be used by two parties to establish a shared secret key over a public (insecure) channel. The output is not an encrypted message but a secret key used for symmetric key encryption.
Also, we provide the following security definitions that help in the formal proofs of the proposed algorithms.
Definition 4 (IND-CPA Security). 
A public key encryption scheme is said to achieve indistinguishability under chosen-plaintext attack (IND-CPA) if no polynomial-time (PPT) adversary A can distinguish between the encryptions of two messages of equal length, even when given access to the public key and the ability to encrypt any plaintext of their choice. Formally, for any PPT adversary A , the advantage in the IND-CPA game is negligible:
Adv PKE , A IND-CPA ( κ ) = Pr [ IND-CPA PKE A ( κ ) = 1 ] 1 2 negl ( κ )
where κ is the security parameter and the IND-CPA game involves the adversary choosing two messages, m 0 and m 1 , receiving an encryption of one of them, and attempting to determine which message was encrypted.
Definition 5 (IND-CCA Security). 
A public key encryption scheme achieves indistinguishability under chosen-ciphertext attack (IND-CCA) if it satisfies IND-CPA security and additionally remains secure even when a PPT adversary A has access to a decryption oracle that can decrypt any ciphertext except the challenge ciphertext. This represents a stronger security notion than IND-CPA, as it protects against adaptive chosen-ciphertext attacks. Formally, for any PPT adversary A with access to decryption oracle O dec , the advantage in the IND-CCA game is negligible:
Adv PKE , A IND-CCA ( κ ) = Pr [ IND-CCA PKE A , O dec ( κ ) = 1 ] 1 2 negl ( κ )
where the adversary can query the decryption oracle on any ciphertext other than the challenge ciphertext during the attack game.
Definition 6 (Semi-Honest Security Model). 
A two-party PSI protocol π = ( P 1 , P 2 ) is secure against semi-honest, a.k.a. honest but curious, adversaries if for any probabilistic polynomial-time (PPT) adversary A that corrupts at most one party, there exists a PPT simulator S such that for all sets G 1 and G 2 :
{ IDEAL S , A ( G 1 , G 2 , κ ) } c { REAL π , A ( G 1 , G 2 , κ ) }
where
  • IDEAL represents the ideal functionality where parties only learn G 1 G 2 .
  • REAL represents the real protocol execution.
  • c denotes computational indistinguishability.

2.1. Homomorphic Encryption

HE is a property of public-key cryptosystems that enables certain arithmetic computations to be performed on ciphertexts, producing an encrypted result that, when decrypted, complies with the outcome of the same operations on the plaintexts. Most public-key encryption schemes support at least one type of homomorphic operation. HE can be classified into three categories: (1) Partially homomorphic encryption (PHE), which can perform only one mathematical function an unlimited number of times. For example, the Paillier cryptosystem [11] supports only the addition operation, while the original RSA [12] can support only the multiplication operation. Other PHE schemes are Goldwasser and Micali [13], ElGamal [14], Naccache and Stern [15], Benaloh [16], and Okamoto and Uchiyama [17]. (2) Somewhat homomorphic encryption (SWHE): it supports some types of arithmetic functions a limited number of times. For example, the Boneh–Goh–Nissim cryptosystem [18] can evaluate unlimited additions and one multiplication. Other SWHE schemes are Yao [19], Sander et al. [20], and Ishai and Paskin [21]. (3) Fully homomorphic encryption (FHE), which supports an unlimited number of operations for an unlimited number of times. Constructing a fully homomorphic scheme that can evaluate an arbitrary function was not possible until Gentry’s breakthrough in 2009 [22]. Other FHE schemes are BFV [23], BGV [24], CKKS [25], and TFHE [26].

2.2. Crystal Kyber Cryptosystem

Crystal-Kyber [4] is a lattice-based public key cryptosystem mainly used as a KEM for establishing private keys for symmetric-key cryptosystems. The Kyber KEM is IND-CCA2 secure and is built upon Kyber PKE, which is IND-CPA secure. Its security is based on the hardness of the modular learning with errors (MWLE) problem, which is as hard as several worst-case lattice problems, specifically, the shortest vector problem (SVP). MLWE was first introduced in [27], and it offers much better efficiency and security tradeoffs when compared with learning with error (RWE) [2] and ring learning with error (RLWE) [28] problems. Moreover, its keys are fairly small to be used in real-world applications.
For detailed information and documentation about Kyber’s IND-CCA2-secure KEM, we refer the reader to [29].
Herein, we describe Kyber’s IND-CPA-secure PKE as it will be used to investigate the homomorphic properties of the cryptosystem. Let R and R q denote the rings Z [ X ] / X n + 1 and Z q [ X ] / X n + 1 , respectively, where n is a power of two such that X n + 1 is a cyclotomic polynomial. Specifically, Kyber operates over the polynomial ring R 3329 = Z 3329 [ x ] / x 256 + 1 and sets a security parameter k 2 to achieve better security than RLWE. Namely, k determines the number of polynomials in the module setting. Notably, when k = 1 , the MLWE instance reduces to a pure RLWE instance [30].
Kyber’s PKE Keygen, Encryption, and Decryption algorithms [4] are defined in Algorithm 1, Algorithm 2, and Algorithm 3, respectively.    
Algorithm 1 Kyber.KeyGen(): key generation
1:
A R q k × k
2:
( s , e ) β η k × β η k
3:
t : = Compress q A s + e , d t
4:
return ( p k : = ( A , t ) , s k : = s )
Algorithm 2 Kyber.Enc(pk = ( A , t ) , m M ): encryption
1:
t : = Decompress q t , d t
2:
r , e 1 , e 2 β η k × β η k × β η
3:
u : = Compress q A T r + e 1 , d u
4:
v : = Compress q t T r + e 2 + q 2 · m , d v
5:
return c : = ( u , v )
Algorithm 3 Kyber.Dec(sk = s, c = ( u , v )): decryption
1:
u : = Decompress q u , d u
2:
v : = Decompress q v , d v
3:
return Compress v s T u , 1

2.2.1. Example

For a simple example we set k = 2 , n = 4 , q = 7681 , d u = d t = 11 , d v = 3 . Let Bob’s public key be a 2 by 2 matrix A chosen randomly,
A = 1917 x 3 + 2032 x 2 + 2056 x + 273 4818 x 3 + 3189 x 2 + 6024 x + 153 520 x 3 + 7002 x 2 + 4588 x + 4276 2324 x 3 + 5975 x 2 + 3315 x + 1547
Then he also samples the secret key s and the error vector e from the centered binomial distribution β 4 :
s = x 3 2 x x 3 x 2 2 x e = x 3 x + 2 x 2
Calculating t = A s + e mod x 4 + 1 , we obtain
t = 6696 x 3 + 1950 x 2 + 5122 x + 5267 4184 x 3 + 7493 x 2 + 5013 x + 2709
after using the compression function, he obtains
t = 1785 x 3 + 520 x 2 + 1366 x + 1404 1116 x 3 + 1998 x 2 + 1337 x + 722
Then the public key will be ( A , t ) , while the secret key is s . Suppose Alice wants to send the message m = x 3 + x + 1 . For the first sample r , e 1 , e 2 β 4 2 × β 4 2 × β 4 , we obtain
r = 2 x 3 + x 2 + 2 x + 1 2 x 3 3 x 2 e 1 = 3 x 3 + x 2 3 x 3 3 x 3 3 x e 2 = x + 3
To find the ciphertext, Alice computes u : = A T r + e 1 , v : = t T r + e 2 + 3841 · m , we obtain
u = 534 x 3 + 6145 x 2 + 4948 x + 5655 3872 x 3 + 1990 x 2 + 3766 x + 888 v = 3931 x 3 + 376 x 2 + 5841 x + 5799
after compression, the ciphertext will turn to
u = 142 x 3 + 1638 x 2 + 1319 x + 1508 1032 x 3 + 531 x 2 + 1004 x + 237 v = 3931 x 3 + 376 x 2 + 5841 x + 5799
To decrypt the message, Bob decompresses the ciphertext and calculates v s T u = 3747 x 3 + 7294 x 2 + 3769 x + 3824 ; then the coefficients that are closer to 3841 than 0 or 7681 will be considered 1, otherwise 0. That is, the decrypted message will be 1 x 3 + 0 x 2 + 1 x + 1 , Alice’s original message.

2.2.2. Homomorphism

Let E ( x ) = ( u x , v x ) and E ( y ) = ( u y , v y ) be two ciphertexts. The following homomorphic relation holds:
E ( x ) + E ( y ) = E ( x y )
We define the addition in (4) as follows E ( x ) + E ( y ) = ( u x + u y , v x + v y ) .
For the multiplication, it is not as straightforward. Consider the following multiplication of two messages
( w x + q 2 · x ) ( w y + q 2 · y ) v x u x · s · v y u y · s v x v y v x i = 1 k u y i g i v y i = 1 k u x i g i + i = 1 k j = 1 k u x i u y j g i g j .
where u x i , u y i , g i are the i-th component of u x , u y , s and w i q 4 . Multiplying the LHS yields
( w x + q 2 · x ) ( w y + q 2 · y ) = w x w y + q 2 ( x w y + y w x ) + q 2 2 x y
Therefore, we write the multiplication as follows
E ( x ) · E ( y ) = d 1 , d 2 , d 3
The ciphertext in this form, Equation (5), is a non-standard ciphertext computed over the rationals Q , where
d 1 = v x · v y d 2 i = v x · u y i + v y · u x i d 3 i j = u x i · u y j
Note that the size of the ciphertext increased, and it is not decrypted as a usual ciphertext. It is possible to reduce it to the usual ciphertext form d 1 , d 2 such that it is decrypted as d 2 s T d 1 using a computationally costly operation called Relinearization [31]. Relinearization could be avoided when the multiplicative depth is small using what is called the leveled FHE [24]. As such, the non-standard ciphertext can be successfully decrypted using Equation (6).
x · y = d 1 d 2 · s + d 3 s · s q 2 2
For instance, in the two-party PSI protocol, the multiplicative depth is exactly equal to one, and Equation (6) can be efficiently used.

2.3. McEliece/Niederreiter and Classic-McEliece Cryptosystem

The Classic-McEliece key-encapsulation mechanism is derived from the code-based public key cryptosystem proposed by R. McEliece in 1978 [6]. More precisely, Classic-McEliece KEM is built upon Niederreiter [7,8], which is a dual variant of the McEliece PKE. The original McEliece PKE has a robust security history, as dozens of papers over 40 years have tried, with no success, to attack this system. The main reason that keeps McEliece away from practical consideration is its huge key sizes compared to those of its number-theoretic PKE counterparts.
McEliece PKE is based on the hardness of decoding a general linear code. The original algorithm uses binary Goppa codes, which can be efficiently decoded using an algorithm by Paterson. Let G be the k × n generator matrix of a linear code that can correct up to t errors and has an efficient decoding algorithm. The cryptosystem’s Keygen, Encryption, and Decryption algorithms are defined in Algorithms 4–6 as follows:   
Algorithm 4 McEliece.KeyGen(): key generation
1:
Select a random binary non-singular matrix S F 2 k × k
2:
Select an n × n permutation matrix P
3:
compute   G p : = S G P
4:
return   pk : = G p , sk : = ( S , P )
Algorithm 5 McEliece.Enc(pk = G p , m F 2 k ): encryption
1:
Choose a random vector e F 2 n | W H ( e ) = t
2:
Compute   c = m G p + e
3:
return   c
Algorithm 6 McEliece.Dec(sk = ( S , P ), c): decryption
1:
Compute   c = c P 1
2:
decode   m = d e c o d e ( c )
3:
compute   m = m S 1
4:
return   m
In the decryption algorithm, c = c P 1 = m S G + e P 1 , where m S G is a codeword. Since W H ( e P 1 ) t , we can decode c and obtain m = m S . Therefore, m = m S 1 .

2.3.1. Example

Consider the following: 4 × 12 generator matrix of a linear code that can correct up to t = 2 errors
G = 0 1 1 0 1 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 0 1 1 0 1 1 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 0 0 1 0
And assume Alice wants to send to Bob the message m = ( 1 , 0 , 1 , 0 ) . Bob generates S randomly with a permutation matrix P,
S = 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1 , P = 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0
Then
G p = S G P = 1 1 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 1 1 0 0 1 0 1 0 0 0 1 1 0 1 0 1 1 .
So now Alice computes and sends to Bob the following:
m G p + e = ( 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 1 , 1 , 0 ) + ( 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ) = ( 0 , 0 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 1 , 1 , 0 ) .
Bob then computes ( 0 , 0 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 1 , 1 , 0 ) P 1 = ( 0 , 0 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 1 , 1 , 0 ) P T = ( 0 , 1 , 1 , 1 , 1 , 0 , 1 , 0 , 1 , 1 , 1 , 0 ) . Notice the new error e P 1 = ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ) , so we can correct the errors and decode m S G to obtain m = ( 1 , 1 , 0 , 1 ) . Finally, Bob computes m S 1 = ( 1 , 1 , 0 , 1 ) 1 1 1 0 0 0 1 0 0 1 1 1 0 1 1 0 = ( 1 , 0 , 1 , 0 ) , Alice’s original message.

2.3.2. Homomorphism

McEliece PKE has the following additive homomorphism: [32]
E ( x ) + E ( y ) = E ( x y )
However, note the following:
E ( x ) + E ( y ) = x S G P + e 1 + y S G P + e 2 = ( x + y ) S G P + e 1 + e 2 = E ( x y )
We can see that the error vector e 1 + e 2 of E ( x y ) doubled in weight. Therefore, when performing the addition of ciphertexts, e 1 and e 2 should be chosen such that each has a weight of less than half of the maximum error-correcting rate of the code. In general, if we have n additions, each of the sum’s components must have a weight less than 1 / n of the maximum error-correcting rate of the code.
A more efficient dual variant of the McEliece cryptosystem is due to Niederreiter [7,8]. Consider the ( n , κ ) linear Binary Goppa Code G,the Niederreiter cryptosystem is defined as shown in Algorithms 7–9.   
Algorithm 7 Niederreiter.KeyGen(): key generation
1:
Generate the   ( n k ) × n   parity check matrix   H   for   G
2:
Select a random binary non-singular matrix   S F 2 ( n κ ) × ( n k )
3:
Select an   n × n   permutation matrix   P
4:
compute   H p : = S H P
5:
return   pk : = H p , sk : = ( S , P )
Algorithm 8 Niederreiter.Enc(pk = H p , m F 2 n ): encryption
1:
Encode the message   m   such that   m F 2 n | W H ( m ) = t
2:
Compute   c = H p m
3:
return   c
Algorithm 9 Niederreiter.Dec(sk = ( S , P ), c): decryption
1:
Compute   c = S 1 c
2:
  decode m = Syndrome decode ( c )
3:
compute   m = P 1 m
4:
return   m

3. Related Works

Exploring the homomorphic properties of McEliece PKE was first studied in [32]. However, no attention has been given to leveraging these properties for constructing PSI protocols. Similarly, the homomorphic properties of the MLWE lattice, upon which Kyber is built, were investigated in [31]. That study, however, was not specifically dedicated to Kyber itself but to the MLWE lattice structures in general.
The problem of constructing post-quantum-based PSI protocols has been studied extensively in the literature. Most of the proposed protocols are based on lattice-based structures; specifically RLWE and LWE problems. In [33], the authors provided a comprehensive literature review on the PSI problem.
In [34], the authors proposed a lattice-based size hiding protocol for two-party PSI-CA secure in a semi-honest environment. The security is based on the hardness of the decisional Learning With Errors (DLWE) problem with linear complexity in the size of the inputs. To prevent arbitrary inputs, they proposed a protocol where a trusted third party authorizes the client’s input set.
Later in [35], the authors generalized the protocol to the Multiparty-PSI problem, secure in the semi-honest model with O n k v max , where v max is the maximum set size and k and n are security parameters. The parties are arranged in a star topology so that all parties need not be online at the same time.
The security of the previous protocols is based on DLWE; however, other designs exist with security based on Ring-LWE. In [36], the authors proposed protocols based on the fully homomorphic encryption scheme that was proposed in [37], considering the semi-honest model. Also, the authors developed an extension protocol secure under the malicious model by outsourcing computing to a cloud. Another lattice-based protocol based on the NTRU fully homomorphic encryption scheme is proposed in [10].
While prior works have explored PSI protocols based on lattice assumptions such as LWE, RLWE, and NTRU, no existing study has designed PSI protocols built upon the PKEs of Kyber or McEliece. This leaves a clear gap in the literature, which we aim to address in this work. Specifically, we propose and evaluate two new two-party PSI protocols founded on Kyber and McEliece PKEs to examine and assess their homomorphic properties in practice.

4. Proposed PSI Protocols

In this section, the proposed post-quantum PSI protocols are presented.

4.1. Kyber Based Protocol

Based on the algorithm described in Section 2.3, we present the Kyber-based PSI protocol in the following section. Let P 1 , P 2 be two semi-honest parties holding the sets G 1 = g 11 , g 12 , . . , g 1 v , G 2 = g 21 , g 22 , . . , g 2 v , respectively, such that G 1 , G 2 U = g 1 , g 2 , , g w , where g 1 < g 2 < < g w . We can define a vector representation of the P i ’s set as G i = g i 1 , g i 2 , . . , g i w such that
g i j = p ( x ) , g j G i 0 , g j G i , ( i = 1 , 2 , j = 1 , 2 , , w ) .
where p ( x ) is a non-zero binary polynomial in R.
Taking the product of E ( G 1 ) and E ( G 2 ) and using (5), we have
E ( G 1 ) · E ( G 2 ) = E ( g 11 ) · E ( g 21 ) , E ( g 12 ) · E ( g 22 ) , . . , E ( g 1 w ) · E ( g 2 w ) = E ( g 11 g 21 ) , E ( g 12 g 22 ) , . . , E ( g 1 w g 2 w )
So, after decryption, we obtain
g 1 j g 2 j = p ( x ) 2 , g j G 1 G 2 0 , g j G 1 G 2 , ( j = 1 , 2 , , w ) .
Therefore, Algorithm 10 describes a Kyber-based private intersection protocol:   
Algorithm 10 Kyber-based Private Set Intersection
  Input: G 1 , G 2
  Output: G 1 G 2
1:
P 1 P 2 : E ( G 1 ) .
2:
P 2 : For each coordinate j { 1 , , w } , draw an independent zero-ciphertext Z j E ( 0 )
and set E ˜ ( g 1 j ) E ( g 1 j ) + Z j .
3:
P 2 : Compute the coordinate-wise product:
E ˜ ( G 1 ) · E ( G 2 ) = E ˜ ( g 11 ) · E ( g 21 ) , , E ˜ ( g 1 w ) · E ( g 2 w ) ,
where each product is returned in the form ( d 1 j , d 2 j , d 3 j ) , as defined in (5).
4:
P 2 P 1 : ( d 1 j , d 2 j , d 3 j ) j = 1 w .
5:
P 1 : For each index j,
m ˜ j d 1 j d 2 j · s + d 3 j s · s q 2 2
6:
P 1 : For  j = 1 , , w , If  m ˜ j = 0  then  g j G 1 G 2  else  g j G 1 G 2 .
7:
P 1 : Output G 1 G 2 .
The correctness of this protocol greatly depends on the noise of the underlying encryption scheme. In particular, from Section 2.2.2, the protocol is correct when every product in STEP 3 has the following property:
w x w y q 2 2 + x w x + y w y q 2 < 1 2
That is when
w x q 2 w y q 2 + w x q 2 + w y q 2 < 1 2
Because of the re-randomization in STEP 2, we differentiate between the distribution of w x and w y .
Working coefficient-wise, let p r ( t x ) be an upper bound on Pr w x j t x and p ( t y ) be an upper bound on Pr w y j t y . That is an upper bound on the probability that the j-th coefficient of the polynomials w x and w y is greater than t x and t y , respectively. Then, by union bound, we have Pr w x t x n p r ( t x ) and Pr w y t y n p ( t y ) . Therefore, if we choose t x and t y such that t x q 2 t y q 2 + t x q 2 + t y q 2 1 2 , we can have an upper bound on the failure rate of one product in STEP 3. That is Pr w x t x or w y t y n ( p r ( t x ) + p ( t y ) ) . Taking a union bound over all products in STEP 3, we have an upper bound on the total failure rate δ of the protocol
δ n w ( p r ( t x ) + p ( t y ) )
One choice of t x and t y is t x = t y = 6 2 2 q 2 . However, since w x is noisier due to re-randomization, we can have a better estimate by choosing t y = 1 2 t x q 2 1 + t x q 2 q 2 and t x such that n w ( p r ( t x ) + p ( t y ) ) is minimized. Using a Chernoff bound, we obtain the following result:
Theorem 1.
Algorithm 10 is ( 1 δ ) -correct, where δ satisfies
δ 2 n w ( p r ( t x ) + p ( t y ) )
Such that
p ( t y ) = min α 0 exp ( Ψ ( α ) α max { t x α q 2 d v + 1 , 0 } ) ,
p r ( t x ) = min α 0 exp ( 2 Ψ ( α ) α max { t y α q 2 d v , 0 } ) ,
where
Ψ ( α ) : = k n ln A r ( α ) + ln A s ( α ) + η ln 1 + cosh α 2 ,
A r ( α ) = 2 η η 4 η + 1 2 3 η 1 j = 1 η 2 η η j ( 1 + cosh ( j α ) ) η sinh j α q 2 d t + 1 j α q 2 d t + 1 , A s ( α ) = 2 η η 4 η + 1 2 3 η 1 j = 1 η 2 η η j ( 1 + cosh ( j α ) ) η sinh j α q 2 d u + 1 j α q 2 d u + 1
Proof. 
Let Δ d : = q / 2 d . We adopt a uniform quantization model, that is
δ t j Unif Δ d t 2 , Δ d t 2 , δ u j Unif Δ d u 2 , Δ d u 2 , δ v j Unif Δ d v 2 , Δ d v 2
Focusing on p ( t ) only since p r ( t ) can be derived in a similar manner taking into account the additional noise. The jth coefficient is
w y j = e r j + δ t r j s e 1 j s δ u j + e 2 j + δ v j .
Each one of the terms is a sum of k n products of a centered binomial and uniform random variables. Except for e 2 j , a centered binomial random variable, and δ v j , modeled by its upper bound a v : = Δ d v 2 . Then, define the random part:
G j : = w y j δ v j
We will compute the Moment Generating Function (MGF) of G j and apply the Chernoff bound. Note that if X β η , then E [ e θ X ] = 1 + cosh θ 2 η . Also, when U Unif [ Δ / 2 , Δ / 2 ] , then for any constant c , we have [ E e α c U ] = sinh ( α c Δ / 2 ) α c Δ / 2 = : sinc h α c Δ 2 , sinc h ( x ) : = sinh x x . Conditioning on r β η and using independence:
E e α r e | r = 1 + cosh ( α r ) 2 η , E e α r δ t | r = sinc h α r Δ d t 2
Then the MGF of each product in e r j and δ t r j is
A r ( α ) : = E r β η 1 + cosh ( α r ) 2 η sinc h α r Δ d t 2 .
Using the identity
E X β m e θ X sinc h ( γ X ) = 1 2 γ γ γ cosh 2 m θ + s 2 d s ,
And cosh 2 m u = 1 2 2 m 2 m m + 2 r = 1 m 2 m m r cosh ( 2 r u ) , and the binomial expansion of 1 + cosh ( α R ) 2 η , a straightforward telescoping yields A r ( α ) .
Similarly for A s ( α ) for s e 1 j and s δ u j . So,
E [ e α G j ] = A r ( α ) k n A s ( α ) k n 1 + cosh α 2 η = exp ( Ψ ( α ) )
and
Ψ ( α ) = k n ln A r ( α ) + ln A s ( α ) + η ln 1 + cosh α 2 .
From here, it is straightforward to apply the Chernoff bound, and the proof is complete.    □

Formal Security Proof

Theorem 2.
The Kyber-based Protocol (Algorithm 10) implements a secure two-party PSI in the semi-honest model, assuming the underlying Kyber PKE is IND-CPA secure.
Proof. 
We prove security by constructing simulators for both possible corruption cases and demonstrating computational indistinguishability between the real and ideal executions.
Following the semi-honest security model, we require that for any PPT adversary A corrupting at most one party, there exists a PPT simulator S such that
{ IDEAL S , A ( G 1 , G 2 , κ ) } κ N c { REAL Π , A ( G 1 , G 2 , κ ) } κ N
Case 1: P 1 is corrupted. When P 1 is corrupted, the adversary A 1 ’s view consists of (i) its input G 1 , (ii) the message received from P 2 : { ( d 1 j , d 2 j , d 3 j ) } j = 1 w , and (iii) the protocol output G 1 G 2 .
We construct simulator S 1 that, given G 1 , G 1 G 2 , and security parameter κ , operates as follows:
  • Generate Kyber key pair ( p k , s k ) KeyGen ( 1 κ )
  • For j = 1 , , w :
    • If g j G 1 G 2 : Generate ( d 1 j , d 2 j , d 3 j ) such that the decryption formula m j d 1 j d 2 j · s + d 3 j · S q 2 2 yields a non-zero polynomial
    • Otherwise: Generate ( d 1 j , d 2 j , d 3 j ) such that m j = 0
  • Output ( G 1 , { ( d 1 j , d 2 j , d 3 j ) } j = 1 w , G 1 G 2 )
The indistinguishability follows from the zero-ciphertext blinding performed by P 2 in Step 2, where E ˜ ( g 1 j ) E ( g 1 j ) + Z j with Z j E ( 0 ) . This randomization ensures that the homomorphic products reveal only intersection membership information. To extract anything more about P 2 ’s element, the adversary would need to identify ( u y , v y ) using the triple ( d 1 j , d 2 j , d 3 j ) , his ciphertext and the secret key. However, the triple equations are invariant under the map ( u x , v x , u y , v y ) ( α u x , α v x , α 1 u y , α 1 v y ) for any non-zero rational α . Let u ^ x be a particular solution found from d 3 (note that d 3 is independent of the secret key). Then, by randomization, we have that among the set L = { α u ^ x u x | α Q } , exactly one α satisfies α u ^ x u x = A r + e , for some small r and e. If P 1 can, find P 2 ’s element, then P 1 can find α , thus solving the problem: given L find α such that α u ^ x u x = A r + e for small r and e, which is hard. Thus, under the IND-CPA assumption of Kyber, no PPT adversary can distinguish between real and simulated products.
Case 2: P 2 is corrupted. When P 2 is corrupted, the adversary A 2 ’s view consists of (i) its input G 2 and (ii) the message received from P 1 : E ( G 1 ) = { E ( g 11 ) , , E ( g 1 w ) } . Note that P 2 does not receive the final output.
We construct simulator S 2 that, given G 2 and security parameter κ , operates as follows:
  • Generate Kyber key pair ( p k , s k ) KeyGen ( 1 κ )
  • For j = 1 , , w : Sample r j uniformly at random from the message space and compute E ( g 1 j ) Encrypt ( p k , r j )
  • Output ( G 2 , { E ( g 1 j ) } j = 1 w )
By the IND-CPA security of Kyber PKE, encryptions of actual set elements are computationally indistinguishable from encryptions of random elements. Since P 2 receives no intersection information, the simulation is perfect.    □

4.2. McEliece-Based Protocol

Since McEliece PKE supports only the additive homomorphism, a direct algorithm as in (10) cannot be used. In fact, the direct algorithm can be used, but if a peer acts maliciously by pretending that its set includes all the elements in the domain [38], privacy is no longer guaranteed. Hence, a data structure, e.g., a bloom filter, is needed to design a secure PSI protocol. To perform multiple AND operations, the Sandar Young Yung (YYT) technique [20] is utilized.
We first define the function E x p a n d , E ( x ) , where a bit x encrypted to E ( x ) is expanded to a vector ciphertext with length l as follows:
1. For each i, draw a sample r i uniformly from { 0 , 1 } .
2. For each element in the vector ciphertext E x p a n d ( E ( x ) ) = ( E ( e 1 ) , E ( e 2 ) , , E ( e l ) ) is set
E e i = E ( x ) + E ( 1 ) = E ( x 1 ) if r i = 0 E ( 0 ) if r i = 1
When the vector ciphertext E x p a n d ( E ( x ) ) is decrypted, the result will be ( e 1 , e 2 , , e l ) . If x = 1 , then x 1 = 0 , so for all i, e i = 0 . Otherwise, e i will be uniformly distributed in { 0 , 1 } . Now, we define the sum of two vector ciphertexts as follows:
E x p a n d ( E ( x ) ) + E x p a n d ( E ( y ) ) = E e 1 + E f 1 , , E e l + E f l = E e 1 f 1 , , E e l f l .
Observe that if both x and y are 1, then all e i f i is 0. However, if one of them is 0, then e 1 f 1 will be uniformly distributed in { 0 , 1 } . So, we have
E x p a n d ( E ( x ) ) + E x p a n d ( E ( y ) ) = E x p a n d ( E ( x y ) )
A bloom filter is a probabilistic data structure used to test for inclusion [39]. A bloom filter can be represented as a vector of bits B = ( b 1 , , b m ) of size m and λ associated hash functions h i : { 0 , 1 } l { 1 , , m } . Initially, the Bloom filter’s bits are all set to zero. Then we define the following two functions:
  • A d d ( x ) : Return B with b h i ( x ) = 1 for all 1 i λ .
  • T e s t ( x ) : Return i = 1 λ b h i ( x ) .
In a bloom filter, the function A d d ( x ) will add the element x by setting the location in B with index b h i ( x ) to 1 for i = 1 , , λ . The function T e s t ( x ) will test whether an element x is added by checking whether the locations with indices calculated from the hash functions are set to 1 or not. When T e s t ( x ) returns 0, this implies that x is definitely not added to the bloom filter; on the other hand, if T e s t ( x ) returns 1, this tells us that x is probably in the bloom filter. Therefore, false negatives are impossible, while false positives are allowed. However, given that the probability of false positives ( ϵ ) is equal to 2 λ , increasing the number of hash functions ( λ ) can lead to a negligible value of ϵ . Accordingly, the optimal size of the bloom filter can be set by m = n λ ln 2 .
Therefore, we can, based on [40], perform a private intersection protocol as shown in Algorithm 11:
Algorithm 11 Private Set Intersection Protocol
1:
P 1 : i = 1 , v : A d d g 1 i
2:
P 1 P 2 : G p , ( E b 1 , , E b m )
3:
P 2 : i = 1 , , v : E w i = E g 2 i + j = 1 λ E x p a n d ( E ( b h j g 2 i ) )
4:
P 2 P 1 : E w 1 , , E w m
5:
P 1 : D E w 1 , , D E w m
6:
P 1 : g 11 , , g 1 n w 1 , , w m
In STEP 3, we have the following
E w i = E g 2 i + j = 1 λ E x p a n d ( E ( b h j g 2 i ) ) = E g 2 i + E x p a n d ( E ( j = 1 λ b h j ( g 2 i ) ) )
This computation will result to
w i = g 2 i , 1 e 1 , , g 2 i , l e l .
If g 2 i is in the bloom filter, then b h j g 2 i will all be 1. So e j = 0 . That is g 2 i , j e j = g 2 i , j . However, if g 2 i is not in the bloom filter, then e j s will be randomly chosen, and so, w i will be chosen at random.

Formal Security Proof

Theorem 3.
Assuming the IND-CPA security of McEliece PKE and the error vector weights are properly managed, then the McEliece-based PSI protocol (Algorithm 11) implements a secure private set intersection in the semi-honest model.
Proof. 
We prove security by demonstrating that the view of any party in the real protocol can be simulated from their input and output alone, making it indistinguishable from the ideal model. For any PPT adversary A corrupting at most one party, there exists a PPT simulator S such that
{ IDEAL S , A ( G 1 , G 2 , λ ) } λ N c { REAL Π , A ( G 1 , G 2 , λ ) } λ N
  • Case 1: P 1 is corrupted.
When P 1 is corrupted, the adversary A 1 ’s view consists of (i) Its input G 1 , (ii) the message received from P 2 : { E ( w 1 ) , , E ( w m ) } , and (iii) the protocol output G 1 G 2 .
We construct simulator S 1 as follows:
  1:
Input:  G 1 , G 1 G 2 , security parameter κ
  2:
Generate McEliece key pair ( G p , S ) KeyGen ( 1 κ )
  3:
for  i = 1 , , | G 2 |  do
  4:
if  g 2 i G 1 G 2  then
  5:
  Generate E ( w i ) such that decryption yields an element in G 1
  6:
else
  7:
  Generate E ( w i ) such that decryption yields a random element not in G 1
  8:
end if
  9:
end for
10:
Output:  ( G 1 , { E ( w 1 ) , , E ( w m ) } , G 1 G 2 )
Indistinguishability Analysis: The key insight lies in the properties of the Bloom filter and the additive homomorphic operations:
  • Bloom Filter Masking: For elements g 2 i G 1 G 2 , all hash functions h j ( g 2 i ) map to positions set to 1 in the Bloom filter, resulting in E ( w i ) = E ( g 2 i ) after the expand operations cancel out.
  • Random Masking for Non-intersection: For elements g 2 i G 1 G 2 , at least one hash function maps to a position set to 0 in the Bloom filter. The expand operation introduces randomness, making w i appear random and unrelated to g 2 i .
Under the IND-CPA security of McEliece PKE, the encrypted values are computationally indistinguishable from encryptions of the appropriate elements determined by intersection membership.
Therefore, IDEAL S 1 , A 1 ( G 1 , G 2 , κ ) c REAL Π , A 1 ( G 1 , G 2 , κ ) .
  • Case 2: P 2 is corrupted.
When P 2 is corrupted, the adversary A 2 ’s view consists of
  • Its input G 2
  • The message received from P 1 : G p , { E ( b 1 ) , , E ( b m ) } (encrypted Bloom filter)
We construct simulator S 2 as follows:
1:
Input:  G 2 , security parameter κ
2:
Generate McEliece key pair ( G p , S ) KeyGen ( 1 κ )
3:
Initialize Bloom filter B = ( b 1 , , b m ) with random bits
4:
for  j = 1 , , m  do
5:
E ( b j ) Encrypt ( G p , b j ) where b j { 0 , 1 } uniformly at random
6:
end for
7:
Output:  ( G 2 , G p , { E ( b 1 ) , , E ( b m ) } )
Indistinguishability Analysis: The security follows from the IND-CPA security of McEliece PKE:
  • Ciphertext Indistinguishability: Under the syndrome decoding assumption, encryptions of the actual Bloom filter bits are computationally indistinguishable from encryptions of random bits.
  • No Output Leakage: Since P 2 does not receive the intersection result, the simulator need not ensure consistency with any output information.
  • Bloom Filter Privacy: The encrypted Bloom filter reveals no information about the underlying set G 1 beyond what can be inferred from the ciphertexts, which is negligible under the IND-CPA assumption.
Therefore, IDEAL S 2 , A 2 ( G 1 , G 2 , κ ) c REAL Π , A 2 ( G 1 , G 2 , κ ) . □

4.3. Limitations and Discussion

Kyber and McEliece PKEs are probabilistic and achieve indistinguishability under chosen plaintext attack (IND-CPA) security. However, many real-world applications require a much stronger notion of security against active attacks. Namely, the PKE scheme should achieve indistinguishability under chosen ciphertext attack (IND-CCA) security. In the literature, IND-CCA secure variants of McEliece have been, proposed as in [41,42,43]. On the contrary, there is no IND-CCA secure variant of Kyber PKE.
Employing the McEliece cryptosystem as an additive homomorphic scheme primarily affects its security. Hence, we need to choose the error vectors so that they have proper weights. Since we have at most λ + 2 in STEP 4 and STEP 5 Algorithm 11, then we choose W H e j 0 , t λ + 2 . This reduction in the weight should be managed carefully; otherwise, the cryptosystem will be vulnerable to an information-set decoding attack [44,45]. In the experimental work section, we multiply t by 1.5 to keep the algorithm supporting the homomorphic property with high security. However, this will affect the ciphertext and public key size as will be shortly shown in Section 5. For the same security issue, the McEliece-based PSI protocol (Algorithm 11) is built upon the less efficient protocol [40] rather than the one proposed in [46,47]. From the correctness perspective, the McEliece-based PSI protocol depends on, again, the error vector and the Bloom filter, which may generate false positives.
On the other hand, the homomorphic properties of Kyber are straightforward and reveal no security breaches. One limitation of Kyber as a multiplicative homomorphic scheme is that the use of this property becomes computationally costly when many items are involved in a single multiplication operation, since bootstrapping keys and relinearization are required [31]. However, when only a small number of items (e.g., two) are multiplied per operation, as in the Kyber-based PSI protocol (Algorithm 10), the overhead remains manageable, keeping the computational cost within a practical range, as will be shown in the next section. Another limitation of the Kyber-based PSI protocol is that the non-standard ciphertext resulted by the homomorphic multiplication is larger than the standard ciphertext by 50 % . The correctness of the protocol relies on the noise boundedness introduced by the Kyber PKE. That is, the protocol is correct as long as the accumulated noise during encryption and homomorphic multiplications does not exceed the decryption threshold.
Moreover, due to the aforementioned limitations, extending the proposed two-party PSI protocols to multiparty PSI protocols is almost impossible. Indeed, in the multiparty environment, these limitations are no longer manageable.

5. Experimental Work and Performance Evaluation

To evaluate our proposed protocols experimentally, we consider a Peer-to-Peer (P2P) file sharing network in which each file is identified by a unique serial number, namely a 32-byte integer. Each peer owns some files. Once a peer gets connected to another peer, they can only know the mutually inclusive file set that both pose by applying one of the proposed PSI protocols. The peer can repeat this process with several peers in the same network. Ultimately, the peer can know if he owns rare files that are only owned by him or a few other peers in the network; thus, an urgent backup must be performed.
Experimental Environment: Java JDK version 17 [48] is used as a programming language, Apache NetBeans version 20 [49] is used as an integrated development environment (IDE), and the Bouncy Castle cryptography library [50] is used to implement the proposed cryptographic algorithms. The PC specifications include an Intel Core i7-1255U CPU, 32 GB RAM, and Windows 11 Pro 64-bit OS.
Storage overhead, communication overhead, and computation cost are the metrics of interest to compute based on the three NIST security levels: level 1 meets the security of AES-128, level 3 meets the security of AES-192, and level 5 meets the security of AES-256.
Based on the specification above, Table 1 shows reference values for public/private keys and ciphertext sizes of Kyber and McEliece/Niederreiter PKE. Where McEliece1.5t refers to a tuned version of McEliece that has the t value increased by a factor of 1.5 to keep the McEliece algorithm secure after applying the additive homomorphic property. For instance, if McEliece’s t value is 64 for level-1 security, the McEliece1.5t’s t value becomes 96, and so on. The cost of this increase is an increase in the public key and ciphertext size, as shown in the table. Also, to avoid any decryption failure, the original encrypted texts, i.e., prior to the additive homomorphism, must be encrypted using 0.5 t and 0.75 t values for McEliece and McEliece1.5t protocols, respectively. We stress that all McEliece parameters and results are due to the Niederreiter variant.

5.1. Storage Overhead

The storage overhead (SO) is the overall sum of the public/private key sizes and the ciphertext ( c t ) size of the entire set, G, as depicted in (14).
S O = P k + S k + ( c t | G | ) .
The key size depends on the underlying algorithm and required security level. The overall ciphertext size is the size of a single encrypted element multiplied by the number of elements in the set, | G | .
Results for NIST’s level-1 security are depicted in Table 2 and Figure 1. The results show that the most storage overhead of McEliece comes from its keys, while the most storage overhead of Kyber comes from its ciphertext. Thus, it is preferable to use Kyber for small set sizes, approximately less than 400 elements when Kyber is compared with McEliece and less than 550 elements when compared with McEliece1.5t. Figure 1 shows much clearer results. It shows that McEliece’s line increases by a small constant while Kyber’s line increases linearly. More importantly, it shows the exact intersection point and set size where it is recommended to switch to McEliece. The figure shows that the set size of 392 is where McEliece can be preferably used, as it incurs only 294.33 KB overhead, whereas Kyber incurs 295.53 KB overhead. Also, at the set size of 540, the storage overhead incurred by McEliece1.5t and Kyber is 405.21 KB and 406.53 KB, respectively.
Results for NIST’s level-3 security are depicted in Table 3 and Figure 2. The results show the same tendency as the level-1 security. However, since the public key size of McEliece is almost twice the size of level-1, Kyber performs better than McEliece and McEleice1.5t as long as the set size is less than 575 and 764, respectively, as shown in Figure 2. Table 4 and Figure 3 show the results of NIST’s level-5 security. Again, McEliece’s public key is approximately doubled, and thus the storage overhead is doubled. Therefore, Kyber outperforms McEliece and McEliece1.5t as long as the set size is less than 779 and 1062, respectively, as shown in Figure 3.

5.2. Communication Overhead

For the Kyber-based protocol (Algorithm 10), Peer 1, who initiates the PSI protocol, sends the encrypted elements of his entire set (including the zero elements) along with the public key. Peer 2 then returns the result of the homomorphic multiplication (element-wise) of its set with Peer 1’s set. Thus, the overall communication overhead, as given in Equation (15), is the sum of the public key size, the size of Peer 1’s encrypted set, and the size of the encrypted products of Peer 1’s and Peer 2’s sets.
C O K y b e r = P k + | E ( G 1 , P k ) | + | E ( G 1 × G 2 , P k ) | ) .
For the McEliece-based protocol (Algorithm 11), Peer 1 should send the encrypted Bloom filter corresponding to his private set, along with the public key. Once Peer 2 receives the encrypted bloom filter, he evaluates the expansion function on the received bloom filter. Finally, he homomorphically xors the expanded ciphertexts with his elements and returns the result. Therefore, the overall communication overhead, Equation (16), is the total of the public key size, the size of the encrypted bloom filter, and the size of the encrypted set.
C O M c E l i e c e = P k + | E ( B , P k ) | + 2 | E ( G , P k ) | .
Note for this implementation, we set the number of hash functions λ = 50 , such that the false positive rate ( ϵ ) is 2 50 , following the recommendations in [46,47].
The results of the communication overhead for all NIST’s security levels are listed in Table 5, Table 6 and Table 7 and depicted in Figure 4, Figure 5 and Figure 6. The results show that for small set sizes, McEliece incurs higher communication overhead than Kyber. After a certain point, McEliece starts to outperform Kyber, and the gap between the two algorithms increases dramatically as the set size increases. Overall, the performance of Kyber is highly affected by the set size, whereas McEliece is slightly affected. Apparently, the figures show that McEliece’s line is almost straight, while Kyber’s line grows linearly.

5.3. Computation Cost

The most costly operation in the Kyber-based protocol (Algorithm 10) is the number of multiplication/mod operations, which increase as the module size (K) increases. The most costly operation in the McEliece-based protocol (Algorithm 11) is the hashing. As mentioned earlier, the number of hash functions ( λ ) is set to 50, following the recommendations in [46,47]. The results, summarized in Table 8, indicate that the computation time of McEliece is substantially lower than that of Kyber.

6. Conclusions and Future Work

In this paper, we study the homomorphic properties of two important post-quantum public key cryptosystems (PKCs): Crystal-Kyber and Classic-McEliece. The research focuses on examining their underlying public key encryption (PKE) schemes. We begin with a comprehensive illustration of both candidates and their homomorphic properties, enriched with examples. Next, we apply these homomorphic properties to the private set intersection (PSI) problem. Two different PSI protocols are designed: one based on the additive homomorphic property of McEliece PKE and the other based on the multiplicative homomorphic property of Kyber PKE. Additionally, the limitations of each scheme are discussed and analyzed. To obtain much clearer insights, a practical performance evaluation under NIST’s security levels 1, 3, and 5 is conducted, focusing on three key metrics: storage overhead, communication overhead, and computation cost. Our findings indicate that the Kyber-based PSI Protocol is homomorphically secure, but it suffers from significant computational and communication overhead, which limits its practical applicability. Conversely, the McEliece-based PSI protocol demonstrates greater efficiency in practice but raises fundamental concerns regarding its suitability as a secure homomorphic encryption scheme. Yet, these limitations remain manageable within the controlled setting of two-party PSI protocols. However, extending to a multiparty environment would introduce significant challenges, making the limitations far more difficult to address in practice.
Future work includes improving the security and efficiency of the Kyber-based PSI protocol. From the security perspective, the IND-CPA Kyber PKE could be transformed into an IND-CCA Kyber PKE variant. A more efficient protocol could leverage the Kyber additive homomorphic rather than the multiplicative one. Another promising direction is to utilize the Kyber additive homomorphic property and combine it with a Bloom filter to design a multiparty PSI protocol.

Author Contributions

Conceptualization, A.A.A., K.A. and M.F.; Formal analysis, K.A.; Funding acquisition, M.F.; Methodology, A.A.A., K.A. and M.F.; Project administration, A.A.A. and M.F.; Software, A.A.A. and K.A.; Supervision, M.F.; Validation, A.A.A. and K.A.; Visualization, A.A.A.; Writing—original draft, A.A.A. and K.A.; Writing—review and editing, A.A.A. and M.F. All authors have read and agreed to the published version of the manuscript.

Funding

The APC was funded by the Interdisciplinary Research Center of Intelligent Secure Systems (IRC-ISS).

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Acknowledgments

The authors would like to acknowledge the support provided by King Fahd University of Petroleum and Minerals (KFUPM) and the Interdisciplinary Research Center of Intelligent Secure Systems.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Shor, P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Rev. 1999, 41, 303–332. [Google Scholar] [CrossRef]
  2. Regev, O. On lattices, learning with errors, random linear codes, and cryptography. J. ACM (JACM) 2009, 56, 1–40. [Google Scholar] [CrossRef]
  3. Chou, T.; Cid, C.; UiB, S.; Gilcher, J.; Lange, T.; Maram, V.; Misoczki, R.; Niederhagen, R.; Paterson, K.; Persichetti, E. Classic McEliece: Conservative Code-Based Cryptography, 10 October 2020. 2020. Available online: https://cryptojedi.org/papers/mceliecenistr3-20201010.pdf (accessed on 1 October 2025).
  4. Bos, J.; Ducas, L.; Kiltz, E.; Lepoint, T.; Lyubashevsky, V.; Schanck, J.M.; Schwabe, P.; Seiler, G.; Stehlé, D. CRYSTALS-Kyber: A CCA-secure module-lattice-based KEM. In Proceedings of the 2018 IEEE European Symposium on Security and Privacy (EuroS&P), London, UK, 24–26 April 2018; IEEE: New York, NY, USA, 2018; pp. 353–367. [Google Scholar]
  5. Albrecht, M.R.; Bernstein, D.J.; Chou, T.; Cid, C.; Gilcher, J.; Lange, T.; Maram, V.; Von Maurich, I.; Misoczki, R.; Niederhagen, R.; et al. Classic McEliece: Conservative Code-Based Cryptography. 2022. Available online: https://cr.yp.to/talks/2024.09.17/slides-djb-20240917-mceliece-16x9.pdf (accessed on 1 October 2025).
  6. McEliece, R.J. A public-key cryptosystem based on algebraic coding theory. Coding Thv 1978, 4244, 114–116. [Google Scholar]
  7. Niederreiter, H. Knapsack-type cryptosystems and algebraic coding theory. Prob. Contr. Inform. Theory 1986, 15, 157–166. [Google Scholar]
  8. Wang, W.; Szefer, J.; Niederhagen, R. FPGA-based key generator for the Niederreiter cryptosystem using binary Goppa codes. In Proceedings of the International Conference on Cryptographic Hardware and Embedded Systems, Santa Barbara, CA, USA, 17–19 August 2017; Springer: Berlin/Heidelberg, Germany, 2017; pp. 253–274. [Google Scholar]
  9. Freedman, M.J.; Nissim, K.; Pinkas, B. Efficient private matching and set intersection. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 1–19. [Google Scholar]
  10. Chen, L.; Li, Z.; Chen, Z.; Liu, Y. Two anti-quantum attack protocols for secure multiparty computation. In Proceedings of the Trusted Computing and Information Security: 12th Chinese Conference, CTCIS 2018, Wuhan, China, 18 October 2018; Revised Selected Papers 12. Springer: Berlin/Heidelberg, Germany, 2019; pp. 338–359. [Google Scholar]
  11. 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; Springer: Berlin/Heidelberg, Germany, 1999; pp. 223–238. [Google Scholar]
  12. Rivest, R.L.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef]
  13. Goldwasser, S.; Micali, S. Probabilistic encryption. J. Comput. Syst. Sci. 1984, 28, 270–299. [Google Scholar] [CrossRef]
  14. ElGamal, T. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 1985, 31, 469–472. [Google Scholar] [CrossRef]
  15. Naccache, D.; Stern, J. A new public key cryptosystem based on higher residues. In Proceedings of the 5th ACM Conference on Computer and Communications Security, Francisco, CA, USA, 3–5 November 1998; pp. 59–66. [Google Scholar]
  16. Benaloh, J. Dense probabilistic encryption. In Proceedings of the Workshop on Selected Areas of Cryptography, Kingston, ON, Canada, 5–6 May 1994; pp. 120–128. [Google Scholar]
  17. Okamoto, T.; Uchiyama, S. A new public-key cryptosystem as secure as factoring. In Proceedings of the Advances in Cryptology—EUROCRYPT’98: International Conference on the Theory and Application of Cryptographic Techniques, Espoo, Finland, 31 May–4 June 1998; Proceedings 17. Springer: Berlin/Heidelberg, Germany, 1998; pp. 308–318. [Google Scholar]
  18. Boneh, D.; Goh, E.J.; Nissim, K. Evaluating 2-DNF formulas on ciphertexts. In Proceedings of the Theory of Cryptography: Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, 10–12 February 2005; Proceedings 2. Springer: Berlin/Heidelberg, Germany, 2005; pp. 325–341. [Google Scholar]
  19. 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; IEEE: New York, NY, USA, 1982; pp. 160–164. [Google Scholar]
  20. Sander, T.; Young, A.; Yung, M. Non-interactive cryptocomputing for nc/sup 1. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (Cat. No. 99CB37039), New York, NY, USA, 17–18 October 1999; IEEE: New York, NY, USA, 1999; pp. 554–566. [Google Scholar]
  21. Ishai, Y.; Paskin, A. Evaluating branching programs on encrypted data. In Proceedings of the Theory of Cryptography Conference, Amsterdam, The Netherlands, 21–24 February 2007; Springer: Berlin/Heidelberg, Germany, 2007; pp. 575–594. [Google Scholar]
  22. Gentry, C. Fully homomorphic encryption using ideal lattices. In Proceedings of the Forty-First Annual ACM Symposium on Theory of Computing, Bethesda, MD, USA, 31 May–2 June 2009; pp. 169–178. [Google Scholar]
  23. Brakerski, Z. Fully homomorphic encryption without modulus switching from classical GapSVP. In Proceedings of the Annual Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 868–886. [Google Scholar]
  24. Brakerski, Z.; Gentry, C.; Vaikuntanathan, V. (Leveled) fully homomorphic encryption without bootstrapping. ACM Trans. Comput. Theory (TOCT) 2014, 6, 1–36. [Google Scholar] [CrossRef]
  25. Cheon, J.H.; Kim, A.; Kim, M.; Song, Y. Homomorphic encryption for arithmetic of approximate numbers. In Proceedings of the Advances in Cryptology–ASIACRYPT 2017: 23rd International Conference on the Theory and Applications of Cryptology and Information Security, Hong Kong, China, 3–7 December 2017; Proceedings, Part I 23. Springer: Berlin/Heidelberg, Germany, 2017; pp. 409–437. [Google Scholar]
  26. Chillotti, I.; Gama, N.; Georgieva, M.; Izabachene, M. Faster fully homomorphic encryption: Bootstrapping in less than 0.1 seconds. In Proceedings of the Advances in Cryptology–ASIACRYPT 2016: 22nd International Conference on the Theory and Application of Cryptology and Information Security, Hanoi, Vietnam, 4–8 December 2016; Proceedings, Part I 22. Springer: Berlin/Heidelberg, Germany, 2016; pp. 3–33. [Google Scholar]
  27. Langlois, A.; Stehlé, D. Worst-case to average-case reductions for module lattices. Des. Codes Cryptogr. 2015, 75, 565–599. [Google Scholar] [CrossRef]
  28. Lyubashevsky, V.; Peikert, C.; Regev, O. On ideal lattices and learning with errors over rings. In Proceedings of the Advances in Cryptology–EUROCRYPT 2010: 29th Annual International Conference on the Theory and Applications of Cryptographic Techniques, French Riviera, France, 30 May–3 June 2010; Proceedings 29. Springer: Berlin/Heidelberg, Germany, 2010; pp. 1–23. [Google Scholar]
  29. Avanzi, R.; Bos, J.; Ducas, L.; Kiltz, E.; Lepoint, T.; Lyubashevsky, V.; Schanck, J.M.; Schwabe, P.; Seiler, G.; Stehlé, D. CRYSTALS-Kyber algorithm specifications and supporting documentation. NIST PQC Round 2019, 2, 1–43. Available online: https://pq-crystals.org/kyber/data/kyber-specification-round3-20210131.pdf (accessed on 10 August 2025).
  30. Özeren, S.; Yayla, O. Methods for masking crystals-kyber against side-channel attacks. In Proceedings of the 2023 16th International Conference on Information Security and Cryptology (ISCTürkiye), Ankara, Turkiye, 18–19 October 2023; pp. 71–76. [Google Scholar]
  31. Mukherjee, A.; Aikata, A.; Mert, A.C.; Lee, Y.; Kwon, S.; Deryabin, M.; Roy, S.S. ModHE: Modular Homomorphic Encryption Using Module Lattices: Potentials and Limitations. Cryptology ePrint Archive. 2023. Available online: https://tches.iacr.org/index.php/TCHES/article/download/11261/10803/11220 (accessed on 10 February 2025).
  32. Zhao, C.-C.; Yang, Y.-T.; Li, Z.-C. The homomorphic properties of McEliece public-key cryptosystem. In Proceedings of the 2012 Fourth International Conference on Multimedia Information Networking and Security, Nanjing, China, 2–4 November 2012; IEEE: New York, NY, USA, 2012; pp. 39–42. [Google Scholar]
  33. Morales, D.; Agudo, I.; Lopez, J. Private set intersection: A systematic literature review. Comput. Sci. Rev. 2023, 49, 100567. [Google Scholar] [CrossRef]
  34. Debnath, S.K.; Stănică, P.; Choudhury, T.; Kundu, N. Post-quantum protocol for computing set intersection cardinality with linear complexity. IET Inf. Secur. 2020, 14, 661–669. [Google Scholar] [CrossRef]
  35. Debnath, S.K.; Choudhury, T.; Kundu, N.; Dey, K. Post-quantum secure multi-party private set-intersection in star network topology. J. Inf. Secur. Appl. 2021, 58, 102731. [Google Scholar] [CrossRef]
  36. Cai, Y.; Tang, C.; Xu, Q. Two-party privacy-preserving set intersection with FHE. Entropy 2020, 22, 1339. [Google Scholar] [CrossRef] [PubMed]
  37. Gao, S. Efficient Fully Homomorphic Encryption Scheme. Cryptology ePrint Archive. 2018. Available online: https://eprint.iacr.org/2018/637 (accessed on 6 June 2025).
  38. Camenisch, J.; Zaverucha, G.M. Private intersection of certified sets. In Proceedings of the Financial Cryptography and Data Security: 13th International Conference, FC 2009, Accra Beach, Barbados, 23–26 February 2009; Revised Selected Papers 13. Springer: Berlin/Heidelberg, Germany, 2009; pp. 108–127. [Google Scholar]
  39. Bloom, B.H. Space/time trade-offs in hash coding with allowable errors. Commun. ACM 1970, 13, 422–426. [Google Scholar] [CrossRef]
  40. Kerschbaum, F. Outsourced private set intersection using homomorphic encryption. In Proceedings of the Proceedings of the 7th ACM Symposium on Information, Computer and Communications Security, Seoul, Republic of Korea, 2–4 May 2012; pp. 85–86. [Google Scholar]
  41. Dottling, N.; Dowsley, R.; Muller-Quade, J.; Nascimento, A.C. A CCA2 secure variant of the McEliece cryptosystem. IEEE Trans. Inf. Theory 2012, 58, 6672–6680. [Google Scholar] [CrossRef]
  42. Rastaghi, R. An efficient CCA2-secure variant of the McEliece cryptosystem in the standard model. arXiv 2013, arXiv:1302.0347. [Google Scholar]
  43. Nojima, R.; Imai, H.; Kobara, K.; Morozov, K. Semantic security for the McEliece cryptosystem without random oracles. Des. Codes Cryptogr. 2008, 49, 289–305. [Google Scholar] [CrossRef]
  44. Canteaut, A.; Chabaud, F. A new algorithm for finding minimum-weight words in a linear code: Application to McEliece’s cryptosystem and to narrow-sense BCH codes of length 511. IEEE Trans. Inf. Theory 1998, 44, 367–378. [Google Scholar] [CrossRef]
  45. Horlemann, A.L.; Puchinger, S.; Renner, J.; Schamberger, T.; Wachter-Zeh, A. Information-set decoding with hints. In Proceedings of the Code-Based Cryptography Workshop, Munich, Germany, 21–22 June 2021; Springer: Berlin/Heidelberg, Germany, 2021; pp. 60–83. [Google Scholar]
  46. Bay, A.; Erkin, Z.; Hoepman, J.H.; Samardjiska, S.; Vos, J. Practical multi-party private set intersection protocols. IEEE Trans. Inf. Forensics Secur. 2021, 17, 1–15. [Google Scholar] [CrossRef]
  47. Davidson, A.; Cid, C. An efficient toolkit for computing private set operations. In Proceedings of the Australasian Conference on Information Security and Privacy, Auckland, New Zealand, 3–5 July 2017; Springer: Berlin/Heidelberg, Germany, 2017; pp. 261–278. [Google Scholar]
  48. Nita, S.L.; Mihailescu, M.I. Jdk 17: New features. In Cryptography and Cryptanalysis in Java: Creating and Programming Advanced Algorithms with Java SE 17 LTS and Jakarta EE 10; Springer: Berlin/Heidelberg, Germany, 2022; pp. 9–19. [Google Scholar]
  49. Kostaras, I.; Drabo, C.; Juneau, J.; Reimers, S.; Schröder, M.; Wielenga, G.; Kostaras, I.; Drabo, C.; Juneau, J.; Reimers, S.; et al. What Is Apache NetBeans. Pro Apache NetBeans: Building Applications on the Rich Client Platform; Springer: Berlin/Heidelberg, Germany, 2020; pp. 3–28. [Google Scholar]
  50. Bouncy Castle Crypto Library. Available online: https://www.bouncycastle.org (accessed on 11 May 2024).
Figure 1. Storage overhead measured in KB for 128-level security.
Figure 1. Storage overhead measured in KB for 128-level security.
Cryptography 09 00066 g001
Figure 2. Storage overhead measured in KB for 192-level security.
Figure 2. Storage overhead measured in KB for 192-level security.
Cryptography 09 00066 g002
Figure 3. Storage overhead measured in KB for 256-level security.
Figure 3. Storage overhead measured in KB for 256-level security.
Cryptography 09 00066 g003
Figure 4. Communication overhead measured in KB for 128-level security.
Figure 4. Communication overhead measured in KB for 128-level security.
Cryptography 09 00066 g004
Figure 5. Communication overhead measured in KB for 192-level security.
Figure 5. Communication overhead measured in KB for 192-level security.
Cryptography 09 00066 g005
Figure 6. Communication overhead measured in KB for 256-level security.
Figure 6. Communication overhead measured in KB for 256-level security.
Cryptography 09 00066 g006
Table 1. The corresponding values of McEliece/Niederreiter and Kyber’s public/private keys and ciphertexts (in bytes) that meet the NIST’s security levels.
Table 1. The corresponding values of McEliece/Niederreiter and Kyber’s public/private keys and ciphertexts (in bytes) that meet the NIST’s security levels.
PKC AlgorithmLevel-1 (AES-128)Level-3 (AES-192)Level-5 (AES-256)
KyberPk80011841568
SK76811521536
Ciphertext76810881568
McEliece
(Niederreiter variant)
Pk261,120524,1601,047,319
SK649213,60813,948
Ciphertext96156208
McEliece1.5t
(Niederreiter variant)
Pk330,624640,2241,344,434
SK655113,70414,066
Ciphertext144234290
Table 2. Storage Overhead measured in KB for 128-level security.
Table 2. Storage Overhead measured in KB for 128-level security.
Set
Size
McEliece (261,120, 6492)McEliece1.5t (330,624, 6551)Kyber (800, 768)
Ciphertext SizeStorage OverheadCiphertext SizeStorage OverheadCiphertext SizeStorage Overhead
1009.38266.9614.06343.3375.0076.53
20018.75276.3328.12357.40150.00151.53
30028.12285.7142.19371.46225.00226.53
35032.81290.4049.22378.49262.50264.03
40037.50295.0856.25385.52300.00301.53
45042.19299.7763.28392.55337.50339.03
50046.88304.4670.31399.58375.00376.53
55051.56309.1577.34406.62412.50414.03
60056.25313.8384.38413.65450.00451.53
Table 3. Storage overhead measured in KB for 192-level security.
Table 3. Storage overhead measured in KB for 192-level security.
Set
Size
McEliece (524,160, 13,608) McEliece1.5t (640,224, 13,704)Kyber (1184, 1152)
Ciphertext SizeStorage OverheadCiphertext SizeStorage OverheadCiphertext SizeStorage Overhead
10015.23540.4022.85661.45106.25108.53
20030.47555.6345.70684.30212.50214.78
30045.70570.8768.55707.16318.75321.03
40060.94586.1091.41730.01425.00427.28
50076.17601.34114.26752.86531.25533.53
55083.79608.95125.68764.29584.38586.66
60091.41616.57137.11775.71637.50639.78
65099.02624.19148.54787.14690.62692.91
700106.64631.80159.96798.56743.75746.03
750114.26639.42171.39809.99796.88799.16
800121.88647.04182.81821.41850.00852.28
Table 4. Storage overhead measured in KB for 256-level security.
Table 4. Storage overhead measured in KB for 256-level security.
Set
Size
McEliece (1,047,319, 13,948)McEliece1.5t (1,344,434, 14,066)Kyber (1568, 1536)
CiphertextSizeStorage OverheadCiphertext SizeStorage OverheadCiphertext SizeStorage Overhead
10020.311056.7128.321354.98153.12156.16
20040.621077.0256.641383.30306.25309.28
30060.941097.3384.961411.62459.38462.41
40081.251117.64113.281439.94612.50615.53
500101.561137.96141.601468.26765.62768.66
600121.881155.98140.621496.58918.75921.78
700142.191158.27169.921524.901071.881074.91
750152.341178.58198.241539.061148.441151.47
800162.501188.74212.401553.221225.001228.03
850172.661206.76226.561567.381301.561304.59
900182.811198.89240.721581.541378.121381.16
1000203.121209.05254.881609.861531.251534.28
1050213.281219.21283.201624.021607.811610.84
1100223.441239.52297.361638.181684.381687.41
Table 5. Communication overhead measured in KB for 128-level security.
Table 5. Communication overhead measured in KB for 128-level security.
Set
Size
McEliece (261,120, 6492)McEliece1.5t (330,624, 6551)Kyber (800, 768)
Communication OverheadCommunication OverheadCommunication Overhead
100264.94337.50188.28
200274.88352.13375.78
300284.82366.75563.28
350289.78374.07657.03
400294.75381.38750.78
450299.72388.69844.53
500304.69396.01938.28
550309.66403.321032.03
600314.63410.631125.78
Table 6. Communication overhead measured in KB for 192-level security.
Table 6. Communication overhead measured in KB for 192-level security.
Set
Size
McEliece (524,160, 13,608)McEliece1.5t (640,224, 13,704)Kyber (1184, 1152)
Communication OverheadCommunication OverheadCommunication Overhead
100527.68648.64213.66
200543.47672.05266.78
300559.27695.46532.41
400575.07718.88798.03
500590.87742.301063.66
550598.77754.001329.28
600606.66765.711462.09
650614.56777.421594.91
700622.46789.121727.72
750630.36800.841860.53
800638.26812.541993.34
Table 7. Communication overhead measured in KB for 256-level security.
Table 7. Communication overhead measured in KB for 256-level security.
Set
Size
McEliece
(524,160, 13,608)
McEliece1.5t
(640,224, 13,704)
Kyber
(1184, 1152)
Communication OverheadCommunication OverheadCommunication Overhead
1001043.651341.81384.34
2001064.531370.69767.16
3001085.401399.581149.97
4001106.281428.461532.78
5001127.161457.351915.59
6001148.031486.232298.41
7001168.911515.112681.22
7501179.351529.562872.62
8001189.781544.003064.03
8501200.221558.443255.44
9001210.661572.883446.84
10001231.531601.763829.66
10501241.971616.214021.06
11001252.411630.654212.47
Table 8. Computation cost measured in ms.
Table 8. Computation cost measured in ms.
Set
Size
McEliece
λ = 50
Kyber
( K = 2 )
Kyber
( K = 3 )
Kyber
( K = 4 )
Computation CostComputation CostComputation CostComputation Cost
1003.0823.933.439.5
2006.6653.276.9102.6
3008.5299.6121.7133.9
40011.60115.5167195.9
50014.07161.6190.3259.1
60018.14189.1236.6304.3
70019.70228.1271.5330.3
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

Abudaqa, A.A.; Alshehri, K.; Felemban, M. On the Homomorphic Properties of Kyber and McEliece with Application to Post-Quantum Private Set Intersection. Cryptography 2025, 9, 66. https://doi.org/10.3390/cryptography9040066

AMA Style

Abudaqa AA, Alshehri K, Felemban M. On the Homomorphic Properties of Kyber and McEliece with Application to Post-Quantum Private Set Intersection. Cryptography. 2025; 9(4):66. https://doi.org/10.3390/cryptography9040066

Chicago/Turabian Style

Abudaqa, Anas A., Khaled Alshehri, and Muhamad Felemban. 2025. "On the Homomorphic Properties of Kyber and McEliece with Application to Post-Quantum Private Set Intersection" Cryptography 9, no. 4: 66. https://doi.org/10.3390/cryptography9040066

APA Style

Abudaqa, A. A., Alshehri, K., & Felemban, M. (2025). On the Homomorphic Properties of Kyber and McEliece with Application to Post-Quantum Private Set Intersection. Cryptography, 9(4), 66. https://doi.org/10.3390/cryptography9040066

Article Metrics

Back to TopTop