Privacy verification method and system based on anonymous query and homomorphic encryption

By using concealed query and homomorphic encryption technologies, the identity of the party being verified is concealed and the data is encrypted, which solves the problem of privacy leakage in data authenticity verification in existing technologies and achieves efficient and secure acquisition of verification results.

CN121659364BActive Publication Date: 2026-05-01LINGSHU TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
LINGSHU TECH CO LTD
Filing Date
2026-02-04
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Existing technologies struggle to effectively protect the identity information of the verified party and the data privacy during the verification process while ensuring the accuracy of data authenticity verification in financial risk control and identity verification scenarios.

Method used

The system employs covert query and homomorphic encryption techniques to conceal the identity of the party being verified. It also uses homomorphic encryption to verify the authenticity of the data without decrypting the original data. This includes salting the data, extracting identifier features, grouping the data, calculating the ciphertext set of the verification results, and ensuring privacy protection through a controlled key acquisition and result location mechanism.

Benefits of technology

It enables data authenticity verification without disclosing the identity and original data of the party being verified, reducing the risk of privacy leakage, improving verification efficiency, and enhancing privacy protection capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121659364B_ABST
    Figure CN121659364B_ABST
Patent Text Reader

Abstract

The embodiment of the application discloses a privacy verification method and system based on an anonymous query and homomorphic encryption, wherein the method comprises the following steps: a verification service party encrypts source data to obtain corresponding first homomorphic ciphertext; a first identification value is respectively subjected to salt processing and identification feature extraction to obtain a first salted digest and a first identification feature, and grouping is performed to obtain a grouping set; a data query party calculates second homomorphic ciphertext of to-be-verified data; a second identification feature of a second identification value is calculated; the verification service party extracts a verification digest set according to a target grouping obtained by screening received data; a verification result ciphertext set is calculated according to the second homomorphic ciphertext and the target grouping; the data query party calculates a second salted digest of the second identification value; and a verification result is determined according to the second salted digest, the verification digest set and the verification result ciphertext set. While ensuring data security, complete data verification is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Privacy Verification Method and System Based on Hidden Queries and Homomorphic Encryption Technical Field

[0001] This invention relates to the field of privacy computing, and in particular to a privacy verification method and system based on covert queries and homomorphic encryption. Background Technology

[0002] In applications such as financial risk control and identity verification, it is often necessary to verify the authenticity of the data provided by the party being verified. Current technology typically involves the data verification party submitting the identity identifier of the party being verified and the data to be verified to the verification service provider, who then performs the comparison based on local data and returns the verification result. While this method is simple to implement, during the verification process, the verification service provider can directly obtain the identity identifier and raw data of the party being verified, exposing the data verification party's query objectives and content, thus posing a privacy risk.

[0003] Therefore, existing technologies struggle to effectively protect the identity information of the party being verified and the data privacy during the verification process while ensuring the accuracy of data authenticity verification. Summary of the Invention

[0004] To address the aforementioned issues, this invention provides a privacy verification method and system based on concealed query and homomorphic encryption. By concealing the identity of the verified party during the data verification process and completing the data authenticity verification without decrypting the original data based on homomorphic encryption, the method and system protect the privacy of identity information and verification data while ensuring the accuracy of the verification.

[0005] To achieve the above objectives, this invention provides a privacy verification method based on covert query and homomorphic encryption, comprising: a verification service provider performing homomorphic encryption on local source data to obtain corresponding first homomorphic ciphertext; salting and extracting identifier features from the first identifier value corresponding to each source data to obtain a first salted digest and a first identifier feature; grouping source data with the same first identifier feature into a group set; a data query provider calculating a second homomorphic ciphertext of the data to be verified; extracting identifier features from the second identifier value corresponding to the data to be verified to obtain a second identifier feature, and sending the second homomorphic ciphertext and the second identifier feature. The verification service provider filters the target group from the group set based on the second identifier feature, and extracts the first salted digest of all data in the target group to obtain a verification digest set; it calculates the verification result ciphertext set based on the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group; it sends the verification digest set and the verification result ciphertext set to the data query party; the data query party calculates the second salted digest of the second identifier value; it locates the target ciphertext in the verification result ciphertext set based on the second salted digest and the verification digest set, decrypts the target ciphertext, and determines the verification result based on the decryption result.

[0006] Further optionally, the step of calculating the verification result ciphertext set based on the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group includes: extracting the first homomorphic ciphertext of all source data in the target group to obtain a homomorphic ciphertext set; calculating the difference between each first homomorphic ciphertext and the second homomorphic ciphertext in the homomorphic ciphertext set to obtain the verification result ciphertext set.

[0007] Optionally, the step of locating the target ciphertext in the verification result ciphertext set according to the second salted digest and the verification digest set, decrypting the target ciphertext, and determining the verification result based on the decryption result includes: locating the index position of the second salted digest in the verification digest set; locating the target ciphertext corresponding to the second salted digest in the verification result ciphertext set according to the index position; performing decryption calculation on the target ciphertext according to the decryption private key to obtain the decryption result; wherein, the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption; if the decryption result is a preset value, the verification passes; otherwise, the verification fails.

[0008] Further optionally, the first identifier value corresponding to each source data is subjected to identifier feature extraction to obtain the first identifier feature, including: obtaining a security truncation parameter; performing a hash calculation on the first identifier value to obtain an identifier hash value; and truncating the identifier hash value according to the security truncation parameter to obtain the first identifier feature.

[0009] Optionally, the data querying party calculates the second salted digest of the second identifier value, comprising: the data querying party performing a covert query based on the second identifier value, and the verification service party performing a covert query based on the first identifier value and key pair sequence of the target group to obtain the target verification key corresponding to the second identifier value; wherein, the first identifier value and key pair sequence are pre-generated by the verification service party, and the first identifier value and key pair sequence includes each first identifier value in the target group and the verification key corresponding to salting it; and the second identifier value is salted according to the target verification key to obtain the second salted digest.

[0010] Another invention provides a privacy verification system based on covert query and homomorphic encryption, comprising: a preprocessing module for the verification service provider to homomorphically encrypt local source data to obtain corresponding first homomorphic ciphertext; salting and extracting identifier features from the first identifier value corresponding to each source data to obtain a first salted digest and a first identifier feature; grouping source data with the same first identifier feature into a group to obtain a group set; and a data to be verified information generation module for the data queryer to calculate the second homomorphic ciphertext of the data to be verified; extracting identifier features from the second identifier value corresponding to the data to be verified to obtain a second identifier feature, and sending the second homomorphic ciphertext and the second identifier feature... The data is sent to the verification service provider; the target group determination module is used by the verification service provider to filter the target group from the group set according to the second identifier feature, and extract the first salted digest of all data in the target group to obtain a verification digest set; calculate the verification result ciphertext set according to the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group; send the verification digest set and the verification result ciphertext set to the data query provider; the data verification module is used by the data query provider to calculate the second salted digest of the second identifier value; locate the target ciphertext in the verification result ciphertext set according to the second salted digest and the verification digest set, decrypt the target ciphertext and determine the verification result according to the decryption result.

[0011] Further optionally, the target group determination module includes: a homomorphic ciphertext extraction submodule, used to extract the first homomorphic ciphertext of all source data in the target group to obtain a set of homomorphic ciphertexts; and a verification result ciphertext calculation submodule, used to calculate the difference between each first homomorphic ciphertext and a second homomorphic ciphertext in the set of homomorphic ciphertexts to obtain the set of verification result ciphertexts.

[0012] Further optionally, the data verification module includes: an index positioning submodule, used to locate the index position of the second salted digest in the verification digest set; a target ciphertext positioning submodule, used to locate the target ciphertext corresponding to the second salted digest in the verification result ciphertext set according to the index position; a decryption submodule, used to perform decryption calculation on the target ciphertext according to the decryption private key to obtain a decryption result; wherein the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption; and a verification submodule, used to verify if the decryption result is a preset value, otherwise, the verification fails.

[0013] Further optionally, the preprocessing module includes: a security truncation parameter acquisition submodule, used to acquire security truncation parameters; a hash value calculation submodule, used to perform hash calculation on the first identifier value to obtain an identifier hash value; and a first identifier feature calculation submodule, used to truncate the identifier hash value according to the security truncation parameters to obtain the first identifier feature.

[0014] Further optionally, the data verification module includes: a target verification key determination submodule, used by the data querying party to perform a covert query based on the second identifier value and by the verification service party to perform a first identifier value and key pair sequence of the target group to obtain the target verification key corresponding to the second identifier value; wherein, the first identifier value and key pair sequence are pre-generated by the verification service party, and the first identifier value and key pair sequence includes each first identifier value in the target group and the verification key corresponding to it when salting it; and a second salted digest calculation submodule, used to perform salting processing on the second identifier value according to the target verification key to obtain a second salted digest.

[0015] The above technical solution has the following beneficial effects: by concealing the identity of the party being verified and using homomorphic encryption to calculate the verification data, the verification service provider can complete the data authenticity verification without obtaining the identity of the party being verified or the original data, thereby reducing the risk of privacy leakage; by narrowing the verification scope through grouping processing based on identifier features, the verification efficiency is improved while ensuring verification accuracy; and through a controlled key acquisition and result location mechanism, the data verification party only obtains the verification result without exposing its query target and query content, thereby further enhancing the privacy protection capability in the verification process. Attached Figure Description

[0016] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0017] Figure 1 is a flowchart of the privacy verification method based on covert query and homomorphic encryption provided in an embodiment of the present invention;

[0018] Figure 2 is a flowchart of the method for generating a set of encrypted verification results provided in an embodiment of the present invention;

[0019] Figure 3 is a flowchart of the verification result determination method provided in an embodiment of the present invention;

[0020] Figure 4 is a flowchart of the identifier feature extraction method provided in an embodiment of the present invention;

[0021] Figure 5 is a flowchart of the salted summary generation method provided in an embodiment of the present invention;

[0022] Figure 6 is a schematic diagram of the privacy verification system based on covert query and homomorphic encryption provided in an embodiment of the present invention;

[0023] Figure 7 is a schematic diagram of the target grouping determination module provided in an embodiment of the present invention;

[0024] Figure 8 is a schematic diagram of the structure of the sub-module of the data verification module for result verification provided in the embodiment of the present invention;

[0025] Figure 9 is a schematic diagram of the preprocessing module provided in an embodiment of the present invention;

[0026] Figure 10 is a schematic diagram of the structure of the sub-module of the data verification module for salted summary calculation provided in an embodiment of the present invention.

[0027] Figure reference numerals: 100-Preprocessing module; 1001-Secure truncation parameter acquisition submodule; 1002-Hash value calculation submodule; 1003-First identifier feature calculation submodule; 200-Data to be verified information generation module; 300-Target group determination module; 3001-Homomorphic ciphertext extraction submodule; 3002-Verification result ciphertext calculation submodule; 400-Data verification module; 4001-Index positioning submodule; 4002-Target ciphertext positioning submodule; 4003-Decryption submodule; 4004-Verification submodule; 4005-Target verification key determination submodule; 4006-Second salted digest calculation submodule. Detailed Implementation

[0028] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0029] To address the challenge of effectively protecting the identity information of the verified party and data privacy during the verification process while ensuring the accuracy of data authenticity verification in existing technologies, this invention provides a privacy verification method based on covert query and homomorphic encryption. Figure 1 is a flowchart of the privacy verification method based on covert query and homomorphic encryption provided by this invention. As shown in Figure 1, the method includes:

[0030] S1. The verification service provider performs homomorphic encryption on each source data in the local area to obtain the corresponding first homomorphic ciphertext; it performs salting and identifier feature extraction on the first identifier value corresponding to each source data to obtain the first salted digest and the first identifier feature; the source data with the same first identifier feature are grouped together to obtain the group set.

[0031] In a data verification scenario, there are three parties involved in the verification: the data query party A, the party being verified B, and the verification service provider C.

[0032] Data queryer A is the initiator of the verification request and the user of the result. After obtaining authorization from the verified party B, A initiates a data authenticity verification request to the verification service provider C, aiming to obtain a reliable verification result. When initiating the verification, data queryer A does not want to disclose the sensitive information of "who I am verifying" and "what data I am specifically verifying" to the verification service provider C.

[0033] The party being verified, B, is the data provider, who provides its own identity and the data to be verified (such as a certificate) to the data query party, A.

[0034] Verification service provider C is a trusted data holder and verification service provider, holding verified, authentic source data (such as official databases). In the verification process, its primary responsibility is to respond to verification requests and provide verification evidence without revealing its specific identity information or the original data it holds.

[0035] In a specific application scenario, a data querying party (such as a company) obtains the identity information of the party being verified (such as a user) and a document (such as an academic certificate) that claims to be issued by an authoritative institution. To verify the authenticity of this data, the querying party needs to initiate verification with a verification service provider (such as an academic database) that serves as the authoritative data source.

[0036] Before verification, verification service provider C performs offline data preprocessing:

[0037] 1. Homomorphic encryption of data. Verification service provider C uses a pre-selected homomorphic encryption algorithm and corresponding encryption public key to homomorphically encrypt each source data stored locally, generating the corresponding first homomorphic ciphertext.

[0038] In one alternative implementation, each first identifier value is calculated separately. ( Corresponding source data First homomorphic ciphertext ,in, This is a homomorphic encryption algorithm, where pk is the public key for encryption.

[0039] 2. Hide Data Identifiers. Each first identifier value is salted to obtain the first salted digest. Specifically, for each first identifier value associated with the source data, the verification service provider C generates a random salt value (verification key) and calculates the first salted digest using a secure hash function.

[0040] In one alternative implementation, each first identifier value is... ( Randomly select a verification key that meets the security level. ( Then calculate each first identifier value separately. ( First salting summary The verification keys or verification key generation rules corresponding to different security levels are preset.

[0041] 3. Data Grouping. Extract identifier features for each first identifier value according to preset feature extraction rules to obtain the first identifier feature corresponding to each first identifier value. .

[0042] Predefined feature extraction rules refer to a set of predefined operational steps and parameters known to both the verification service provider and the data querying party. These rules are used to extract a short, irreversible feature value from the original identifier value (such as an identity ID) that can be used for efficient data grouping. The core purpose of these rules is to provide an efficient indexing basis for subsequent data grouping and rapid filtering while hiding the specific content of the original identifier.

[0043] Preset feature extraction rules refer to calculating the identifier value using a pre-agreed deterministic processing function (hash function or filter) and truncating the calculation result to a predetermined length to generate a fixed-length identifier feature.

[0044] Then, the first identifier feature Same (marked as) The records after processing the relevant data (including the first identifier value) First Salting Summary and the corresponding first homomorphic ciphertext , verify key They are grouped together.

[0045] At this point, the offline preprocessing stage is complete. Assuming that according to the "grouping system based on identical first identifier features," all data is divided into... Groups, each group contains the following number of records: And satisfy .

[0046] That is, the set of all groups after offline preprocessing and grouping of data:

[0047] ,

[0048] ,

[0049] , Number of groups For the first Grouping The number of data records.

[0050] S2. The data query party calculates the second homomorphic ciphertext of the data to be verified; extracts the identifier features of the second identifier value corresponding to the data to be verified to obtain the second identifier feature, and sends the second homomorphic ciphertext and the second identifier feature to the verification service party.

[0051] During the data verification phase, data query party A obtains the data to be verified from party B. And its corresponding second identifier value ID.

[0052] Data query provider A uses the same homomorphic encryption algorithm as verification service provider C to homomorphically encrypt the data to be verified, i.e., the second homomorphic ciphertext. .

[0053] Data query provider A uses the same preset feature extraction rules as verification service provider C to calculate the second identifier feature corresponding to the second identifier value ID. .

[0054] Then, data queryer A will send the second homomorphic ciphertext. and second identification features Send to verification service provider C.

[0055] S3. The verification service provider selects the target group from the group set based on the second identifier feature, and extracts the first salted digest of all data in the target group to obtain the verification digest set; calculates the verification result ciphertext set based on the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group; and sends the verification digest set and the verification result ciphertext set to the data query party.

[0056] After receiving the data, the verification service provider C filters the target group corresponding to the data to be verified based on the second identification feature.

[0057] In one alternative implementation, traversal Assuming there exists Then filter Group the targets.

[0058] Then, extract the verification summary set from the target group. Corresponding to the above target group, the dataset in the target group is denoted as... : The first salted digest corresponding to each data point in the target group is extracted and combined to form a new set, namely the verification digest set. .

[0059] The first and second homomorphic ciphertexts in the target group are calculated according to the preset calculation rules to obtain the set of ciphertexts for verification results, HE: .

[0060] Verification service provider C will collect verification summaries. The encrypted set of verification results (HE) is sent to the data query party A.

[0061] S4. The data query party calculates the second salted digest of the second identifier value; locates the target ciphertext in the ciphertext set of verification results based on the second salted digest and the set of verification digests, decrypts the target ciphertext, and determines the verification result based on the decryption result.

[0062] Data query provider A uses the same salting algorithm as verification service provider C to calculate the second salted digest of the second identifier value ID. Among them, the target verification key This was obtained through secure interaction between the two parties.

[0063] Through the second salting summary The first homomorphic ciphertext at the corresponding position in the verification result ciphertext set is identified within the verification digest group and denoted as the target ciphertext. Data query party A uses the corresponding decryption private key (which forms a key pair with the encryption public key) to decrypt the target ciphertext, obtaining the verification calculation result. Finally, data query party A determines whether the decryption result meets the expectations of the preset calculation rules. If it does, the data authenticity is established; otherwise, the data authenticity is false.

[0064] As an optional implementation, Figure 2 is a flowchart of the method for generating a set of ciphertext for verification results provided in an embodiment of the present invention. As shown in Figure 2, the set of ciphertext for verification results is calculated based on the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group, including:

[0065] S301. Extract the first homomorphic ciphertext of all source data in the target group to obtain the homomorphic ciphertext set.

[0066] For the target group of the dataset Extract the first homomorphic ciphertext corresponding to each piece of data and combine them into a homomorphic ciphertext set. .

[0067] S302. Calculate the difference between each first homomorphic ciphertext and the second homomorphic ciphertext in the homomorphic ciphertext set to obtain the verification result ciphertext set.

[0068] Subtract each first homomorphic ciphertext from the second homomorphic ciphertext in the set of homomorphic ciphertexts, and combine all the difference results into a set of verification result ciphertexts.

[0069] That is, the encrypted set of verification results. .

[0070] As an optional implementation, Figure 3 is a flowchart of the verification result determination method provided by an embodiment of the present invention. As shown in Figure 3, the method involves locating the target ciphertext in the verification result ciphertext set based on the second salted digest and the verification digest set, decrypting the target ciphertext, and determining the verification result based on the decryption result, including:

[0071] S401. Locate the index position of the second salted digest in the verification digest set.

[0072] Based on the received set of verification digests Second Salt Summary Determine the second salting summary In the verification summary set The index position in the table.

[0073] That is, if it exists The encrypted index of the verification result is then... .

[0074] S402. Locate the target ciphertext corresponding to the second salted digest in the ciphertext set of verification results according to the index position.

[0075] According to the ciphertext index In the encrypted collection of verification results The target ciphertext was located in the middle. .

[0076] S403. Perform decryption calculation on the target ciphertext according to the decryption private key to obtain the decryption result; wherein, the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption.

[0077] Decrypt target ciphertext Verification results .

[0078] in, For the decryption algorithm, To decrypt the private key.

[0079] S404. If the decryption result is the preset value, the verification passes; otherwise, the verification fails.

[0080] In this embodiment, the preset calculation rule is homomorphic subtraction, and the preset value is set according to this homomorphic subtraction. The preset value is: when the data to be verified is completely consistent with the corresponding real source data stored by the verification service provider, the plaintext result value that should be obtained after homomorphic subtraction calculation and decryption is 0. If the value is 0, it means the data is true; otherwise, it means the data is false.

[0081] As an optional implementation, Figure 4 is a flowchart of the identifier feature extraction method provided in an embodiment of the present invention. As shown in Figure 4, identifier features are extracted from the first identifier value corresponding to each source data to obtain the first identifier feature, including:

[0082] S101. Obtain the safety truncation parameters.

[0083] The security truncation parameter t is uniformly set by the verification service provider C during the system initialization phase based on the data scale, privacy and security level, and query efficiency requirements. This ensures that the data query provider A uses the same truncation parameter for feature extraction in the subsequent verification process, thereby ensuring that the algorithms of both parties are consistent during the feature extraction phase and achieving feature comparability.

[0084] The choice of the security truncation parameter t directly affects the grouping granularity and the strength of privacy protection: the larger the t value, the longer the extracted features and the more refined the grouping, but it may increase the computation and communication overhead; the smaller the t value, the shorter the features and the broader the grouping, which is beneficial to improving processing efficiency, but a trade-off needs to be made within the acceptable range of privacy protection.

[0085] S102. Perform a hash calculation on the first identifier value to obtain the identifier hash value.

[0086] Perform a hash calculation on the first identifier value to obtain the identifier hash value. .

[0087] S103. The identifier hash value is truncated according to the security truncation parameter to obtain the first identifier feature.

[0088] For all first identifier values ( The first identification feature is calculated based on the safety truncation parameter t. , This is a truncation function. Parameters are truncated for safety.

[0089] Similarly, the data querying party also uses a consistent truncation function and safe truncation parameters for feature extraction to obtain the second identifier feature. .

[0090] As an optional implementation, Figure 5 is a flowchart of the salted digest generation method provided in an embodiment of the present invention. As shown in Figure 5, the data query party calculates the second salted digest with the second identifier value, including:

[0091] S405. The data querying party performs a covert query based on the second identifier value, and the verification service party performs a covert query based on the first identifier value and key pair sequence of the target group to obtain the target verification key corresponding to the second identifier value; wherein, the first identifier value and key pair sequence are pre-generated by the verification service party, and the first identifier value and key pair sequence includes each first identifier value in the target group and the verification key corresponding to it when salting it.

[0092] As the sender, verification service provider C obtains data from the target packet dataset. In this process, each first identifier value and its corresponding key are extracted to form a "first identifier value and key pair sequence". During the covert query process, the verification service provider C inputs the first identifier value and the key pair sequence. .

[0093] As the recipient, data queryer A inputs the second identifier value, ID.

[0094] Both parties execute the anonymous query protocol, and finally, the data querying party A outputs the target verification key corresponding to the second identifier value ID. .

[0095] Anonymous query is a privacy-preserving query protocol that allows a data querying party to obtain a verification key corresponding to a specific identifier (a second identifier value) from a verification service provider, without the verification service provider knowing which identifier the data querying party specifically queried. This protocol is implemented based on existing privacy-preserving computation technologies, with typical implementations including, but not limited to, unintentional transmission protocols.

[0096] Taking the unintentional transmission protocol as an example, one possible implementation is as follows:

[0097] Input: The verification service provider, as the sender, holds the first identifier value and the key pair sequence. The data querying party, as the receiving party, holds the second identifier value (ID) to be queried.

[0098] Execution: Both parties execute an unintentional transmission protocol. That is, through a series of cryptographic interactions (usually based on difficult problems such as public-key encryption, homomorphic encryption, or elliptic curve cryptography), the receiver can decrypt or restore only the message corresponding to its selected index in a blind manner.

[0099] Output: After the protocol ends, the data querying party can only obtain the unique verification key corresponding to the second identifier value ID it selected, and cannot obtain any information about other unrelated keys; at the same time, the verification service provider cannot know which key the data querying party specifically received.

[0100] S406. Salt the second identifier value according to the target verification key to obtain the second salted digest.

[0101] The second identifier value is calculated. Second Salting Summary .

[0102] This invention also provides a privacy verification system based on covert query and homomorphic encryption. Figure 6 is a schematic diagram of the structure of the privacy verification system based on covert query and homomorphic encryption provided in this invention. As shown in Figure 6, the system includes:

[0103] The preprocessing module 100 is used to verify that the service provider performs homomorphic encryption on each source data locally to obtain the corresponding first homomorphic ciphertext; to perform salting and identifier feature extraction on the first identifier value corresponding to each source data to obtain the first salted digest and the first identifier feature; and to group the source data with the same first identifier feature into a group to obtain a group set.

[0104] In a data verification scenario, there are three parties involved in the verification: the data query party A, the party being verified B, and the verification service provider C.

[0105] Data queryer A is the initiator of the verification request and the user of the result. After obtaining authorization from the verified party B, A initiates a data authenticity verification request to the verification service provider C, aiming to obtain a reliable verification result. When initiating the verification, data queryer A does not want to disclose the sensitive information of "who I am verifying" and "what data I am specifically verifying" to the verification service provider C.

[0106] The party being verified, B, is the data provider, who provides its own identity and the data to be verified (such as a certificate) to the data query party, A.

[0107] Verification service provider C is a trusted data holder and verification service provider, holding verified, authentic source data (such as official databases). In the verification process, its primary responsibility is to respond to verification requests and provide verification evidence without revealing its specific identity information or the original data it holds.

[0108] In a specific application scenario, a data querying party (such as a company) obtains the identity information of the party being verified (such as a user) and a document (such as an academic certificate) that claims to be issued by an authoritative institution. To verify the authenticity of this data, the querying party needs to initiate verification with a verification service provider (such as an academic database) that serves as the authoritative data source.

[0109] Before verification, verification service provider C performs offline data preprocessing:

[0110] 1. Homomorphic encryption of data. Verification service provider C uses a pre-selected homomorphic encryption algorithm and corresponding encryption public key to homomorphically encrypt each source data stored locally, generating the corresponding first homomorphic ciphertext.

[0111] In one alternative implementation, each first identifier value is calculated separately. ( Corresponding source data First homomorphic ciphertext ,in, This is a homomorphic encryption algorithm, where pk is the public key for encryption.

[0112] 2. Hide Data Identifiers. Each first identifier value is salted to obtain the first salted digest. Specifically, for each first identifier value associated with the source data, the verification service provider C generates a random salt value (verification key) and calculates the first salted digest using a secure hash function.

[0113] In one alternative implementation, each first identifier value is... ( Randomly select a verification key that meets the security level. ( Then calculate each first identifier value separately. ( First salting summary The verification keys or verification key generation rules corresponding to different security levels are preset.

[0114] 3. Data Grouping. Extract identifier features for each first identifier value according to preset feature extraction rules to obtain the first identifier feature corresponding to each first identifier value. .

[0115] Predefined feature extraction rules refer to a set of predefined operational steps and parameters known to both the verification service provider and the data querying party. These rules are used to extract a short, irreversible feature value from the original identifier value (such as an identity ID) that can be used for efficient data grouping. The core purpose of these rules is to provide an efficient indexing basis for subsequent data grouping and rapid filtering while hiding the specific content of the original identifier.

[0116] Preset feature extraction rules refer to calculating the identifier value using a pre-agreed deterministic processing function (hash function or filter) and truncating the calculation result to a predetermined length to generate a fixed-length identifier feature.

[0117] Then, the first identifier feature Same (marked as) The records after processing the relevant data (including the first identifier value) First Salting Summary and the corresponding first homomorphic ciphertext , verify key They are grouped together.

[0118] At this point, the offline preprocessing stage is complete. Assuming that according to the "grouping system based on identical first identifier features," all data is divided into... Groups, each group contains the following number of records: And satisfy .

[0119] That is, the set of all groups after offline preprocessing and grouping of data:

[0120] ,

[0121] ,

[0122] , Number of groups For the first Grouping The number of data records.

[0123] The data to be verified information generation module 200 is used by the data query party to calculate the second homomorphic ciphertext of the data to be verified; extract the identifier features of the second identifier value corresponding to the data to be verified to obtain the second identifier feature, and send the second homomorphic ciphertext and the second identifier feature to the verification service party.

[0124] During the data verification phase, data query party A obtains the data to be verified from party B. And its corresponding second identifier value ID.

[0125] Data query provider A uses the same homomorphic encryption algorithm as verification service provider C to homomorphically encrypt the data to be verified, i.e., the second homomorphic ciphertext. .

[0126] Data query provider A uses the same preset feature extraction rules as verification service provider C to calculate the second identifier feature corresponding to the second identifier value ID. .

[0127] Then, data queryer A will send the second homomorphic ciphertext. and second identification features Send to verification service provider C.

[0128] The target group determination module 300 is used to verify that the service provider selects the target group from the group set according to the second identifier feature, extracts the first salted digest of all data in the target group to obtain the verification digest set; calculates the verification result ciphertext set according to the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group; and sends the verification digest set and the verification result ciphertext set to the data query party.

[0129] After receiving the data, the verification service provider C filters the target group corresponding to the data to be verified based on the second identification feature.

[0130] In one alternative implementation, traversal Assuming there exists Then filter Group the targets.

[0131] Then, extract the verification summary set from the target group. Corresponding to the above target group, the dataset in the target group is denoted as... : The first salted digest corresponding to each data point in the target group is extracted and combined to form a new set, namely the verification digest set. .

[0132] The first and second homomorphic ciphertexts in the target group are calculated according to the preset calculation rules to obtain the set of ciphertexts for verification results, HE: .

[0133] Verification service provider C will collect verification summaries. The encrypted set of verification results (HE) is sent to the data query party A.

[0134] The data verification module 400 is used by the data query party to calculate the second salted digest of the second identifier value; locate the target ciphertext in the verification result ciphertext set according to the second salted digest and the verification digest set; decrypt the target ciphertext; and determine the verification result according to the decryption result.

[0135] Data query provider A uses the same salting algorithm as verification service provider C to calculate the second salted digest of the second identifier value ID. Among them, the target verification key This was obtained through secure interaction between the two parties.

[0136] Through the second salting summary The first homomorphic ciphertext at the corresponding position in the verification result ciphertext set is identified within the verification digest group and denoted as the target ciphertext. Data query party A uses the corresponding decryption private key (which forms a key pair with the encryption public key) to decrypt the target ciphertext, obtaining the verification calculation result. Finally, data query party A determines whether the decryption result meets the expectations of the preset calculation rules. If it does, the data authenticity is established; otherwise, the data authenticity is false.

[0137] As an optional implementation, Figure 7 is a schematic diagram of the target grouping determination module provided in an embodiment of the present invention. As shown in Figure 7, the target grouping determination module 300 includes:

[0138] The homomorphic ciphertext extraction submodule 3001 is used to extract the first homomorphic ciphertext of all source data in the target group to obtain a set of homomorphic ciphertexts.

[0139] For the target group of the dataset Extract the first homomorphic ciphertext corresponding to each piece of data and combine them into a homomorphic ciphertext set. .

[0140] The verification result ciphertext calculation submodule 3002 is used to calculate the difference between each first homomorphic ciphertext and the second homomorphic ciphertext in the homomorphic ciphertext set to obtain the verification result ciphertext set.

[0141] Subtract each first homomorphic ciphertext from the second homomorphic ciphertext in the set of homomorphic ciphertexts, and combine all the difference results into a set of verification result ciphertexts.

[0142] That is, the encrypted set of verification results. .

[0143] As an optional implementation, Figure 8 is a structural diagram of a sub-module of the data verification module for result verification provided in an embodiment of the present invention. As shown in Figure 8, the data verification module 400 includes:

[0144] The index positioning submodule 4001 is used to locate the index position of the second salted digest in the verification digest set.

[0145] Based on the received set of verification digests Second Salt Summary Determine the second salting summary In the verification summary set The index position in the table.

[0146] That is, if it exists The encrypted index of the verification result is then... .

[0147] The target ciphertext location submodule 4002 is used to locate the target ciphertext corresponding to the second salted digest in the ciphertext set of verification results according to the index position.

[0148] According to the ciphertext index In the encrypted collection of verification results The target ciphertext was located in the middle. .

[0149] The decryption submodule 4003 is used to perform decryption calculations on the target ciphertext based on the decryption private key to obtain the decryption result; wherein, the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption.

[0150] Decrypt target ciphertext Verification results .

[0151] in, For the decryption algorithm, To decrypt the private key.

[0152] The verification submodule 4004 is used to verify if the decryption result is a preset value; otherwise, the verification fails.

[0153] In this embodiment, the preset calculation rule is homomorphic subtraction. The preset value is set according to this homomorphic subtraction. The preset value is: when the data to be verified is completely consistent with the corresponding real source data stored by the verification service provider, the plaintext result value obtained after homomorphic subtraction and decryption is 0. If the value is 0, it means the data is true; otherwise, it means the data is false.

[0154] As an optional implementation, Figure 9 is a structural schematic diagram of the preprocessing module provided in an embodiment of the present invention. As shown in Figure 9, the preprocessing module 100 includes:

[0155] The safety truncation parameter acquisition submodule 1001 is used to acquire safety truncation parameters.

[0156] The security truncation parameter t is uniformly set by the verification service provider C during the system initialization phase based on the data scale, privacy and security level, and query efficiency requirements. This ensures that the data query provider A uses the same truncation parameter for feature extraction in the subsequent verification process, thereby ensuring that the algorithms of both parties are consistent during the feature extraction phase and achieving feature comparability.

[0157] The choice of the security truncation parameter t directly affects the grouping granularity and the strength of privacy protection: the larger the t value, the longer the extracted features and the more refined the grouping, but it may increase the computation and communication overhead; the smaller the t value, the shorter the features and the broader the grouping, which is beneficial to improving processing efficiency, but a trade-off needs to be made within the acceptable range of privacy protection.

[0158] The hash value calculation submodule 1002 is used to perform hash calculation on the first identifier value to obtain the identifier hash value.

[0159] Perform a hash calculation on the first identifier value to obtain the identifier hash value. .

[0160] The first identifier feature calculation submodule 1003 is used to truncate the identifier hash value according to the security truncation parameter to obtain the first identifier feature.

[0161] For all first identifier values ( The first identification feature is calculated based on the safety truncation parameter t. , This is a truncation function. Parameters are truncated for safety.

[0162] Similarly, the data querying party also uses a consistent truncation function and safe truncation parameters for feature extraction to obtain the second identifier feature. .

[0163] As an optional implementation, Figure 10 is a schematic diagram of the structure of a submodule of the data verification module for salted digest calculation provided in an embodiment of the present invention. As shown in Figure 10, the data verification module 400 includes:

[0164] The target verification key determination submodule 4005 is used by the data query party to perform a covert query based on the second identifier value and the verification service party based on the first identifier value and key pair sequence of the target group to obtain the target verification key corresponding to the second identifier value. The first identifier value and key pair sequence are pre-generated by the verification service party and include each first identifier value in the target group and the corresponding verification key when it is salted.

[0165] As the sender, verification service provider C obtains data from the target packet dataset. In this process, each first identifier value and its corresponding key are extracted to form a "first identifier value and key pair sequence". During the covert query process, the verification service provider C inputs the first identifier value and the key pair sequence. .

[0166] As the recipient, data queryer A inputs the second identifier value, ID.

[0167] Both parties execute the anonymous query protocol, and finally, the data querying party A outputs the target verification key corresponding to the second identifier value ID. .

[0168] Anonymous query is a privacy-preserving query protocol that allows a data querying party to obtain a verification key corresponding to a specific identifier (a second identifier value) from a verification service provider, without the verification service provider knowing which identifier the data querying party specifically queried. This protocol is implemented based on existing privacy-preserving computation technologies, with typical implementations including, but not limited to, unintentional transmission protocols.

[0169] Taking the unintentional transmission protocol as an example, one possible implementation is as follows:

[0170] Input: The verification service provider, as the sender, holds the first identifier value and the key pair sequence. The data querying party, as the receiving party, holds the second identifier value (ID) to be queried.

[0171] Execution: Both parties execute an unintentional transmission protocol. That is, through a series of cryptographic interactions (usually based on difficult problems such as public-key encryption, homomorphic encryption, or elliptic curve cryptography), the receiver can decrypt or restore only the message corresponding to its selected index in a blind manner.

[0172] Output: After the protocol ends, the data querying party can only obtain the unique verification key corresponding to the second identifier value ID it selected, and cannot obtain any information about other unrelated keys; at the same time, the verification service provider cannot know which key the data querying party specifically received.

[0173] The second salted digest calculation submodule 4006 is used to salt the second identifier value according to the target verification key to obtain the second salted digest.

[0174] The second identifier value is calculated. Second Salting Summary .

[0175] The above technical solution has the following beneficial effects: by concealing the identity of the party being verified and using homomorphic encryption to calculate the verification data, the verification service provider can complete the data authenticity verification without obtaining the identity of the party being verified or the original data, thereby reducing the risk of privacy leakage; by narrowing the verification scope through grouping processing based on identifier features, the verification efficiency is improved while ensuring verification accuracy; and through a controlled key acquisition and result location mechanism, the data verification party only obtains the verification result without exposing its query target and query content, thereby further enhancing the privacy protection capability in the verification process.

[0176] The above-described specific embodiments of the invention further illustrate the purpose, technical solution, and beneficial effects of the invention. It should be understood that the above content is only for specific embodiments of the invention and is not intended to limit the scope of protection of the invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the invention should be included within the scope of protection of the invention.

Claims

1. A privacy verification method based on covert query and homomorphic encryption, characterized in that, include: The verification service provider performs homomorphic encryption on each source data locally to obtain the corresponding first homomorphic ciphertext; Salting and feature extraction are performed on the first identifier value corresponding to each source data to obtain the first salted summary and the first identifier feature; source data with the same first identifier feature are grouped together to obtain the group set; The data querying party calculates the second homomorphic ciphertext of the data to be verified; extracts the identifier features of the second identifier value corresponding to the data to be verified to obtain the second identifier feature, and sends the second homomorphic ciphertext and the second identifier feature to the verification service party; The verification service provider filters the target group from the group set according to the second identifier feature, and extracts the first salted digest of all data in the target group to obtain a verification digest set; calculates the verification result ciphertext set according to the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group; and sends the verification digest set and the verification result ciphertext set to the data query party. The data querying party calculates a second salted digest of the second identifier value; locates the target ciphertext in the ciphertext set of the verification results based on the second salted digest and the set of verification digests, decrypts the target ciphertext, and determines the verification result based on the decryption result.

2. The privacy verification method based on covert query and homomorphic encryption according to claim 1, characterized in that, The step of calculating the verification result ciphertext set based on the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group includes: extracting the first homomorphic ciphertext of all source data in the target group to obtain a homomorphic ciphertext set; calculating the difference between each first homomorphic ciphertext and the second homomorphic ciphertext in the homomorphic ciphertext set to obtain the verification result ciphertext set.

3. The privacy verification method based on covert query and homomorphic encryption according to claim 1, characterized in that, The step of locating the target ciphertext in the verification result ciphertext set according to the second salted digest and the verification digest set, decrypting the target ciphertext, and determining the verification result based on the decryption result includes: locating the index position of the second salted digest in the verification digest set; locating the target ciphertext corresponding to the second salted digest in the verification result ciphertext set according to the index position; performing decryption calculation on the target ciphertext according to the decryption private key to obtain the decryption result; wherein, the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption; if the decryption result is a preset value, the verification passes; otherwise, the verification fails.

4. The privacy verification method based on covert query and homomorphic encryption according to claim 1, characterized in that, Extracting identifier features from the first identifier value corresponding to each source data to obtain the first identifier feature includes: obtaining a security truncation parameter; performing a hash calculation on the first identifier value to obtain an identifier hash value; and truncating the identifier hash value according to the security truncation parameter to obtain the first identifier feature.

5. The privacy verification method based on covert query and homomorphic encryption according to claim 1, characterized in that, The calculation of the second salted digest of the second identifier value by the data querying party includes: the data querying party performing a covert query based on the second identifier value, and the verification service party performing a covert query based on the first identifier value and key pair sequence of the target group to obtain the target verification key corresponding to the second identifier value; wherein, the first identifier value and key pair sequence are pre-generated by the verification service party, and the first identifier value and key pair sequence includes each first identifier value in the target group and the verification key corresponding to salting it; the second identifier value is salted according to the target verification key to obtain the second salted digest.

6. A privacy verification system based on covert query and homomorphic encryption, characterized in that, include: The preprocessing module is used to verify that the service provider performs homomorphic encryption on each source data on the local machine to obtain the corresponding first homomorphic ciphertext; Each source data is subjected to salting and feature extraction on its corresponding first identifier value to obtain a first salted digest and a first identifier feature; source data with the same first identifier feature are grouped together to obtain a group set; the data to be verified information generation module is used by the data query party to calculate the second homomorphic ciphertext of the data to be verified. The identification feature is extracted from the second identifier value corresponding to the data to be verified to obtain the second identifier feature, and the second homomorphic ciphertext and the second identifier feature are sent to the verification service provider. The target group determination module is used to verify that the service provider selects target groups from the group set according to the second identifier feature, extracts the first salted digest of all data in the target group to obtain a verification digest set, and calculates the verification result ciphertext set according to the second homomorphic ciphertext and the first homomorphic ciphertext of all data in the target group. Send the set of verification digests and the set of encrypted verification results to the data query party; The data verification module is used by the data querying party to calculate the second salted digest of the second identifier value; locate the target ciphertext in the verification result ciphertext set according to the second salted digest and the verification digest set; decrypt the target ciphertext; and determine the verification result based on the decryption result.

7. The privacy verification system based on covert query and homomorphic encryption according to claim 6, characterized in that, The target group determination module includes: a homomorphic ciphertext extraction submodule, used to extract the first homomorphic ciphertext of all source data in the target group to obtain a set of homomorphic ciphertexts; and a verification result ciphertext calculation submodule, used to calculate the difference between each first homomorphic ciphertext and a second homomorphic ciphertext in the set of homomorphic ciphertexts to obtain the set of verification result ciphertexts.

8. The privacy verification system based on covert query and homomorphic encryption according to claim 6, characterized in that, The data verification module includes: an index positioning submodule, used to locate the index position of the second salted digest in the verification digest set; a target ciphertext positioning submodule, used to locate the target ciphertext corresponding to the second salted digest in the verification result ciphertext set according to the index position; a decryption submodule, used to perform decryption calculation on the target ciphertext according to the decryption private key to obtain the decryption result; wherein, the decryption private key corresponds to the encryption public key, and the encryption public key is used for homomorphic encryption; and a verification submodule, used to verify if the decryption result is a preset value, otherwise, the verification fails.

9. The privacy verification system based on covert query and homomorphic encryption according to claim 6, characterized in that, The preprocessing module includes: a security truncation parameter acquisition submodule, used to acquire security truncation parameters; a hash value calculation submodule, used to perform hash calculation on the first identifier value to obtain an identifier hash value; and a first identifier feature calculation submodule, used to truncate the identifier hash value according to the security truncation parameters to obtain the first identifier feature.

10. The privacy verification system based on covert query and homomorphic encryption according to claim 6, characterized in that, The data verification module includes: a target verification key determination submodule, used by the data querying party to perform a covert query based on the second identifier value and by the verification service party to perform a first identifier value and key pair sequence for the target group, to obtain the target verification key corresponding to the second identifier value; wherein, the first identifier value and key pair sequence are pre-generated by the verification service party, and the first identifier value and key pair sequence includes each first identifier value in the target group and the verification key corresponding to it when salting it; and a second salted digest calculation submodule, used to perform salting processing on the second identifier value according to the target verification key to obtain a second salted digest.

Citation Information

Patent Citations

  • Data query method and device, computer equipment and storage medium

    CN116578596A

  • Video data encryption method and video data storage sharing system based on block chain

    CN119383275A