Next Article in Journal / Special Issue
Local Differential Privacy-Based Federated Learning under Personalized Settings
Previous Article in Journal
Vertical Seismic-Profile Data Local Full-Waveform Inversion Based on Marchenko Redatuming
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

VR-PEKS: A Verifiable and Resistant to Keyword Guess Attack Public Key Encryption with Keyword Search Scheme

State Key Laboratory of Public Big Data, College of Computer Science and Technology, Guizhou University, Guiyang 550025, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(7), 4166; https://doi.org/10.3390/app13074166
Submission received: 8 March 2023 / Revised: 23 March 2023 / Accepted: 23 March 2023 / Published: 24 March 2023
(This article belongs to the Special Issue Secure Cloud Storage)

Abstract

:
Public key encryption with keyword search (PEKS) allows users to perform keyword searches of ciphertext on untrusted cloud storage servers, protecting data privacy while sharing data. However, it faces several security problems in practical applications. First, an attacker can launch a keyword guessing attack to obtain keywords of interest to users, causing the leakage of their sensitive information. Second, untrusted cloud servers may return incorrect or incomplete results. In addition, with the continuous development of quantum computers, existing PEKS schemes face the problem of quantum attacks. Since cloud servers are mostly untrusted, verifiable search has become a hot research topic among scholars. However, most of the current schemes are based on bilinear pairing constructions, which are vulnerable to quantum attacks. To solve these problems, we propose a new ciphertext retrieval scheme based on fully homomorphic encryption (FHE), called VR-PEKS. This scheme implements verifiable search and is able to solve the problems of keyword guessing attacks and quantum attacks. We propose to improve the security of the scheme by using the oblivious pseudorandom function to randomize keywords and then encrypt them using FHE. An encrypted verified index structure is constructed and exposed by the data owner, enabling the data recipient to achieve verification of the correctness and integrity of the retrieved results without relying on a trusted third party. We demonstrate the security of the proposed scheme in a stochastic prediction model, and prove that our scheme satisfies keyword ciphertext indistinguishability and keyword trapdoor indistinguishability under adaptive keyword selection attacks. The comparison shows that our scheme is secure and feasible.

1. Introduction

In the era of rapid Internet development, people are increasingly concerned about the privacy of their personal information [1,2]. In order to reduce the pressure of local storage and protect users’ privacy, data are usually encrypted and uploaded to cloud servers for storage. However, the issue of how to retrieve ciphertext data efficiently is a challenging problem. The emergence of Searchable Encryption (SE) [3] provides a solution for ciphertext retrieval, which can effectively solve the problem of privacy leakage caused by storing data in plaintext and the difficulty of retrieving ciphertext caused by encrypting the data. SE is an encryption primitive that enables users to search ciphertext data securely by keyword. SE can be divided into symmetry searchable encryption (SSE) and public key encryption with keyword search (PEKS). SSE uses a symmetric encryption algorithm, which requires complex key management and distribution when expanding to multi-user scenarios; thus, it is mainly applicable to single-user scenarios and not conducive to multi-user data sharing [4]. Therefore, Boneh et al. [5] proposed PEKS technology, which can simultaneously realize data sharing and ciphertext retrieval.
PEKS technology can effectively protect the privacy of sensitive user information. It can be applied to cloud healthcare services, enabling the sharing of electronic medical records among multiple hospitals or departments within the same hospital. When a patient visits a hospital, the hospital extracts key information, such as their name, gender, and disease name, to construct a medical record index using these keywords. The hospital then stores the index and encrypted medical records on a cloud server. When Hospital A needs to share medical records with Hospital B, it uses B’s public key to encrypt the keywords and medical files and creates a medical record index. These contents are then packaged and uploaded to the cloud server for storage. B’s hospital staff can generate keyword traps using a private key and send them to the cloud server for searching. Once the cloud server completes the search, it returns the matching encrypted files. After decryption by B’s hospital staff, they can obtain the plaintext files of the patient’s medical records.
However, Andola et al. [6] stated that the keyword guess attack (KGA) in the PEKS scheme is still an unresolved problem due to the low entropy property of keywords. In KGA, an attacker intercepts the keyword search trapdoor of the data receiver, encrypts guessed keywords with the receiver’s public key, and matches the ciphertext with the trapdoor to obtain the keywords of interest to the user, leading to a serious privacy violation [7]. KGA can be divided into internal KGA and external KGA. External KGA means that the attacker is a malicious party unrelated to the cloud service provider, and they obtain the trap gate by eavesdropping on the public channel between the cloud server and the receiver. In internal KGA, the attacker is a semi-trusted or malicious cloud server, and they can obtain the trapdoor directly from the receiver and can execute T e s t ( W , T W ) to check whether the keyword matches the trapdoor. Therefore, the attack capability of the internal adversary is more powerful. Many researchers have proposed different protocols to resist KGA [8,9,10,11].
Although SE can guarantee the privacy of sensitive data, risks due to hardware failures, network attacks, and the system vulnerabilities of cloud servers still exist [12,13]. In particular, malicious cloud servers have powerful attack capabilities. As Li et al. [14] conclude, attackers with more power have no incentive to attack. Malicious cloud servers are not only capable of performing KGA, but may also perform actions such as intentionally dropping, corrupting, or tampering with cloud data, or incorrectly performing search operations. Therefore, it is necessary to introduce a verification mechanism in PEKS schemes in order to ensure the correctness of the search results and detect the dishonest or malicious behavior of cloud servers. Therefore, some scholars have begun to study verifiable keyword search schemes [15,16,17].
However, with the continuous development of quantum computers, the above PEKS schemes constructed based on traditional number theory and hard problem assumptions are vulnerable to quantum attacks [18]. Gentry’s fully homomorphic encryption (FHE) scheme [19] based on the lattice hard problem is resistant to quantum computer attacks, and homomorphic addition and homomorphic multiplication operations can be used for the computation of ciphertexts. Akavia et al. [20,21] and Wen et al. [22] studied the search for FHE encrypted data.
By considering the KGA problem prevalent in PEKS cryptosystems, the verification problem of untrusted cloud servers returning incomplete results, and the quantum attack problem, in this paper, we propose a new ciphertext retrieval scheme based on FHE, called VR-PEKS. Our main contributions are as follows.
  • We propose a new PEKS scheme based on FHE, called VR-PEKS, and make the scheme resistant to keyword guessing attacks by internal and external adversaries by using the oblivious pseudorandom function (OPRF) to blind keywords. The OPRF keys are securely stored and used by data owners and data users, so that malicious cloud servers cannot generate a valid keyword trapdoor for T e s t algorithm.
  • We design an encrypted authentication index structure, which is created and disclosed by the data owner, so that the data user can verify the correctness and integrity of the search results, so as to prevent the malicious cloud server from forging, tampering with, or discarding the stored cloud data, or performing the search task incorrectly.
  • In the random prediction model, we prove that our scheme satisfies keyword ciphertext indiscriminability and keyword trapdoor indiscriminability under an adaptive keyword selection attack, and compare the security of the scheme with that of other PEKS schemes.
The rest of this paper is organized as follows. In Section 2, the work related to PEKS is presented. In Section 3, the relevant background knowledge that is used in this paper is presented. Section 4 presents the system model, scheme definition, and security model of this scheme. Section 5 describes the proposed scheme in this paper in detail and proves the security and correctness of the scheme. In Section 6, the proposed scheme in this paper is compared and analyzed with other PEKS schemes. Finally, Section 7 concludes this paper.

2. Related Work

Boneh et al. [5] initially proposed a PEKS scheme based on bilinear mapping. However, subsequent studies have shown that the scheme has serious security problems, such as the need for secure channels to transmit trapdoors [23], keyword guessing attacks [7], and other problems. To address these problems, several researchers have proposed improvement schemes. Baek et al. [23] designed an SCF-PEKS scheme that transmits keyword trapdoors without a secure channel. Tang et al. [24] introduced the concept of registered keywords and required the sender to register the keyword with the receiver before generating the keyword ciphertext. Rhee et al. [25] introduced the concept of trapdoor indistinguishability and proposed a public key searchable encryption scheme (dPEKS) with a designated tester. Recently, Li et al. [26] proposed a hierarchical PEKS scheme (dDHPEKS) with decodable encryption for designated testers to satisfy security against external keyword guessing attacks. However, due to the powerful attack capabilities of cloud servers, the above schemes cannot address internal KGAs from malicious servers. Therefore, researchers have started to investigate PEKS schemes that can resist internal KGAs. Xu et al. [9] constructed a public key encryption with fuzzy keyword search scheme (PEFKS), where each keyword corresponds to an exact keyword search trapdoor and a fuzzy keyword search trapdoor, which is effective against internal KGA but has a high communication overhead. Chen et al. [10] proposed a server-assisted scheme (SA-PEKS). To solve the problem of internal KGA, some researchers have introduced the concept of public key authenticated encryption for keyword search (PAEKS). In 2021, Pan et al. [27] proposed a new public key authenticated encryption with keyword search scheme that achieves both multi-ciphertext and multi-trapdoor indistinguishability. Qin et al. [28] introduced an improved cipher-keyword (CI security) model for PAEKS to guarantee the indistinguishability of multiple cipher-keywords in a multi-user environment. Cheng et al. [11] proposed a certificateless public key authentication encryption with keyword search scheme (CLPAEKS), which is free of certificates and key management, while solving internal keyword attacks.
In a system, an effective mechanism or policy is needed to ensure correct operation [29]. Verifiable keyword search is a technique used to ensure the accuracy of retrieval results and detect the dishonest or malicious behavior of cloud servers. Several researchers have proposed different verifiable keyword search schemes, such as Zheng et al.’s verifiable attribute-based keyword search (VABKS) [30] and Sun et al.’s efficient verifiable connected keyword search (VCKS) for encrypted cloud data [31]. Chen et al. [32] also developed a verifiable keyword search scheme with fine-grained authorization control using reversible Bloom lookup tables and Merkle hash trees. However, most of these schemes are vulnerable to keyword guessing attacks (KGA). To address this issue, Miao et al. [33] created a basic verifiable search framework (VSEF) that solves both verifiable search and internal KGA problems.

3. Preliminaries

3.1. Searchable Encryption

Searchable encryption is divided into symmetric searchable encryption (SSE) and public key encryption with keyword search (PEKS). In this paper, we focus on PEKS.
PEKS, proposed by Boneh et al., is an asymmetric cryptosystem that enables the keyword-based retrieval of encrypted data. It involves the generation of a public key and a private key by the data receiver, the encryption of a keyword by the data owner, the generation of a trapdoor by the data receiver, and the testing of the keyword by the cloud server.
PEKS consists of four algorithms: k e y G e n , E n c , T r a p d o o r , and T e s t .
(1) ( p k , s k ) K e y G e n ( λ ) : K e y G e n is used by the data receiver to generate public and private keys ( p k , s k ) with a security parameter λ .
(2) C w E n c ( p k , w ) : E n c is used by the data sender to encrypt a keyword and generate a ciphertext C w for the keyword.
(3) T w T r a p d o o r ( s k , w ) : T r a p d o o r is used by the data receiver to generate a trapdoor T w for a given keyword w.
(4) b T e s t ( p k , C w , T w ) : T e s t is used by the cloud server to test whether the trapdoor T w for a given keyword w corresponds to the same keyword as the keyword ciphertext C w in the index, i.e., whether w is equal to w .

3.2. BFV

Fully homomorphic encryption(FHE) [19,34,35] supports the calculation of ciphertext without decrypting it. The calculation result is also saved and transmitted in ciphertext, and the result of ciphertext decryption is the same as that of plaintext computation, i.e., f E n c m = E n c ( f ( m ) ) . In the BFV scheme [34], the ciphertext consists of polynomials in the ring R q . The plaintext is a polynomial in the ring R t , and the BFV encryption scheme relies on several system parameters, including d, q, t, and σ , to ensure both correctness and security. These parameters are chosen carefully to balance the level of security with the efficiency of the encryption process.
The BFV encryption scheme includes the following algorithms.
(1) ( p k , s k ) B F V . K e y G e n ( 1 λ ) : Randomly sample s R R 2 and set the private key s k = s . Then, randomly sample pk 1 R R q and a noise vector e R χ . Compute and obtain the public key p k = ( pk 0 , pk 1 ) = ( [ ( pk 1 · s + e ) ] q , pk 1 ) .
(2) c t B F V . E n c ( p k , m ) : To encrypt a message m that belongs to the polynomial ring R t , random vectors u , e 1 , and e 2 are sampled uniformly at random from the sets R 2 and χ , respectively. Let = q / t , and compute
C T = ( C T [ 0 ] , C T [ 1 ] ) = ( [ pk 0 · u + e 1 + · m ] q , [ pk 1 · u + e 2 ] q )
(3) B F V . D e c ( C T ) : Compute
t · C T [ 0 ] + C T [ 1 ] · s k q q t
(4) B F V . A d d ( C T 1 , C T 2 ) : The A d d algorithm adds up the ciphertexts C T 1 and C T 2 , returning
( C T 1 0 + C T 2 0 q , C T 1 1 + C T 2 1 q )
(5) B F V . M u l ( C T 1 , C T 2 , r l k ) : The M u l algorithm multiplies the corresponding terms of the two ciphertexts C T 1 and C T 2 and then reduces the ciphertext using the relinearized key r l k .

3.3. Oblivious Pseudorandom Function

Freedman et al. [36] introduced the oblivious pseudorandom function (OPRF). The sender privately chooses a key k. OPRF allows the receiver to combine its own input information x with the sender’s key k, which is converted into the corresponding number after a series of operations, and the receiver can learn F k ( x ) . In this process, the receiver cannot know the receiver’s k, and the sender does not know the final result F k ( x ) . Each input x i can be calculated differently from the other inputs, and these numbers can then be considered as pseudorandom numbers.
Stanislaw Jarecki et al. [37] proposed an OPRF protocol based on the Diffie–Hellman assumption. It computes O P R F k x = H ( H ( x ) k ) , where H is a random prediction function in the range of values in the group Z q * . Let G be a cyclic group of order q. The sender samples the key k from Z q * . Then, the receiver inputs x 0 , 1 * . The receiver first randomly chooses k Z q * , and then sends H ( x ) k to the sender, who replies ( H ( x ) k ) k to the receiver. The receiver can output H H x k , where H is used to map the group elements to a sufficiently long bit string.

3.4. FHE-Based Secure Search

Akavia et al. proposed the definition of S e c u r e S e a r c h [20], i.e., using FHE to search encrypted data. The client encrypts the data through FHE and uploads them to the cloud server for storage. When it needs to retrieve the data, it sends an encrypted query request [ [ q ] ] . Due to the complete homomorphism of FHE, the server can correctly perform the search. First, the client runs the homomorphic encryption key generation algorithm to generate a public key p k and a private key s k . The client publishes the public key p k , while saving the private key s k . Next, the client uploads n encrypted items x = ( x 1 , x 2 , , x n ) to the server using the public key p k . The encrypted data stored in the server are denoted as [ [ x ] ] = ( [ [ x 1 ] ] , [ [ x 2 ] ] , , [ [ x n ] ] ) . When the client wants to make a query, they send an encrypted query [ [ q ] ] to the server. The server then performs homomorphic evaluation on each record [ [ x i ] ] to obtain the encrypted matching result [ [ b ] ] = ( [ [ b 1 ] ] , [ [ b 2 ] ] , , [ [ b n ] ] ) . If record [ [ x i ] ] satisfies the query [ [ q ] ] , then b i is 1; otherwise, it is 0. After computing [ [ b ] ] , the server can then fetch the matching record by homomorphically computing [ [ i * ] ] and obtaining [ [ x i ] ] . The server sends ( [ [ i * ] ] , [ [ x i * ] ] ) to the client for decryption. Here, i * corresponds to the index of the first matching record.
The bottleneck of the FHE-based security search framework is the homomorphic multiplication in the acquisition step. Homomorphic multiplication in [20] was O ( n l o g 2 n ) , which was subsequently optimized to O ( n log n ) in [21]. Wen et al. [22] proposed a new L E A F protocol using three methods of positioning, extraction, and reconstruction, which reduced the homomorphic multiplication times to O ( n ) , which is more advantageous for weak power device deployment. The LEAF protocol is used in the scheme proposed in this paper.

4. VR-PEKS Scheme and Security Definition

4.1. System Model

Our VR-PEKS scheme consists of four different entities, namely a key generation center (KGC), a data sender (DS), a data receiver (DR), and a cloud server (CS). Figure 1 shows the relationships and interactions between the entities.
(1) Key Generation Center (KGC): This is a trusted third party. It is responsible for generating the system parameters and the keys of the sender and receiver, including the public–private key pair ( p k , s k ) of FHE to encrypt keywords and documents, and an OPRF key k.
(2) Data Sender (DS): The DS encrypts his document using FHE encryption algorithm, E n c ( F , p k ) . In addition, he extracts the associated keywords W = w 1 , w 2 , , w m from each document and encrypts these keywords, E n c ( W , p k , k ) , and generates an encrypted keyword index. Then, the encrypted file data and the searchable index are sent to the cloud server for storage. Finally, he generates an encrypted verified index structure to make it public for the receiver to verify the search results.
(3) Data Receiver (DR): The DR sends the keyword trapdoor to the cloud server to search for his interested keywords. After obtaining the search result, he verifies it locally and decrypts it to acquire the plaintext file.
(4) Cloud Server (CS): This can be an untrusted entity. It has powerful data storage and computing capabilities to provide storage and search services for users.

4.2. Scheme Definition

There are six polynomial time algorithms in the VR-PEKS scheme, described as follows.
(1) ( p k , s k , k ) K e y G e n ( 1 λ ) : The algorithm is executed by KGC. On inputting a security parameter λ , it outputs public and private keys ( p k , s k ) of the FHE encryption algorithm and a key k of O P R F .
(2) ( C F , I S , I V ) E n c ( p k , k , W , F ) : The algorithm is executed by the DS. On input keys ( p k , k ) , keywords W = w 1 , w 2 , , w m , and plaintext document set F = F 1 , F 2 , , F n , it outputs encrypted data file set C F , a searchable index I S , and a verification index I V .
(3) T w G e n T r a p d o o r ( p k , w , k ) : The algorithm is executed by DR. On input public key p k , key k, and keyword w , it outputs keyword trapdoor T w .
(4) ( R F , I D R F ) S e a r c h ( T w , I S ) : The algorithm is executed by CS. On input searchable index I S and the trapdoor T w of keyword w , it runs this algorithm to test whether the keyword ciphertexts C T w and T w correspond to the same keyword. If w = w , it returns the corresponding ciphertext file result set R F and the file name set I D R F .
(5) V e r i f y ( R F , I D R F , I V ) : The algorithm is executed by DR. On input ciphertext file result set R F , file name set I D R F , and encrypted verification index I V , it outputs the file validation result. If it is true, it returns 1; otherwise, the result is 0.
(6) D e c ( R F , s k ) : The algorithm is executed by DR. On input ciphertext file result set R F and private key s k , it outputs the plaintext of R F .

4.3. Security Model

Secure cryptographic schemes generally have keyword ciphertext indistinguishability under adaptive selection attacks, i.e., an adversary cannot determine with more than 1/2 probability, given any two plaintexts and the ciphertext of any one of them, which plaintext the given ciphertext is generated from. There are two main types of adversaries in the PEKS scheme, namely external adversary A 1 and internal adversary A 2 . A 1 can intercept the trapdoor from the public channel between CS and DR, and then perform KGA using DR’s public key. A 2 is a more aggressive adversary than A 1 , which possesses the ciphertext of files and keyword trapdoors, and is able to execute search algorithms. An adversary can obtain the keyword trapdoor by some means and can use the data user’s public key to generate the ciphertext of his guessed plaintext keyword, thus conducting a keyword guessing attack and causing the violation of the user’s privacy. Therefore, in the PEKS scheme, it is also necessary to ensure the indistinguishability of having keyword trapdoors. It follows that a PEKS scheme that is secure and resistant to external and internal keyword guessing attacks should satisfy keyword ciphertext indistinguishability under an adaptive selection attack (KC-IND-CKA) and keyword trapdoor indistinguishability under an adaptive selection attack (KT-IND-CKA). KC-IND-CKA and KT-IND-CKA security is defined by the following two games.

4.3.1. KC-IND-CKA Security

The KC-IND-CKA security is defined by the following interactive game between adversary A and challenger C .
(1) The challenger C inputs a security parameter λ and calls the K e y G e n algorithm to generate DR’s key pair ( p k , s k ) and key k. Then, he sends p k to adversary A .
(2) The challenger C generates a keyword ciphertext C T w for keyword w chosen by the adversary A and sends it to A .
(3) The challenger C generates the keyword trapdoor T w for keyword w chosen by the adversary A and sends it to A .
(4) Adversary A sends two keywords w 0 , w 1 to challenger C that he wishes to challenge, with the restriction that adversary A has not requested trapdoor T w 0 or T w 1 before. After receiving the keywords, the challenger C chooses a random bit b 0 , 1 and sends the ciphertext C T w b to adversary A .
(5) The adversary A can continue to adaptively choose any keyword w to request its ciphertext C T w and trapdoor T w as long as w w 0 , w 1 .
(6) The adversary A outputs a guess b 0 , 1 of the keyword ciphertext. When b = b , the adversary A wins the game. The possibility that adversary A can win the game is defined as
A d v A K C I N D C K A λ = Pr b = b 1 2

4.3.2. KT-IND-CKA Security

The KT-IND-CKA security is defined by the following interactive game between adversary A and challenger C .
(1) The challenger C inputs a security parameter λ and calls the K e y G e n algorithm to generate DR’s key pair ( p k , s k ) and key k. Then, he sends p k to adversary A .
(2) The adversary A can perform the queries in steps (2) and (3) of the KC-IND-CKA game.
(3) The adversary A sends two keywords w 0 , w 1 to challenger C that he wishes to challenge, with the restriction that A has not previously requested trapdoor T w 0 or T w 1 . After receiving the keywords, C chooses a random bit b 0 , 1 and sends the trapdoor T w b to A .
(4) The adversary A can continue to adaptively choose any keyword w to request its ciphertext C T w and trapdoor T w as long as w w 0 , w 1 .
(5) The adversary A outputs a guess b 0 , 1 of the keyword trapdoor. When b = b , the adversary A wins the game. The possibility that adversary A can win the game is defined as
A d v A K T I N D C K A λ = Pr b = b 1 2

5. The Proposed VR-PEKS Scheme

In this section, we describe the proposed VR-PEKS scheme and prove its security and correctness.

5.1. Construction of the Scheme

We describe the construction of VR-PEKS based on the fully homomorphic encryption BFV scheme [34]. The working process is as follows: KGC runs the K e y G e n algorithm to generate the public–private key pair ( p k , s k ) of BFV and key k of O P R F . Then, it securely sends (pk,k) and (pk,sk,k) to DS and DR, respectively. DS encrypts the file and keywords using the BFV encryption algorithm and creates a searchable index and an encrypted verified index, ( C F , I S , I V ) E n c ( p k , k , W , F ) . Then, he uploads the ciphertext file C F and searchable index I S to the CS for storage, and exposes the encrypted verification index I V . We use pk and k to encrypt document keywords, which has two benefits. Firstly, after pre-processing by the OPRF, we can use highly optimized FHE parameters during the search operation and do not need to worry about noise flooding because OPRF already provides sufficient protection. Secondly, CS and external adversaries are not aware of the key k, making them unable to generate a valid keyword search trapdoor. Therefore, the scheme is able to defend against KGA by malicious cloud servers and external adversaries. When DR wants to retrieve files, he runs the GenTrapdoor algorithm to generate a valid keyword trapdoor and sends it to CS. Then, CS runs a search algorithm to search the corresponding ciphertext files and returns the result to DR. DR verifies the retrieval results locally, and decrypts them to obtain plaintext data after verification is passed. The schematic flow of the algorithm is shown in Figure 2.
The VR-PEKS algorithm is as follows.
(1) ( p k , s k , k ) K e y G e n ( 1 λ ) : The algorithm is executed by KGC to generate the keys required by the system. Given security parameter λ , KGC runs BFV’s key generation algorithm [34] to obtain the public key p k and private key s k . It randomly samples s χ , lets private key s k = s , and samples a R 2 , e χ , and then computes the public key p k = ( a · s + e q , a ) . In addition, KGC needs to sample a key k for OPRF F : 0 , 1 * 0 , 1 κ . Then, KGC sends securely ( p k , k ) to DS and sends ( s k , p k , k ) to DR. DR discloses p k .
(2) ( C F , I S , I V ) E n c ( p k , k , W , F ) : The algorithm is executed by DS to encrypt files and keywords and create indexes. DS encrypts files F = F 1 , F 2 , , F n using a BFV encryption algorithm, generates ciphertext file set C F = C F 1 , C F 2 , , C F n , encrypts keywords W = w 1 , w 2 , , w m associated with the file set, and establishes keyword searchable index I S and encrypted verification index I V . Finally, DS uploads the ciphertext file set C F and searchable index I S to CS for storage, and makes the encrypted verification index I V publicly available so that DR can use it to verify the correctness and integrity of the search results. The specific steps are as follows.
(a) Generate encrypted files: Given p k and plaintext file set F = F 1 , F 2 , , F n , DS generates the set of ciphertext files
C F B F V . E n c ( p k , F )
Sets p 0 = p k [ 0 ] , p 1 = p k [ 1 ] , samples u 1 , e 1 , e 2 χ , for each message m in F, generate ciphertext
C T = ( p 0 = p k [ 0 ] · u 1 + e 1 + · m q , p 1 · u 1 + e 2 q )
(b) Generate keyword ciphertext C T w : Given a t-bit keyword w = w 1 w 2 w t , DS first pseudorandomizes w using the OPRF function: w = F k w . Then, he encodes w as a polynomial w in Z 2 x / ( x d + 1 ) , where d is a parameter in the BFV encryption scheme. Samples u 2 , e 3 , e 4 χ . DS generates keyword searchable ciphertext
C T w = B F V . E n c ( p 0 · u 2 + e 3 + · m q , p 1 · u 2 + e 4 q )
(c) Build the search index I S : Assume that the outsourced ciphertext file set C F contains n encrypted data files, which are associated with m keywords. DS establishes a reverse searchable index I S . This allows him to place ciphertext files associated with the same keywords on one line. Given keywords w i ( i = 1 , , m ) and their associated file set F j ( j = 1 , , n ) , DR builds encrypted keyword index I S , and the index structure is shown in Figure 3.
(d) Build and expose verification index I V : DS constructs an encrypted verification index I V , as shown in Figure 4. I V is a two-dimensional table with m × ( n + 2 ) . The first column stores the keyword ciphertext C T w i ( i = 1 , , m ) . The 2 ( n + 1 ) columns store size L i j = E n c ( C F j . l e n g t h ) ( i = 1 , , m , j = 1 , , n ) of encrypted files C F j ( j = 1 , , n ) . If ciphertext file C F j is not associated with the keyword C T w i , L i j is empty. The last column stores the verification proof p f i corresponding to the keyword ciphertext C T w i ,
p f i = ( j [ 1 , n ] I D C F j , j [ 1 , n ] L i j ) , L i j n u l l
(3) T w G e n T r a p d o o r ( p k , w , k ) : When DR wants to search the ciphertext file corresponding to t-bit keyword w = w 1 w m , he first uses the OPRF function to pseudo-randomize w to obtain w = F k w , and encodes w as a polynomial in Z 2 x / ( x d + 1 ) . Then, DR samples u 3 , e 5 , e 6 χ to generate keyword trapdoor
T w = B F V . E n c w , p k = ( p 0 · u 3 + e 5 + · w q , p 1 · u 3 + e 6 q )
(4) ( R F , I D R F ) S e a r c h ( T w , I S ) : When CS receives the trapdoor T w from DR, CS runs the S e a r c h algorithm to retrieve index I S to obtain the matching ciphertext file result set R F and file name set I D R F . Then, it returns the result to DR. The specific steps are as follows.
(a) Determine whether the keyword ciphertext C T w i matches the trapdoor T w . We use the exact match function to determine whether the search trapdoor matches the keyword ciphertext and obtain the matching array m . The encrypted 1s or 0s are stored in m , denoted by 1 ¯ and 0 ¯ . 1 ¯ indicates that the trapdoor T w corresponds to the same keyword as the keyword ciphertext C T w i , 0 ¯ on the contrary. For C T w i , T w 0 , 1 m ,
m [ i ] = I s E q u a l ( C T w i , T w ) = i m ( 1 + C T w i [ i ] + T w [ i ] ) m o d 2 , i = 1 , 2 , , m
(b) Retrieve indexes securely. We use the LEAF protocol [22] to securely obtain the matching index I = L E A F ( m ) .
(c) Obtain related ciphertext file set R F and file name set I D R F according to index I. Then, send R F and I D R F to DR.
(5) V e r i f y ( R F , I D R F , I V ) : When DR receives the retrieval result R F , I D R F from CS, he completes following verification steps.
(a) Generate verification certificate
p f = ( I D C F , L C F ) , C F R F
where I D C F is the name of each ciphertext file in R F and L C F is the size of each ciphertext file.
(b) Check p f + p f = 0 , If it is equal, it outputs 1. Otherwise, it outputs 0 and discards the files.
(6) D e c ( C F , s k ) : DR uses private key s k to decrypt the ciphertext file result set R F and obtains the corresponding file data in plaintext. Here, s = s k , c 0 = c t [ 0 ] , c 1 = c t [ 1 ] , and he computes
t · c 0 + c 1 · s q q t

5.2. Correctness

Correctness. For the whole scheme, if each entity performs correctly according to the algorithms, DR can generate a valid keyword trapdoor to obtain the matching ciphertext files and can verify the correctness and integrity of the result.
For keyword ciphertext C T w and trapdoor T v ,
C T w + T v = ( p 0 · u 2 + e 3 + · w q , p 1 · u 2 + e 4 q ) + ( p 0 · u 3 + e 5 + · v q , p 1 · u 3 + e 6 q ) = ( p 0 · ( u 2 + u 3 ) + ( e 3 + e 5 ) noise + · ( w + v ) message q , p 1 · ( u 2 + u 3 ) + ( e 4 + e 6 ) noise q )
Since the scheme uses fully homomorphic encryption, the keyword ciphertext and trapdoor have additive homomorphism. As seen from the above equation, the result of adding C T w and T v ciphertext only exists in scaled ciphertext, and the form of the added result is same as that of w + v , and only new noise is added. w and v are the oblivious pseudorandom values of w and v , respectively, w = F k ( w ) , v = F k ( v ) . Then, if w and v correspond to the same keyword,
I s E q u a l C T w , T v = i [ m ] ( 1 + C T w i [ i ] + T v [ i ] ) m o d 2 1 ¯
Otherwise, I s E q u a l C T w , T v 0 ¯ .
It is easy to find that only users who know the key k can generate a valid keyword search trapdoor. CS matches T v with each keyword ciphertext in the search index I S to obtain array m . Then, CS securely retrieves the index I S using the LEAF protocol (the protocol’s correctness has been proven in [22]), and obtains the matching index to obtain the corresponding ciphertext file result set R F and file name set I D R F .
After the data recipient receives the retrieval result, the data recipient can generate the verification proof p f with the pre-proof p f in the verification index for calculation and determine whether the cloud server returns the correct result,
p f + p f = ( I D C F , L C F ) + ( j [ 1 , n ] I D C F j , j [ 1 , n ] L i j ) , C F R F
By addition homomorphism, the calculation result is 0 ¯ or other. After decryption with the private key sk, the data receiver can determine whether the size and name of the ciphertext file set returned by the cloud server are correct.

5.3. Security

Our VR-PEKS scheme is implemented using a fully homomorphic encryption BFV scheme [34], which is implemented based on the RLWE problem. RLWE is a ring-based version of the LWE problem [38], which is defined as follows.
Definition 1 (RLWE). For security parameter λ , let f ( x ) be a cyclotomic polynomial Φ m ( x ) with d e g ( f ) = φ ( m ) depending on λ and set R = Z x / f ( x ) . Let q = q ( λ ) 2 be an integer. For a random element s R q and distribution χ = χ ( λ ) over R, denote with A s , χ q the distribution obtained by choosing a uniformly random element a R q and a noise term e R q and outputting ( a , a · s + e q ) . The D e c i s i o n R L W E d , q , χ problem is to distinguish between the distribution A s , χ q and the uniform distribution U ( R q 2 ) . The S e a r c h R L W E d , q , χ problem is to find s by given ( a , A s , χ q ) .
Theorem 1. 
Assuming that the RLWE problem is hard and the oblivious pseudorandom function used is a random oracle function, VR-PEKS can safely resist KGA.
Lemma 1. 
Assuming that the RLWE problem is hard and the oblivious pseudorandom function used is a random oracle function, then VR-PEKS satisfies KC-IND-CKA security.
Proof. 
The proof against KC-IND-CKA will be composed of the following three games. A is the adversary against KC-IND-CKA security. In G a m e i , let A go to attack KC-IND-CKA security. The event A guessed correctly is defined as S i (namely, b = b ).
G a m e 1 . This is the game that we originally designed. The advantage of adversary A winning the game is
A d v A = Pr b = b 1 2 = Pr S 1 1 2
G a m e 2 . This is the same as G a m e 1 , except that the challenge is terminated when the following events occur: F k w = F k w b , w w b . It is not difficult to find that in order to terminate the challenge, there must be an enemy B that can break the oblivious pseudorandom function F with a certain advantage ε 1 . Therefore, according to the difference lemma, the probability of the enemy A guessing correctly in G a m e 1 and G a m e 2 has the following relation:
Pr S 1 Pr S 2 ε 1
G a m e 3 . The difference between G a m e 3 and G a m e 2 lies in the means of challenging the ciphertext. Challenger C replaces the keyword ciphertext produced in the form ( p 0 · u + e 1 + · F k ( w b ) q , p 1 · u + e 2 q ) with a uniform random distribution U ( R q 2 ) . Then, G a m e 2 and G a m e 3 should be consistent, unless there is an adversary B who can distinguish U ( R q 2 ) and ( p 0 · u + e 1 + · F k ( w b ) q , p 1 · u + e 2 q ) with a non-negligible advantage (that is, to solve the RLWE problem). Thus, there is Pr S 2 Pr S 3 ε 2 . Because U ( R q 2 ) is uniformly and randomly distributed, the advantage of the adversary’s correct guess in G a m e 3 is Pr S 3 = 1 / 2 .
Finally, the adversary A has the advantage of winning the game as
A d v A = Pr S 1 1 2 Pr S 1 Pr S 2 + Pr S 2 Pr S 3 ε 1 + ε 2
Since oblivious pseudorandom function F is a random oracle function [37], the RLWE problem is hard [34], so that ε 1 and ε 2 can be ignored. It can be concluded that A d v A can be ignored. The security of KC-IND-CKA is proven. □
Lemma 2. 
Assuming that the RLWE problem is hard and the oblivious pseudorandom function used is a random oracle function, then VR-PEKS satisfies KT-IND-CKA security.
Proof. 
The same as above, the proof for KT-IND-CKA will consist of the following three games. The event A guessed correctly is defined as S i (namely, b = b ).
G a m e 1 . This is the game that we originally designed. The advantage of adversary A winning the game is
A d v A = Pr b = b 1 2 = Pr S 1 1 2
G a m e 2 . This is the same as G a m e 2 in KC-IND-CKA security. There is
Pr S 1 Pr S 2 ε 1
G a m e 3 . Challenger C replaces the trapdoor with a uniform random distribution U ( R q 2 ) ,
T w b = ( p 0 · u 3 + e 5 + · F k ( w b ) q , p 1 · u 3 + e 6 q )
Then, G a m e 2 and G a m e 3 should be consistent, unless there is an adversary B 3 who can distinguish U ( R q 2 ) and ( p 0 · u + e 1 + · F k ( w b ) q , p 1 · u + e 2 q ) with a non-negligible advantage (that is, to solve the RLWE problem). Thus, there is Pr S 2 Pr S 3 ε 3 .
Combine the above three games to obtain
A d v A = Pr S 1 1 2 Pr S 1 Pr S 2 + Pr S 2 Pr S 3 ε 1 + ε 3
Since oblivious pseudorandom function F is a random oracle function [37], the RLWE problem is hard [34], so that ε 1 and ε 2 can be ignored. It can be concluded that A d v A can be ignored. The security of KT-IND-CKA is proven. □

6. Comparison

In this section, we present a comparative analysis of the proposed scheme, comparing it with the classical scheme in PEKS and with recent work related to verifiable search. Our analysis focuses on the security and theoretical computational complexity of the scheme. We also perform an experimental comparison of the schemes to show their feasibility and efficiency.

6.1. Security Comparison

The security comparison is shown in Table 1. We compare our proposed scheme with the schemes BDOP-PEKS [5] and VSEF [33], and Zhang’s scheme [16]. BDOP-PEKS is the classical public key searchable encryption scheme, and most of the public key searchable encryptions are based on the improvement of this scheme. However, this scheme has weak security, requires a secure channel transmission trapdoor, cannot resist keyword guessing attacks, and does not consider the verification of the retrieval results. VSEF and Zhang et al. studied verifiable search, but they only considered whether the cloud server returned the correct set of files, and only verified the file IDs without considering the size of each file, i.e., only the correctness of the search results can be verified, and the integrity of the search results cannot be verified. Our solution integrates the security, document set, and validation of each file size in the document set. In addition, the BDOP-PEKS, VSEF, and Zhang et al. schemes all rely on bilinear mapping operations, which cannot resist quantum attacks. In contrast, our VR-PEKS scheme is constructed based on the fully homomorphic encryption BFV, which is based on the RLWE hard problem and is able to resist quantum attacks [39].

6.2. Calculation Comparison

The computational cost comparison of the algorithms for each scheme is shown in Table 2. We consider only the time-consuming cryptographic operations. Let E denote the exponential operation, P denote the pairing operation, H denote the hash operation, M denote the homomorphic multiplication operation, and A denote the homomorphic addition operation. m denotes the number of keywords in W, n denotes the number of files in F, and denotes the number of search result files returned, while f denotes the number of data owners. U denotes the number of attributes in the system. For BDOP-PEKS and its improved scheme, due to using a forward index (file–keyword), when performing keyword matching, almost all encrypted indexes of the ciphertext file need to be matched once, so the complexity of the search phase is O ( n ) . This leads to a serious decrease in search efficiency in systems with a large number of files. VSEF, Zhang et al.’s scheme, and ours are constructed based on the reverse index (keyword–file), and the search efficiency is proportional to the number of keywords, which is more efficient. The algorithms in [5,16,33] are based on bilinear pairing construction, which requires elliptic curve-based operations. The algorithms in ours are based on the RLWE construction, which can improve the computational speed and achieve higher security strength [40]. However, it slightly increases the storage overhead and communication overhead because the ciphertext is usually stored in matrix form.
We performed experimental simulations of searchable encryption schemes based on bilinear pairing and RLWE-based constructions to measure the practical performance of the above schemes. These experiments were conducted on Windows with a 3.40 GHz AMD Ryzen 5 2600 Six-Core processor, and Java’s Pairing-Based Cryptography (JPBC) Library and Rings Library. We consider Z p = 96 bit and G 1 = G 2 = 208 bit. The depth of the polynomial ring is 32 bits. The encrypted keyword is 2 bytes. In this paper, we show the performance characteristics of the main algorithms, namely K e y G e n , E n c , G e n T r a p , and S e a r c h . In Figure 5, we show the computational overhead of the four main algorithms. In performing the experiments, we only considered the operations within the noise allowed. Bootstrapping is required after the noise of the fully homomorphic encryption operation reaches the upper limit, and it may take several minutes to execute bootstrapping in the BFV scheme [34]. Since the bilinear pairing-based encryption scheme involves exponential operations, while the RLWE-based encryption scheme involves only additive and multiplicative operations, the computational overhead of the RLWE-based encryption scheme is much lower than that of the bilinear pairing-based encryption scheme in the noise range allowed for decryption.

7. Conclusions

In this paper, we propose a public key encryption with keyword search scheme based on fully homomorphic encryption. First, the scheme uses OPRF to blind the keywords and then encrypts them using BFV to generate an encrypted searchable index, thus enabling the cloud server to search the data without decrypting them and effectively resisting the internal keyword guessing attacks on the cloud server. Second, by constructing an encrypted verifiable index, the data sender enables the receiver to verify the correctness and integrity of the search results without relying on a trusted third-party audit server, thus improving the security of the system on an untrusted cloud server. Our scheme can be used as a reference for data security and privacy protection in other fields, such as data management and sharing in healthcare, finance, and government. In future research work, we will explore the design of more secure, efficient, and semantically richer public key searchable encryption schemes based on FHE, and also focus on RLWE-based post-quantum ciphers to cope with the threat of cracking existing cryptographic algorithms by future quantum computers, and provide more reliable and efficient solutions for data security and privacy protection in cloud computing and other fields.

Author Contributions

Conceptualization, Y.T. and Y.L.; methodology, Y.T. and Y.C.; software, Y.T.; validation, Y.T. and S.D.; formal analysis, Y.T.; investigation, T.L.; resources, T.L.; data curation, S.D.; writing—original draft preparation, Y.T.; writing—review and editing, Y.T. and Y.L.; visualization, S.D.; supervision, Y.C.; project administration, Y.L.; funding acquisition, Y.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the National Natural Science Foundation of China (61962009 and 62202118), the Natural Science Research Technology Top Talent Project of the Education Department of Guizhou Province ([2022]073), and the Vocational Education Science Research Project of the Education Department of Guizhou Province.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

No data available.

Acknowledgments

We sincerely thank the editors and reviewers for their constructive comments and suggestions on this paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chen, Y.; Sun, J.; Yang, Y.; Li, T.; Niu, X.; Zhou, H. PSSPR: A source location privacy protection scheme based on sector phantom routing in WSNs. Int. J. Intell. Syst. 2022, 37, 1204–1221. [Google Scholar] [CrossRef]
  2. Luo, Y.; Chen, Y.; Li, T.; Wang, Y.; Yang, Y.; Yu, X. An Entropy-View Secure Multiparty Computation Protocol Based on Semi-Honest Model. J. Organ. End User Comput. 2022, 34, 1–17. [Google Scholar] [CrossRef]
  3. 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, Berkeley, CA, USA, 14–17 May 2000; IEEE: Piscataway, NJ, USA, 2000; pp. 44–55. [Google Scholar]
  4. Chaudhari, P.; Das, M.L. KeySea: Keyword-Based Search With Receiver Anonymity in Attribute-Based Searchable Encryption. IEEE Trans. Serv. Comput. 2022, 15, 1036–1044. [Google Scholar] [CrossRef]
  5. Boneh, D.; Di Crescenzo, G.; Ostrovsky, R.; Persiano, G. Public key encryption with keyword search. In Proceedings of the Advances in Cryptology—EUROCRYPT 2004: International Conference on the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 506–522. [Google Scholar]
  6. Andola, N.; Gahlot, R.; Yadav, V.K.; Venkatesan, S.; Verma, S. Searchable encryption on the cloud: A survey. J. Supercomput. 2022, 78, 9952–9984. [Google Scholar] [CrossRef]
  7. Byun, J.W.; Rhee, H.S.; Park, H.A.; Lee, D.H. Off-line keyword guessing attacks on recent keyword search schemes over encrypted data. In Proceedings of the Secure Data Management: Third VLDB Workshop, SDM 2006, Seoul, Korea, 10–11 September 2006; Springer: Berlin/Heidelberg, Germany, 2006; pp. 75–83. [Google Scholar]
  8. Xu, P.; Tang, X.; Wang, W.; Jin, H.; Yang, L.T. Fast and parallel keyword search over public-key ciphertexts for cloud-assisted IoT. IEEE Access 2017, 5, 24775–24784. [Google Scholar] [CrossRef]
  9. Xu, P.; Jin, H.; Wu, Q.; Wang, W. Public-key encryption with fuzzy keyword search: A provably secure scheme under keyword guessing attack. IEEE Trans. Comput. 2012, 62, 2266–2277. [Google Scholar] [CrossRef]
  10. Rongmao, C.; Yi, M.; Guomin, Y.; Fuchun, G.; Xinyi, H.; Xiaofen, W.; Yongjun, W. Server-Aided Public Key Encryption With Keyword Search. Inf. Forensics Secur. IEEE Trans. ISSN 2016, 11, 1556–6013. [Google Scholar]
  11. Cheng, L.; Meng, F. Certificateless public key authenticated searchable encryption with enhanced security model in IIoT applications. IEEE Internet Things J. 2022, 10, 1391–1400. [Google Scholar] [CrossRef]
  12. Baror, S.O.; Venter, H. A taxonomy for cybercrime attack in the public cloud. In Proceedings of the International Conference on Cyber Warfare and Security, Stellenbosch, South Africa, 28 February–1 March 2019; Academic Conferences International Limited: Reading, UK, 2019; p. 505. [Google Scholar]
  13. Bove, D.; Müller, T. Investigating characteristics of attacks on public cloud systems. In Proceedings of the 2019 6th IEEE International Conference on Cyber Security and Cloud Computing (CSCloud)/2019 5th IEEE International Conference on Edge Computing and Scalable Cloud (EdgeCom), Paris, France, 21–23 June 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 89–94. [Google Scholar]
  14. Li, T.; Wang, Z.; Chen, Y.; Li, C.; Jia, Y.; Yang, Y. Is semi-selfish mining available without being detected? Int. J. Intell. Syst. 2022, 37, 10576–10597. [Google Scholar] [CrossRef]
  15. Miao, Y.; Weng, J.; Liu, X.; Choo, K.K.R.; Liu, Z.; Li, H. Enabling verifiable multiple keywords search over encrypted cloud data. Inf. Sci. 2018, 465, 21–37. [Google Scholar] [CrossRef]
  16. Zhang, Y.; Zhu, T.; Guo, R.; Xu, S.; Cui, H.; Cao, J. Multi-keyword searchable and verifiable attribute-based encryption over cloud data. IEEE Trans. Cloud Comput. 2021, 11, 971–983. [Google Scholar] [CrossRef]
  17. Yousefipoor, V.; Eghlidos, T. An efficient, secure and verifiable conjunctive keyword search scheme based on rank metric codes over encrypted outsourced cloud data. Comput. Electr. Eng. 2023, 105, 108523. [Google Scholar] [CrossRef]
  18. Liu, Z.Y.; Tseng, Y.F.; Tso, R.; Mambo, M.; Chen, Y.C. Public-key authenticated encryption with keyword search: A generic construction and its quantum-resistant instantiation. Comput. J. 2022, 65, 2828–2844. [Google Scholar] [CrossRef]
  19. 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]
  20. Akavia, A.; Feldman, D.; Shaul, H. Secure search on encrypted data via multi-ring sketch. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, Toronto, ON, Canada, 15–19 October 2018; pp. 985–1001. [Google Scholar]
  21. Akavia, A.; Gentry, C.; Halevi, S.; Leibovich, M. Setup-free secure search on encrypted data: Faster and post-processing free. Cryptol. ePrint Arch. 2018. [Google Scholar] [CrossRef] [Green Version]
  22. Wen, R.; Yu, Y.; Xie, X.; Zhang, Y. Leaf: A faster secure search algorithm via localization, extraction, and reconstruction. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, 9–13 November 2020; pp. 1219–1232. [Google Scholar]
  23. Baek, J.; Safavi-Naini, R.; Susilo, W. Public key encryption with keyword search revisited. In Proceedings of the Computational Science and Its Applications—ICCSA 2008: International Conference, Perugia, Italy, 30 June–3 July 2008; Springer: Berlin/Heidelberg, Germany, 2008; pp. 1249–1259. [Google Scholar]
  24. Tang, Q.; Chen, L. Public-key encryption with registered keyword search. In Proceedings of the Public Key Infrastructures, Services and Applications: 6th European Workshop, EuroPKI 2009, Pisa, Italy, 10–11 September 2009; Springer: Berlin/Heidelberg, Germany, 2010; pp. 163–178. [Google Scholar]
  25. Rhee, H.S.; Park, J.H.; Susilo, W.; Lee, D.H. Trapdoor security in a searchable public-key encryption scheme with a designated tester. J. Syst. Softw. 2010, 83, 763–771. [Google Scholar] [CrossRef]
  26. Li, H.; Huang, Q.; Susilo, W. A secure cloud data sharing protocol for enterprise supporting hierarchical keyword search. IEEE Trans. Dependable Secur. Comput. 2020, 19, 1532–1543. [Google Scholar] [CrossRef]
  27. Pan, X.; Li, F. Public-key authenticated encryption with keyword search achieving both multi-ciphertext and multi-trapdoor indistinguishability. J. Syst. Archit. 2021, 115, 102075. [Google Scholar] [CrossRef]
  28. Qin, B.; Cui, H.; Zheng, X.; Zheng, D. Improved security model for public-key authenticated encryption with keyword search. In Proceedings of the Provable and Practical Security: 15th International Conference, ProvSec 2021, Guangzhou, China, 5–8 November 2021; Springer: Berlin/Heidelberg, Germany, 2021; pp. 19–38. [Google Scholar]
  29. Li, T.; Wang, Z.; Yang, G.; Cui, Y.; Chen, Y.; Yu, X. Semi-selfish mining based on hidden Markov decision process. Int. J. Intell. Syst. 2021, 36, 3596–3612. [Google Scholar] [CrossRef]
  30. Zheng, Q.; Xu, S.; Ateniese, G. VABKS: Verifiable attribute-based keyword search over outsourced encrypted data. In Proceedings of the IEEE INFOCOM 2014—IEEE Conference on Computer Communications, Toronto, ON, Canada, 27 April–2 May 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 522–530. [Google Scholar]
  31. Sun, W.; Liu, X.; Lou, W.; Hou, Y.T.; Li, H. Catch you if you lie to me: Efficient verifiable conjunctive keyword search over large dynamic encrypted cloud data. In Proceedings of the 2015 IEEE Conference on Computer Communications (INFOCOM), Hong Kong, China, 26 April–1 May 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 2110–2118. [Google Scholar]
  32. Chen, Z.; Zhang, F.; Zhang, P.; Liu, J.K.; Huang, J.; Zhao, H.; Shen, J. Verifiable keyword search for secure big data-based mobile healthcare networks with fine-grained authorization control. Future Gener. Comput. Syst. 2018, 87, 712–724. [Google Scholar] [CrossRef]
  33. Miao, Y.; Tong, Q.; Deng, R.H.; Choo, K.K.R.; Liu, X.; Li, H. Verifiable searchable encryption framework against insider keyword-guessing attack in cloud storage. IEEE Trans. Cloud Comput. 2020, 10, 835–848. [Google Scholar] [CrossRef]
  34. Fan, J.; Vercauteren, F. Somewhat practical fully homomorphic encryption. Cryptol. ePrint Archive 2012. [Google Scholar]
  35. 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; Springer: Berlin/Heidelberg, Germany, 2017; pp. 409–437. [Google Scholar]
  36. Freedman, M.J.; Ishai, Y.; Pinkas, B.; Reingold, O. Keyword Search and Oblivious Pseudorandom Functions. In Proceedings of the TCC, Cambridge, MA, USA, 10–12 February 2005; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3378, pp. 303–324. [Google Scholar]
  37. law Jarecki, S.; Liu, X. Fast secure computation of set intersection. In Proceedings of the International Conference on Security and Cryptography for Networks, Amalfi, Italy, 13–15 September 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 418–435. [Google Scholar]
  38. Regev, O. On lattices, learning with errors, random linear codes, and cryptography. J. ACM 2009, 56, 1–40. [Google Scholar] [CrossRef]
  39. Maringer, G.; Puchinger, S.; Wachter-Zeh, A. Information- and Coding-Theoretic Analysis of the RLWE/MLWE Channel. IEEE Trans. Inf. Forensics Secur. 2023, 18, 549–564. [Google Scholar] [CrossRef]
  40. Peikert, C. Lattice cryptography for the internet. In Proceedings of the Post-Quantum Cryptography: 6th International Workshop, PQCrypto 2014, Waterloo, ON, Canada, 1–3 October 2014; Springer: Berlin/Heidelberg, Germany, 2014; pp. 197–219. [Google Scholar]
Figure 1. System model for the proposed VR-PEKS scheme.
Figure 1. System model for the proposed VR-PEKS scheme.
Applsci 13 04166 g001
Figure 2. Algorithm flow chart of the proposed VR-PEKS scheme.
Figure 2. Algorithm flow chart of the proposed VR-PEKS scheme.
Applsci 13 04166 g002
Figure 3. Reverse encrypted keyword index structure.
Figure 3. Reverse encrypted keyword index structure.
Applsci 13 04166 g003
Figure 4. The encrypted verification index structure.
Figure 4. The encrypted verification index structure.
Applsci 13 04166 g004
Figure 5. Reverse encrypted keyword index structure.
Figure 5. Reverse encrypted keyword index structure.
Applsci 13 04166 g005
Table 1. Security comparison.
Table 1. Security comparison.
SchemesKC-INDKT-INDExternal KGAInternal KGAQuantum AttackCorrectness VerifiableIntegrity VerifiableThird-Party Auditor
BDOP-PEKS [5]yesnoinsecureinsecureinsecurenono/
VSEF [33]yesyessecuresecureinsecureyesnorequired
Zhang’s [16]yesyessecuresecureinsecureyesnorequired
Oursyesyessecuresecuresecureyesyesnot required
Table 2. Theoretical calculation cost comparison.
Table 2. Theoretical calculation cost comparison.
SchemesConstruction KeyGen Enc Trap Search Verify
BDOP-PEKS [5]Bilinear Pairing 2 E 2 E + 2 H + P E + H n ( H + P ) /
VSEF [33]Bilinear Pairing 2 E 6 E + 2 H 3 E + H + P ( m + 1 ) P ( 2 + 1 ) E + H + 2 P
Zhang’s [16]Bilinear Pairing ( 2 U + f + 4 ) E + E T + H ( r = 1 U U r + U + 2 f + 3 + m ) E + 3 E T + H ( 2 U + 1 ) E ( 2 U + 1 ) P + E T 3 E + 2 P + q h
OursRLWE M + A 2 M + 3 A + H 2 M + 3 A + H m ( 2 A + M ) ( 2 + 1 ) A
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

Tang, Y.; Chen, Y.; Luo, Y.; Dong, S.; Li, T. VR-PEKS: A Verifiable and Resistant to Keyword Guess Attack Public Key Encryption with Keyword Search Scheme. Appl. Sci. 2023, 13, 4166. https://doi.org/10.3390/app13074166

AMA Style

Tang Y, Chen Y, Luo Y, Dong S, Li T. VR-PEKS: A Verifiable and Resistant to Keyword Guess Attack Public Key Encryption with Keyword Search Scheme. Applied Sciences. 2023; 13(7):4166. https://doi.org/10.3390/app13074166

Chicago/Turabian Style

Tang, Yingying, Yuling Chen, Yun Luo, Sen Dong, and Tao Li. 2023. "VR-PEKS: A Verifiable and Resistant to Keyword Guess Attack Public Key Encryption with Keyword Search Scheme" Applied Sciences 13, no. 7: 4166. https://doi.org/10.3390/app13074166

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

Article Metrics

Back to TopTop