Privacy protection method and system capable of resisting secret key mixed matching
By introducing new tags into multi-client internal product function encryption, the information leakage problem caused by key mixed matching attacks is solved, and the security of multiple rounds of encryption is enhanced and the integrity of privacy protection is ensured.
Patent Information
- Application Number
- CN202411991869.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2044-12-31
AI Technical Summary
Existing multi-client internal product function encryption methods cannot withstand key mixing attacks, resulting in additional information leakage and undermining the security of privacy protection.
By introducing new tags unknown to the decryption party in the ciphertext and the decryption key, the decryptor cannot obtain additional internal product results through key mixing and matching, preventing information leakage.
Enhanced the security of multiple rounds of encryption, preventing decryptors from using multiple rounds of keys to decrypt a certain round of ciphertext, reasoning for privacy input, and not damaging the security of the original MCFE solution.
Smart Images

Figure CN119834973A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of information security technology, and in particular relates to a privacy protection method and system capable of resisting key mixing and matching. Background Art
[0002] The statements in this section merely provide background information related to the present invention and do not necessarily constitute prior art.
[0003] With the rapid development of technologies such as big data, cloud computing, and the Internet of Things, information security issues have become increasingly prominent and have become an important issue that cannot be ignored in the digital age. As a core means to ensure information security, the research on encryption technology has important theoretical significance and practical value. Inner Product Functional Encryption (IP-FE), as an emerging cryptographic technology, has received widespread attention from the academic community in recent years. In scenarios involving inner product calculations, compared with traditional encryption technologies, inner product function encryption provides more flexible access control. Inner product function encryption is of great significance to applications involving privacy-preserving inner product calculations, and is suitable for scenarios such as statistical analysis, outsourced computing, and machine learning.
[0004] Inner product function encryption is a special function encryption that supports vector inner product calculation. Figure 3 As shown, given the ciphertext ( ) and with The associated decryption key , the decryptor can only obtain The value of Multi-Input Functional Encryption (MIFE) is a multi-participant extension that allows multiple participants to Enter and encrypt vector Each component , and finally decryption calculation The value of . Multi-Client Functional Encryption (MCFE) supports multiple encryptors to encrypt private inputs with private keys. The decryptor can decrypt a set of ciphertexts using the decryption key to obtain the inner product of the vectors provided by the encryption and decryption parties, while protecting the privacy of the input vector of the encryption party. MCFE adds tags to ciphertexts based on MIFE, so that only ciphertexts with the same tags can be combined for decryption, solving the problem that mix-and-match between ciphertexts from different rounds can still be decrypted and cause additional information leakage.
[0005] However, MCFE also has another type of mix-and-match attack, which is to mix and match the decryption key with ciphertexts from different rounds. Ciphertext and decryption key , then he can call the Decrypt() algorithm to get the decrypted result Similarly, in the second round he will receive the vector Ciphertext and decryption key , after normal decryption, we get At this point, the decryptor has the ciphertext and key from the first two rounds, and a curious decryptor can try to use Decryption The ciphertext gets additional results .and This is not the result that both parties agreed to achieve.
[0006] For example, in the first round of encryption and decryption, the decryptor obtains the ciphertext E( ) and with the vector =(3,2,4) associated decryption key , normal decryption can obtain the inner product result In the second round of encryption and decryption, the decryptor obtains the same vector =(6,7,8) associated decryption key The decryptor can replace and the decryption key Perform key mixing and matching, decryption and calculation of inner product results Since the vector , There is a certain proportional relationship, and the decryptor can calculate -2 3. Get the vector The second item , which is the private input of the second encryptor.
[0007] As the number of encryption and decryption rounds increases, more inner product results will be generated. This additional information leakage may be used for reasoning. The plaintext information of MCFE encryption is destroyed. Therefore, it is necessary to design a solution to avoid such key mixing and matching. However, the current multi-client inner product function encryption method cannot resist such key mixing and matching attacks, and therefore cannot protect its privacy in scenarios such as statistical analysis, outsourced computing, and machine learning. Summary of the invention
[0008] In order to overcome the deficiencies of the above-mentioned prior art, the present invention provides a privacy protection method and system that can resist key mixing and matching, in order to solve the risk of MCFE privacy input being inferred due to additional information leakage caused by the mixing and matching of keys and ciphertexts in different rounds. A method for preventing multi-client inner product function encryption key mixing and matching is proposed, which can prevent the decryptor from performing key mixing and matching attacks without compromising the security of the original MCFE scheme, and enhance the security of MCFE in multi-round encryption.
[0009] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions: A first aspect of the present invention provides a privacy protection method capable of resisting key mixing and matching.
[0010] A privacy-preserving method that resists key mix-and-matching, including: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; Step 1, initialization phase: The key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; Step 2: Encryption phase: The key manager randomly generates a tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; Step 3: Decryption key generation phase: The decryptor sends the vector to the key manager ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor; Step 4, Decryption phase: The decryptor receives the ciphertext set from all encryptors and the decryption key and label from the key manager. , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
[0011] A second aspect of the present invention provides a privacy protection system that can resist key mixing and matching.
[0012] A privacy protection system that can resist key mixing and matching, comprising: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; The initialization module is configured as follows: the key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; The encryption module is configured as follows: The key manager randomly generates a tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; The decryption key generation module is configured to: the decryptor sends a vector to the key manager ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor; The decryption module is configured as follows: the decryptor receives the ciphertext set sent by all encryptors and the decryption key and label sent by the key manager , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
[0013] The third aspect of the present invention provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps in a method as described in the first aspect of the present invention are implemented.
[0014] A fourth aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps in a method as described in the first aspect of the present invention.
[0015] A fifth aspect of the present invention provides a computer program product comprising instructions, which, when running on a computer, enables the computer program to implement the steps in a method as described in the first aspect of the present invention when executed by a processor.
[0016] One or more of the above technical solutions have the following beneficial effects: The present invention is used to perform privacy protection and encryption in machine learning scenarios. New labels unknown to the decryptor are introduced into the ciphertext and decryption key, so that the decryptor cannot obtain the inner product results of the encrypted vector and other vectors by replacing the decryption key and the vector during decryption. This prevents the decryptor from using the decryption key generated by multiple rounds to decrypt the ciphertext of a certain round and using the additional inner product results to infer the privacy input. This method enhances the security of MCFE multi-round encryption.
[0017] The present invention solves the key mixing and matching problem by adding tags to ciphertext and decryption keys, which can not damage the security of the original MCFE solution, and the increased communication and computing costs are small. Compared with the original MCFE solution, the key manager only needs to pass more label information to the encryptor during the encryption stage, and the encryptor and the key manager only need to perform one more multiplication calculation and one more global hash calculation when generating ciphertext and decryption keys.
[0018] Advantages of additional aspects of the present invention will be given in part in the following description, and in part will become obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.
[0020] Figure 1 This is a protocol flow chart of a privacy protection method capable of resisting key mixing and matching according to the first embodiment of the present invention; Figure 2 This is an experimental test diagram of a privacy protection method capable of resisting key mixing and matching according to the first embodiment of the present invention; Figure 3 It is a schematic diagram of the original multi-client inner product function method of the first embodiment of the present invention. DETAILED DESCRIPTION
[0021] It should be noted that the following detailed descriptions are exemplary and are intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present invention belongs.
[0022] It should be noted that the terms used herein are for describing specific embodiments only and are not intended to be limiting of exemplary embodiments according to the present invention.
[0023] In the absence of conflict, the embodiments of the present invention and the features of the embodiments may be combined with each other.
[0024] Embodiment 1 This embodiment discloses a privacy protection method that can resist key mixing and matching, in order to solve the risk of MCFE privacy input being inferred due to additional information leakage caused by the mixing and matching of keys and ciphertexts in different rounds during multi-client function encryption. A method for preventing multi-client inner product function encryption key mixing and matching is proposed, so that it can prevent the decryptor from performing key mixing and matching attacks without compromising the security of the original MCFE scheme, thereby enhancing the security of MCFE in multi-round encryption. Specifically including: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; Step 1, initialization phase: The key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; Step 2: Encryption phase: The key manager randomly generates a tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; Step 3: Decryption key generation phase: The decryptor sends the vector to the key manager ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor; Step 4, Decryption phase: The decryptor receives the ciphertext set from all encryptors and the decryption key and label from the key manager. , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
[0025] In order to explain this embodiment more clearly, Figure 1 As shown, the protocol flow of a privacy protection method that can resist key mixing and matching can be specifically described as follows: In this embodiment, a client inner product function encryption method (MCFE) is specifically provided. MCFE includes the following four algorithms: : With safety parameters As input, the initialization algorithm output contains a prime order group , global hash function and hash functions Master public key , and contains the private key The master private key of the collection .
[0026] With private key ,vector The amount ,Label and As input, the encryption algorithm will Encrypted to ciphertext And output.
[0027] :With the master private key and vector As input, the decryption key generation algorithm outputs Associated decryption key .
[0028] : To decrypt the key ,Label and the ciphertext set As input, the decryption algorithm outputs the decryption result = .
[0029] In this embodiment, three parties are specifically involved: multiple encryptors (denoted as individuals), decryptors, and key managers.
[0030] Each encryptor provides a vector The amount , output ciphertext through encryption algorithm (ie Encrypt algorithm) .
[0031] Decryptor provides vector , using the decryption key Decrypt the ciphertext using the decryption algorithm (i.e. Decrypt algorithm) to obtain the inner product result .
[0032] The key manager is a trusted third party responsible for generating parameters and providing decryption keys.
[0033] The specific process is as follows: Step 1, Initialization phase (SetUp phase): The key manager inputs security parameters, randomly generates a set of keys through an initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys.
[0034] Specifically include: (1) The key manager first enters the security parameters On, randomly generated Prime number of bit length , then construct Additive cyclic group of order ,group The generator of .
[0035] Specifically, use the group generator and input the security parameter λ to obtain a 2λ-bit prime number p as the order of the group. Decompose p-1 into different prime factors , randomly select an integer P in [1, p-1], and for all prime factors of p-1 , , check whether the selected P does not satisfy , if it holds, P is a valid generator. If it does not hold, reselect P until a valid generator is obtained. Use the obtained generator P to construct a prime order group .
[0036] The entire group generation process adopts a general group generation algorithm and uses the implicit representation of group elements. Define [a] to represent the group Elements in .
[0037] When describing the encryption and decryption phases of function encryption, the mask 、Ciphertext , decryption result etc. also use the implicit representation of group elements, indicating that the element is in the group The purpose is to make the expression more concise, rather than writing it as a modulo prime number p on the generator exponent.
[0038] (2) The key manager selects a global hash function , , which can map label input to group Choose a global hash function , , which can map label input to On the domain.
[0039] The global hash function is used to randomly map the label input to the required domain element. Specifically, the label hash is randomly mapped, the binary obtained is converted to an integer x, and then the integer x is converted to an element in the group or domain.
[0040] Convert the integer x to a group by the expression mod p, where g represents the generator of the group and p is the order of the group.
[0041] Converting the integer x to an element in the domain specifically refers to mapping modulo p to the domain of integers modulo p. superior.
[0042] therefore, is the field of integers modulo a prime number p, and the prime order group is the same prime number p.
[0043] (3) The key manager randomly generates a set of keys ( ) and distribute the key to the corresponding encryptor. ) as the master public key , key set { } as the master private key .
[0044] Specifically, the key generation is performed by calling a pseudo-random number generation function to randomly generate an integer within the range of prime numbers p. Indicates that the key is a two-dimensional vector, each component of the vector is an integer domain The elements on.
[0045] (4) The encryptor receives the key sent by the key manager , the key as its own encryption key.
[0046] In this embodiment, a global hash function is used to map the label input. A common hash function can map an input of any length to an output of a fixed length. Input, hash function : ,in Indicates the number of digits and The global hash function maps an input of any length to an output of the same length as the input. Therefore, compared with ordinary hash functions, the use of global hash functions provides stronger anti-collision performance and can Inputs are mapped into other domains.
[0047] Step 2, Encryption phase: The key custodian generates a random tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor.
[0048] Specifically include: (1) The key manager randomly generates tags for encryption and decryption operations , ,Label is a two-dimensional vector. And the label and Sent to all encryptors.
[0049] Among them, both tags are composed of 01 bits of arbitrary length, and only the tag It is two-dimensional.
[0050] (2) The encryptor receives the label of this round and , calculate the label Mask , calculate the label Mask .
[0051] Indicates the label Using a hash function The mask obtained, and the symbol [] indicates that it is a group Medium element. Similarly, for labels Using a hash function The resulting mask.
[0052] (3) The encryptor calculates the vector components The ciphertext, ciphertext , and then the ciphertext Send to decryptor.
[0053] Ciphertext calculation , They are respectively represented as the masks obtained by hashing the labels, is the key of the i-th encryptor, The encrypted data in this encryption is calculated on the exponential with the generator as the base and modulo the prime number p, so in [], the final ciphertext is in the group middle.
[0054] By introducing new tags unknown to the decryptor in the ciphertext and decryption key, the decryptor cannot replace the decryption key and vector during decryption. To obtain the inner product result of the encrypted vector and other vectors. This can prevent the decryptor from using the decryption key generated by multiple rounds to decrypt the ciphertext of a certain round, and use the additional inner product results to infer the privacy input. This method enhances the security of MCFE multi-round encryption.
[0055] Moreover, only during the encryption phase does the key manager need to pass more tags to the encryptor. The encryptor and key manager need to perform one more multiplication and one more global hash calculation respectively when generating ciphertext and decryption key, which can reduce the increased communication and computing costs without compromising the security of the original MCFE scheme.
[0056] Step 3, decryption key generation phase (DKeyGen phase): The decryptor sends the vector to the key keeper ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor.
[0057] Specifically include: (1) The decryptor sends the vector to the key manager .
[0058] in, It refers to the vector transpose.
[0059] (2) The key manager receives the vector sent by the decryptor , using the label of the current round randomly generated in step 2 Calculate the decryption key , the specific calculation method is as follows: ; The label Mask , is the key of the ith encryptor, is a vector The i-th component of As in the previous ciphertext calculation, the label Using a hash function The obtained mask and the calculated decryption key result is a two-dimensional vector.
[0060] (3) The decryption key and the label of the current round Return to the decryptor.
[0061] In this embodiment, in each round of encryption and decryption operations, the key manager only uses the label of the current round. For a single vector Generate decryption key , that is, the decryptor cannot obtain multiple decryption keys by submitting multiple vectors to the key manager in one round.
[0062] Step 4, Decryption phase (Decrypt phase): The decryptor receives all ciphertext sets from the encryptor and the decryption key and label from the key manager. , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
[0063] Specifically include: (1) The decryptor receives the ciphertext set sent by all encryptors { } and the decryption key sent by the key manager and tags .
[0064] (2) The decryptor calculates the decryption result , the specific calculation method is as follows: ; Among them, the label Mask , decryption calculation is the ciphertext generated by the ith encryptor, is a vector The i-th component of Same as the calculation during encryption, is the decryption key. The final decryption result Still in the group superior.
[0065] (3) The decryptor is responsible for the decryption result Solving the discrete logarithm gives the vector and The inner product result of .
[0066] And verify the correctness of the inner product result. The specific expression is as follows: ; in, represents the decryption result; n represents n encryptors; is the ciphertext generated by the i-th encryptor, which is The ciphertext of the i-th component of the vector will be decrypted together with the vector The i-th component of Multiply, the outer layer has summation and finally eliminates other terms to get , Vector inner product; Yes Tags Using a hash function The resulting mask is two-dimensional. The transposition operation was performed. Represents the decryption key; represents an encryption key; Representation Tags 's mask; Representation vector The amount.
[0067] In this embodiment, this method is experimentally tested. Figure 2 As shown in the figure, the experiment selects vectors of different dimensions for testing, and performs multiple experiments on each vector dimension to obtain the average value. A vector dimension of 5 means that the vectors involved in the inner product operation are , Each contains 5 components, among which the vector Each component of is provided by a different encryptor. Because encryption requires the vector Each component of is encrypted separately to generate ciphertext. As the vector dimension increases, the number of encryption calculations will increase accordingly, so the encryption time will also increase. The more ciphertexts generated by the increase in vector dimension will increase the amount of decryption calculations. At the same time, the larger decryption result will make it more difficult to solve the discrete logarithm at the end, so the decryption time will also increase with the increase in vector dimension. When the vector dimension is small, the decryption time accounts for a higher proportion; when the vector dimension is large, the encryption time accounts for a higher proportion. As the vector dimension increases, the total time shows a nonlinear growth trend, so MCFE is more suitable for smaller computing scenarios.
[0068] And as Figure 3 The original multi-client inner product function method shown in the figure can be used by the decryptor to replace and the decryption key Perform key mixing and matching, decryption and calculation of inner product results . And since the vector , There is a certain proportional relationship, and the decryptor can calculate -2 3. Get the vector The second item , which is the private input of the second encryptor. Therefore, as the number of encryption and decryption rounds increases, more inner product results will be generated. This additional information leakage may be used to infer The plaintext information of the MCFE encryption is destroyed.
[0069] However, compared with the original MCFE solution, this embodiment only requires the key manager to pass more label information to the encryptor during the encryption phase. When generating ciphertext and decryption keys, the encryptor and key manager each need to perform one more multiplication calculation and one more global hash calculation. By introducing new labels unknown to the decryptor, the decryptor cannot obtain the inner product results of the encrypted vector and other vectors by replacing the decryption key and vector during decryption. This prevents the decryptor from using the decryption key generated by multiple rounds to decrypt the ciphertext of a certain round, and uses the additional inner product results to infer the privacy input, thereby enhancing the security of MCFE multi-round encryption.
[0070] Embodiment 2 The purpose of this embodiment is to provide a privacy protection system that can resist key mixing and matching, including: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; The initialization module is configured as follows: the key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; The encryption module is configured as follows: the key manager randomly generates tags for encryption and decryption operations and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; The decryption key generation module is configured to: the decryptor sends a vector to the key manager ; The key manager receives the vector sent by the decryptor , using the label of the current round Calculate the decryption key and use the decryption key and the label of the current round Return to the decryptor; The decryption module is configured as follows: the decryptor receives the ciphertext set sent by all encryptors and the decryption key and label sent by the key manager , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
[0071] Embodiment 3 The purpose of this embodiment is to provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above method when executing the program.
[0072] Embodiment 4 The purpose of this embodiment is to provide a computer-readable storage medium.
[0073] A computer-readable storage medium stores a computer program, which executes the steps of the above method when executed by a processor.
[0074] Embodiment 5 The purpose of this embodiment is to provide a computer program product containing instructions, which, when running on a computer, enables the computer to execute the methods and functions involved in any of the above embodiments. The steps involved in the apparatus of the above embodiment correspond to the method embodiment 1, and the specific implementation method can refer to the relevant description part of embodiment 1. The term "computer-readable storage medium" should be understood as a single medium or multiple media including one or more instruction sets; it should also be understood to include any medium that can store, encode or carry an instruction set for execution by a processor and enable the processor to execute any method in the present invention.
[0075] Those skilled in the art should understand that the modules or steps of the present invention described above can be implemented by a general-purpose computer device, or alternatively, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. The present invention is not limited to any specific combination of hardware and software.
[0076] Although the above describes the specific implementation mode of the present invention in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art on the basis of the technical solution of the present invention without creative work are still within the scope of protection of the present invention.
Claims
1. A privacy protection method capable of resisting key mixing and matching, characterized in that: include: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; Step 1, initialization phase: The key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; Step 2: Encryption phase: The key manager randomly generates a tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; Step 3: Decryption key generation phase: The decryptor sends the vector to the key manager ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor; Step 4, Decryption phase: The decryptor receives the ciphertext set from all encryptors and the decryption key and label from the key manager. , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
2. A privacy protection method capable of resisting key mixing and matching as claimed in claim 1, characterized in that: The key manager inputs security parameters, randomly generates a set of keys through an initialization algorithm, and distributes the keys to the corresponding encryptors, specifically including: The key manager first enters the security parameters On, randomly generated Prime number of bit length , then construct Additive cyclic group of order ,group The generator of ; The key custodian chooses a global hash function , mapping label input to group Above; Choose a global hash function , mapping the label input to On the domain; The key manager randomly generates a set of keys and distributes them to the corresponding encryptors.
3. A privacy protection method capable of resisting key mixing and matching as claimed in claim 1, characterized in that: During the encryption phase, the encryptor receives the current round label and , and calculate the label and tags The mask includes: The key manager randomly generates tags for encryption and decryption operations and , where the label is a two-dimensional vector, both labels are composed of 01 bits of arbitrary length, and the label and Send to all encryptors; The encryptor receives the label of this round and , calculate the label Mask , calculate the label Mask ; in, Indicates the label Using hash functions The mask obtained belongs to the group The middle element, The same is true for tags Using a hash function The mask obtained belongs to Elements in the domain.
4. A privacy protection method capable of resisting key mixing and matching as claimed in claim 1, characterized in that: The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key, including: The key manager receives the vector sent by the decryptor , using the randomly generated label of the current round Calculate the decryption key , calculated as follows: ; in, is the key of the ith encryptor, is a vector The i-th component of It is a tag The decryption key is calculated using the mask obtained by the hash function. is a two-dimensional vector.
5. A privacy protection method capable of resisting key mixing and matching as claimed in claim 1, characterized in that: In each round of encryption and decryption, the key manager only uses the label of the current round. For a single vector Generate decryption keys, i.e., the decryptor cannot obtain multiple decryption keys by submitting multiple vectors to the key manager in one round.
6. A privacy protection method capable of resisting key mixing and matching as claimed in claim 1, characterized in that: The decryptor receives the ciphertext set sent by all encryptors and the decryption key and label sent by the key manager. , calculate the decryption result, including: The decryptor receives the ciphertext set from all encryptors and the decryption key from the key manager. and tags ; The decryptor calculates the decryption result by the following calculation method : Among them, the label Mask , decryption calculation represents the ciphertext generated by the i-th encryptor, Representation vector The i-th component of is the decryption key.
7. A privacy protection system capable of resisting key mixing and matching, characterized in that: include: Multiple encryptors, decryptors, and key managers; each encryptor provides a vector The amount ; The decryptor provides the vector ,The key manager is responsible for generating security parameters and providing decryption keys; The initialization module is configured as follows: the key manager inputs security parameters, randomly generates a set of keys through the initialization algorithm, and distributes the keys to the corresponding encryptors; the encryptors receive the keys sent by the key manager and use them as encryption keys; The encryption module is configured as follows: The key manager randomly generates a tag and , and label and Send to all encryptors; The encryptor receives the label of this round and , and calculate the label and tags 's mask; The encryptor calculates the vector components through the encryption algorithm The ciphertext is then sent to the decryptor; The decryption key generation module is configured to: the decryptor sends a vector to the key manager ; The key manager receives the vector sent by the decryptor , using this round label Calculate the decryption key and combine the decryption key and the current round label Return to the decryptor; The decryption module is configured as follows: the decryptor receives the ciphertext set sent by all encryptors and the decryption key and label sent by the key manager , calculate the decryption result; and solve the discrete logarithm of the decryption result to obtain the inner product result.
8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the steps of the method described in any one of claims 1 to 6 are implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method described in any one of claims 1 to 6 are performed.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Connection ring signature method, device and equipment and storage medium
CN109831312A
Privacy set intersection calculation method with label and supporting fuzzy matching
CN118157848A
Method for function encryption supporting set intersection operation and apparatus using the same
KR102143525B1
Secure text analytics
WO2018102861A1