Searchable encryption method and system with forward and backward security

By introducing blockchain, delay encryption, catalyst mechanism, grid cryptography and VTLRS technologies into searchable encryption technology, problems such as key leakage and insufficient anti-quantum attack capabilities in the existing technology are solved, and a searchable encryption system with high security and flexibility is realized to ensure the front-and-back security and privacy protection of data.

CN119519987AActive Publication Date: 2025-02-25SHANDONG COMP SCI CENTNAT SUPERCOMP CENT IN JINAN +1

Patent Information

Application Number
CN202411665331.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-02-25
Estimated Expiration
2044-11-20

AI Technical Summary

Technical Problem

The existing searchable encryption technology faces problems such as key leakage, insufficient anti-quantum attack capabilities, lack of multi-layer defense mechanisms, untimely update of keys and trap doors, lack of effective time control and privacy protection mechanisms, and it is difficult to meet the growing security needs of users.

Method used

Blockchain technology is used to generate keys and signature private keys and public keys, combining delay encryption and catalyst mechanisms to enhance the security of data encryption and search indexes; encrypt search indexes using grid cryptography technology to resist quantum computing threats; VTLRS method combines time locking and signature mechanisms to ensure that the signature of the search trap gate cannot be verified within a specified time period; dynamically update the keys and search trap gates to ensure that the data remains forward-backward-facing security throughout the life cycle.

Benefits of technology

It significantly enhances the overall security and flexibility of the searchable encryption system, improves its resistance to online attacks and quantum attacks, ensures forward-backward security and privacy protection of data, and meets users' high security needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119519987A_ABST
    Figure CN119519987A_ABST
Patent Text Reader

Abstract

The invention provides a searchable encryption method and system with forward and backward security, and relates to the technical field of data security and privacy protection. Comprising the steps that a data owner performs delay encryption on plaintext data by adopting a delay encryption method; creating a forward and reverse combined search index, and encrypting in combination with the public key of the encrypted search index to obtain an encrypted search index; the data requester encrypts the search keyword by using a private key for encrypting the search index, introduces a catalyst mechanism and generates a search trap door; generating time lock information based on the search trap door, and signing the search trap door by using a signature private key of the search trap door; the data owner sends a ciphertext subjected to delay encryption and an encrypted search index, and the data requester sends a search trap door and a signature to the cloud server; and the cloud server verifies the identity of the data requester, matches the search trap door with the encrypted search index, and returns a search result to the data requester. According to the invention, the overall security and flexibility of the searchable encryption system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of data security and privacy protection, and in particular, relates to a searchable encryption method and system with forward and backward security. Background Art

[0002] In the era of big data, data security and privacy protection issues are becoming increasingly prominent. Ensuring data privacy while achieving efficient data utilization has become a core issue in the field of information security. Searchable Encryption (SE) allows users to perform keyword searches on encrypted data and is one of the effective technical means to solve data security sharing.

[0003] However, existing SE schemes face multiple privacy and security threats. For example, key leakage may allow attackers to obtain past and future data, significantly reducing the security of the system. To address these issues, researchers proposed a forward and backward security scheme to improve the SE algorithm, aiming to ensure that even if the key is leaked, past data can still remain secure, and the protection of future data will not be affected. However, although the introduction of forward and backward security strategies as a protective measure has effectively reduced the success rate of keyword guessing attacks to a certain extent, emerging threats continue to emerge, posing a great challenge to the overall security of the SE system.

[0004] With the development of quantum computing technology, traditional public key encryption and keyword search solutions will be unable to resist the threats brought by quantum computing. The powerful processing power of quantum computing makes keyword guessing attacks easier, especially in the case of key leakage. Attackers can use the leaked keys to guess, which seriously threatens the security of data. Therefore, the risks of online and offline attacks are also increasing. Online attackers can capture sensitive information for exploratory attacks by monitoring user requests and responses in real time, and the progress of quantum computing makes these attacks more efficient. In addition, offline attacks give attackers the ability to use captured ciphertext for brute force cracking without time limits. Attackers will more easily use these means to undermine the security of searchable encryption systems, making it difficult for existing SE solutions to meet the growing security needs of users. Therefore, it is urgent to improve the security of searchable encryption technology to protect the privacy and security of data.

[0005] Currently, network attacks are usually resisted by strengthening key management and adopting complex encryption strategies. Although the security and attack resistance of searchable encryption systems can be improved to a certain extent, the following problems still exist:

[0006] First, the ability to resist quantum attacks is insufficient. Current encryption technology is highly vulnerable to the potential threats brought by quantum computing. The vulnerabilities of traditional encryption algorithms may be exposed, exposing sensitive data to unprecedented threats.

[0007] Second, there is a lack of multi-layer defense mechanisms to deal with complex attacks. Existing solutions are easily breached when faced with frequent and complex attacks and cannot provide sufficient defense measures.

[0008] Third, untimely key and trap updates affect the security of the system. In the current scheme, the keys and search traps are usually not dynamically updated before the search, so that when the attacker successfully obtains the old keys or traps, they may use them to carry out subsequent attacks, reducing the forward and backward security of the scheme.

[0009] Fourth, there is a lack of effective time control and privacy protection mechanisms. During the identity authentication and data access process, the signature verification time cannot be effectively controlled, making the system vulnerable to time-sensitive attacks and reducing privacy protection capabilities.

[0010] Finally, the key management of SE solutions usually relies on centralized key storage, which poses a single point of failure risk. Once the centralized node is attacked or fails, the security and availability of the key will be seriously affected. Summary of the invention

[0011] In order to overcome the above-mentioned deficiencies of the prior art, the present invention provides a searchable encryption method and system with forward and backward security, which can improve the overall security and flexibility of the searchable encryption system.

[0012] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions:

[0013] A first aspect of the present invention provides a searchable encryption method with forward and backward security.

[0014] A searchable encryption method with forward and backward security comprises the following steps:

[0015] The blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private and public keys to the data owner and data requester;

[0016] The data owner uses a delayed encryption method and a key to delay the encryption of the plaintext data. Based on the key information in the plaintext data, a forward and reverse combined search index is created and encrypted with the public key of the encrypted search index to obtain an encrypted search index.

[0017] The data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces a catalyst mechanism to generate a search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor;

[0018] The data owner sends the delayed encrypted ciphertext and encrypted search index, and the data requester sends the search trapdoor and signature to the cloud server;

[0019] The cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds results that meet the search criteria and returns them to the data requester.

[0020] A second aspect of the present invention provides a searchable encryption system with forward and backward security.

[0021] A searchable encryption system with forward and backward security, comprising:

[0022] The key generation module is configured to: the blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private key and public key to the data owner and the data requester;

[0023] The plaintext and search index encryption module is configured as follows: the data owner uses a delayed encryption method to delay the encryption of plaintext data in combination with a key; creates a forward and reverse combined search index based on key information in the plaintext data, and encrypts it in combination with a public key of the encrypted search index to obtain an encrypted search index;

[0024] The search trapdoor generation and signature module is configured as follows: the data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces the catalyst mechanism to generate the search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor;

[0025] The transmission module is configured as follows: the data owner sends the delayed encrypted ciphertext and the encrypted search index, and the data requester sends the search trapdoor and the signature to the cloud server;

[0026] The verification and matching module is configured as follows: the cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds the results that meet the search criteria and returns them to the data requester.

[0027] A third aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps of the searchable encryption method with forward and backward security as described in the first aspect of the present invention.

[0028] The fourth aspect of the present invention provides an electronic device, comprising a memory, a processor, and a program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps in the searchable encryption method with forward and backward security as described in the first aspect of the present invention are implemented.

[0029] One or more of the above technical solutions have the following beneficial effects:

[0030] The present invention provides a searchable encryption method and system with forward and backward security, which introduces delayed encryption and catalyst mechanisms when encrypting plaintext data to significantly enhance the ability to resist complex threats such as online attacks. The delayed encryption operation delays the encryption process of plaintext data to a predetermined time point, thereby increasing the difficulty of cracking by attackers. The catalyst mechanism provides additional acceleration processing to ensure that the decryption speed of ciphertext is improved in certain situations, achieving an effective balance between security and efficiency.

[0031] The present invention uses the VTLRS method to combine the time lock with the signature mechanism to ensure that the signature of the search trapdoor cannot be verified within a specified time period. This mechanism not only improves the protection of the identity privacy of the data requester, but also verifies the authenticity and legitimacy of the data requester's identity. The time control feature of VTLRS further enhances the system's ability to resist attacks and significantly improves the overall data security and privacy protection effect.

[0032] The present invention uses lattice cryptography technology to encrypt search indexes, thereby effectively resisting potential security threats brought by quantum computing and ensuring the privacy and security of data during long-term storage.

[0033] The present invention adopts a method of dynamically updating keys and search trapdoors to ensure that data owners and data requesters use the latest encryption keys and trapdoors before each search operation, effectively preventing attackers from decrypting future data after obtaining old keys or trapdoors at a certain moment, and effectively realizing forward and backward security of searchable encryption.

[0034] The present invention combines blockchain technology and elects KDC through a practical Byzantine fault-tolerant consensus algorithm, thereby solving the single point failure problem of traditional key management. At the same time, blockchain technology ensures the secure storage and management of keys, and enhances the tamper-proof capability and security of keys.

[0035] Advantages of additional aspects of the present invention will be given in part in the following description, and in part will become obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.

[0037] Figure 1 The present invention is a flow chart of a searchable encryption method with forward and backward security.

[0038] Figure 2 Interaction diagram for a searchable encryption method with forward and backward security.

[0039] Figure 3 A searchable encrypted framework graph with forward and backward security. DETAILED DESCRIPTION

[0040] It should be noted that the following detailed descriptions are exemplary and are intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present invention belongs.

[0041] It should be noted that the terms used herein are for describing specific embodiments only and are not intended to be limiting of exemplary embodiments according to the present invention.

[0042] In the absence of conflict, the embodiments of the present invention and the features of the embodiments may be combined with each other.

[0043] Explanation of terms

[0044] LBC, lattice-based-cryptography, is an encryption method based on high-dimensional lattice theory. Its security depends on the difficulty of solving certain mathematical problems, mainly including the shortest vector problem and the learning band noise problem, which are difficult to solve in both classical and quantum computing environments. The advantage of this cryptographic system is that it can effectively resist the threat of future quantum computing and avoid the problem that traditional encryption algorithms become vulnerable to quantum computers. The present invention uses lattice cryptography to encrypt search indexes, enhance the security of searchable encryption systems, and effectively resist the threat of quantum attacks.

[0045] Delayed encryption is a technology that encrypts data only under certain conditions, rather than immediately when the data is generated. This method can reduce the impact of real-time encryption on system performance, improve user experience, and effectively deal with online attacks. This is because it prevents attackers from obtaining valid encrypted data in a short period of time, thereby increasing the difficulty of cracking. In addition, through delayed encryption, the system can take additional protective measures during data processing to ensure that sensitive data is in a safe state before being accessed. The present invention adopts a delayed encryption strategy when encrypting plaintext data, and decryption is allowed only after a specific time has passed, which improves the efficiency of the system and enhances the defense capability against online attacks.

[0046] VTLRS, verifiable timed linkable ring signature, is a new encryption algorithm called verifiable timed linkable ring signature, which combines linkable ring signature and timed verification function. While providing the anonymity and untraceability of the signer, this mechanism effectively controls the decryption and verification timing of the data through a time lock, ensuring that it cannot be accessed or tampered with before a specific time point. Thereby enhancing data security. The present invention uses VTLRS to sign the search trap of the data requester, verifying the legitimacy of the identity while achieving identity privacy protection.

[0047] Embodiment 1

[0048] As mentioned above, in order to better protect the security and privacy protection capabilities of data, the embodiments of the present invention disclose a searchable encryption method and system with forward and backward security. In general, delayed encryption and catalyst mechanisms are introduced, and lattice cryptography technology is used to achieve effective defense against threats such as quantum attacks and online attacks; by dynamically updating keys and search traps, it is ensured that data always maintains forward and backward security throughout the entire life cycle; with the help of verifiable timed locked ring signatures, it is ensured that the signature of the search trap is not verified within a specified time period, and the reliability of identity authentication and the protection of identity privacy are improved; the decentralized characteristics of blockchain are used to enhance the credibility and tamper-proof capabilities of key management.

[0049] like Figure 1 As shown, a searchable encryption method with forward and backward security comprises the following steps:

[0050] The blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private and public keys to the data owner and data requester;

[0051] The data owner uses a delayed encryption method and a key to delay the encryption of the plaintext data. Based on the key information in the plaintext data, a forward and reverse combined search index is created and encrypted with the public key of the encrypted search index to obtain an encrypted search index.

[0052] The data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces a catalyst mechanism to generate a search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor;

[0053] The data owner sends the delayed encrypted ciphertext and encrypted search index, and the data requester sends the search trapdoor and signature to the cloud server;

[0054] The cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds results that meet the search criteria and returns them to the data requester.

[0055] Before elaborating in detail the searchable encryption method with forward and backward security disclosed in this embodiment, the application object of the searchable encryption method with forward and backward security in this embodiment is first introduced. In this embodiment, the application object includes three parts, including: client, cloud server module (CS) and blockchain module (BC). The client includes a data owner DO and a data requester DU. The searchable encryption method with forward and backward security described in this embodiment is applied to the information interaction process between the aforementioned data owner DO, data requester DU, cloud server module (CS) and blockchain module (BC).

[0056] In order to better understand this technology, the following will be combined Figure 3 , the main functions of the data owner DO, data requester DU, cloud server module (CS) and blockchain module (BC) are described as follows:

[0057] 1. Client:

[0058] It is mainly responsible for encrypting plaintext data, generating and encrypting search indexes, generating and signing search traps, submitting ciphertext search requests, and decrypting search results. The client is the core user of the system, and it interacts with the cloud server and blockchain to achieve secure data storage and retrieval. The following is a functional description:

[0059] 1.1 System Registration.

[0060] The data owner DO and data requester DU in the client submit their identity information Info through the blockchain, and the system automatically generates a unique identifier u id After successful registration, the system generates a signature key pair sigsk, sigpk for each user to ensure the privacy and security of sensitive information, thereby achieving secure and reliable identity management and data access.

[0061] 1.2 Data encryption.

[0062] After the data owner DO successfully registers in the system, he obtains the data encryption key msk returned by the blockchain, and then encrypts the plaintext data M into ciphertext CT.

[0063] 1.3 Delayed encryption.

[0064] In order to effectively resist online attacks, the data owner DO introduces a delayed encryption strategy. By setting a delay time parameter time, the delayed ciphertext CT is generated according to the delay function. delayed ,Through this mechanism, the ciphertext cannot be decrypted within the set time, ,ensuring the security and integrity of the data.

[0065] 1.4 Generate and encrypt the search index.

[0066] The data owner DO creates a forward and reverse search index based on the key information in the data and encrypts it to obtain the search index EI, which is then sent to the cloud server together with the ciphertext.

[0067] 1.5 Generate search trapdoors.

[0068] The data requester DU selects a set of keywords to be retrieved and encrypts them using the private key sk of the data requester DU. At the same time, a catalyst Cat is introduced to accelerate the ciphertext decryption process in specific scenarios, and finally a search trapdoor Trapdoor is obtained.

[0069] 1.6 Generate signature σ Trapdoor .

[0070] After the search trap is generated, the data requester DU uses the VTLRS method to combine the hash value of the search trap with the preset delay time to generate the time lock TL, and then uses its signature private key sigsk to sign the trap to ensure that the search trap cannot be verified within the specified time, thereby effectively enhancing the ability to resist attacks. Finally, the signed search trap is sent to the cloud server to request a ciphertext search operation.

[0071] 1.7 Search trapdoor update.

[0072] When the key is updated or the access rights are changed, the data requester DU generates a new search trap through the client and submits it to the cloud server to replace the old search trap. This ensures that even if the search trap is leaked, the attacker cannot use the old search trap to access or search the ciphertext data, thereby achieving forward security and enhancing the security of the overall system.

[0073] 1.8 Decrypt search results.

[0074] After receiving the ciphertext search results returned by the cloud server, the client uses its private key to decrypt the returned ciphertext and obtains the plaintext data M of the search results after decryption.

[0075] 2. Cloud server module:

[0076] The cloud server is mainly responsible for storing ciphertext and encrypted search indexes, receiving search requests, and performing ciphertext search operations after successful signature verification, and returning the final search results. The following is a functional description:

[0077] 2.1 Ciphertext and index storage.

[0078] The cloud server receives the ciphertext CT sent by the client delayed And the corresponding encrypted search index EI, after successful storage, the ciphertext and index hash storage address addr are returned CT and addr EI , and manage them effectively. Since both data and indexes are encrypted, the cloud server cannot obtain the plaintext content of the data, ensuring the security of the data.

[0079] 2.2 Signature verification.

[0080] The cloud server receives the search trap and signature σ submitted by the client. Trapdoor After that, the signature is hash-verified first. If the verification is successful, the ciphertext operation can continue; otherwise, the search request is rejected.

[0081] 2.3 Ciphertext search.

[0082] When the signature verification is successful, the cloud server retrieves the corresponding ciphertext data based on the matching results between the search trap and the encrypted search index.

[0083] 2.4 Return to search results.

[0084] Once the cloud server successfully matches the ciphertext data related to the search trap, it will use the ciphertext data as the search results SearchResults and its corresponding storage address addr l Return to the client together.

[0085] 3. Blockchain module:

[0086] The blockchain module is responsible for electing the key distribution center, managing the generation, update and revocation of keys, and recording all encryption and operation processes to ensure the decentralization and transparency of the system. The participating nodes of the blockchain jointly maintain the security and consistency of these operations. The following is a functional description:

[0087] 3.1 Election of the Key Distribution Center KDC.

[0088] The blockchain module elects the key distribution center KDC by using the practical Byzantine fault-tolerant consensus algorithm, which is responsible for generating encryption keys for encrypting plaintext data and search indexes, performing key update and revocation functions, and generating signature public and private keys.

[0089] 3.2 Key generation

[0090] The key distribution center uses the AES encryption algorithm to generate encryption keys. At the same time, it uses lattice cryptography technology to select appropriate parameters and randomly generate reversible polynomials f and g to obtain the public and private key pairs of the encrypted search index, and sets the time parameter time for the delayed encryption strategy to resist online attacks.

[0091] 3.3 Key Storage.

[0092] All generated encryption keys are stored on the blockchain to ensure that the key information cannot be tampered with, reduce the risk of data leakage, and ensure the credibility of the key.

[0093] 3.4 Key Update and Revocation.

[0094] In order to ensure the forward and backward security of searchable encryption, the key distribution center regularly triggers the key update mechanism, during which the new key will replace the old key to ensure that the system can still protect the security of data when the key is leaked or a threat occurs. In addition, when the client revokes access rights or detects a key leak, the key distribution center will immediately perform the key revocation operation and record this process on the blockchain to ensure that the revoked key cannot decrypt or access the data.

[0095] Next, we will combine Figure 1 and Figure 2 , explain the method of this embodiment in detail. The specific steps of the method described in this embodiment are as follows:

[0096] 1. Initialization: Setup(λ)→{param,n,T}

[0097] Using the practical Byzantine fault-tolerant consensus algorithm, the Key Distribution Center (KDC) is elected through the blockchain nodes, and the random parameter λ is input by it to generate the system parameter param to lay the foundation for the subsequent key generation; at the same time, the ring size n, that is, the size of the user set participating in the signature verification and the time lock parameter T are initialized to support the timing verification mechanism.

[0098] 2. Identity registration: ClientAuth(Info)→{u id ,sigsk,sigpk}

[0099] Data requesters (Data User, DU) and data owners (Data Owner, DO) register their identities through the blockchain and provide identity information Info. A unique identifier u is automatically generated during registration. id After successful registration, KDC is responsible for generating the signature private key sigsk id and the public key sigpk id .

[0100] 3. Key generation: keyGen(param,q,N)→{msk,pk,sk}

[0101] Generate the key msk for encrypting the original data, and generate the public and private key pair for encrypting the search index based on the LBC encryption method. The specific steps for generating the public and private keys are as follows:

[0102] 3.1 Select parameters. Select the polynomial order N and modulus q, usually q is a large prime number. Select a small positive integer p to limit the coefficients of the polynomial.

[0103] 3.2 Randomly select polynomials. Randomly generate polynomials f and g:

[0104] f(x)=f0+f1x+f2x 2 +…+f N-1 x N-1 ,#(1)

[0105] g(x)=g0+g1x+g2x 2 +…+g N-1 x N-1 ,#(2)

[0106] It is important to ensure that f is reversible and has certain coefficients, usually f i ∈(-1,0,1). g is also randomly generated, and its coefficient range is

[0107] 3.3 Calculate the key pair. Calculate by polynomial division and modular operation

[0108]

[0109] Let h be the public key for encrypting the search index, ie, pk=h, and f be the private key, ie, sk=f.

[0110] 4. Key storage: Store(msk,pk,sk,sigsk,sigpk)→Blockchain

[0111] The key msk for generating ciphertext, the public-private key pair (pk, sk) for encrypting the search index, and the signature key are securely stored on the blockchain.

[0112] 5. Ciphertext generation: Enc_ciphertext(msk,M)→CT

[0113] In the data encryption step, the plaintext data M is encrypted using the key msk to generate the ciphertext CT.

[0114] 6. Delay processing: Delay(CT, time) → CT delayed

[0115] After generating the ciphertext CT, set the delay time time according to the delay function formula

[0116]

[0117] Delay processing is performed, where time is the delay time parameter, which controls the complexity of decryption, g is the base, usually a small integer, and R is the product of two large prime numbers. Finally, the delayed ciphertext CT is obtained. delayed This step ensures that the ciphertext cannot be decrypted within the set time, effectively defending against online attacks.

[0118] 7. Search index generation and encryption Index_Gen&Enc(CT delayed ,pk)→EI

[0119] After the ciphertext is generated, the relevant search index is generated and encrypted according to the key information of the data. The specific steps are as follows:

[0120] 7.1 Index information processing.

[0121] Extract the keywords in the data to form a keyword set {kw1, kw2,…, kw g} and map each keyword to a corresponding set of data entries

[0122] D(kw i )={d1,d2,…,d m}#(5)

[0123] where d i Indicates data entry; D(kw i ) indicates the same as the keyword kw i A set of related data entries. A specific data entry refers to a single data record associated with a keyword and actually stored in a database or file. Each data entry may contain multiple keywords. For example, d1: contains the keywords "fever" and "cough". d2: contains the keywords "fever" and "fatigue". The data entry set D(kw) corresponding to the keyword "fever" i ) includes d1 and d2.

[0124] 7.2 Index generation.

[0125] First, map each data entry to the keywords it contains as follows:

[0126] F(d j )={kw1,kw2,…,kw g},#(6)

[0127] Where F(d j ) indicates that from data entry d j The set of all keywords extracted from j It is a general term for a data item, which is {d1,d2,…,d m}, for example, suppose there are three data entries d1 = "Patient A, symptoms include fever, cough.", d1 contains keywords F(d1) = {"fever", "cough"}, d2 = "Patient B, symptoms include fatigue, fever.", d2 contains keywords F(d2) = {"fever", "fatigue"}, d3 = "Patient C, symptoms include headache.", d3 contains keywords F(d3) = {"headache"}.

[0128] Generate the corresponding forward index FI according to formula (6)

[0129] FI={(d1,F(d1)),(d2,F(d2)),…,(d m ,F(d m ))}.#(7)

[0130] Then, an inverted index is generated to quickly find relevant data entries based on the keyword, where the keyword kw i In the forward index F(d j ) all data entries d j The set I(kw i )for:

[0131] I(kw i )={d j |kw i ∈F(d j )},#(8)

[0132] Generate the corresponding inverted index II according to formula (8)

[0133] II={(kw1,I(kw1)),(kw2,I(kw2)),…,(kw g ,I(kw g ))}.#(9)

[0134] Finally, the search index I of the forward and reverse combination is generated FI&II .

[0135] 7.3 Encrypted Search Index

[0136] The data owner DO uses the public key pk of the data requester DU to combine the index I of the forward and reverse combination FI&II Encryption, generating an encrypted search index EI.

[0137] 8.Store ciphertext and search index Store (CT delayed ,EI)→{addr CT ,addr EI}

[0138] The ciphertext CT delayed The encrypted search index EI is securely uploaded to the cloud server and the corresponding storage address addr is returned after storage. CT with addr EI This delayed encryption process ensures that the cloud server cannot decrypt the stored information, preventing unauthorized access and protecting data privacy.

[0139] 9. Generate search trap door TrapGen(W,sk,Cat)→Trapdoor

[0140] The search keyword is encrypted using the private key sk of the data requester DU to generate a search trapdoor bound to the identity information. In the process of generating the search trapdoor, a catalyst mechanism is introduced to enhance security and complexity, ensuring that the search trapdoor has stronger protection capabilities when matching the encrypted index.

[0141] 9.1 Select keywords.

[0142] The data requester DU selects a keyword set W to be searched and encrypts the search keywords using its own private key sk.

[0143] 9.2 Introduction of catalyst mechanism.

[0144] Introducing the catalyst Cat into the trapdoor generation process allows the data requester DU to selectively accelerate the trapdoor generation process when communicating with the honest data owner DO. This setting allows the data requester DU to respond flexibly according to different situations. It can delay the generation of ciphertext in general to improve security, or respond quickly in specific scenarios without affecting overall security and privacy protection.

[0145] It can be understood that the catalyst here is a mechanism for accelerating the trapdoor generation process. It allows data requesters to speed up operations in specific situations (such as urgent needs on a trusted basis), while maintaining the conventional delay mechanism to ensure security in general. The core value of the catalyst lies in flexibility and efficiency, which can specifically ensure that the overall privacy protection and security of the system are not affected.

[0146] 9.3 Generate search trapdoors.

[0147] 1) If the search request of the data requester DU can ensure that the data owner DO is fully trusted, such as a regular medical institution, and the data requester DU needs to speed up the search time, a catalyst Cat can be introduced when generating the search trap to speed up the search trap generation process and ensure the real-time response of the search operation.

[0148] 2) If the search request of the data requester DU is in an environment that requires strict privacy and security, and there is no special requirement for the search speed, there is no need to introduce a catalyst, and the ciphertext search operation can be performed after the signature verification is completed.

[0149] 10.Signature generation Sig (Trapdoor, sigsk id ,T)→σ Trapdoor

[0150] The data requester DU uses the signature private key sigsk to generate a signature σ for the search trapdoor Trapdoor The specific process is as follows:

[0151] 1) Signature search trapdoor.

[0152] According to the required delay time T, use VTLRS to generate time lock information,

[0153] TL=TimeLock(Hash(Trapdoor),T),#(10)

[0154] TL is the time lock information, which is used to ensure that unlocking and access operations (such as unlocking and accessing) can only be performed after the specified delay time T; Hash (Trapdoor) performs a hash operation on the search trapdoor (query condition) to generate a string of fixed length to enhance security; T is the delay time, which specifies that the operation cannot be performed within this time, and increases the execution time control; TimeLock is the function name of an encryption algorithm, which uses the Hash (Trapdoor) obtained after the hash operation of the generated search trapdoor Trapdoor and the delay time parameter T as input to generate an encrypted time lock TL. Then, the data requester DU signs the generated search trapdoor.

[0155] σ Trapdoor =Signature(TL,sigsk).#(11)

[0156] 2) Submit a search request.

[0157] The data requester DU generates the search trapdoor Trapdoor and its signature σ TrapdoorSubmit them to the cloud server and request it to retrieve the ciphertext results related to the search trap.

[0158] 11. Key update and revocation mechanism Update&Rew(pk,sk,ω)→{pk′,sk′}

[0159] The key distribution center KDC updates the keys pk and sk according to the ciphertext status ω or regularly to ensure that even if a key is leaked, the old key still cannot decrypt future data. At the same time, when the data owner DO does not want the data requester to continue to access the ciphertext information, the relevant information can be deleted in time and the keys that are no longer used can be revoked, thereby effectively preventing the malicious use of the leaked keys and enhancing the forward and backward security of the searchable encryption algorithm to ensure that sensitive information will not be illegally accessed.

[0160] 12. Search for trapdoor update TrapUpda(W,Trapdoor,sk′)→{Trapdoor′}

[0161] As data and access rights change, the data requester DU regularly updates the search trap to ensure the security and effectiveness of the search mechanism. By combining the old search trap with the new key sk′, the data requester uses a hash function to calculate the new search trap Trapdoor′:

[0162] Trapdoor′=Hash(Trapdoor,sk′)#(12)

[0163] After completing the trapdoor update, the data requester DU needs to replace the old trapdoor stored in the cloud server with the newly generated trapdoor to ensure that all search operations in the system are based on the latest trapdoor. By updating the search trapdoor, it can be ensured that even if the attacker obtains the old search trapdoor, the new trapdoor cannot be derived, thereby enhancing the forward and backward security of the searchable encryption algorithm.

[0164] 13. Verify signature (σ Ttapdoor ,Trapdoor)→{'true','false'}

[0165] The cloud server receives the search trap and signature σ submitted by the data requester DU Trapdoor After that, the signature of the data requester is hash-verified. If the signature verification is successful and the result is "true", it means that the search trapdoor is signed by a legitimate data requester, confirming that the requester is a legitimate registered user. Otherwise, if the result is "false", there may be an attacker, and the search request is rejected, and corresponding security measures are taken.

[0166] 14. Ciphertext search Search(Trapdoor,EI,′true′)→SearchResults

[0167] After the signature verification is successful, the cloud server performs a ciphertext search operation, matches the search trap submitted by the data requester DU with the encrypted search index EI, and finds the results SearchResults that meet the search criteria.

[0168] 15. Return the ciphertext search results Return (SearchResults, addr l )→DU

[0169] The cloud server stores the search results SearchResults and its corresponding storage address addr l Return to the data requester DU.

[0170] 16. Decrypt search results Dec(SearchResults,addr l ,sk)→Results

[0171] The data requester DU receives the encrypted search results SearchResults returned by the cloud server and sends the encrypted search results to the cloud server according to its address addr l Download the ciphertext, and then use its private key sk to decrypt the ciphertext search results to obtain the plaintext data Results.

[0172] The searchable encryption method with forward and backward security disclosed in this embodiment firstly introduces delayed encryption and catalyst mechanisms to increase the difficulty of network attacks and enhance the ability to resist online attacks. Secondly, the search index is encrypted using lattice cryptography technology to effectively resist the threat of quantum attacks. Thirdly, a verifiable time-locked ring signature method is adopted to combine the time lock with the signature mechanism to ensure that the signature of the search trapdoor cannot be cracked or forged within a specified time period, and to achieve the identity privacy protection and legitimacy verification of the data requester. Fourthly, the method of dynamically updating keys and search trapdoors is used to prevent attackers from using old keys or trapdoors for unauthorized access, thereby ensuring the forward and backward security of encrypted data during the search process. Finally, in order to ensure the security and credibility of the keys, the blockchain consensus algorithm is used to elect a key distribution center to ensure the transparency and tamper-proof capability of the key management process.

[0173] Embodiment 2

[0174] This embodiment discloses a searchable encryption system with forward and backward security.

[0175] A searchable encryption system with forward and backward security, comprising:

[0176] The key generation module is configured to: the blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private key and public key to the data owner and the data requester;

[0177] The plaintext and search index encryption module is configured as follows: the data owner uses a delayed encryption method to delay the encryption of plaintext data in combination with a key; creates a forward and reverse combined search index based on key information in the plaintext data, and encrypts it in combination with a public key of the encrypted search index to obtain an encrypted search index;

[0178] The search trapdoor generation and signature module is configured as follows: the data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces the catalyst mechanism to generate the search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor;

[0179] The transmission module is configured as follows: the data owner sends the delayed encrypted ciphertext and the encrypted search index, and the data requester sends the search trapdoor and the signature to the cloud server;

[0180] The verification and matching module is configured as follows: the cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds the results that meet the search criteria and returns them to the data requester.

[0181] Embodiment 3

[0182] The purpose of this embodiment is to provide a computer-readable storage medium.

[0183] A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps in the searchable encryption method with forward and backward security as described in Embodiment 1 of the present disclosure.

[0184] Embodiment 4

[0185] The purpose of this embodiment is to provide an electronic device.

[0186] An electronic device includes a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, the steps in the searchable encryption method with forward and backward security as described in Embodiment 1 of the present disclosure are implemented.

[0187] The steps involved in the apparatuses of the above embodiments 2, 3 and 4 correspond to the method embodiment 1, and the specific implementation methods can refer to the relevant description part of embodiment 1. The term "computer-readable storage medium" should be understood as a single medium or multiple media including one or more instruction sets; it should also be understood to include any medium that can store, encode or carry an instruction set for execution by a processor and enable the processor to execute any method in the present invention.

[0188] Those skilled in the art should understand that the modules or steps of the present invention described above can be implemented by a general-purpose computer device, or alternatively, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. The present invention is not limited to any specific combination of hardware and software.

[0189] Although the above describes the specific implementation mode of the present invention in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art on the basis of the technical solution of the present invention without creative work are still within the scope of protection of the present invention.

Claims

1. A searchable encryption method with forward and backward security, characterized in that: The following steps are involved: The blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private and public keys to the data owner and data requester; The data owner uses a delayed encryption method and a key to delay the encryption of the plaintext data. Based on the key information in the plaintext data, a forward and reverse combined search index is created and encrypted with the public key of the encrypted search index to obtain an encrypted search index. The data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces a catalyst mechanism to generate a search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor; The data owner sends the delayed encrypted ciphertext and encrypted search index, and the data requester sends the search trapdoor and signature to the cloud server; The cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds results that meet the search criteria and returns them to the data requester.

2. The searchable encryption method with forward and backward security as claimed in claim 1, characterized in that: It also includes the public and private key pairs generated by the blockchain, encrypted search indexes, and signature private and public keys, including: Data requesters and data owners register their identities through the blockchain. After successful registration, the blockchain's key distribution center KDC generates a signature private key and public key; The blockchain generates a public and private key pair for the encrypted search index based on the LBC encryption method, specifically: Select the polynomial order N and modulus q; Based on the polynomial order N, two polynomials f and g are randomly generated; Based on the generated polynomials f and g, and the modulus q, the public key of the encrypted search index is calculated through polynomial division and modular operation, and one of the polynomials f is used as the private key of the encrypted search index.

3. The searchable encryption method with forward and backward security as claimed in claim 1, characterized in that: The data owner uses a delayed encryption method and a key to delay encryption of the plaintext data, including: Use the key msk to encrypt the plaintext data M and generate the ciphertext CT; Set the delay time time, and delay the ciphertext CT according to the delay function to obtain the delayed ciphertext CT delayed .

4. The searchable encryption method with forward and backward security as claimed in claim 3, characterized in that: Based on the key information in the plaintext data, create a search index of forward and reverse combinations, including: Extract keyword information from plaintext data to form a keyword set, and map each keyword to a corresponding data entry set; Determine the mapping between each data entry and the keywords it contains, and generate the corresponding forward index: Determine the set of all data entries of the keyword in the forward index, and generate an inverted index for quickly finding relevant data entries based on the keyword; Combine the forward index and the inverted index to generate a forward and inverted combined search index.

5. The searchable encryption method with forward and backward security as claimed in claim 1, characterized in that: The data requester uses the private key of the encrypted search index to encrypt the search keywords. At the same time, the catalyst mechanism is selectively introduced to generate a search trap, including: The data requester selects a search keyword and encrypts the search keyword using the private key of the encrypted search index to obtain the encrypted search keyword; By introducing a catalyst into the generation process of the search trapdoor, the data requester can selectively accelerate the generation process of the ciphertext, which can delay or accelerate the generation of the ciphertext; A search trapdoor is generated based on the encrypted search keyword information and the introduced catalyst.

6. The searchable encryption method with forward and backward security as claimed in claim 1, characterized in that: Generate time lock information based on the search trapdoor, and sign the search trapdoor using your own signature private key based on the time lock information, including: The data requester uses the VTLRS method to combine the hash value of the search trapdoor with the preset delay time to generate time lock information; Based on the time lock information and the signature private key of the data requester, the search trapdoor is signed.

7. The searchable encryption method with forward and backward security as claimed in claim 1, characterized in that: It also includes dynamically updating the public and private key pairs and search traps for encrypted search indexes, including: The blockchain updates the public and private key pairs of the encrypted search index based on the ciphertext status or at regular intervals; When the data requester updates the key or changes the access rights, a new search trap is generated and updated in the cloud server; When the data owner does not want the data requester to continue to access the ciphertext information, the key distribution center performs a key revocation operation to revoke the key that is no longer in use.

8. A searchable encryption system with forward and backward security, characterized in that: include: The key generation module is configured to: the blockchain sends the generated key, the public-private key pair for encrypting the search index, and the respective signature private key and public key to the data owner and the data requester; The plaintext and search index encryption module is configured as follows: the data owner uses a delayed encryption method to delay the encryption of plaintext data in combination with a key; creates a forward and reverse combined search index based on key information in the plaintext data, and encrypts it in combination with a public key of the encrypted search index to obtain an encrypted search index; The search trapdoor generation and signature module is configured as follows: the data requester uses the private key of the encrypted search index to encrypt the search keyword, and at the same time, selectively introduces the catalyst mechanism to generate the search trapdoor; generates time lock information based on the search trapdoor, and based on the time lock information, uses its own signature private key to sign the search trapdoor; The transmission module is configured as follows: the data owner sends the delayed encrypted ciphertext and the encrypted search index, and the data requester sends the search trapdoor and the signature to the cloud server; The verification and matching module is configured as follows: the cloud server verifies the identity of the data requester based on the signature, matches the search trapdoor with the encrypted search index, finds the results that meet the search criteria and returns them to the data requester.

9. A computer-readable storage medium having a program stored thereon, characterized in that: When the program is executed by a processor, the steps of the searchable encryption method with forward and backward security as described in any one of claims 1 to 7 are implemented.

10. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the steps in the searchable encryption method with forward and backward security as described in any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Efficient searchable symmetric encryption method and system with forward and backward security

    CN110457915A

  • VDF-based cloud storage time sensitive data automatic deletion scheme and system

    CN117421745A

  • Method of time-delay encryption with keyword search and system using the same

    US20220255744A1

Cited By

  • SCADA data cloud storage security protection method and device

    CN121309237A