Receiver anonymous bilateral access control method
By using random number and polynomial technology in bilateral access control to anonymize the processing of attribute values and generate encryption and decryption keys, the problem of recipient identity privacy leakage is solved, and anonymity and effective access control is achieved, ensuring that only the specified policy is met The receiver can decrypt the message.
Patent Information
- Application Number
- CN202411446279.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-16
- Publication Date
- 2025-01-17
AI Technical Summary
The existing bilateral access control method for anonymity of recipients is obviously lacking in the construction of user privacy protection and access control mechanisms, especially in the insufficient recipient identity privacy and fuzzy matching mechanisms, which leads to the easy user identity attribute value in the bilateral matching process. Give way.
The primary public key and primary private key are generated through the initialization algorithm, and the attribute value is anonymously processed using technical means such as random numbers and polynomials to generate an encryption key and decryption key, and the sender's encryption key and The expected recipient's attribute set generates ciphertexts, ensuring that only recipients that meet the specified access control policies of both parties can decrypt the message.
It realizes the anonymity of the receiver, ensures that the specific identity information of the receiver will not be disclosed during the encryption and decryption process, ensures that only the recipients who meet the designated access control policies of both parties can decrypt messages, and enhances the mechanism of user privacy protection and access control. .
Smart Images

Figure CN119324815A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of information security, and in particular to a bilateral access control method for anonymous receivers. Background Art
[0002] Current bilateral access control not only considers fine-grained access control but also supports message confidentiality and authenticity, that is, the ciphertext can only be correctly decrypted when the attributes of the sender and the receiver satisfy the access control policy specified by the other party and the sender cannot forge the ciphertext to be generated by other users.
[0003] The existing bilateral access control methods with anonymous receivers are still lacking in the construction of user privacy protection and access control mechanisms, especially in the consideration of receiver identity privacy and fuzzy matching mechanisms. At the same time, in the process of bilateral matching, the attribute values of user identity are usually leaked.
[0004] In view of the problem that the existing bilateral access control method with anonymous receivers is still lacking in user privacy protection and the construction of access control mechanism, the bilateral access control method with anonymous receivers provides the system with a master public key and a master private key through an initialization algorithm, and the encryption key generation generates an encryption key for the sender and the decryption key generation generates a decryption key for the receiver. At the same time, the sender can generate a ciphertext based on the encryption key, the expected receiver identity attribute set and the plaintext message using an encryption algorithm, and the ciphertext will not disclose the receiver's attribute value information. Summary of the invention
[0005] In order to overcome the existing bilateral access control methods with anonymous recipients, the current bilateral access control is still lacking in the construction of user privacy protection and access control mechanisms, especially in the consideration of recipient identity privacy and fuzzy matching mechanisms. At the same time, in the process of bilateral matching, the attribute values of user identity are often leaked.
[0006] The technical solution of the present invention is: a bilateral access control method with anonymous receiver, including the following methods:
[0007] S11: During module initialization, it is responsible for generating the system's master public key and master private key, where the master public key serves as an implicit input for other modules;
[0008] S12: Module encryption key generation, responsible for generating an encryption key for the sender, where the input of this module is the master private key and the sender's identity attribute set;
[0009] S13: In the module decryption key generation, it is responsible for generating a decryption key for the recipient, where the input of this module is the master private key and the identity attribute set of the recipient;
[0010] S14: Module ciphertext generation is responsible for generating ciphertext, where the input of this module is the sender's encryption key, the expected receiver's identity attribute set and the plaintext message;
[0011] S15: In the module plaintext recovery, it is responsible for recovering the plaintext message, where the input of this module is the ciphertext to be decrypted, the target sender attribute set and the decryption key. If the number of intersections between the sender's and receiver's attribute sets and the attribute sets specified by the other party is greater than a certain threshold at the same time, the message can be recovered.
[0012] Preferably, when initializing the system, the following steps are included:
[0013] S21: After inputting a security parameter λ, this module outputs a bilinear mapping The generator of group G1 is g;
[0014] S22: This module selects a random number And random elements g2, g3∈G1 and calculate and
[0015] S23: This module selects two random n-degree polynomials J(x) and L(x) and defines as well as
[0016] S24: This module selects a collision-resistant hash function H1: {0,1} * →G1 and set a threshold a for the similarity measure between two identity vectors;
[0017] S25: Setting a threshold for the identity vector similarity measure to support subsequent fuzzy matching.
[0018] Preferably, when encrypting and generating the key, the following method is included:
[0019] S31: After entering the user identity S A =((A1,a1),(A2,a2),…,(A n , a n )) and the master private key msk, the module selects a d_1-order random polynomial q(x) with a value of β at 0, that is, q(0) = β;
[0020] S32: For each attribute value a i , selects a random number and performs calculations to generate the key part related to the attribute value. This module selects a random number And calculate
[0021] S33: This module generates the sender's encryption key, ek=(A, {E i , e i} i∈[1,..,n] ), where A=(A1,A2,…,A n );
[0022] S34: Verify the validity of the encryption key to ensure that it can be used correctly in the encryption process.
[0023] Preferably, when generating the decryption key, the following method is included:
[0024] S41: Enter the recipient identity S B =((B1,b1),(B2,b2),…,(B n , b n )) and the master private key msk, the module selects a random polynomial f(x) of degree d_1 with a value of α at 0, that is, f(0) = α;
[0025] S42: For each attribute value b i , the algorithm selects a random number And calculate
[0026] S43: This module generates the receiver's decryption key, i.e., dk=(B, {D i1 , D i2 , d i} i∈[1,..,n] ), where B=(B1,B2,…,B n ).
[0027] Preferably, when performing the encryption algorithm, the following method is included:
[0028] S51: After inputting the sender identity S A =((A1,a1),(A2,a2),…,(A n , a n ))The encryption key ek associated with the intended recipient identity P B =((B1′, b1′), (B2′, b2′),..., (B n ′,b n ′)) and the plaintext message M∈G2, the module selects a random number Where s = s1 + s2;
[0029] S52: Based on the selected random number and related parameters, a series of calculations are performed to generate a portion of the ciphertext;
[0030] S53: This module randomly selects random and a random polynomial 1(x) of degree d_1 with value τ at 0, i.e. 1(0) = τ;
[0031] S54: Select a random polynomial and calculate the rest of the ciphertext;
[0032] S55: Perform additional processing on the ciphertext, such as adding redundant information or obfuscation, to improve its security.
[0033] Preferably, when performing the decryption algorithm, the following steps are included:
[0034] S61: Input the ciphertext, the target sender identity and the decryption key associated with the receiver identity, and first perform a two-way match of the attribute name;
[0035] S62: If there is no match, the algorithm terminates; otherwise, the intersection index of the two sizes is selected;
[0036] S63: Based on the selected intersection index, determine the degree of fit between the encryptor and the target sender. If the difference is greater than a certain threshold, the algorithm terminates.
[0037] S64: After confirming the match and consistency, use the decryption key to perform a decryption operation to restore the plaintext message.
[0038] Preferably, when performing module initialization, the following steps are included:
[0039] S71: Prepare the hardware and software environment required by the system;
[0040] S72: Configure system parameters, including security parameters and bilinear mapping;
[0041] S73: Generate and store a master public key and a master private key;
[0042] S74: Test the system to ensure it operates correctly and meets safety requirements.
[0043] Preferably, when generating the ciphertext, the following steps are included:
[0044] S81: Receive the sender's encryption key, the intended recipient's identity, and the plaintext message;
[0045] S82: Generate ciphertext based on the specific steps of the encryption algorithm;
[0046] S83: formatting and encoding the ciphertext for transmission or storage in the network;
[0047] S84: After the ciphertext is generated, it is signed or authenticated to ensure its integrity and authenticity.
[0048] Preferably, when recovering the plaintext, the following steps are included:
[0049] S91: receiving the ciphertext, the target sender's identity and the decryption key;
[0050] S92: Perform decryption operation based on specific steps of the decryption algorithm;
[0051] S93: Decode and format the decrypted data to restore the plaintext message;
[0052] S94: After the plaintext is restored, it is verified and checked to ensure its correctness and integrity.
[0053] Preferably, the following methods are included when performing attribute matching and verification:
[0054] S1001: During the encryption and decryption process, a two-way match is performed based on the attribute name;
[0055] S1002: If there is no match, terminate the relevant operations.
[0056] Preferably, the anonymity of the receiver is achieved on the basis of traditional bilateral access control, and the specific identity information of the receiver is not disclosed during the encryption and decryption process by keeping the attribute values confidential. In the encryption key generation and decryption key generation processes, the attribute values are anonymized using technical means such as random numbers and polynomials. At the same time, in the encryption process, the ciphertext is generated using the sender's encryption key and the attribute set of the intended receiver, ensuring that only the receiver who meets the access control policies specified by both parties can decrypt the message.
[0057] Beneficial effects of the present invention:
[0058] 1. Compared with the traditional bilateral access control method with anonymous receivers, the current bilateral access control is still lacking in user privacy protection and access control mechanism construction, especially in the consideration of receiver identity privacy and fuzzy matching mechanism. At the same time, in the process of bilateral matching, the attribute value of user identity is usually leaked. The bilateral access control method with anonymous receivers provides the system with a master public key and a master private key through an initialization algorithm. The encryption key generation generates an encryption key for the sender and the decryption key generation generates a decryption key for the receiver. At the same time, the sender can generate a ciphertext based on the encryption key, the expected receiver identity attribute set and the plaintext message using an encryption algorithm, and the ciphertext will not leak the receiver's attribute value information;
[0059] 2. Based on the traditional bilateral access control, the anonymity of the receiver is achieved. By keeping the attribute value confidential, the specific identity information of the receiver will not be disclosed during the encryption and decryption process. In the process of generating encryption and decryption keys, the attribute value is anonymized by using random numbers and polynomials. At the same time, in the encryption process, the ciphertext is generated using the sender's encryption key and the attribute set of the expected receiver, ensuring that only the receiver who meets the access control policy specified by both parties can decrypt the message; BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Figure 1 What is shown is a schematic diagram of the first working process of a bilateral access control method for anonymous receivers of the present invention;
[0061] Figure 2 What is shown is a flowchart of a decryption algorithm of a bilateral access control method with anonymous receiver of the present invention;
[0062] Figure 3 What is shown is a schematic diagram of module initialization of a bilateral access control method with anonymous receiver of the present invention. DETAILED DESCRIPTION
[0063] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.
[0064] See also Figure 1-3 The present invention provides an embodiment: a bilateral access control method with anonymous receiver, including the following method:
[0065] S11: During module initialization, it is responsible for generating the master public key and master private key of the system, where the master public key is used as implicit input for other modules;
[0066] S12: Module encryption key generation, responsible for generating an encryption key for the sender, where the input of this module is the master private key and the sender's identity attribute set;
[0067] S13: In the module decryption key generation, it is responsible for generating a decryption key for the recipient, where the input of this module is the master private key and the identity attribute set of the recipient;
[0068] S14: Module ciphertext generation is responsible for generating ciphertext, where the input of this module is the sender's encryption key, the expected recipient's identity attribute set and the plaintext message;
[0069] S15: In the module plaintext recovery, it is responsible for recovering the plaintext message, where the input of this module is the ciphertext to be decrypted, the target sender attribute set and the decryption key. If the number of intersections between the sender's and receiver's attribute sets and the attribute sets specified by the other party is greater than a certain threshold at the same time, the message can be recovered.
[0070] Preferably, when initializing the system, the following steps are included:
[0071] S21: After inputting a security parameter λ, this module outputs a bilinear mapping The generator of group G1 is g;
[0072] S22: This module selects a random number And random elements g2, g3∈G1 and calculate and
[0073] S23: This module selects two random n-degree polynomials J(x) and L(x) and defines as well as
[0074] S24: The module selects a collision-resistant hash function H1: {0, 1} * →G1 and set a threshold a for the similarity measure between two identity vectors;
[0075] S25: Setting a threshold for the identity vector similarity measure to support subsequent fuzzy matching.
[0076] Preferably, when encrypting and generating the key, the following method is included:
[0077] S31: After entering the user identity S A =((A1,a1),(A2,a2),…,(A n , a n )) and the master private key msk, the module selects a d_1-order random polynomial q(x) with a value of β at 0, that is, q(0) = β;
[0078] S32: For each attribute value a i , selects a random number and performs calculations to generate the key part related to the attribute value. This module selects a random number And calculate
[0079] S33: This module generates the sender's encryption key, ek=(A, {E i , e i} i∈[1,..,n] ), where A=(A1,A2,…,A n );
[0080] S34: Verify the validity of the encryption key to ensure that it can be used correctly in the encryption process.
[0081] Preferably, when generating the decryption key, the following method is included:
[0082] S41: Enter the recipient identity S B =((B1,b1),(B2,b2),…,(B n , b n )) and the master private key msk, the module selects a random polynomial f(x) of degree d_1 with a value of α at 0, that is, f(0) = α;
[0083] S42: For each attribute value b i , the algorithm selects a random number And calculate
[0084] S43: This module generates the receiver's decryption key, i.e., dk=(B, {D i1 , D i2 , d i} i∈[1,..,n] ), where B=(B1,B2,…,B n ).
[0085] Preferably, when performing the encryption algorithm, the following method is included:
[0086] S51: After inputting the sender identity S A =((A1,a1),(A2,a2),…,(A n , a n ))The encryption key ek associated with the intended recipient identity P B =((B1′,b1′),(B2′,b2′),…,(B n ′,b n ′)) and the plaintext message M∈G2, the module selects a random number Where s = s1 + s2;
[0087] S52: Based on the selected random number and related parameters, a series of calculations are performed to generate a portion of the ciphertext;
[0088] S53: This module randomly selects random and a random polynomial 1(x) of degree d_1 with value τ at 0, i.e. 1(0) = τ;
[0089] S54: Select a random polynomial and calculate the rest of the ciphertext;
[0090] S55: Perform additional processing on the ciphertext, such as adding redundant information or obfuscation, to improve its security.
[0091] Preferably, when performing the decryption algorithm, the following steps are included:
[0092] S61: Input the ciphertext, the target sender identity and the decryption key associated with the receiver identity, and first perform a two-way match of the attribute name;
[0093] S62: If there is no match, the algorithm terminates; otherwise, the intersection index of the two sizes is selected;
[0094] S63: Based on the selected intersection index, determine the degree of fit between the encryptor and the target sender, and if the difference is greater than a certain threshold, the algorithm terminates;
[0095] S64: After confirming the match and the degree of conformity, a decryption operation is performed using the decryption key to restore the plaintext message.
[0096] Preferably, when performing module initialization, the following steps are included:
[0097] S71: Prepare the hardware and software environment required by the system;
[0098] S72: Configure system parameters, including security parameters and bilinear mapping;
[0099] S73: Generate and store a master public key and a master private key;
[0100] S74: Test the system to ensure it operates correctly and meets safety requirements.
[0101] Preferably, when generating the ciphertext, the following steps are included:
[0102] S81: Receive the sender's encryption key, the intended recipient's identity, and the plaintext message;
[0103] S82: Generate ciphertext based on the specific steps of the encryption algorithm;
[0104] S83: formatting and encoding the ciphertext for transmission or storage in the network;
[0105] S84: After the ciphertext is generated, it is signed or authenticated to ensure its integrity and authenticity.
[0106] Preferably, when recovering the plaintext, the following steps are included:
[0107] S91: receiving the ciphertext, the target sender's identity and the decryption key;
[0108] S92: Perform decryption operation based on specific steps of the decryption algorithm;
[0109] S93: Decode and format the decrypted data to restore the plaintext message;
[0110] S94: After the plaintext is restored, it is verified and checked to ensure its correctness and integrity.
[0111] Preferably, the following methods are included when performing attribute matching and verification:
[0112] S1001: During the encryption and decryption process, a two-way match is performed based on the attribute name;
[0113] S1002: If there is no match, terminate the relevant operations.
[0114] Preferably, the anonymity of the receiver is achieved on the basis of traditional bilateral access control, and the specific identity information of the receiver is not disclosed during the encryption and decryption process by keeping the attribute values confidential. In the encryption key generation and decryption key generation processes, the attribute values are anonymized using technical means such as random numbers and polynomials. At the same time, in the encryption process, the ciphertext is generated using the sender's encryption key and the attribute set of the intended receiver, ensuring that only the receiver who meets the access control policies specified by both parties can decrypt the message.
[0115] The embodiments of the present invention are described in detail above with reference to the accompanying drawings, but the present invention is not limited to the above embodiments, and various changes can be made within the knowledge scope of those skilled in the art without departing from the spirit of the present invention.
Claims
1. A bilateral access control method with anonymous receiver; characterized in that: The following methods are included: S11: During module initialization, it is responsible for generating the master public key and master private key of the system, where the master public key is used as implicit input for other modules; S12: Module encryption key generation, responsible for generating an encryption key for the sender, where the input of this module is the master private key and the sender's identity attribute set; S13: In the module decryption key generation, it is responsible for generating a decryption key for the recipient, where the input of this module is the master private key and the identity attribute set of the recipient; S14: Module ciphertext generation is responsible for generating ciphertext, where the input of this module is the sender's encryption key, the expected recipient's identity attribute set and the plaintext message; S15: In the module plaintext recovery, it is responsible for recovering the plaintext message, where the input of this module is the ciphertext to be decrypted, the target sender attribute set and the decryption key. If the number of intersections of the sender's and receiver's attribute sets with the attribute sets specified by the other party is greater than a certain threshold at the same time, the message can be recovered.
2. A bilateral access control method with anonymous receiver according to claim 1, characterized in that: When initializing the system, the following steps are included: S21: After inputting a security parameter λ, the module outputs a bilinear mapping G1×G1→G2, where the generator of group G1 is g; S22: This module selects a random number And random elements g2, g3∈G1 and calculate g1=g a , and S23: This module selects two random n-degree polynomials J(x) and L(x) and defines as well as S24: The module selects a collision-resistant hash function H1: {0, 1} * →G1 and set a threshold a for the similarity measure between two identity vectors; S25: Setting a threshold for the identity vector similarity measure to support subsequent fuzzy matching.
3. A bilateral access control method with anonymous receiver according to claim 2, characterized in that: When encrypting and generating the key, the following methods are included: S31: Enter user identity S A =((A1,a1),(A2,a2),…,(A n , a n )) and the master private key msk, the module selects a d_1-order random polynomial q(x) with a value of β at 0, that is, q(0) = β; S32: For each attribute value a i , selects a random number and performs calculations to generate the key part related to the attribute value. This module selects a random number And calculate S33: This module generates the sender's encryption key, i.e., ek=(A, {E i , e i }i∈[1,...,n]), where A=(A1,A2,...,A n ); S34: Verify the validity of the encryption key to ensure that it can be used correctly in the encryption process.
4. A bilateral access control method with anonymous receiver according to claim 3, characterized in that: When generating the decryption key, the following methods are included: S41: Enter the recipient identity S B =((B1,b1),(B2,b2),…,(B n , b n )) and the master private key msk, the module selects a random polynomial f(x) of degree d_1 with a value of α at 0, that is, f(0) = α; S42: For each attribute value b i , the algorithm selects a random number And calculate S43: This module generates the receiver's decryption key, i.e., dk=(B, {D i1 , D i2 , d i } i ∈[1, .., n]), where B = (B1, B2, ..., B n ).
5. A bilateral access control method with anonymous receiver according to claim 4, characterized in that: When performing encryption algorithms, the following methods are included: S51: After inputting the sender identity S A =((A1,a1),(A2,a2),…,(A n , a n ))The encryption key ek associated with the intended recipient identity P B =((B1′, b1′), (B2′, b2′),…, (B n ′,b n ′)) and the plaintext message M∈G2, the module selects a random number Where s = s1 + s2; S52: Based on the selected random number and related parameters, a series of calculations are performed to generate a portion of the ciphertext; S53: This module randomly selects random and a random polynomial 1(x) of degree d-1 with value τ at 0, i.e. 1(0) = τ; S54: Select a random polynomial and calculate the rest of the ciphertext; S55: Perform additional processing on the ciphertext, such as adding redundant information or obfuscation, to improve its security.
6. A bilateral access control method with anonymous receiver according to claim 5, characterized in that: When performing the decryption algorithm, the following steps are included: S61: Input the ciphertext, the target sender identity and the decryption key associated with the receiver identity, and first perform a two-way match of the attribute name; S62: If there is no match, the algorithm terminates; otherwise, the intersection index of the two sizes is selected; S63: Based on the selected intersection index, determine the degree of fit between the encryptor and the target sender. If the difference is greater than a certain threshold, the algorithm terminates. S64: After confirming the match and consistency, use the decryption key to perform a decryption operation to restore the plaintext message.
7. A bilateral access control method with anonymous receiver according to claim 6, characterized in that: When initializing the module, the following steps are included: S71: Prepare the hardware and software environment required by the system; S72: Configure system parameters, including security parameters and bilinear mapping; S73: Generate and store a master public key and a master private key; S74: Test the system to ensure it operates correctly and meets safety requirements.
8. A bilateral access control method with anonymous receiver according to claim 7, characterized in that: When generating the ciphertext, the following steps are included: S81: Receive the sender's encryption key, the intended recipient's identity, and the plaintext message; S82: Generate ciphertext based on the specific steps of the encryption algorithm; S83: formatting and encoding the ciphertext for transmission or storage in the network; S84: After the ciphertext is generated, it is signed or authenticated to ensure its integrity and authenticity.
9. A bilateral access control method with anonymous receiver according to claim 8, characterized in that: When recovering the plaintext, the following steps are included: S91: receiving the ciphertext, the identity of the target sender and the decryption key; S92: Perform decryption operation based on specific steps of the decryption algorithm; S93: Decode and format the decrypted data to restore the plaintext message; S94: After the plaintext is restored, it is verified and checked to ensure its correctness and integrity.
10. The receiver-anonymous bilateral access control method according to claim 9, characterized in that: When performing attribute matching and verification, the following methods are included: S1001: During the encryption and decryption process, a two-way match is performed based on the attribute name; S1002: If there is no match, terminate the relevant operations.