A verifiable and authorizable public key equivalence test method

CN122053088BActive Publication Date: 2026-09-18XINGTANG TELECOMM TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610499286.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-04-16
Publication Date
2026-09-18
Estimated Expiration
2046-04-16

AI Technical Summary

Technical Problem

[0004]鉴于上述的分析,本发明实施例旨在提供一种可验证可授权的公钥等值测试方法,用以解决现有技术中公钥等值测试容易造成用户私密信息泄露、重放攻击的问题

Benefits of technology

1、本发明提出了通过在公钥等值测试过程中引入临时授权令牌与结果验证机制,在不泄露明文内容的前提下,实现对等值测试权限的有效约束以及对测试结果正确性的公开验证,避免未授权测试和不可信服务器行为带来的安全风险,提高公钥等值测试在多用户云环境下的安全性、可信性与实用性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122053088B_ABST
    Figure CN122053088B_ABST
Patent Text Reader

Abstract

The application relates to a verifiable and authorized public key equivalence test method, and belongs to the technical field of information security. The method solves the problem that the public key equivalence test in the prior art is prone to cause user private information leakage and replay attacks. The specific steps comprise the following: a data owner uploads a plurality of keyword ciphertexts and associated data ciphertexts to a cloud server for backup; a data user requests a data owner for a query authorization on a target keyword, encrypts the target keyword based on a returned authorization token to obtain query ciphertext, and initiates an equivalence test request to the cloud server by carrying the query ciphertext and the authorization token; the cloud server performs token verification based on the authorization token, performs equivalence test on the request that passes the verification, and returns the test result to the data user; and the data user rechecks the test result that passes the equivalence test, decrypts the test result that passes the rechecking, and obtains the associated data of the target keyword, thereby improving the security and credibility of the public key equivalence test in a multi-user cloud environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of information security technology, and in particular to a verifiable and authoritative public key equivalence test method. Background Technology

[0002] With the continuous development of cloud computing and data outsourcing storage technologies, a large amount of sensitive data is being stored on untrusted cloud servers after encryption. In order to achieve the retrieval and utilization of encrypted data without revealing the plaintext content, public key equivalence testing technology has been proposed. This technology is used to support cloud servers in determining whether ciphertexts encrypted with different public keys correspond to the same plaintext, and plays an important role in application scenarios such as multi-user data sharing, encrypted data retrieval, and ciphertext matching.

[0003] While existing public-key equivalence testing methods can achieve ciphertext equivalence determination, they still have shortcomings in practical applications. On the one hand, existing solutions generally lack effective authorization control mechanisms. After gaining equivalence testing capabilities, cloud servers can perform test operations on any ciphertext pair, easily inferring plaintext information through repeated testing or constructed queries, thus leading to the leakage of users' private information. On the other hand, existing solutions typically assume that the cloud server honestly executes the equivalence testing process, lacking means to verify the correctness of the test results. Data users cannot effectively determine whether the cloud server has truly performed the equivalence test, or whether it has returned incorrect or even maliciously tampered test results. Furthermore, in multi-user and dynamic access control scenarios, existing public-key equivalence testing methods struggle to support independent authorization for each ciphertext and one-time, non-transferable authorization management, making them vulnerable to authorization abuse and replay attacks, and thus failing to meet practical application needs. Summary of the Invention

[0004] Based on the above analysis, the embodiments of the present invention aim to provide a verifiable and authoritative public key equivalence test method to solve the problem that public key equivalence tests in the prior art are prone to causing leakage of user private information and replay attacks.

[0005] The objective of this invention is mainly achieved through the following technical solutions: This invention provides a verifiable and authoritative public key equivalence test method, comprising the following steps: The data owner uploads and stores multiple encrypted keywords and corresponding encrypted data to the cloud server; The data user requests the data owner to authorize a query for a target keyword, encrypts the target keyword based on the returned temporary authorization token to obtain the query ciphertext, and sends an equivalence test request to the cloud server with the query ciphertext and the temporary authorization token. The cloud server performs token verification based on the temporary authorization token, performs an equivalence test on the successfully verified request based on the query ciphertext and the corresponding keyword ciphertext, and returns the test result to the data user. The data user reviews the test results that have passed the equivalence test, decrypts the successfully reviewed test results, and obtains the associated data of the target keyword.

[0006] Furthermore, the data owner, data user, and cloud server register their identities and obtain their respective public keys, private keys, and system public parameters. The data owner then generates the temporary authorization token based on the following process: Based on the target keywords, locate the corresponding encrypted keyword text; The binding parameters are obtained by concatenating the target keyword, the data user's public key, the first random number embedded in the corresponding keyword ciphertext, and the generated second random number. Based on the binding parameters and the data owner's private key, a master token is obtained by combining the system public parameters. The second random number is used as the first auxiliary token, and the first random number is used as the second auxiliary token. The temporary authorization token is generated from the main token, the first auxiliary token, and the second auxiliary token.

[0007] Furthermore, the cloud server performs the token verification based on the following process: The cloud server locates the candidate keyword ciphertext based on the query ciphertext, and verifies the legality of the temporary authorization token using the first random number embedded in the candidate keyword ciphertext. If it is legal, the cloud server checks whether the first random number appears in the preset token usage table. If it does not appear, the token verification is successful, and the first random number is added to the token usage table.

[0008] Furthermore, the equivalence test result includes the equivalence test value, the corresponding keyword ciphertext, the data ciphertext, and the ciphertext proof generated based on the equivalence test value. Data users verify this information using the system's public parameters and their respective public keys, including: Based on the ciphertext of the query, the corresponding ciphertext of the keywords, the ciphertext proof, and the system's common parameters, the correctness of the test proof is verified. The target keyword, the data user's public key, the second auxiliary token, and the first auxiliary token are concatenated to obtain the reconstructed binding parameters. The validity of the temporary authorization token is verified by combining the data owner's public key, encrypted proof, and system public parameters. Based on the query ciphertext, the corresponding keyword ciphertext, the cloud server's public key, the ciphertext proof, and the system's public parameters, verify whether the correct cloud server's private key was used in the equivalence test; Based on the equivalent test value, master token, and ciphertext proof, verify the timeliness of the test results; If any verification fails, the review will be unsuccessful; otherwise, the review will be successful.

[0009] Furthermore, the ciphertext proof includes a first proof and a second proof; wherein, the first proof is generated based on the equivalence test value, the master token, and the current timestamp, and the current timestamp is used as the second proof; when verifying the timeliness of the test result, a freshness verification value is obtained based on the equivalence test value, the master token, and the second proof of the ciphertext proof; if the freshness verification value is equal to the first proof, then the test result is verified to be timeliness.

[0010] Furthermore, after the data user successfully verifies the test results, the encrypted data is decrypted based on the data user's private key and auxiliary key to obtain the associated data of the target keyword; wherein, the data user obtains the auxiliary key at the same time as obtaining the temporary authorization token.

[0011] Furthermore, the data owner randomly generates a third random number, and encrypts the data associated with the keyword ciphertext based on the third random number and the data owner's private key to obtain the data ciphertext.

[0012] Furthermore, the auxiliary key is obtained based on the data user's public key and the third random number.

[0013] Furthermore, the data owner obtains the ciphertext of any keyword according to pre-set encryption rules, based on the following process: Randomly select elements ; Based on elements Keywords The intermediate hash value is calculated using the second hash function in the system's public parameters. , represented as ; The corresponding keyword ciphertext is generated based on the following formula. : , , in, These are the public and private keys of the cloud server, respectively. For the data owner's private key, The first hash function in the system's common parameters. These are the generators of the bilinear mapping group in the system's common parameters.

[0014] Furthermore, the data user encrypts the target keywords to obtain the query ciphertext. ,and The cloud server performs an equivalence test on requests that have successfully verified the token, including: The cloud server locates candidate keyword ciphertexts based on the query ciphertext. From the ciphertext of the candidate keywords respectively and query ciphertext Extract intermediate values ​​and obtain the corresponding intermediate results based on the following formula. : , ,in, This is the private key for the cloud server; like equal If the equivalence is true, the equivalence test passes; otherwise, it fails. Bilinear mapping in system common parameters Compared with the prior art, the present invention can achieve at least one of the following beneficial effects: 1. This invention proposes to introduce temporary authorization tokens and result verification mechanisms during the public key equivalence test process. This enables effective constraints on equivalence test permissions and public verification of the correctness of test results without disclosing plaintext content. This avoids security risks caused by unauthorized testing and untrusted server behavior, and improves the security, reliability, and practicality of public key equivalence testing in a multi-user cloud environment.

[0015] 2. This invention designs an authorization token generation mechanism based on the binding of triples (user public key, keyword, and ciphertext random number), and prevents replay attacks through a server-side token usage table, thereby achieving ciphertext-level, one-time, and non-transferable authorization control.

[0016] 3. An encryption mechanism that separates keyword ciphertext from data ciphertext was designed, and an auxiliary key was used to enable authorized users to securely decrypt the data, thereby improving data confidentiality. In addition, a proof generation and verification mechanism based on bilinear pairing was adopted, which enables any third party to verify the correctness of the test results and the legality of the authorization without relying on a private key or a trusted third party, thus achieving the public verifiability of the test results.

[0017] In this invention, the above-described technical solutions can be combined with each other to achieve more preferred combinations. Other features and advantages of this invention will be set forth in the following description, and some advantages may become apparent from the description or be learned by practicing the invention. The objects and other advantages of this invention can be realized and obtained from what is particularly pointed out in the description and drawings. Attached Figure Description

[0018] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Throughout the drawings, the same reference numerals denote the same parts.

[0019] Figure 1 This is a flowchart of a method for verifying and authorizing public key equivalence testing according to an embodiment of the present invention; Figure 2 This is a logical diagram illustrating the verifiable and authorizable public key equivalence test method according to an embodiment of the present invention. Figure 3 This is a flowchart illustrating the process of verifying the test results of a cloud server by a user in an embodiment of the present invention. Detailed Implementation

[0020] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which form part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not intended to limit the scope of the present invention.

[0021] Example 1 A specific embodiment of the present invention discloses a verifiable and authoritative public key equivalence test method, such as... Figure 1 As shown, it includes the following steps: Step S1: The data owner uploads and stores multiple keyword ciphertexts and corresponding associated data ciphertexts to the cloud server; Step S2: The data user requests the data owner to authorize a query for a target keyword, encrypts the target keyword based on the returned temporary authorization token to obtain the query ciphertext, and sends an equivalence test request to the cloud server with the query ciphertext and the temporary authorization token. Step S3: The cloud server performs token verification based on the temporary authorization token, performs an equivalence test on the successfully verified request based on the query ciphertext and the corresponding keyword ciphertext, and returns the test result to the data user. Step S4: The data user reviews the test results that have passed the equivalence test, decrypts the successfully reviewed test results, and obtains the associated data of the target keyword. By introducing an authorization control and result verification mechanism based on temporary authorization tokens into the public key equivalence testing process, the above methods effectively constrain equivalence testing permissions and publicly verify the correctness of test results without disclosing plaintext content. This avoids security risks caused by unauthorized testing and untrusted server behavior, and improves the security, reliability, and practicality of public key equivalence testing in a multi-user cloud environment.

[0022] It should be noted that, as Figure 2 As shown, before data can contain encrypted keywords and associated data, it must first undergo system initialization and entity registration. During system initialization, security parameters are provided. Initialize trusted institutions Choose prime order as bilinear mapping group and ,in , for The generator; then, Define a bilinear mapping ;also, We also selected the first to fourth hash functions, which are: ;in, Given a set of integers greater than 0 and less than or equal to p-1, following standard practice, when applying to non-binary inputs (group elements, integers) At that time, it is converted into a binary string using canonical encoding before hashing; finally, Publish system public parameters .

[0023] Entity registration involves data owners, data users, and cloud servers registering separately. Complete identity registration and generate your respective public and private keys. First, the data owner... from Randomly select private key And calculate its public key Set its private key Then, data users from Randomly select private key And calculate its public key Set its private key Finally, cloud servers from Randomly select private key And calculate its public key Set its private key Each entity's public key is publicly available in the system, while its private key is kept secret by each entity and used for subsequent public key equivalence testing.

[0024] Specifically, in step S1, the data owner... Multiple keywords and their corresponding related data are encrypted to generate encrypted keyword text and encrypted data, which are then uploaded and stored on a cloud server. . Perform the following operations to generate any keyword The corresponding keyword ciphertext and the ciphertext obtained by encrypting the corresponding related data: S11, from Randomly select elements ,element The first random number; S12, Element-based Keywords The intermediate hash value is calculated using the second hash function in the system's public parameters. , represented as ;in Randomness as a derivative; S13. Generate the keyword ciphertext based on the following formula according to the preset encryption rules. : , , , in, To randomly select elements, These are the public and private keys of the cloud server, respectively. As keywords, For the data owner's private key, The first hash function in the system's common parameters. These are the generators of the bilinear mapping group in the system's common parameters.

[0025] S14, from Randomly select a third random number And combined with the data owner's private key and keywords Relevant data The encrypted data is represented as follows: .

[0026] It should be noted that, Each keyword-encrypted file has a unique random number as a unique identifier for the encrypted text. This ensures encrypted-level granularity of authorization, laying the foundation for subsequent temporary authorization token control.

[0027] Specifically, in step S2, when the data user To data owners Request for target keywords When granting query authorization, based on public key Target keywords and the first random number in the corresponding keyword ciphertext Generate a one-time temporary authorization token and a secondary key, and return them to the data user. Specifically, Perform the following operations: S21. Locate the corresponding keyword encrypted text based on the target keyword; S22. Randomly select a second random number, and concatenate the target keyword, the data user's public key, the first random number and the second random number embedded in the corresponding keyword ciphertext to obtain the binding parameter; the binding parameter cryptographically binds the user identity, the keyword to be queried and the ciphertext random number together; wherein, the user's public key is used as the user identity and the first random number is used as the ciphertext random number. S23. Based on the binding parameters and the private key of the data owner, and combined with the system public parameters, a master token is obtained, and the second random number is used as the first auxiliary token, and the first random number is used as the second auxiliary token. S24. Generate the temporary authorization token from the main token, the first auxiliary token, and the second auxiliary token; For example, from Randomly select the second random number ; Calculate binding parameters : Generate a temporary authorization token based on the binding parameters. : , ;in, This represents a string concatenation operation. For the data owner's private key, is the generator of the bilinear mapping group in the system's common parameters.

[0028] S25. Calculate the auxiliary key based on the data user's public key and the third random number. : This is used for subsequent data decryption; S26. Send the temporary authorization token through the secure channel. and auxiliary key Send to data users .

[0029] By constructing a triplet from the ciphertext identifier, the user's public key, and the keyword, and using the temporary authorization token generation mechanism bound to the triplet, the security of access permissions is improved while the protection of private information is strengthened. Even if the same file is re-encrypted, the old token will automatically become invalid, effectively preventing replay attacks and unlimited use of the token.

[0030] Data users Received temporary authorization token and auxiliary key Then, for the target keywords to be searched Encryption is performed and a test request is initiated. Specifically, Perform the following operations: (1) Using step S1 The generation rules generate ciphertext for queries: ; It should be noted that querying encrypted text yes Generated using a random number of your choice, it is only used for equivalence testing and does not contain any encrypted data.

[0031] (2) Grant temporary authorization token and query ciphertext Send together to the cloud server Request for and Storing encrypted keywords Perform an equivalence test.

[0032] Specifically, in step S3, the cloud server Receive from token and query ciphertext Next, authorization verification and equivalence testing are performed. The specific process is as follows: S31. The cloud server locates the encrypted candidate keywords based on the pre-built search table.

[0033] For example, during the index building phase, the cloud server extracts ciphertext information related to the retrieval from each keyword ciphertext, such as... The data is then processed using hashing and other normalization methods to generate corresponding retrieval identifiers, thereby constructing a retrieval table in the form of a hash table. During the query phase, the cloud server processes the ciphertext of the query. Perform the same retrieval identifier derivation process and quickly locate the ciphertext of matching candidate keywords using a hash table. .

[0034] S32. The cloud server verifies the legitimacy of the temporary authorization token based on the first random number embedded in the candidate keyword ciphertext.

[0035] Specifically, From the matched keyword ciphertext Extract random numbers Verify the temporary authorization token No equals ;if If the first random number is not found in the token, the authorization token is invalid, and the equivalence test request is rejected; otherwise, the authorization token is valid, and the first random number is the one found in the token. At this time, it equals , Check if the first random number has already appeared in the server-side pre-defined token usage table. If it appears in the middle, that is If the token verification fails, it indicates that the token has already been used (i.e., a replay attack). The request is rejected and no equivalence test is performed; if this does not occur... If the token is successfully verified, Will insert In the process, equivalence tests are performed based on the query ciphertext and candidate keyword ciphertext.

[0036] S33. Equivalence test execution process: From the ciphertext of candidate keywords respectively and query ciphertext Extract the intermediate value and perform the following calculation. and ;examine Is it equal to ,like equal If the equivalence is true, the equivalence test passes; otherwise, it fails. For bilinear mappings in the system's common parameters; S34. Return the equivalence test results to the data user. For data that passes the equivalence test... It returns the ciphertext of the corresponding keyword along with the equivalent test value. encrypted data The system provides a ciphertext proof generated based on the equivalence test value; if the equivalence test fails, only the equivalence test value is returned. The ciphertext proof includes a first proof and a second proof. The first proof is generated based on the equivalence test value, the master token, and the current timestamp, while the second proof uses the current timestamp as its basis.

[0037] Specifically, if the equivalence test passes, then the equivalence test value is... Otherwise, the equivalent test value In addition, cloud servers A publicly verifiable encrypted proof is generated for the equivalence test value based on the following process. : (1) From Randomly select elements ; (2) Calculate the ciphertext proof ,

[0038] ; in, This is the current timestamp. These serve as the first and second proofs, respectively. This is the private key for the cloud server.

[0039] Specifically, in step S4, the data user Received equivalent test value Then, combined with the received ciphertext, it was proven And the corresponding keyword ciphertext, using system public parameters And the public key performs the following four verification checks, such as Figure 3 As shown: The first check is to verify the correctness of the result: based on the ciphertext of the query, the corresponding ciphertext of the keywords, the ciphertext proof, and the system's public parameters, verify the correctness of the test proof.

[0040] For example, Verify the correctness of the results and check. Is it equal to If both sides are equal, the verification passes. If the equation does not hold, then .

[0041] The second check is to verify the validity of the authorization: the target keyword, the data user's public key, the second auxiliary token and the first auxiliary token are concatenated to obtain the reconstructed binding parameters. Combined with the data owner's public key, ciphertext proof and system public parameters, the validity of the temporary authorization token is verified.

[0042] For example, When verifying the validity of the authorization, the binding parameters are rebuilt. ,calculate And check Is it equal to If both sides are equal, the validity verification passes, meaning the token is valid. It is indeed by the person who possesses the private key Data owners Issued and bound with parameters correct.

[0043] The third check is integrity verification: based on the query ciphertext, the corresponding keyword ciphertext, the cloud server's public key, the ciphertext proof, and the system's public parameters, verify whether the correct cloud server's private key was used in the equivalence test.

[0044] For example, To verify that the cloud server honestly used the correct key to perform the test, check the following two equations: (1) The first integrity equation: Is it equal to ; (2) The second integrity equation: Is it equal to ; These two checks ensure The correct private key was used when performing the equivalence test. And the intermediate calculation results were not tampered with.

[0045] The fourth check is freshness verification: based on the equivalent test value, master token, and ciphertext proof, verify the timeliness of the test results.

[0046] For example, based on equivalence test values Master token The second proof of the ciphertext. Obtain freshness verification value , Verify that the proof was recently generated, not a replayed old proof, and check the equation: Is it equal to If the equation holds true, then the verification test result has time validity, the verification is successful, and the proof is complete. This refers to the results of this test. and current timestamp Generated and bound to a temporary authorization token .

[0047] It should be noted that if all four checks mentioned above are passed, Output T (verification passed), and according to The value determines whether data decryption should be performed; if any check fails... Output F (Verification failed), reject the test result.

[0048] Furthermore, when the above verification passes and the equivalence test results are satisfactory... At that time, data users Use private key and auxiliary key The returned encrypted data Decryption is performed, and the relevant data for the query keywords is obtained through the following calculations. : .

[0049] The aforementioned verification mechanism effectively prevents malicious damage to cloud servers, allowing authorized users to securely decrypt data. It is publicly verifiable, meaning the verification process uses only publicly available parameters and proofs, requiring no private keys or trusted third-party involvement. Any third party can independently perform the verification, making the correctness of the test results auditable or verifiable by an arbitration body.

[0050] Compared with existing technologies, this embodiment provides a verifiable and authoritative public key equivalence testing method. Based on bilinear pairwise cryptographic primitives, it securely determines the plaintext equivalence relationship between ciphertexts encrypted with different public keys without disclosing the plaintext content. Through a constructed token authorization and server-side token usage table mechanism, it prevents unauthorized testing, replay attacks, and errors or malicious behavior from untrusted servers. Ultimately, this invention improves the security, reliability, and practicality of public key equivalence testing in multi-user cloud environments while ensuring the functionality of ciphertext equivalence testing. It can be applied to scenarios such as searchable encryption, secure data sharing, and private information protection in cloud computing environments.

[0051] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware, and the program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.

[0052] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention.

Claims

1. A verifiable and authoritative public key equivalence test method, characterized in that, Includes the following steps: The data owner uploads and stores multiple encrypted keywords and corresponding encrypted data to the cloud server; The data user requests the data owner to authorize a query for a target keyword, encrypts the target keyword based on the returned temporary authorization token to obtain the query ciphertext, and sends an equivalence test request to the cloud server with the query ciphertext and the temporary authorization token. The cloud server performs token verification based on the temporary authorization token, performs an equivalence test on the successfully verified request based on the query ciphertext and the corresponding keyword ciphertext, and returns the test result to the data user. The data user reviews the test results that have passed the equivalence test, decrypts the successfully reviewed test results, and obtains the associated data of the target keyword; In this process, the data owner, data user, and cloud server each register their identities and obtain their respective public keys, private keys, and system public parameters. The data owner then generates the temporary authorization token based on the following process: Based on the target keywords, locate the corresponding encrypted keyword text; The target keyword, the data user's public key, the first random number embedded in the corresponding keyword ciphertext, and the generated second random number are concatenated and hashed to obtain the binding parameters. Based on the binding parameters and the data owner's private key, a master token is obtained by combining the system public parameters. The second random number is used as the first auxiliary token, and the first random number is used as the second auxiliary token. The temporary authorization token is generated from the main token, the first auxiliary token, and the second auxiliary token.

2. The method according to claim 1, characterized in that, The cloud server performs the token verification based on the following process: The cloud server locates the candidate keyword ciphertext based on the query ciphertext, and verifies the legality of the temporary authorization token using the first random number embedded in the candidate keyword ciphertext. If it is legal, the cloud server checks whether the first random number appears in the preset token usage table. If it does not appear, the token verification is successful, and the first random number is added to the token usage table.

3. The method according to claim 2, characterized in that, The equivalence test result includes the equivalence test value, the corresponding keyword ciphertext, the data ciphertext, and the ciphertext proof generated based on the equivalence test value. Data users verify the result using the system's public parameters and their respective public keys, including: Based on the ciphertext of the query, the corresponding ciphertext of the keywords, the ciphertext proof, and the system's common parameters, the correctness of the test proof is verified. The target keyword, the data user's public key, the second auxiliary token, and the first auxiliary token are concatenated to obtain the reconstructed binding parameters. The validity of the temporary authorization token is verified by combining the data owner's public key, encrypted proof, and system public parameters. Based on the query ciphertext, the corresponding keyword ciphertext, the cloud server's public key, the ciphertext proof, and the system's public parameters, verify whether the correct cloud server's private key was used in the equivalence test; Based on the equivalent test value, master token, and ciphertext proof, verify the timeliness of the test results; If any verification fails, the review will be unsuccessful; otherwise, the review will be successful.

4. The method according to claim 3, characterized in that, The encrypted proof includes a first proof and a second proof; wherein, the first proof is generated based on the equivalence test value, the master token, and the current timestamp, and the current timestamp is used as the second proof; when verifying the timeliness of the test result, a freshness verification value is obtained based on the equivalence test value, the master token, and the second proof of the encrypted proof; if the freshness verification value is equal to the first proof, then the test result is verified to be timeliness.

5. The method according to any one of claims 1-4, characterized in that, After the data user successfully verifies the test results, the encrypted data is decrypted based on the data user's private key and auxiliary key to obtain the associated data of the target keyword; wherein, the data user obtains the auxiliary key at the same time as obtaining the temporary authorization token.

6. The method according to claim 5, characterized in that, The data owner randomly generates a third random number, and encrypts the data associated with the keyword ciphertext based on the third random number and the data owner's private key to obtain the data ciphertext.

7. The method according to claim 6, characterized in that, The auxiliary key is obtained based on the public key of the data user and the third random number.

8. The method according to any one of claims 1-4, 6, and 7, characterized in that, The data owner obtains the ciphertext of any keyword according to pre-defined encryption rules, based on the following process: Randomly select elements ; Based on elements Keywords The intermediate hash value is calculated using the second hash function in the system's public parameters. , represented as ; The corresponding keyword ciphertext is generated based on the following formula. : , , , in, These are the public and private keys of the cloud server, respectively. For the data owner's private key, The first hash function in the system's common parameters. These are the generators of the bilinear mapping group in the system's common parameters.

9. The method according to claim 8, characterized in that, The data user encrypts the target keyword according to the preset encryption rules to obtain the query ciphertext. ,and ; The cloud server performs an equivalence test on requests that have successfully verified the token, including: The cloud server locates candidate keyword ciphertexts based on the query ciphertext. From the ciphertext of the candidate keywords respectively and query ciphertext Extract the intermediate values ​​and obtain the corresponding intermediate results based on the following formula. : , ,in, This is the private key for the cloud server; like equal If the equivalence is true, the equivalence test passes; otherwise, it fails. This is a bilinear mapping in the system's common parameters.

Citation Information

Patent Citations

  • Privacy protection method based on verifiable symmetric searchable encryption

    CN110602099A

  • Verifiable space keyword query method and device supporting privacy protection

    CN117932125A