Next Article in Journal
Moving-Skewness Preprocessing for Simple Power Analysis on Cryptosystems: Revealing Asymmetry in Leakage
Previous Article in Journal
Homomorphic ReLU with Full-Domain Bootstrapping
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Searchable Encryption Scheme Based on CRYSTALS-Dilithium

1
School of Intelligent Science and Engineering, Hubei Minzu University, 39 Xueyuan Road, Enshi 445000, China
2
School of Cyberspace Security, Sichuan University, Chengdu 610065, China
*
Author to whom correspondence should be addressed.
Cryptography 2026, 10(2), 22; https://doi.org/10.3390/cryptography10020022
Submission received: 12 February 2026 / Revised: 23 March 2026 / Accepted: 25 March 2026 / Published: 27 March 2026

Abstract

With the advancement in quantum computing technology, the number theory-based hard problems underlying traditional searchable encryption algorithms are now vulnerable to efficient quantum attacks. To address this challenge, this paper proposes Dilithium-PAEKS (Dilithium-Public Authenticated Encryption with Keyword Search), a searchable encryption scheme based on the post-quantum cryptographic algorithm CRYSTALS-Dilithium. By transforming the verification relationship of digital signatures into a matching relationship between trapdoors and ciphertexts, the scheme not only meets the functional requirements of searchable encryption but also demonstrates quantum resistance. The implementation enhances algorithm efficiency through keyword-based signatures and dynamic matching testing mechanisms. The security of the scheme is defined by the MLWE and MSIS hard problems, with proofs of keyword ciphertext indistinguishability and trapdoor indistinguishability under the random oracle model. Additionally, the scheme provides strong resistance against both outside and insider keyword guessing attacks through sender–receiver binding mechanisms and trapdoor indistinguishability properties. Experimental results show that, compared to the post-quantum schemes CP-Absel and LB-FSSE, the proposed scheme demonstrates superior overall computational efficiency while maintaining stronger quantum resistance than the traditional scheme SM9-PAEKS.

1. Introduction

Searchable encryption technology allows users to perform keyword searches directly on encrypted data without the need for decryption. It ensures data privacy while enabling efficient retrieval of ciphertext, and is widely used in privacy-sensitive scenarios such as cloud storage and medical data sharing. However, with the continuous development of quantum computers and the advent of quantum algorithms such as Shor’s [1] and Grover’s [2], the number theory-based hard problems underlying traditional searchable encryption algorithms are now vulnerable to efficient quantum attacks [3]. This makes it imperative to develop searchable encryption schemes that can resist quantum threats while maintaining practical efficiency.
Existing searchable encryption schemes can be broadly categorized into classical constructions and post-quantum constructions. Among classical approaches, Song et al. [4] first proposed the concept of Symmetric Searchable Encryption (SSE) in 2000. Boneh et al. [5] subsequently pioneered Public Key Encryption with Keyword Search (PEKS) in 2004 by integrating searchable encryption with public key cryptography, but the scheme suffered from dependence on secure channels and vulnerability to keyword guessing attacks. To address these issues, Xu et al. [6] and Li et al. [7] proposed schemes based on composite order bilinear groups, and Deng et al. [8] further improved trapdoor indistinguishability under the Decisional Bilinear Diffie–Hellman (DBDH) assumption. Nevertheless, bilinear pairing-based schemes generally incur high computational overhead. To improve efficiency, Cui et al. [9] proposed a multi-keyword searchable encryption scheme based on Elliptic Curve Cryptography (ECC), and Zhang et al. [10] and Pu et al. [11] proposed schemes based on SM9, further enriching the application of domestic cryptographic algorithms in searchable encryption. However, all the above schemes rely on traditional number theory hard problems and are therefore vulnerable to quantum attacks.
In the post-quantum domain, lattice-based cryptography has been introduced into searchable encryption. Zhang et al. [12] proposed an adaptive hierarchical searchable encryption scheme based on error learning, suitable for dynamic encrypted databases and cloud healthcare systems, but carrying the risk of keyword leakage. Liu et al. [13] proposed a traceable and revocable lattice-based attribute encryption scheme based on the CLWE problem, though it incurs high cloud storage costs. Yu et al. [14] combined attribute signing and searchable encryption for the first time; the scheme demonstrates good quantum resistance, but keyword encryption is time-consuming due to attribute signing. Varri et al. [15] proposed a lattice-based Ciphertext-Policy Attribute-based Searchable Encryption scheme (CP-ABSEL) under the LWE hardness assumption, achieving fine-grained access control and multi-keyword search, but its implementation may incur significant computational overhead due to operations like short basis generation. Islam et al. [16] designed an efficient forward-secure lattice-based searchable encryption scheme leveraging blockchain technology, which demonstrates resilience against insider keyword guessing attacks (IKGAs), but the integration of blockchain introduces additional overheads, including transaction latency and gas fees. In summary, existing post-quantum searchable encryption schemes still face trade-offs among computational efficiency, storage overhead, and comprehensive security guarantees.
To address the above limitations, this paper proposes Dilithium-PAEKS (Dilithium-Public Authenticated Encryption with Keyword Search), a searchable encryption scheme based on the NIST-standardized post-quantum digital signature algorithm CRYSTALS-Dilithium [17,18]. The main contributions of this paper are as follows: (1) We propose a novel PAEKS construction based on CRYSTALS-Dilithium, whose security is formally reducible to two lattice-based hard problems: modular learning with error (MLWE) [19] and modular short integer solution (MSIS) [20], thereby providing demonstrable quantum resistance. (2) The scheme introduces keyword-bound signatures and dynamic matching test mechanisms to achieve efficient ciphertext retrieval while ensuring security, and we provide formal proofs of keyword ciphertext indistinguishability (IND-CKA) and trapdoor indistinguishability (TIK) under the random oracle model. (3) Through sender–receiver binding mechanisms and trapdoor indistinguishability properties, the scheme provides provable resistance against both outside keyword guessing attacks (OKGAs) and the more challenging insider keyword guessing attacks (IKGAs), ensuring security even when the cloud server is semi-trusted or malicious.

2. Design of Dilithium-PAEKS Scheme

This section introduces the parameter, basic concepts, the security assumptions, and the detailed design of the Dilithium-PAEKS scheme, and analyzes the correctness of the design.The detailed descriptions of the parameters used in this paper are listed in Table 1.

2.1. Basic Concepts and Formal Definitions

This section formally defines the core primitives of searchable encryption and the key security properties involved in the scheme, and clarifies the design boundary of the proposed Dilithium-PAEKS, laying a theoretical foundation for subsequent scheme design and security proof.
Definition 1
(Symmetric Searchable Encryption (SSE)). A cryptographic primitive that supports keyword search on symmetrically encrypted ciphertext without decryption. It realizes ciphertext retrieval under a symmetric cryptosystem, with core requirements of ciphertext retrievability and data privacy, but is only applicable to peer-to-peer data sharing scenarios.
Definition 2
(Public Key Encryption with Keyword Search (PEKS)). A public-key extension of SSE, which uses the receiver’s public key for encryption and private key for trapdoor generation, solving ciphertext search in asymmetric cryptosystems. Its core defects are reliance on secure channels for trapdoor transmission and vulnerability to keyword guessing attacks (KGA), and it lacks sender identity authentication.
Definition 3
(Public Authenticated Encryption with Keyword Search (PAEKS)). An enhanced primitive of PEKS with the full name Public Authenticated Encryption with Keyword Search, which integrates sender identity authentication into the PEKS framework. It solves the defects of secure channel dependence and weak anti-KGA ability of PEKS, and supports keyword search on public key ciphertext in open channels.
The proposed Dilithium-PAEKS is a lattice-based PAEKS scheme constructed on CRYSTALS-Dilithium, with the core boundary of post-quantum security + no secure channel + sender–receiver dual authentication + keyword search on ciphertext, adapting to post-quantum privacy protection scenarios such as cloud storage.

2.2. Detailed Design of the Scheme

Dilithium-PAEKS consists of five polynomial-time algorithms: (1) the initialization algorithm takes system parameters as input and generate public parameters; (2) the receiver key generation algorithm produces receiver public–private key pairs from specified inputs; (3) the sender key generation algorithm creates sender public–private key pairs based on given inputs; (4) the keyword encryption algorithm generates keyword trapdoors using keywords, sender public keys, receiver private keys, and system parameters as inputs; (5) the matching test algorithm verifies keyword consistency between keyword ciphertexts, keyword trapdoors, and system parameters. The detailed computational procedures for each algorithm are outlined below.
(1)
Initialization algorithm S e t u p ( λ p a r a m s )
Step 1: The system inputs the security parameter λ and publishes the set of public system parameters p a r a m s = { λ , n , q , l , κ , k , γ 1 , γ 2 , β , d , ω , C R H , H ) , C R H : { 0 , 1 } * { 0 , 1 } 384 .
(2)
Key generation for the recipient K e y G e n R ( ( p a r a m s ( s k R , p k R ) )
Step 1: Generate a key vector by uniformly sampling the matrix s 1 , s 2 S η l × S η κ .
Step 2: Generate a matrix using an expansion function A R R q k × l : = E x p e n d A ρ R .
Step 3: A R is the matrix generated by the function E x p e n d A , S 1 and S 2 are the minimal vectors randomly sampled from the set S q l × S η κ , the public key d is indistinguishable from a random vector, and thus d : = A R s 1 + s 2 is an instance of MLWE.
Step 4: Compress the public key using a high–low bit separation function ( t 1 , t 0 ) : = P o w e r 2 R o u n d q ( t , d ) .
Step 5: Generate the recipient’s identity identifier ( t r R ) using a hash function C R H ( ρ R | | t 1 ) .
Step 6: Return ( s k R , p k R ) , s k R : = ( ρ R , K R , t r R , s 1 , s 2 , t 0 ) , p k R : = ( ρ R , t 1 ) .
(3)
Sender key generation K e y G e n S ( ( p a r a m s ( s k S , p k S ) )
The process is the same as the recipient key generation,  K e y G e n R  return  ( s k S , p k S ) , s k S = ( ρ S , K S , t r S , s 1 ( S ) , s 2 ( S ) , t 0 ( S ) ) , p k S : = ( ρ S , t 1 ( S ) ) .
(4)
Keyword Encryption P A E K S ( ( w , s k S , p k R , p a r a m s ) C w )
This algorithm takes system parameters ( p a r a m s ) , keywords w { 0 , 1 } , the sender’s private key s k S : = ( ρ S , K S , t r S , s 1 ( S ) , s 2 ( S ) , t 0 ( S ) ) , and the receiver’s public key p k R : = ( ρ R , t 1 ) as inputs, and outputs the keyword ciphertext. C w = ( z , c , w 1 ) , where z R q l , c B 60 , w 1 R q k .
Step 1: Calculate μ w = C R H ( t r S w ρ R ) { 0 , 1 } 384 .
Step 2: Generate the mask vector y = E x p a n d M a s k q ( K S μ w ) S l γ 1 1 .
Step 3: Generate the expanded matrix A S = E x p a n d A ( ρ S ) .
Step 4: Calculate the intermediate vector w = A S   y R q k   .
Step 5: Calculate the high-order bits w 1 = H i g h B i t s q ( w , 2 γ 2 ) R q k .
Step 6: Calculate c = H ( μ w w 1 ) B 60 .
Step 7: Calculate the response vector z = y + c s 1 ( S ) R q l .
Step 8: Verify whether the following formula holds. If it does, output the result C w = ( z , c , w 1 ) .
z < γ 1 β
(5)
Keyword trapdoor generation T r a p d o o r ( ( w , s k R , p k S , p a r a m s ) T w )
The algorithm takes the system parameters ( p a r a m s ) , keywords w { 0 , 1 } , the sender’s public key p k S : = ( ρ S , t 1 ( S ) ) , and the receiver’s private key s k R : = ( ρ R , K R , t r R , s 1 ( R ) , s 2 ( R ) , t 0 ( R ) ) as input, and outputs the keyword trapdoor T w .
Step 1: Calculate μ w = C R H ( t r R w ρ S ) { 0 , 1 } 384 .
Step 2: Generate the mask vector y = E x p a n d M a s k q ( K R μ w ) .
Step 3: Calculate A S = E x p a n d A ( ρ S ) .
Step 4: Calculate w = A S y .
Step 5: Calculate w 1 = H i g h B i t s q ( w , 2 γ 2 ) R q k .
Step 6: Calculate c = H ( μ w w 1 ) .
Step 7: Calculate z = y + c s 1 .
Step 8: Verify if the following formula holds true. If so, output T w = ( z , c , μ w ) .
z < γ 1 β
(6)
Match test T e s t ( C w , T w , p a r a m s ) { 0 , 1 }
This algorithm takes as input the keyword ciphertext, keyword trapdoor, and system parameters ( p a r a m s ) , and performs a matching test to verify whether the keywords contained in them are identical. The specific algorithm is as follows:
Step 1: Calculate A S E x p a n d A ( ρ S ) .
Step 2: Generate the mask vector w A S z c t 1 ( S ) 2 d .
Step 3: Calculate A S   = E x p a n d A ( ρ S   )
Step 4: Calculate w 1 U s e H i n t q ( 0 , w , 2 γ 2 ) .
Step 5: Check if the following condition holds. If not, return 0; otherwise, proceed to the next step.
w 1 w 1 o r z γ 1 β
Step 6: Calculate w = A S z c t 1 ( S ) 2 d .
Step 7: Calculate w 1 = U s e H i n t q ( 0 , w , 2 γ 2 ) .
Step 8: Compute the challenge c = H ( μ w | | w 1 ) .
Step 9: Check if the following condition holds. If true, proceed to the next step; otherwise, return 0.
c c o r | | z | | γ 1 β
Step 10: Calculate c = H ( μ w | | w 1 ) .
Step 11: Check if the following condition holds. Return 1 if true, otherwise, return 0.
c = c

2.3. Correctness Analysis of the Dilithium-PAEKS Scheme

If the receiver generates a valid keyword trapdoor, the keyword ciphertext is valid, and the keywords in both match, the matching test algorithm will pass. Let the sender’s public–private key pair be ( p k S , s k S ) , the receiver’s public–private key pair be ( p k R , s k R ) , the keyword ciphertext be C w = ( z , c , w 1 ) , and the keyword trapdoor be T w = ( z , c , μ w ) . The correctness verification of the scheme consists of sender signature verification, receiver signature verification, and keyword matching verification. The specific verification process is as follows.
Sender signature verification:
w *   = A S z c t 1 ( S ) 2 d = A S ( y + c s 1 ( S ) ) c ( A S s 1 ( S ) + s 2 ( S ) ) 1 2 d = w c s 2 ( S ) + O ( γ 2 )
then there is
w 1 = U s e H i n t q ( 0 , w , 2 γ 2 ) = w 1
Recipient signature verification:
w *   = A S z c t 1 ( S ) 2 d = A S ( y + c s 1 ) c ( A S s 1 ( S ) + s 2 ( S ) ) 1 2 d w
then there is
c = H ( μ w w 1 ) = c
Keyword match verification:
c = H ( μ w w 1 ) = H ( μ w w 1 ) = c
Only when w = w , μ w = μ w ,
c = c ,
then there is
T e s t 1 .
Analysis shows that signature verification ensures the validity of C w and T w ; bound hash μ w = C R H ( t r S w ρ R ) = C R H ( t r R w ρ S ) ensures keyword consistency; when w = w , H ( μ w w 1 ) = c holds. In conclusion, Dilithium-PAEKS satisfies the correctness requirements of the PAEKS scheme.

3. Security Proof of the Scheme

This section first presents the security assumptions of the scheme and proves its security based on these assumptions.

3.1. Core Security Property Definitions

Before the security proof, this section defines the basic security requirements and advanced security properties of the PAEKS scheme, all based on the random oracle model, with the adversary defined as a PPT algorithm.
Definition 4
(Correctness). For the Dilithium-PAEKS scheme, given valid system parameters p a r a m s , legal sender–receiver key pairs  ( p k s , s k s )  and  ( p k R , s k R ) , a keyword ciphertext CTW generated by the legal encryption and trapdoor TW generated by the legal trapdoor algorithm, the matching test algorithm satisfies  T e s t ( p a r a m s , C T w   , T w   ) = 1 . That is, the valid ciphertext and trapdoor of the same keyword can pass the matching test with certainty.
Definition 5
(Completeness). For any keyword set W, the Dilithium-PAEKS scheme can correctly generate the corresponding ciphertext set { C T w   } w W  and trapdoor set  { T w   } w W , and for any  w W , the matching test result is 1; for any non-matching keyword pair, the result is 0. The scheme can completely distinguish the matching and non-matching relationships between keywords, ciphertexts and trapdoors.
Definition 6
(Soundness). For any PPT adversary, it is computationally infeasible to forge a ciphertext  C T w *  or a trapdoor  T w *  such that  T e s t ( p a r a m s , C T w     , T w * ) = 1  or  T e s t ( p a r a m s , C T w *     , T w ) = 1  holds for an unauthenticated sender or an unmatched keyword  w .
Definition 7
(IND-CKA (Indistinguishable under Chosen-Keyword Attack)). The Dilithium-PAEKS scheme is IND-CKA secure if for any PPT adversary A, the advantage  A d v A I N D C K A   = | P r [ A g u e s s e s c o r r e c t l y ] 1 2 |    is negligible. The adversary has the ability of adaptive chosen-keyword query, and can query the ciphertext of any keyword except the challenge keyword from the challenger; the security goal is that the adversary cannot distinguish the ciphertexts of two different challenge keywords with a probability significantly higher than 1/2.
Definition 8
(TIK (Trapdoor Indistinguishability)). The Dilithium-PAEKS scheme has TIK security if for any PPT adversary A, the advantage  A d v A T I K   = | P r [ A g u e s s e s c o r r e c t l y ] 1 2 |    is negligible. For two arbitrary and distinct keywords W0, W1, the adversary cannot distinguish the trapdoor Tw0 and Tw1 generated by the legal trapdoor algorithm with a probability significantly higher than 1/2, thus avoiding keyword information leakage through trapdoor analysis.

3.2. Security Assumptions

Definition 9
(MLWE hypothesis). Given a matrix and a vector, for any probabilistic polynomial time (PPT) adversary, the probability of distinguishing them from a uniformly random sample is negligible, i.e.,  A = R q k × l ,  t = A s 1   + s 2   ,  s 1 S q l , s 2 S η κ ,  A ,  ( A , t ) .
Pr   A R q k × l , s 1   S q l , s 2   S η κ , t : = A s 1   + s 2 ,   ( A 0   , t 0   ) : = ( A , t ) , ( A 1   , t 1 ) U n i f o r m , A ( A b   , t b   ) = b         1 2   n e g l ( λ )  
Definition 10
(MSIS hypothesis). Given a matrix, find a non-zero vector that satisfies the condition. For any PPT adversary, the probability of successfully solving this problem is, i.e.,  A R q k × l , ( z 1 , z 2 ) , A z 1 + z 2 = 0 , ( z 1 , z 2 ) β , A .
P r A R q k × l , ( z 1 , z 2 ) A ( A ) , A z 1 + z 2 = 0 , ( z 1 , z 2 ) β , ( z 1 , z 2 ) 0 n e g l ( λ )

3.3. Security Proof

This section provides a security analysis and proof of Dilithium-PAEKS. By proving Theorem 1, the scheme is shown to satisfy keyword ciphertext indistinguishability and keyword trapdoor indistinguishability.
Theorem 1.
If the MLWE and MSIS security assumptions are valid and CRH is a collision-resistant hash function, the Dilithium-PAEKS scheme satisfies ciphertext indistinguishability and trapdoor privacy. Theorem 1 is derived from two lemmas: Lemma 1 proves the ciphertext indistinguishability of the scheme, and Lemma 2 demonstrates the trapdoor indistinguishability.
Lemma 1.
If the MLWE security assumption holds, Dilithium-PAEKS is IND-CKA secure.
Proof. 
Suppose a PPT adversary A can break the IND-CKA security of the scheme with a non-negligible advantage after making q H hash queries. Then, the challenger C can solve the MLWE problem with a non-negligible advantage through an interaction. Input an instance of the MLWE problem ( A , t ) where t = A s 1 + s 2 with ( s 1 S η l , s 2 S η κ ) . The specific interaction process between C and A is as follows.
(1)
Initialization phase
First, C randomly select k [ 1 , q H ] . Then C generates the sender’s key pair by choosing random vectors s 1 ( s ) , s 2 ( s ) and computing the sender’s public key p k S = ( ρ S , t 1 ( S ) ) where t 1 ( s )   = P o w e r 2 R o u n d q   ( A s s 1 ( s )   + s 2 ( s )   ) . The receiver’s public key is set as p k R = ( ρ R , P o w e r 2 R o u n d q ( t ) ) using the MLWE instance. C then sets the system public parameter list p a r a m s = ( λ , n , q , l , κ , k , γ 1 , γ 2 , β , d , ω , C R H , H ) , and returns ( p a r a m s , p k S , p k R ) to A .
(2)
Hash query phase
A The system adaptively makes two types of inquiries:
① CRH query: C maintains the list L 1 = < w i , μ i > . If w i exists in the list, return μ i ; otherwise, update L 1 and return μ i according to Equation (15):
μ i = C R H ( t r S w i ρ R ) i k R a n d o m { 0 , 1 } 384 i = k
② H query: C maintains the list L 2 = < μ i , w 1 , i , c i > . If ( μ i , w 1 , i ) exists, return c i ; otherwise, update L 2 and return c i according to formula (16):
c i = U n i f o r m ( B 60 ) i k H ( μ i w 1 , i ) i = k
(3)
Inquiry stage
① Keyword ciphertext query:
For a query on W i with i k   C uses the sender’s private key s 1 ( s ) generated in the initialization phase to compute y E x p a n d M a s k ( K S μ i ) , w 1 H i g h B i t s q ( A S y , 2 γ 2 ) , z y + c i s 1 ( S ) , returns C w = ( z , c i , w 1 ) to A .
② Keyword trapdoor query O T r a p d o o r ( w i ) :
For a query on W i with i k C computes (using the same sender’s private key s 1 ( s ) , μ w i C R H ( t r R w i ρ S ) , y E x p a n d M a s k ( K R μ w i ) , w 1 H i g h B i t s q ( A S y , 2 γ 2 ) , z y + c s 1 , T w i = ( z , c , μ w i ) , returns T w i to A .
(4)
Challenging Phase
A submits challenge keywords w 0 , w 1 .
C randomly selects b { 0 , 1 } . If w b w k , terminate the simulation; otherwise, generate the challenge ciphertext using the sender’s private key s 1 ( s ) : y U n i f o r m ( S γ 1 1 l ) , w 1 H i g h B i t s q ( t , 2 γ 2 ) , c U n i f o r m ( B 60 ) , z y + c s 1 ( S ) , C w b = ( z , c , w 1 ) ; return C w b to A .
(5)
Output stage
A outputs guess b .
C constructs an MLWE discriminator: if b = b the output is an MLWE instance, otherwise, the output is a uniform random. The probability of success is Adv C M L W E 1 q H ( Adv A I N D C K A n e g l ( λ ) ) , which contradicts the hypothesis. □
Lemma 2.
If the MSIS security assumption holds, then Dilithium-PAEKS is TIK secure.
Proof. 
Assume there exists a PPT adversary B that can break TIK security. In that case, the challenger D can solve the MSIS problem. Input an MSIS instance A R q k × l , and find a non-zero vector ( z 1 , z 2 ) that satisfies A z 1 + z 2 = 0 and ( z 1 , z 2 ) β . The interaction process is as follows.
(1)
Initialization phase
C sets system parameters p a r a m s , randomly selects k [ 1 , q T ] , where q T is the trapdoor inquiry count.
② Set sender matrix A S = A .
③ Generate receiver key pair ( s k R , p k R ) .
④ Return ( p a r a m s , p k S , p k R ) to B .
(2)
Hash query phase
① CRH query: D maintains the list L 1 = < w i , μ i > . If the item exists, return it; otherwise, update it and return according to Equation (17):
μ i = C R H ( t r S w i ρ R ) i k R a n d o m { 0 , 1 } 384 i = k
② H query: Maintain the list L 2 = < μ i , w 1 , i , c i > . If ( μ i , w 1 , i ) exists, return c i ; otherwise, update and return according to Equation (18):
c i = U n i f o r m ( B 60 ) i k H ( μ i w 1 , i ) i = k
(3)
Inquiry stage
① Keyword ciphertext query phase O P A E K S ( w i ) :
If i = k , D terminates (probability 1 q H ); otherwise compute y E x p a n d M a s k ( K S μ i ) , w 1 H i g h B i t s q ( A S y , 2 γ 2 ) , z y + c i s 1 ( S ) , return C w = ( z , c i , w 1 ) to B .
② Keyword trap question O T r a p d o o r ( w i ) :
D maintains the lists L CRH , L H to handle hash queries and computes z = y + c s 1 ( R ) with the real private key, returning T w = ( z , c , μ w ) .
(4)
Forgery stage
B outputs a forged trapdoor T w = ( z , c , μ w ) , where z < γ 1 β and w O T inquiry.
(5)
MSIS Reduction and Solution
B first checks the list L H for the corresponding item μ w , such that c = H ( μ w w 1 ) .
② Compute w = A S z c t 1 ( S ) 2 d , w 1 = U s e H i n t q ( 0 , w , 2 γ 2 ) .
③ From H-consistency, w 1 = w 1 , the error term e satisfies U s e H i n t q | | e * γ 2 and Equation (19):
A S ( z y ) z 1 + ( c s 2 ( S ) e ) z 2 = 0
④ then outputs the solution to the MSIS problem, where B , ( z 1 , z 2 ) , c = H ( w , p k _ S , p k _ R , w 1 ) , z 2 = c s 2 ( S ) e . B probability of success contradicts the hypothesis Pr [ B s o l v e MSIS ] n e g l ( λ ) , and the theorem is proved. □

3.4. Resistance to Keyword Guessing Attacks

Keyword guessing attacks are a critical threat to searchable encryption schemes. We analyze two attack scenarios:
(1)
Outside Keyword Guessing Attacks (OKGA)
In this scenario, an external adversary who intercepts a ciphertext attempts to guess the keyword. Our IND-CKA proof (Lemma 1) demonstrates that the keyword is information-theoretically hidden within the MLWE-hard instance, making offline guessing computationally infeasible.
(2)
Insider Keyword Guessing Attacks (IKGAs)
More critically, malicious servers possessing valid trapdoors might attempt to perform offline dictionary attacks on intercepted ciphertexts. Traditional PAEKS schemes are vulnerable because trapdoors can be tested against ciphertexts without sender participation. Dilithium-PAEKS prevents IKGA through:
a.
Sender–Receiver Binding: Each ciphertext embeds both the sender’s private key s _ S and the receiver’s public key T W through the hash computation c = H ( w , p k _ S , p k _ R , w 1 ) . Without knowing c = H ( w , p k _ S , p k _ R , w 1 ) , even a malicious server holding a valid trapdoor T W cannot forge a matching ciphertext for keyword verification.
b.
Trapdoor Indistinguishability: As proven in Lemma 2, trapdoors leak no information about keywords beyond what is revealed during legitimate matching operations. The MSIS-hardness ensures that even computational adversaries cannot extract keyword information from trapdoor analysis.
Formal security game for IKGA resistance can be defined as an extension of the IND-CKA game where the adversary is additionally given access to a trapdoor generation oracle. The proof follows a similar reduction to Lemma 1 with additional trapdoor query handling.

4. Experimental Analysis and Comparison

This section evaluates the performance of the Dilithium-PAEKS scheme on a hardware platform featuring an Intel® Core™ i5-12400F processor (Intel Corporation, Santa Clara, CA, USA), 16 GB of RAM, and Windows 11 operating system. The testing was conducted using PyCharm 2023.3.2 with the MIRACL cryptographic core library.
This experiment compared Dilithium-PAEKS with three representative cryptographic schemes: the SM9-PAEKS scheme based on the SM9 national cryptographic algorithm from reference [7], the scheme referred to as CP-AbSEL in reference [15], and the post-quantum cryptographic scheme LB-FSSE from reference [16]. Under a fixed-keyword condition, each of the three core components—keyword encryption, trapdoor generation, and matching test—was executed independently 1000 times for every scheme. The arithmetic mean of the execution times was calculated to minimize measurement errors.
As illustrated in Figure 1, Figure 2 and Figure 3, in terms of keyword encryption, trapdoor generation, and matching test algorithms, the Dilithium-PAEKS scheme exhibits lower efficiency compared to SM9-PAEKS. Although SM9-PAEKS demonstrates higher operational efficiency, it is vulnerable to quantum attacks.
As shown in Figure 1, Figure 2 and Figure 3, when the number of keywords is 200, the execution time of Dilithium-PAEKS in the keyword encryption algorithm is 25.14 ms, which is higher than that of SM9-PAEKS (12.56 ms) and LB-FSSE (0.5 ms), but lower than that of CP-Absel (93.37 ms). In the trapdoor generation algorithm, the execution time of Dilithium-PAEKS is comparable to that of SM9-PAEKS, and its operational efficiency surpasses both LB-FSSE and CP-Absel. In the matching test algorithm, however, the execution time of Dilithium-PAEKS exceeds that of the other three schemes.
Figure 4 shows that the total execution time of Dilithium-PAEKS (54.76 ms) is higher than that of SM9-PAEKS (38.89 ms) but significantly lower than that of CP-Absel (202.48 ms) and LB-FSSE (232.45 ms). It is worth noting that although LB-FSSE achieves extremely fast keyword encryption (0.5 ms), both schemes are fundamentally built upon lattice-based cryptography (specifically the LWE problem), where the inherent computational overhead of high-dimensional matrix operations and noise sampling exceeds that of traditional cryptosystems. Building on this foundation, CP-ABSEL incorporates a ciphertext-policy attribute-based encryption mechanism, which forces the keyword encryption and trapdoor generation processes to additionally handle complex access control structures, further exacerbating the computational burden. Meanwhile, the scheme by Islam et al., in its pursuit of forward security and integration with blockchain technology, must not only bear the inherent computational costs of lattice-based cryptography but also endure the additional overhead of state update mechanisms and systemic delays caused by blockchain transaction latency and ledger verification. It is precisely this combination of the “high overhead of underlying lattice primitives” and the “composite burden of high-level enhanced functionalities” that results in the lower overall efficiency of these two schemes in key algorithmic phases compared to the more streamlined design of Dilithium-PAEKS.
In summary, Dilithium-PAEKS demonstrates advantages over existing searchable encryption algorithms in terms of both security and operational efficiency.

5. Conclusions

To address quantum security threats in traditional searchable encryption schemes, this study is the first to apply the post-quantum standard CRYSTALS-Dilithium algorithm to public-key searchable encryption, proposing the Dilithium-PAEKS framework. By implementing lattice-based key generation, keyword-bound signatures, and dynamic matching mechanisms, the scheme achieves both high efficiency and strong security. Theoretical analysis confirms its indistinguishability between ciphertexts and trapdoors under the MLWE/MSIS assumption. Crucially, the scheme demonstrates robust resistance to both outside and insider keyword guessing attacks, addressing a major vulnerability in existing searchable encryption solutions through innovative Sender–Receiver binding and trapdoor privacy mechanisms. The experimental results show superior overall computational efficiency compared to representative post-quantum searchable encryption schemes such as CP-Absel and LB-FSSE while avoiding the high computational overhead associated with bilinear pairings and blockchain integration. Future work will focus on supporting multi-keyword retrieval, optimizing dynamic database scenarios, and developing bandwidth-efficient designs to further advance the practical adoption of post-quantum searchable encryption technology.

Author Contributions

Conceptualization, M.Z. and A.X.; methodology, A.X.; software, M.Z.; validation, D.K.; formal analysis, A.X.; investigation, S.H.; resources, M.Z.; data curation, D.K.; writing—original draft preparation, A.X.; writing—review and editing, M.Z.; visualization, S.H.; project administration, M.Z.; funding acquisition, M.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

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

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Lanyon, B.P.; Weinhold, T.J.; Langford, N.K.; Barbieri, M.; James, D.F.; Gilchrist, A.; White, A.G. Experimental demonstration of a compiled version of Shor’s algorithm with quantum entanglement. Phys. Rev. Lett. 2007, 99, 250505. [Google Scholar] [CrossRef] [PubMed]
  2. Long, G.L. Grover algorithm with zero theoretical failure rate. Phys. Rev. A 2001, 64, 022307. [Google Scholar] [CrossRef]
  3. Fernandez-Carames, T.M.; Fraga-Lamas, P. Towards Post-Quantum Blockchain: A Review on Blockchain Cryptography Resistant to Quantum Computing Attacks. IEEE Access 2020, 8, 21091–21116. [Google Scholar] [CrossRef]
  4. Song, D.X.; Wagner, D.; Perrig, A. Practical techniques for searches on encrypted data. In Proceedings of the 2000 IEEE Symposium on Security and Privacy (S&P 2000), Berkeley, CA, USA, 14–17 May 2000; IEEE: Piscataway, NJ, USA, 2000; pp. 44–55. [Google Scholar]
  5. Boneh, D.; Di Crescenzo, G.; Ostrovsky, R.; Persiano, G. Public key encryption with keyword search. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT 2004), Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin, Germany, 2004; pp. 506–522. [Google Scholar]
  6. Xu, L.; Xu, C.G.; Yu, X.L. Secure and Efficient Data Retrieval Scheme Using Searchable Encryption in Cloud. J. Cryptolog. Res. 2016, 3, 330–339. [Google Scholar] [CrossRef]
  7. Li, S.Q.; Yang, B.; Wang, T.; Zhou, Y.W. Efficient Public Key Encryption with Keyword Search Without Using Secure Channel. J. Cryptolog. Res. 2019, 6, 283–292. [Google Scholar] [CrossRef]
  8. Deng, Z.H.; Wang, S.H.; Wang, P. Analysis and Improvement of Searchable Encryption Scheme Based on Composite-Order Bilinear Pair. Comput. Eng. 2020, 46, 123–128+135. [Google Scholar] [CrossRef]
  9. Cui, R.R.; Zhang, Y.S.; Wei, Y. Multiple Keywords Searchable Encryption Scheme Based on Elliptic Curve. J. Jinan Univ. 2019, 33, 353–360. [Google Scholar] [CrossRef]
  10. Zhang, C.; Peng, C.G.; Ding, H.F.; Xu, D.Q. Searchable Encryption Scheme Based on China State Cryptography Standard SM9. Comput. Eng. 2022, 48, 159–167. [Google Scholar] [CrossRef]
  11. Pu, L.; Lin, C.; Wu, W.; Gu, J.; He, D. Public-key Authenticated Encryption Scheme with Keyword Search from Chinese Cryptographic SM9. J. Softw. 2025, 36, 4271–4284. [Google Scholar] [CrossRef]
  12. Zhang, E.; Hou, Y.Y.; Li, G.L.; Li, H.M.; Li, Y. Adaptive hierarchical searchable encryption scheme based on learning with errors. Comput. Appl. 2020, 40, 148–156. [Google Scholar]
  13. Liu, Y.; Wang, L.C.; Zhou, Y.B. TTRC-ABE: A Traceable and Revocable Grid-Based Attribute Encryption Scheme Based on the CLWE Problem. J. Electron. Inf. Technol. 2025, 47, 1911–1926. [Google Scholar] [CrossRef]
  14. Yu, H.; Bai, X. Identity-based searchable attribute signcryption in lattice for a blockchain-based medical system. Front. Inf. Technol. Electron. Eng. 2024, 25, 461–472. [Google Scholar] [CrossRef]
  15. Varri, U.S.; Pasupuleti, S.K.; Kadambari, K.V. CP-ABSEL: Ciphertext-policy attribute-based searchable encryption from lattice in cloud storage. J. Cloud Comp. 2021, 10, 1290–1302. [Google Scholar] [CrossRef]
  16. Islam, S.H.; Mishra, N.; Biswas, S.; Keswani, B.; Zeadally, S. An efficient and forward-secure lattice-based searchable encryption scheme for the Big-data era. Comput. Electr. Eng. 2021, 96, 107533. [Google Scholar] [CrossRef]
  17. Ducas, L.; Kiltz, E.; Lepoint, T.; Lyubashevsky, V.; Schwabe, P.; Seiler, G.; Stehlé, D. CRYSTALS-Dilithium: A lattice-based digital signature scheme. IACR Trans. Cryptogr. Hardw. Embed. Syst. 2018, 2018, 238–268. [Google Scholar] [CrossRef]
  18. National Institute of Standards and Technology (NIST). FIPS 204: Module-Lattice-Based Digital Signature Standard; U.S. Department of Commerce: Gaithersburg, MD, USA, 2024. [Google Scholar]
  19. 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 IEEE European Symposium on Security and Privacy (EuroS&P 2018), London, UK, 24–26 April 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 353–367. [Google Scholar]
  20. Lyubashevsky, V.; Seiler, G. Short, Invertible Elements in Partially Splitting Cyclotomic Rings and Applications to Lattice-Based Zero-Knowledge Proofs. In Proceedings of the Advances in Cryptology–EUROCRYPT 2018, Tel Aviv, Israel, 29 April–3 May 2018; Springer: Cham, Switzerland, 2018; pp. 204–224. [Google Scholar]
Figure 1. Comparison of time consumption of four keyword encryption algorithms.
Figure 1. Comparison of time consumption of four keyword encryption algorithms.
Cryptography 10 00022 g001
Figure 2. Comparison of time consumption of four schemes for keyword trapdoor generation algorithm.
Figure 2. Comparison of time consumption of four schemes for keyword trapdoor generation algorithm.
Cryptography 10 00022 g002
Figure 3. Comparison of time consumption of matching test algorithm for four schemes.
Figure 3. Comparison of time consumption of matching test algorithm for four schemes.
Cryptography 10 00022 g003
Figure 4. Comparison of total time for four solutions.
Figure 4. Comparison of total time for four solutions.
Cryptography 10 00022 g004
Table 1. List of parameters used in this paper.
Table 1. List of parameters used in this paper.
Parameters and FunctionsMeaning
λ security parameter, default value
R q mod   q   polynomial   ring   q x / x g + 1 ,   q = 2 23 2 13 + 1 = 8380417
l , κ , k Vector dimension parameter, k = 4, l = 4
γ 1 , γ 2 , β , d , ω reject   sampling   and   compression   parameters ,   γ 1 = 2 17 , γ 2 = γ 1 β / 2 , 2 d = 8192  (d = 13)
Maximum absolute value of polynomial coefficients
C R H collision-resistant hash function
H Challenge   generation   function :   { 0 , 1 } B 60
E x p a n d M a s k Determines the random value for generating the signature scheme
E x p a n d A { 0 , 1 } 256 R q k × l  Expand the matrix and output it as an NTT field representation
P o w e r 2 R o u n d q Separate high and low bits of data
D e c o m p o s e q Different methods of high–low separation
M a k e H i n t q Show hint
U s e H i n t q restoring the separated higher-order bit
H i g h B i t s q Extract the first part of the value in the higher-order bit
L o w B i t s q Extract the second part of the value in the higher-order bit
p k s ,   s k s Sender’s public key and private key pair
p k r , s k r   Receiver’s public key and private key pair
C w Keyword ciphertext, consisting of   z , c , w 1
T w Keyword trapdoor, consisting of z , c , µ w
z ,   z Vectors used in ciphertext and trapdoor respectively, typically derived from random commitments in the signature process
c ,   c Challenge values used in ciphertext and trapdoor respectively, gener-ated by a hash function
w1Part of the ciphertext, possibly obtained by extracting low bits from the intermediate variable w
µw, µwBinding hash value ensuring keyword consistency, computed as µw = CRH (trwρr) = CRH (trwρs)
AsSender’s public key matrix (in Dilithium, the public key includes matrix A and vector t)
t1 (S)High bits of the sender’s public key, derived from the decomposition of t = As1 + s2
s1 (S), s2 (S)Two components of the sender’s private key, namely the main secret vector and the noise term
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

Zheng, M.; Xiao, A.; Huang, S.; Kong, D. A Searchable Encryption Scheme Based on CRYSTALS-Dilithium. Cryptography 2026, 10, 22. https://doi.org/10.3390/cryptography10020022

AMA Style

Zheng M, Xiao A, Huang S, Kong D. A Searchable Encryption Scheme Based on CRYSTALS-Dilithium. Cryptography. 2026; 10(2):22. https://doi.org/10.3390/cryptography10020022

Chicago/Turabian Style

Zheng, Minghui, Anqi Xiao, Shicheng Huang, and Deju Kong. 2026. "A Searchable Encryption Scheme Based on CRYSTALS-Dilithium" Cryptography 10, no. 2: 22. https://doi.org/10.3390/cryptography10020022

APA Style

Zheng, M., Xiao, A., Huang, S., & Kong, D. (2026). A Searchable Encryption Scheme Based on CRYSTALS-Dilithium. Cryptography, 10(2), 22. https://doi.org/10.3390/cryptography10020022

Article Metrics

Back to TopTop