Information security level protection optimization method and system

By generating public and master keys in cloud computing, and generating private keys and access control policies based on the access attributes of authorized users, the problems of data security and privacy protection in cloud computing are solved, and fine-grained access control and system flexibility and scalability are achieved.

CN119026149BActive Publication Date: 2025-02-28SUZHOU SOFTWARE EVALUATING CENT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411017897.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-29
Publication Date
2025-02-28
Estimated Expiration
2044-07-29

AI Technical Summary

Technical Problem

The security and privacy protection of data in cloud computing are difficult to meet the needs of flexible sharing and management, and traditional encryption algorithms cannot effectively achieve fine-grained access control and scalability.

Method used

By generating the public key PK and the master key MSK, obtaining the authorized user set and generating the private key and access control policy based on its access attributes, separating the deployment of data and access control policies, using the verification server for verification and data server for encrypted transmission, combining the attribute encryption scheme of user trapdoor and bilinear mapping.

Benefits of technology

It realizes fine-grained access control, improves the flexibility and scalability of the system, enhances the security and privacy protection capabilities of data, and reduces the chances of data being attacked.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The present application provides an information security level protection optimization method and system. The data provider performs system initialization, generates a public key and a master key, and generates a private key and an access control policy based on the public key, the master key and the access attributes corresponding to each authorized user, sends the private key to the corresponding authorized user, sends the data set and the encryption parameter to the data server, and sends the access control policy to the verification server; the user terminal generates a user access credential based on the private key and the public key, and sends an access request carrying the user access credential to the verification server; the verification server performs verification, and denies access if the verification fails, and sends the access request to the data server if the verification passes; the data server establishes a one-way channel with the user terminal, encrypts the data using the encryption parameters and transmits it to the user terminal in one direction; the user terminal decrypts the received encrypted data. Thus, fine-grained access control is achieved, scalability is improved, and data security is guaranteed at the same time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information security technology, and more specifically, to an information security level protection optimization method and system. Background Art

[0002] Cloud computing technology has been widely used in various industries, but at the same time, cloud data leakage incidents have occurred frequently, highlighting its security issues. Since users cannot directly control cloud data and cannot fully trust cloud service providers, data security and privacy have become the main concerns of users when using cloud services. Traditional encryption algorithms can protect the confidentiality of data, but cannot meet the needs of flexible data sharing and management.

[0003] Cryptography was originally used to protect the confidentiality, integrity, authenticity, controllability and non-repudiation of data. However, with the rise of big data, cloud computing and the Internet of Things, cryptography has also been widely used in areas such as ciphertext retrieval and processing, access control, anonymous services and computing security. As an emerging public key encryption algorithm, attribute encryption plays an important role in modern cryptography and provides an effective solution for data security.

[0004] The commonly used access structures in existing attribute encryption schemes mainly include three types: tree access structure, AND gate access structure and linear secret sharing structure. Among them, the AND gate structure is relatively simple to implement, but the expression form is relatively limited; the tree access structure is easy to understand and supports more flexible expressions, but the disadvantage is that the implementation process is relatively complicated; the linear secret sharing structure can be converted from the other two types, and secret sharing is realized by matrix operations, and the calculation process is relatively easy to understand. Different access structure forms can be selected in attribute encryption schemes according to actual needs.

[0005] Therefore, better application of cryptography in cloud computing services to improve data security while ensuring flexibility (such as fine-grained access control) and scalability (flexible access policy deployment solutions) is a direction that can be explored and solutions sought at present. Summary of the invention

[0006] The purpose of the embodiments of the present application is to provide an information security level protection optimization method and system to achieve fine-grained access control, improve scalability, and ensure data security.

[0007] In order to achieve the above purpose, the embodiments of the present application are implemented in the following manner:

[0008] In the first aspect, an embodiment of the present application provides an information security level protection optimization method, including: a data provider: initializing the system, generating a public key PK and a master key MSK, and obtaining an authorized user set, each authorized user in the authorized user set has an access attribute, and based on the public key PK, the master key MSK and the access attribute corresponding to each authorized user, a private key and an access control policy are generated, the private key is sent to the user terminal of the corresponding authorized user, the data set and an encryption parameter are sent to the data server, and the access control policy is sent to the verification server; the user terminal of the authorized user: based on the private key and the public key PK, a user access credential is generated, and an access request carrying the user access credential is sent to the verification server; the verification server: based on the access control policy and the user access credential, the access request of the user terminal is verified, and if the verification fails, the access of the user terminal is denied, and if the verification passes, the access request is sent to the data server; the data server: based on the access request, a one-way channel is established with the user terminal, and the data requested in the access request is encrypted using the encryption parameter and then transmitted to the user terminal in one direction; the user terminal of the authorized user: based on the private key and the public key PK, the received encrypted data is decrypted.

[0009] In combination with the first aspect, in a first possible implementation of the first aspect, system initialization is performed to generate a public key PK and a master key MSK, including: defining a full attribute set U = {A1, A2, ..., A i ,…,A n}, where each attribute A i Corresponding to a set of attribute values, namely A i ={a i,1 ,a i,2 ,…,a i,j ,…,a i,m}; Call the Setup algorithm to generate the public key PK and the master key MSK based on the complete set of attributes U:

[0010] PK= <e(g,g) α ,g,g β ,{h i,j} i∈[n],j∈[m] >,

[0011] MSK= <g α >,

[0012] Among them, PK is the public key, and e is a bilinear mapping pair: G×G→G T , G and G T are all multiplicative cyclic groups of order p, and G T is the dual group of G, g is a generator in G, α and β are random numbers in the p-order multiplicative group Z, that is, the multiplicative group consisting of integers less than p and coprime to p, h i,j is the attribute value ai,j The corresponding public key component, and a i,j ∈G.

[0013] In combination with the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, an authorized user set is obtained, each authorized user in the authorized user set has an access attribute, and a private key and an access control policy are generated based on a public key PK, a master key MSK, and the access attribute corresponding to each authorized user, including: obtaining an authorized user set, wherein the authorized user set includes a plurality of authorized users, each authorized user having a corresponding access right; for each authorized user: assigning an access attribute set S to the authorized user k based on the access right of the authorized user k k ={s1,s2,…,s i ,…,s n},s i ∈A i , the access attribute sets of all authorized users form a set S; based on the access attribute set S of authorized user k k , public key PK, master key MSK, generate the private key C of the authorized user k k ; Based on the access attribute set S of the authorized user k k , generate the access condition D corresponding to the authorized user k k , the access conditions corresponding to all authorized users constitute the access control policy D.

[0014] In combination with the second possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, based on the access attribute set S of the authorized user k k , public key PK, master key MSK, generate the private key C of the authorized user k k , including: randomly determine a parameter l from the multiplicative group Z k ∈Z; the parameter B is calculated using the following formula k , B′ k ,

[0015]

[0016] Based on the parameter S k , B k , B k '、 Generate the private key of authorized user k SHA is the Secure Hash Algorithm.

[0017] In combination with the second possible implementation manner of the first aspect, in a fourth possible implementation manner of the first aspect, based on the access attribute set S of the authorized user k k , generate the access condition D corresponding to the authorized user kk , including: based on access attribute set S k , generate user trapdoor t for authorized user k k =H(S k ,PK), where H is the hash algorithm; the user trap door t k Mapping to the multiplicative cyclic group G T In; for access attribute set S k and mapped to G T User trapdoor t in k Perform bilinear mapping to generate access condition D k =e(t k ,S k ), e is a bilinear mapping pair.

[0018] In combination with the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner of the first aspect, generating a user access credential based on the private key and the public key PK includes: for an authorized user k: extracting the private key C k The access attribute set S in k and the data attribute set V in the access request k ; Based on data attribute set V k , generate request parameter v k =H(V k ,PK), where H is the hash algorithm; the request parameter v k Mapping to the multiplicative cyclic group G T In the access attribute set S k and mapped to G T The request parameter v in k Perform bilinear mapping to generate request condition W k =e(v k ,S k ) as user access credentials.

[0019] In combination with the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, verifying the access request of the user terminal based on the access control policy and the user access credential includes: extracting the parameter W in the user access credential; k , and make a judgment: If The verification succeeds; otherwise, the verification fails.

[0020] In combination with the sixth possible implementation manner of the first aspect, in a seventh possible implementation manner of the first aspect, the encryption parameter is κ=H(SHA(α)·β), and based on the access request, a unidirectional channel with the user terminal is established, and the data requested in the access request is encrypted using the encryption parameter and then unidirectionally transmitted to the user terminal, including: establishing a unidirectional channel between the user terminal of the authorized user k based on the access request; determining the data corresponding to the access request from the data set; encrypting the data corresponding to the access request: based on the user trapdoor t of the authorized user k k , public key PK and encryption parameter κ, calculate parameter λ = f(t k ,PK,κ), further calculate the parameters As an encryption condition, encrypted data is generated, where f is an agreed one-way function; the encrypted data is transmitted to the user terminal through a one-way channel.

[0021] In combination with the seventh possible implementation manner of the first aspect, in an eighth possible implementation manner of the first aspect, based on the private key and the public key PK, the received encrypted data is decrypted, including: decrypting the received encrypted data from the private key C k Extract the parameter S k , based on the parameter S k and public key PK to generate user trapdoor t′ k =H(S k ,PK); extract parameter S from the private key k , B k , B k '、 Calculate the parameter SHA(α)·β, and further perform hash calculation to obtain the parameter κ′=H(SHA(α)·β); based on the user trap door t′ k , public key PK and parameter κ′, calculate parameter ω=f(t′ k ,PK,κ′), where f is the agreed one-way function; based on the parameter ω, the parameter is calculated If E′ k =E k , the decryption can be completed and the decrypted data can be obtained.

[0022] In the second aspect, an embodiment of the present application provides an information security level protection optimization system, including a data provider, a verification server, a data server and a user terminal, and one-way or two-way communication between the data provider, the verification server, the data server and the user terminal, for implementing the information security level protection optimization method described in any one of the second aspect or the possible implementation methods of the second aspect.

[0023] Beneficial effects:

[0024] 1. This solution generates the master key MSK, public key PK and private key C through system initialization by the data provider k (private key set C, C k The private key of the authorized user k is used to further construct the access control policy, and the data set is deployed on the data server, and the access control policy is deployed on the verification server. By separating the responsibilities, the access control policy and data deployment are separated, and the responsibilities of each component in the system can be clearly divided, making the system more modular and maintainable, with better flexibility (data and access control policies are deployed separately, and access control policies can be flexibly adjusted and updated) and scalability. At the same time, the verification server is used for verification, and the data server is used to encrypt the relevant data and transmit it to the authorized user in one direction, which can reduce the chance of data being attacked and improve security. The design of the access control policy adopts the idea of ​​user trapdoors and applies it to the attribute encryption scheme of bilinear mapping in this scheme. While ensuring security, fine-grained access control can be achieved.

[0025] 2. When generating private keys, the KenGen algorithm is used to generate them, which can be combined with user access attributes to provide support for differentiated access rights for users. In terms of access control strategies, the idea of ​​user trapdoors can be adopted, based on the access attribute set S k , generate user trapdoor t for authorized user k k =H(S k ,PK), H is the hash algorithm (effectively improves the difficulty of reverse cracking and improves security); at the same time, considering the idea of ​​combining bilinear mapping, the user trap door t k Mapping to the multiplicative cyclic group G T In; for access attribute set S k and mapped to G T User trapdoor t in k Perform bilinear mapping to generate access condition D k =e(t k ,S k ), to achieve fine-grained access control. During verification, the user access credentials of the user terminal (i.e., the request condition W k , by extracting the private key C k The access attribute set S in k and the data attribute set V in the access request k , generate request parameter v k =H(V k ,PK), where H is the hash algorithm; the request parameter v k Mapping to the multiplicative cyclic group G T In the access attribute set S k and mapped to G T The request parameter v in kPerform bilinear mapping to generate request condition W k =e(v k ,S k ), as the user access credential), can be compared with the user's request condition W k Access conditions D of access control policy k The inclusion relationship can quickly determine whether the user access is legal and whether it passes the verification. This bilinear mapping attribute encryption scheme combined with user trapdoors can effectively ensure security and achieve fine-grained access control. At the same time, it can effectively prevent user trapdoors from being maliciously cracked or used, thereby improving the security of the access control strategy; at the same time, the bilinear mapping can be applied to various access control scenarios and application scenarios, has strong versatility and applicability, and can effectively protect the user's privacy information without leaking the user's sensitive information, thereby improving the privacy protection capability of the access control system.

[0026] 3. The data server establishes a one-way channel to send encrypted data to the user terminal, based on the user trap door t of the authorized user k k , public key PK and encryption parameter κ, calculate parameter λ = f(t k ,PK,κ), further calculate the parameters As encryption conditions, generate encrypted data, where f is the agreed one-way function; transmit the encrypted data to the user terminal through a one-way channel. This scheme uses a one-way function (theoretically irreversible, and a good one-way function has correspondence and difference in calculated values, that is, the same parameters calculate the same value, and different parameters calculate different values), avoiding the hidden danger of encryption system cracking caused by leakage during the transmission process, effectively preventing data leakage and improving data security.

[0027] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0029] Figure 1 A schematic diagram of an information security level protection optimization system provided in an embodiment of the present application.

[0030] Figure 2 A flowchart of the information security level protection optimization method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0031] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0032] See also Figure 1 , Figure 1 Schematic diagram of the information security level protection optimization system provided for the embodiment of the present application. In this embodiment, the information security level protection optimization system includes a data provider (essentially the equipment used by the data provider, such as a terminal), a verification server, a data server and a user terminal (a terminal used by the user), and one-way or two-way communication between the data provider, the verification server, the data server and the user terminal (that is, after the data provider completes the system initialization, the public key can be made public, the master key can be retained, the access control policy can be deployed on the verification server, the data set can be deployed on the data server, and the encryption parameters can be sent to the data server; and the user terminal can use the private key to generate an access credential, send it to the verification server for verification, and after the verification server passes the verification, the access request can be sent to the data server. After the data server determines the corresponding data, it uses the encryption parameters to encrypt it, and establishes a one-way channel to transmit it to the user terminal, and the user terminal uses the private key, public key, etc. to decrypt it), to realize the information security level protection optimization method. The information security level protection optimization method will be introduced in detail below.

[0033] See also Figure 2 , Figure 2 Flow chart of the information security level protection optimization method provided in the embodiment of the present application. In this embodiment, the information security level protection optimization method may include step S10, step S20, step S30, step S40, and step S50.

[0034] First, the data provider (through the device it uses) executes step S10.

[0035] Step S10: Initialize the system, generate a public key PK and a master key MSK, and obtain a set of authorized users. Each authorized user in the set of authorized users has corresponding access attributes. Based on the public key PK, the master key MSK and the access attributes corresponding to each authorized user, generate a private key and an access control policy, send the private key to the user terminal of the corresponding authorized user, send the data set and an encryption parameter to the data server, and send the access control policy to the verification server.

[0036] In this embodiment, the data provider can perform system initialization:

[0037] Define the complete set of attributes U = {A1, A2, ..., A i ,…,A n}, where each attribute Ai Corresponding to a set of attribute values, namely A i ={a i,1 ,a i,2 ,…,a i,j ,…,a i,m}.

[0038] Then call the Setup algorithm to generate the public key PK and the master key MSK based on the full set of attributes U:

[0039] PK= <e(g,g) α ,g,g β ,{h i,j} i∈[n],j∈[m] >, (1)

[0040] MSK= <g α >, (2)

[0041] Among them, PK is the public key, and e is a bilinear mapping pair: G×G→G T , G and G T are all multiplicative cyclic groups of order p, and G T is the dual group of G, g is a generator in G, α and β are random numbers in the p-order multiplicative group Z, that is, the multiplicative group consisting of integers less than p and coprime to p, h i,j is the attribute value a i,j The corresponding public key component, and a i,j ∈G, MSK is the master key.

[0042] After that, the private key, access control policy and encryption parameters can be generated, including:

[0043] First, the authorized user set can be obtained. Each authorized user in the authorized user set has an access attribute (i.e., the access rights that characterize the authorized user). Then, based on the public key PK, the master key MSK and the access attributes corresponding to each authorized user, a private key, access control policy and encryption parameters are generated.

[0044] Exemplarily, the data provider may obtain an authorized user set, where the authorized user set includes several authorized users, and each authorized user has corresponding access rights.

[0045] For each authorized user: assign an access attribute set S to authorized user k based on the access rights of authorized user k k ={s1,s2,…,s i ,…,s n},s i ∈A i ,The access attribute sets of all authorized users form a set S, k ≥ 1.

[0046] Then, based on the access attribute set S of the authorized user k k , public key PK, master key MSK, the data provider can generate the private key C of the authorized user k k .

[0047] Specifically, the KenGen algorithm can be used to implement it (some optimization is required and it cannot be completely copied, especially the generated parameters, in which SHA is added to improve the protection level of parameter α):

[0048] Randomly determine a parameter l from the multiplicative group Z k ∈Z; the parameter B is calculated using the following formula k , B′ k ,

[0049]

[0050] Then, the data provider can k , B k , B k '、 Generate the private key of authorized user k Among them, SHA is the secure hash algorithm.

[0051] Based on this, the data provider can generate the private key of each authorized user.

[0052] Afterwards, the data provider can generate an encryption parameter based on the master key MSK:

[0053] κ=H(SHA(α)·β) , (6)

[0054] And, the data provider can authorize the access attribute set S of user k based on k , generate the access condition D corresponding to the authorized user k k , the access conditions corresponding to all authorized users constitute the access control policy D.

[0055] For example, for authorized user k: the data provider can access attribute set S k , generate user trapdoor t for authorized user k k :

[0056] t k =H(S k ,PK), (7)

[0057] Where H is the hash algorithm.

[0058] Then, the user trap t k Mapping to the multiplicative cyclic group G T Then, access the attribute set Sk and mapped to G T User trapdoor t in k Perform bilinear mapping to generate access condition D k :

[0059] D k =e(t k ,S k ), (8)

[0060] Among them, e is a bilinear mapping pair.

[0061] Thus, the data provider can complete the initialization, send the private key to the user terminal of the corresponding authorized user, send the data set and an encryption parameter to the data server, and send the access control policy to the verification server.

[0062] Then, when the authorized user needs to access the data, step S20 may be executed through the user terminal.

[0063] Step S20: Generate a user access credential based on the private key and the public key PK, and send an access request carrying the user access credential to the verification server.

[0064] In this embodiment, for authorized user k:

[0065] The user terminal can generate an access request (specifying the data to be accessed) according to the needs of the authorized user k, then the user terminal can extract the private key C k The access attribute set S in k and the data attribute set V in the access request k .

[0066] Based on the data attribute set V k , the user terminal can generate the request parameter v k =H(V k ,PK), where H is the hash algorithm, and then the request parameter v k Mapping to the multiplicative cyclic group G T In the access attribute set S k and mapped to G T The request parameter v in k Perform bilinear mapping to generate request condition W k , as user access credentials, W k satisfy:

[0067] W k =e(v k ,S k ), (9)

[0068] Where e is a bilinear mapping pair.

[0069] After the user access credential is generated, the user terminal may send an access request carrying the user access credential to the verification server.

[0070] Based on this, the verification server may execute step S30.

[0071] Step S30: verifying the access request of the user terminal based on the access control policy and the user access credentials. If the verification fails, the access of the user terminal is denied. If the verification passes, the access request is sent to the data server.

[0072] In this embodiment, since the access control policy D is deployed in the verification server, after receiving the access request carrying the user access credential sent by the user terminal of the authorized user k, verification can be performed:

[0073] The authentication server can extract the parameter W from the user's access credentials k , and extract the access condition D in the access control policy D k , and make a judgment: If The verification is successful; otherwise, the verification fails. The verification here not only verifies whether the user is an authorized user, but also verifies whether the data requested in the user's access request exceeds his or her access rights.

[0074] After the verification is passed, the verification server may forward the access request to the data server, and at this time, the data server may execute step S40.

[0075] Step S40: Based on the access request, a one-way channel is established with the user terminal, and the data requested in the access request is encrypted using encryption parameters and then unidirectionally transmitted to the user terminal.

[0076] In this embodiment, the data server may establish a one-way channel with the user terminal of the authorized user k based on the access request.

[0077] When establishing a one-way channel, a session ID can be randomly generated to establish a one-way channel, and its randomness and unpredictability can be used to prevent hijacking. Of course, other solutions can also be used to generate session IDs. For example, when the user terminal generates an access request, a decision value D is calculated at the same time. v , added to the access request,

[0078] D v =(∑S k ) k , (10)

[0079] Among them, ∑S k Indicates that S k The sum of all values ​​in , k is the authorized user number.

[0080] Then, when establishing a one-way channel, the data server can use this D v , plus a random number random, as the session ID. Of course, this only takes into account the user number to avoid channel collisions between authorized users. In terms of randomness and unpredictability, it still relies on the random number random.

[0081] At the same time, the data server may determine the data corresponding to the access request from the data set, and then encrypt the data corresponding to the access request using the encryption parameters.

[0082] For example, the data server may be based on the user trapdoor t of the authorized user k. k , public key PK and encryption parameter κ, calculate parameter λ:

[0083] λ=f(t k ,PK,κ), (11)

[0084] Wherein, f is a predetermined one-way function (one-way functions include SHA-3, SHA-256, bcrypt, scrypt, Argon2, etc.).

[0085] Further calculation of parameter E k As encryption condition:

[0086]

[0087] The data is encrypted using this encryption condition and then transmitted to the user terminal through a one-way channel.

[0088] After receiving the encrypted data, the user terminal may execute step S50 to complete data decryption.

[0089] Step S50: Decrypt the received encrypted data based on the private key and the public key PK.

[0090] In this embodiment, after receiving the encrypted data sent by the data server, the user terminal of the authorized user k can decrypt it in the following manner:

[0091] First, from the private key C k Extract the parameter S k , based on the parameter S k and public key PK to generate user trapdoor t′ k =H(S k ,PK).

[0092] Then, from private key C k Extract the parameter S k , B k , B k '、 The parameter SHA(α)·β is calculated, and further hash calculation is performed to obtain the parameter κ′=H(SHA(α)·β).

[0093] Then, using the user trap t′ k , public key PK and parameter κ′, calculate parameter ω:

[0094] ω=f(t′ k ,PK,κ′), (13)

[0095] Among them, f is a predetermined one-way function.

[0096] Based on the parameter ω, calculate the parameter E′ k :

[0097]

[0098] Finally, decryption is performed: if E′ k =E k , the decryption can be completed and the decrypted data can be obtained.

[0099] In summary, the present invention provides an information security level protection optimization method and system, which generates a master key MSK, a public key PK and a private key C through system initialization by a data provider. k (private key set C, C k The private key of the authorized user k is used to further construct the access control policy, and the data set is deployed on the data server, and the access control policy is deployed on the verification server. By separating the responsibilities, the access control policy and data deployment are separated, and the responsibilities of each component in the system can be clearly divided, making the system more modular and maintainable, with better flexibility (data and access control policies are deployed separately, and access control policies can be flexibly adjusted and updated) and scalability. At the same time, the verification server is used for verification, and the data server is used to encrypt the relevant data and transmit it to the authorized user in one direction, which can reduce the chance of data being attacked and improve security. The design of the access control policy adopts the idea of ​​user trapdoors and applies it to the attribute encryption scheme of bilinear mapping in this scheme. While ensuring security, fine-grained access control can be achieved.

[0100] When generating private keys, the KenGen algorithm is used to generate them, which can be combined with user access attributes to provide support for differentiated access rights for users. In terms of access control strategies, the idea of ​​user trapdoors can be adopted, based on the access attribute set S k , generate user trapdoor t for authorized user k k =H(S k,PK), H is the hash algorithm (effectively improves the difficulty of reverse cracking and improves security); at the same time, considering the idea of ​​combining bilinear mapping, the user trap door t k Mapping to the multiplicative cyclic group G T In; for access attribute set S k and mapped to G T User trapdoor t in k Perform bilinear mapping to generate access condition D k =e(t k ,S k ), to achieve fine-grained access control. During verification, the user access credentials of the user terminal (i.e., the request condition W k , by extracting the private key C k The access attribute set S in k and the data attribute set V in the access request k , generate request parameter v k =H(V k ,PK), where H is the hash algorithm; the request parameter v k Mapping to the multiplicative cyclic group G T In the access attribute set S k and mapped to G T The request parameter v in k Perform bilinear mapping to generate request condition W k =e(v k ,S k ), as the user access credential), can be compared with the user's request condition W k Access conditions D of access control policy k The inclusion relationship can quickly determine whether the user access is legal and whether it passes the verification. This bilinear mapping attribute encryption scheme combined with user trapdoors can effectively ensure security and achieve fine-grained access control. At the same time, it can effectively prevent user trapdoors from being maliciously cracked or used, thereby improving the security of the access control strategy; at the same time, the bilinear mapping can be applied to various access control scenarios and application scenarios, has strong versatility and applicability, and can effectively protect the user's privacy information without leaking the user's sensitive information, thereby improving the privacy protection capability of the access control system.

[0101] The data server establishes a one-way channel to send encrypted data to the user terminal, based on the user trap door t of the authorized user k. k , public key PK and encryption parameter κ, calculate parameter λ = f(t k ,PK,κ), further calculate the parameters As encryption conditions, generate encrypted data, where f is the agreed one-way function; transmit the encrypted data to the user terminal through a one-way channel. This scheme uses a one-way function (theoretically irreversible, and a good one-way function has correspondence and difference in calculated values, that is, the same parameters calculate the same value, and different parameters calculate different values), avoiding the hidden danger of encryption system cracking caused by leakage during the transmission process, effectively preventing data leakage and improving data security.

[0102] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any such actual relationship or order between these entities or operations.

[0103] The above description is only an embodiment of the present application and is not intended to limit the protection scope of the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. An information security level protection optimization method, characterized in that: include: Data provider: Initialize the system, generate the public key PK and the master key MSK, and obtain the authorized user set. Each authorized user in the authorized user set has access attributes. Based on the public key PK, the master key MSK and the access attributes corresponding to each authorized user, generate a private key and access control policy, send the private key to the user terminal of the corresponding authorized user, send the data set and an encryption parameter to the data server, and send the access control policy to the verification server; The user terminal of the authorized user: generates a user access credential based on the private key and the public key PK, and sends an access request carrying the user access credential to the verification server; Verification server: Verifies the access request of the user terminal based on the access control policy and user access credentials. If the verification fails, the access of the user terminal is denied. If the verification passes, the access request is sent to the data server. Data server: Based on the access request, establishes a one-way channel with the user terminal, encrypts the data requested in the access request using encryption parameters, and transmits it to the user terminal in one direction; The user terminal of the authorized user: decrypts the received encrypted data based on the private key and the public key PK; Get the authorized user set. Each authorized user in the authorized user set has access attributes. Based on the public key PK, the master key MSK and the access attributes corresponding to each authorized user, generate a private key and access control policy, including: Obtain an authorized user set, where the authorized user set includes a number of authorized users, and each authorized user has corresponding access rights; For each Authorized User: Based on the access rights of authorized user k, an access attribute set S is assigned to authorized user k. k ={s1, s2, ..., s i , ..., s n },s i ∈A i , A i is the attribute, and the access attribute sets of all authorized users constitute the set S; Based on the access attribute set S of authorized user k k , public key PK, master key MSK, generate the private key C of the authorized user k k ; Based on the access attribute set S of authorized user k k , generate the access condition D corresponding to the authorized user k k , the access conditions corresponding to all authorized users constitute the access control policy D; Based on the access attribute set S of authorized user k k , generate the access condition D corresponding to the authorized user k k ,include: Based on the access attribute set S k , generate user trapdoor t for authorized user k k =H(S k , PK), where H is the hash algorithm; User trap door k Mapping to the multiplicative cyclic group G T In, G T is a multiplicative cyclic group of order p; Access attribute set S k and mapped to G T User trapdoor t in k Perform bilinear mapping to generate access condition D k =e(t k , S k ), e is a bilinear mapping pair; The encryption parameter is k=H(SHA(α)·β). Based on the access request, a one-way channel is established with the user terminal. The data requested in the access request is encrypted using the encryption parameter and then transmitted to the user terminal in one direction, including: Establishing a one-way channel with a user terminal of the authorized user k based on the access request; Determine the data corresponding to the access request from the data set; Encrypt the data corresponding to the access request: User trapdoor t based on authorized user k k , public key PK and encryption parameter K, calculate parameter λ = f(t k , PK, K), further calculate the parameters As encryption conditions, generate encrypted data, where f is the agreed one-way function; The encrypted data is transmitted to the user terminal through a one-way channel.

2. The information security level protection optimization method according to claim 1 is characterized in that: Initialize the system and generate the public key PK and master key MSK, including: Define the complete set of attributes U = {A1, A2, ..., A i , ..., A n }, where each attribute A i Corresponding to a set of attribute values, namely A i ={a i,1 , a i,2 , ..., a i,j , ..., a i,m }; Call the Setup algorithm to generate the public key PK and the master key MSK based on the full set of attributes U: PK=<e(g,g) α ,g,g β ,{h i,j } i∈[n],j∈[m] >, CEC= <g α >, Among them, PK is the public key, and e is a bilinear mapping pair: G×G→G T , G and G T are all multiplicative cyclic groups of order p, and G T is the dual group of G, g is a generator in G, α and β are random numbers in the p-order multiplicative group Z, that is, the multiplicative group consisting of integers less than p and coprime to p, h i,j is the attribute value a i,j The corresponding public key component, and a i,j ∈G.

3. The information security level protection optimization method according to claim 2 is characterized in that: Based on the access attribute set S of authorized user k k , public key PK, master key MSK, generate the private key C of the authorized user k k ,include: Randomly determine a parameter l from the multiplicative group Z k ∈ Z; Calculate parameter B using the following formula k , B′ k , Based on the parameter S k , B k , B k '、 Generate the private key of authorized user k SHA is the Secure Hash Algorithm.

4. The information security level protection optimization method according to claim 2 is characterized in that: Generate user access credentials based on the private key and public key PK, including: For authorized user k: Extract private key C k The access attribute set S in k and the data attribute set V in the access request k ; Based on the data attribute set V k , generate request parameter v k =H(V k , PK), where H is the hash algorithm; The request parameter v k Mapping to the multiplicative cyclic group G T In the access attribute set S k and mapped to G T The request parameter v in k Perform bilinear mapping to generate request condition W k =e(v k , S k ) as user access credentials.

5. The information security level protection optimization method according to claim 4 is characterized in that: Verify the access request of the user terminal based on the access control policy and user access credentials, including: Extract parameter W from the user access credentials k , and make a judgment: like Verification passed; Otherwise, the verification fails.

6. The information security level protection optimization method according to claim 5 is characterized in that: Based on the private key and public key PK, the received encrypted data is decrypted, including: From private key C k Extract the parameter S k , based on the parameter S k and public key PK to generate user trapdoor t′ k =H(S k , PK); Extract parameter S from the private key k , B k , B k '、 Calculate the parameter SHA(α)·β, and further perform hash calculation to obtain the parameter κ′=H(SHA(α)·β); Based on user trapdoor t′ k , public key PK and parameter κ′, calculate parameter ω=f(t′ k ,PK,κ′), where f is the agreed one-way function; Based on the parameter ω, calculate the parameter If E′ k =E k , the decryption can be completed and the decrypted data can be obtained.

7. An information security level protection optimization system, characterized in that: It includes a data provider, a verification server, a data server and a user terminal, and one-way or two-way communication between the data provider, the verification server, the data server and the user terminal is used to implement the information security level protection optimization method described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Hierarchical optimization encryption lossless privacy protection method

    CN112989375A

  • Cloud data security authentication method and system, and computer readable storage medium

    WO2023134577A1