Attribute-based encryption method for decentralized key management and application in market monitoring

By combining attribute-based encryption technology, Shamir(m,n)-threshold secret sharing technology and blockchain technology, decentralized key management is realized, centralized problems in existing ABE solutions are solved, and the security and fine-grained access control capabilities of key management are enhanced.

CN119561682AActive Publication Date: 2025-03-04河南省公平竞争审查事务中心
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411647463.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-18
Publication Date
2025-03-04
Estimated Expiration
2044-11-18

AI Technical Summary

Technical Problem

The existing ABE solution has centralized problems, resulting in user information leakage and key leakage, and it is impossible to realize true decentralized key management.

Method used

The attribute-based encryption technology is used to combine Shamir(m,n)-threshold secret sharing technology and blockchain technology to realize decentralized key management through global initialization, user key generation, encryption information and decryption operations.

Benefits of technology

It solves the single point of failure and security dependence problems in traditional key management systems, realizes fine-grained access control for users, enhances the security of key management, and is suitable for data protection in scenarios such as market monitoring.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119561682A_ABST
    Figure CN119561682A_ABST
Patent Text Reader

Abstract

The invention discloses an attribute-based encryption method for decentralized key management, which comprises the following steps of: A, globally initializing Setup, executing by a trusted creation node, and generating system parameters and a private key of an attribute node; b, generating a Keygen by a user key, wherein the Keygen is executed by an attribute node in the block chain; c, encrypting information Encrypt, wherein the information Encrypt is executed by a data owner; and D, decrypting the Decrypt by the cloud server on behalf of the user, and obtaining the ciphertext. According to the invention, the problems of single-point fault and security dependence in a traditional key management system are solved. By introducing an attribute-based encryption technology, fine-grained access control of a user is realized. The key management is safer in combination with the decentralization characteristic, an effective solution can be provided for a market monitoring mechanism to solve the key management problem in an open scene, the key management method is well applied, and the progress and application of the technology are promoted in the field of information security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of cryptography, and in particular to an attribute-based searchable encryption method for decentralized key management and its application in market monitoring. Background Art

[0002] In today's digital world, information security has become one of the focuses of attention in all fields of society. In particular, with the popularization of blockchain technology, the Internet of Things and the rapid development of cloud computing, the demand for highly secure and decentralized key management systems has become increasingly urgent. Traditional key management methods often rely on centralized institutions or third-party service providers, and there are problems such as single point failures, security relying on a few central nodes, and data leakage. These problems have seriously restricted the further development of information security. In order to solve these problems, in recent years, more and more research has begun to focus on decentralized key management methods. As a new type of encryption technology, attribute-based encryption (ABE) technology has the characteristics of achieving fine-grained access control while ensuring data security, and has become an effective means to solve the problem of decentralized key management. Traditional public key encryption algorithms (such as RSA, ElGamal, etc.) can only achieve identity-based encryption, that is, only users with specific identities can decrypt. ABE technology introduces the concept of attributes, so that encrypted data can be decrypted based on the attributes owned by the user, rather than relying solely on the user's identity. This provides the possibility of achieving more flexible access control.

[0003] The patent document with publication number CN118199982A discloses a decentralized attribute-based encryption method and system that can be held accountable and resist key abuse. In the present invention, when the attribute is a new attribute, the institution sends the first re-encryption key to the cloud service provider to calculate the first attribute public key corresponding to the attribute; otherwise, the fourth and fifth random parameters are selected to calculate the user's original attribute private key; the cloud service provider calculates the user's final attribute private key based on the ninth, second, sixth and seventh random parameters. The user verifies the user's complete attribute private key to determine the integrity and availability of the user's complete attribute private key. This resists the abuse of keys by the institution, cloud service provider and user. Upon receiving a revocation request, the institution and the cloud service provider jointly implement user attribute revocation, update the attribute public key, and call the second re-encryption algorithm to re-encrypt the re-encrypted ciphertext. The unrevoked user updates the user's final attribute private key, so that malicious users can be held accountable to protect access control security.

[0004] The patent document with publication number CN118264432A discloses a decentralized attribute-based encryption method that supports complete policy hiding. It adopts a decentralized multi-authority attribute-based encryption model to achieve efficient privacy protection of data and user information. First, multiple authorities are set to avoid single point failure and key escrow problems. Secondly, a completely hidden access strategy is implemented by anonymizing the attributes to protect the privacy of the user. In this process, the method uses a reusable ciphertext pool and a cloud proxy server to reduce the computational cost of the user's encryption and decryption stages. Finally, the user information is uniquely bound to the leaf node in the binary tree, and the leaf node is used to track malicious users, and the malicious users are revoked by performing partial ciphertext updates.

[0005] In ABE, data owners can define access policies based on the attributes of the data and encrypt the data as an attribute. Only users who meet the access policy requirements can decrypt the data. This attribute-based access control mechanism eliminates the need for users to register in advance or obtain keys in advance, thereby achieving decentralized key management. However, the current ABE scheme still has some challenges and limitations. First, traditional ABE schemes often require internal entities to obtain user information, which may lead to user information leakage. Thus, the goal of decentralization cannot be achieved. Second, the existing ABE scheme has the problem of key leakage.

[0006] The establishment of the market monitoring system database and the determination of industry data, as well as the height of the investigation and research on the industry development background and the current status of the industry; to improve the scientific level of market monitoring and industry investigation, strengthen the research, application and promotion of market, industry, industry and enterprise statistical data monitoring technology and monitoring methods; to conduct systematic investigation and research on hot and difficult issues encountered in the construction of the market economy, to provide macro and micro economic information and monitoring data to industry management agencies and enterprises in various industries, and to provide industry data analysis reports, etc. As a third-party service agency for market monitoring or a management agency that exercises market service monitoring, some of the undisclosed data and processed data obtained need to be effectively encrypted and protected; and the existing market monitoring data are mostly saved by simply entering a password, and a more systematic data security protection has not been formed.

[0007] Because how to achieve effective security protection of data and combine it with effective data protection applications in market monitoring activities is an issue worthy of study. Summary of the invention

[0008] In order to solve the technical problems existing in the prior art, the present invention proposes an attribute-based encryption method for decentralized key management; this method can not only achieve fine-grained access control while ensuring data security, but also overcome the centralization problem in the traditional ABE scheme and improve the security of key management; in particular, it can perform effective security protection applications on data in market monitoring behaviors; it can provide more reliable protection for information security in the digital age and promote the healthy development of the digital economy.

[0009] The object of the present invention is to achieve:

[0010] The attribute-based encryption method for decentralized key management includes the following steps:

[0011] A: Global initialization Setup is executed by the trusted genesis node to generate system parameters and private keys of attribute nodes. The genesis node uses Shamir's Secret Sharing Scheme (SSS) to divide the master key into key fragments as attribute nodes P i The private key PSK i After executing the algorithm, the genesis node will permanently exit the program and no longer participate in any operations;

[0012] B: User key generation Keygen is executed by the attribute node in the blockchain. It uses system parameters Param, the user's global GID u , user attribute set S' and private key PSK of attribute node i As input. The output is the user's private key SK u ;

[0013] C: Encryption information Encrypt, executed by the data owner. It uses system parameters Param, access tree Γ, plaintext M and access structure As input. The output is the ciphertext Cw associated with the plaintext M;

[0014] D: Decryption is performed by the cloud server on behalf of the user. It will obtain the ciphertext. If the attribute match succeeds, it returns 1. If the attribute match fails or the user is not authorized to perform the search, it returns ⊥;

[0015] The step A comprises the following specific steps:

[0016] A1: A private blockchain generates a trusted genesis node to generate master keys and system parameters for data owners and users. Assume that the total number of attributes is m, and the index of all attributes is S = {attr1, attr2,…, attr m}. Once the system is initialized, the genesis node will no longer participate in blockchain operations. The specific generation process is as follows:

[0017] First, the trusted genesis node in the private blockchain randomly selects three anti-collusion hash functions: H:{0,1}→G, as well as The above function can map any property described as a binary string to a random group element.

[0018] Secondly, the trusted genesis nodes in the private blockchain are randomly selected As the master key of the system. Let n attribute nodes be represented as P = {P1, P2, ..., P n}.

[0019] Finally, the process of generating system parameters Param is as follows: The trusted genesis node in the private blockchain calculates e(g,g) α and h = g β The system parameters Param are as follows:

[0020] Param = {G,G T ,H,H1,H1,e,g,e(g,g) α ,h=g β}

[0021] After the system parameter Param is generated, the system parameter Param is broadcast to all users in the private blockchain.

[0022] A2: The trusted genesis node of a private blockchain generates public parameters of private keys for attribute nodes. Assume that the total number of attribute nodes is m. The specific generation process is as follows:

[0023] First, the trusted genesis node of the private blockchain uses Shamir (m, n)-threshold secret sharing technology to distribute the fragment α of the master key to the participant P i .

[0024] Secondly, the trusted genesis node of the private blockchain randomly selects a polynomial of degree m-1 f(x) = s + a1x + a2x 2 +…+a m-1 x m-1 (mod p), so that α = s and a1, a2, …, a m-1 is a random element in some finite field.

[0025] Finally, the trusted genesis node of the private blockchain calculates and distributes α i Give the attribute node P i Then, for each attribute j, the algorithm randomly selects And generate a random number set R = {r1, r2, ..., r n}.

[0026] A3: The trusted genesis node of the private blockchain generates the respective private key PSK for the attribute node i , assuming that the total number of attribute nodes is m. The specific generation process is as follows:

[0027] The trusted genesis node of the private blockchain uses the key fragment of the attribute node as the attribute node P i Construct a private key and calculate Construct attribute node P i The private key formula is as follows:

[0028]

[0029] The step B comprises the following specific steps:

[0030] B1: The user sends his GID information to all attribute nodes. The specific generation process is as follows:

[0031] User Computing H2(GID u )=φ u as well as Then, the user randomly selects a polynomial h(x)=u+u1x+u2x of degree q-1 2 +…+u q-1 x q-1 (mod p), so that φ u =u and u1,u2,…,u q-1 is a random element in a finite field. The user calculates φ1=h(1), φ2=h(2),…,φ n =h(n). Then, the user uses Shamir(m,n)-threshold secret sharing technology to distribute φ i and Give the attribute node P i .

[0032] B2: After receiving the information from the user, the attribute node uses its private key PSK i To calculate and send the key component to the user. The specific generation process is as follows:

[0033] First, each attribute node P i Using Private Key PSK i Calculate the fragment information of the user's private key. The user's partial key fragment is as follows:

[0034] D u,i =(k f(i) )·(k h(i) )∈G

[0035] Finally, for the attributes The attribute subkey components calculated by all attribute nodes are as follows:

[0036]

[0037] B3: User-involved calculation, when users reconstruct their keys, the parameters of the Lagrange interpolation method are defined as and of The user reconstructs his key as follows:

[0038]

[0039] Finally, users use and D u Reconstruct your own key as follows:

[0040]

[0041] The step C comprises the following specific steps:

[0042] C1: The data owner generates the necessary ciphertext data and access tree structure. The specific generation process is as follows:

[0043] The data owner uses the system parameter Param, the access tree Γ, and the plaintext M as input. The data owner uses SM3 to encrypt the plaintext M. This step encrypts M based on the access tree structure Γ and selects a polynomial q for each node x (including leaves) in the access tree Γ. x . Select polynomials from the root node R in a top-down manner. For each node x in the tree, let the polynomial q x $order d x is the threshold k x Subtract node x, which is d x =K x -1.

[0044] C2: The data owner uses system parameters, ciphertext data, and access tree structure to encrypt the plaintext and embed it into the tree. The specific generation process is as follows:

[0045] First, the plaintext M starts from the root node R, and the data owner randomly selects And set q R (0) = s. Then, a polynomial q is randomly selected R b x For any other node x, let q x (0) = q parent(x) (0) index(x) , and randomly select the polynomial q x b x The other points define the polynomial.

[0046] Next, let Y be the set of leaf nodes of the tree Γ. Then, the ciphertext of the plaintext is constructed by accessing the tree structure Γ. The ciphertext of the plaintext is as follows:

[0047]

[0048] C=g βs ∈G

[0049] So,

[0050]

[0051] Finally, the ciphertext Cw of the plaintext is as follows:

[0052]

[0053] The step D comprises the following specific steps:

[0054] D1: The user uses the cloud server to perform the decryption operation. It will take the encrypted plaintext Cw as input. If S' can satisfy the access structure And the attributes can match, then the plaintext can be correctly searched and obtained. For the access tree structure, the decryption process is a recursive process. The specific generation process is as follows:

[0055] First, let x be a leaf node of the access structure tree Γ, that is, x∈Γ. We define a recursive algorithm DecryptNode(Cw,Tw,x) for the leaf case. The input of the algorithm is the plaintext Cw and the leaf node x in the tree Γ. Let i=att(x) and assume i∈S, then the definition is as follows:

[0056]

[0057] Then, if Then define DecryptNode(Cw,x)=⊥.

[0058] Now consider the recursive case, where x is a non-leaf node. The algorithm DecryptNode(Cw,x) is calculated as follows: for all child nodes z of node x, call the function DecryptNode(Cw,z) and store the result in F z . Let S x is of size k x Any set z of sub-items such that F z ≠⊥ satisfies. If no such set exists, the function returns ⊥.

[0059] If F is satisfied z ≠⊥, we define i=index(z),S' x ={index(z):z∈Sx} and calculated as follows:

[0060]

[0061] Next, by defining the function DecryptNode, we can define the decryption algorithm. The algorithm starts by simply calling the function at the root node R of the access tree Γ. If the attribute set S' can satisfy the access tree Γ, then let And finally execute the decryption algorithm as follows:

[0062]

[0063] Finally, if the access tree Γ is satisfied, the above equation holds. The decryption result of the algorithm is the plaintext M, proving that the attribute set S' satisfies the access tree Γ and the attribute matching is successful. The cloud server will return the corresponding data to the user. Otherwise, the attribute matching fails and returns ⊥; both are indispensable.

[0064] The attribute-based encryption method with decentralized key management is applied to the protection of data in market monitoring activities.

[0065] Positive and beneficial effects: The present invention proposes an attribute-based encryption method for decentralized key management through attribute-based encryption and Shamir (m, n)-threshold secret sharing technology. This method aims to solve the single point failure and security dependence problems existing in traditional key management systems. By introducing attribute-based encryption technology, fine-grained access control of users is achieved. In addition, this method also utilizes Shamir (m, n)-threshold secret sharing technology and blockchain technology, combined with the characteristics of decentralization, to make key management more secure, and can provide an effective solution for market monitoring agencies to solve key management problems in open scenarios, which has been well applied and has promoted the advancement and application of technology in the field of information security. BRIEF DESCRIPTION OF THE DRAWINGS

[0066] Figure 1 It is a schematic diagram of the process of the present invention. DETAILED DESCRIPTION

[0067] The present invention is described in detail below with reference to the accompanying drawings and embodiments:

[0068] like Figure 1 As shown, the attribute-based encryption method for decentralized key management described in the present invention includes the following steps:

[0069] A: Global initialization Setup

[0070] The trusted genesis node executes and generates the private keys of system parameters and attribute nodes. The genesis node uses Shamir's Secret Sharing Scheme (SSS) to divide the master key into key fragments as attribute nodes P i The private key PSK i After executing the algorithm, the genesis node will permanently exit the program and no longer participate in any operations;

[0071] The step A comprises the following specific steps:

[0072] A1: A private blockchain generates a trusted genesis node to generate master keys and system parameters for data owners and users. Assume that the total number of attributes is m, and the index of all attributes is S = {attr1, attr2,…, attr m}. Once the system is initialized, the genesis node will no longer participate in blockchain operations. The specific generation process is as follows:

[0073] First, the trusted genesis node in the private blockchain randomly selects three anti-collusion hash functions: H:{0,1}→G, as well as The above function can map any property described as a binary string to a random group element.

[0074] Secondly, the trusted genesis nodes in the private blockchain are randomly selected As the master key of the system. Let n attribute nodes be represented as P = {P1, P2, ..., P n}.

[0075] Finally, the process of generating system parameters Param is as follows: The trusted genesis node in the private blockchain calculates e(g,g) α and h = g β The system parameters Param are as follows:

[0076] Param = {G,G T ,H,H1,H1,e,g,e(g,g) α ,h=g β}

[0077] After the system parameter Param is generated, the system parameter Param is broadcast to all users in the private blockchain.

[0078] A2: The trusted genesis node of a private blockchain generates public parameters of private keys for attribute nodes. Assume that the total number of attribute nodes is m. The specific generation process is as follows:

[0079] First, the trusted genesis node of the private blockchain uses Shamir (m, n)-threshold secret sharing technology to distribute the fragment α of the master key to the participant P i .

[0080] Secondly, the trusted genesis node of the private blockchain randomly selects a polynomial of degree m-1 f(x) = s + a1x + a2x 2 +…+a m-1 x m-1 (mod p), so that α = s and a1, a2, …, a m-1 is a random element in some finite field.

[0081] Finally, the trusted genesis node of the private blockchain calculates and distributes α i Give the attribute node P i Then, for each attribute j, the algorithm randomly selects And generate a random number set R = {r1, r2, ..., r n}.

[0082] A3: The trusted genesis node of the private blockchain generates the respective private key PSK for the attribute node i , assuming that the total number of attribute nodes is m. The specific generation process is as follows:

[0083] The trusted genesis node of the private blockchain uses the key fragment of the attribute node as the attribute node P i Construct a private key and calculate Construct attribute node P i The private key formula is as follows:

[0084]

[0085] B: User key generation Keygen;

[0086] User key generation Keygen is executed by the attribute node in the blockchain. It uses system parameters Param, the user's global GID u , user attribute set S' and private key PSK of attribute node i As input. The output is the user's private key SK u ;

[0087] The step B comprises the following specific steps:

[0088] B1: The user sends his GID information to all attribute nodes. The specific generation process is as follows:

[0089] User Computing H2(GID u )=φ u as well as Then, the user randomly selects a polynomial h(x)=u+u1x+u2x of degree q-1 2 +…+u q-1 x q-1(mod p), so that φ u =u and u1,u2,…,u q-1 is a random element in a finite field. The user calculates φ1=h(1), φ2=h(2),…,φ n =h(n). Then, the user uses Shamir(m,n)-threshold secret sharing technology to distribute φ i and Give the attribute node P i .

[0090] B2: After receiving the information from the user, the attribute node uses its private key PSK i To calculate and send the key component to the user. The specific generation process is as follows:

[0091] First, each attribute node P i Using Private Key PSK i Calculate the fragment information of the user's private key. The user's partial key fragment is as follows:

[0092] D u,i =(k f(i) )·(k h(i) )∈G

[0093] Finally, for the attributes The attribute subkey components calculated by all attribute nodes are as follows:

[0094]

[0095] B3: The user reconstructs his complete private key SK from the received key components u The specific generation process is as follows:

[0096] First, the user intervenes in the calculation. When the user reconstructs their key, the parameters of the Lagrangian interpolation method are defined as and of The user reconstructs his key as follows:

[0097]

[0098] Finally, users use and D u Reconstruct your own key as follows:

[0099]

[0100] C: Encryption information Encrypt;

[0101] The data owner executes it. It uses the system parameters Param, the access tree Γ, the plaintext M and the access structure As input. The output is the ciphertext Cw associated with the plaintext M;

[0102] The step C comprises the following specific steps:

[0103] C1: The data owner generates the necessary ciphertext data and access tree structure. The specific generation process is as follows:

[0104] The data owner uses the system parameter Param, the access tree Γ, and the plaintext M as input. The data owner uses SM3 to encrypt the plaintext M. This step encrypts M based on the access tree structure Γ and selects a polynomial q for each node x (including leaves) in the access tree Γ. x . Select polynomials from the root node R in a top-down manner. For each node x in the tree, let the polynomial q x $order d x is the threshold k x Subtract node x, which is d x =k x -1.

[0105] C2: The data owner uses system parameters, ciphertext data, and access tree structure to encrypt the plaintext and embed it into the tree. The specific generation process is as follows:

[0106] First, the plaintext M starts from the root node R, and the data owner randomly selects And set q R (0) = s. Then, a polynomial q is randomly selected R b x For any other node x, let q x (0) = q parent(x) (0) index(x) , and randomly select the polynomial q x b x The other points define the polynomial.

[0107] Next, let Y be the set of leaf nodes of the tree Γ. Then, the ciphertext of the plaintext is constructed by accessing the tree structure Γ. The ciphertext of the plaintext is as follows:

[0108]

[0109] C=g βs ∈G

[0110] So,

[0111]

[0112] Finally, the ciphertext Cw of the plaintext is as follows:

[0113]

[0114] D:Decrypt;

[0115] The cloud server executes on behalf of the user. It will get the ciphertext. If the attribute match succeeds, it returns 1. If the attribute match fails or the user is not authorized to perform the search, it returns ⊥;

[0116] The step D comprises the following specific steps:

[0117] D1: The user uses the cloud server to perform the decryption operation. It will take the encrypted plaintext Cw as input. If S' can satisfy the access structure And the attributes can match, then the plaintext can be correctly searched and obtained. For the access tree structure, the decryption process is a recursive process. The specific generation process is as follows:

[0118] First, let x be a leaf node of the access structure tree Γ, that is, x∈Γ. We define a recursive algorithm DecryptNode(Cw,Tw,x) for the leaf case. The input of the algorithm is the plaintext Cw and the leaf node x in the tree Γ. Let i=att(x) and assume i∈S, then the definition is as follows:

[0119]

[0120] Then, if Then define DecryptNode(Cw,x)=⊥.

[0121] Now consider the recursive case, where x is a non-leaf node. The algorithm DecryptNode(Cw,x) is calculated as follows: for all child nodes z of node x, call the function DecryptNode(Cw,z) and store the result in F z . Let S x is of size k x Any set z of sub-items such that F z ≠⊥ satisfies. If no such set exists, the function returns ⊥.

[0122] If F is satisfied z ≠⊥, we define i=index(z),S' x ={index(z):z∈S x} and calculated as follows:

[0123]

[0124] Next, by defining the function DecryptNode, we can define the decryption algorithm. The algorithm starts by simply calling the function at the root node R of the access tree Γ. If the attribute set S' can satisfy the access tree Γ, then let And finally execute the decryption algorithm as follows:

[0125]

[0126] Finally, if the access tree Γ is satisfied, the above equation holds. The decryption result of the algorithm is the plaintext M, proving that the attribute set S' satisfies the access tree Γ and the attribute matching is successful. The cloud server will return the corresponding data to the user. Otherwise, the attribute matching fails and returns ⊥. Both are indispensable.

[0127] The present invention proposes an attribute-based encryption method for decentralized key management through attribute-based encryption and Shamir (m, n)-threshold secret sharing technology. The method aims to solve the single point failure and security dependence problems existing in traditional key management systems. By introducing attribute-based encryption technology, fine-grained access control of users is achieved. In addition, the method also utilizes Shamir (m, n)-threshold secret sharing technology and blockchain technology, combined with the characteristics of decentralization, to make key management more secure, and can provide an effective solution for market monitoring agencies to solve key management problems in open scenarios, which has been well applied and has promoted the advancement and application of technology in the field of information security.

Claims

1. An attribute-based encryption method with decentralized key management, characterized in that: The following steps are involved: A: Global initialization Setup is executed by the trusted genesis node to generate system parameters and private keys of attribute nodes; the genesis node uses Shamir's Secret Sharing Scheme (SSS) to divide the master key into key fragments as attribute nodes P i The private key PSK i ;After executing this algorithm, the genesis node will permanently exit the program and no longer participate in any operations; B: User key generation Keygen, executed by the attribute node in the blockchain; Use system parameter Param and user's global GID u , user attribute set S′ and private key PSK of attribute node i As input; the output is the user's private key SK u ; C: Encryption information Encrypt, executed by the data owner; using system parameters Param, access tree Γ, plaintext M and access structure As input; the output is the ciphertext Cw associated with the plaintext M; D: Decryption is performed by the cloud server on behalf of the user. It will obtain the ciphertext and return 1 if the attribute match succeeds. It returns ⊥ if the attribute match fails or the user is not authorized to perform the search.

2. The attribute-based encryption method for decentralized key management according to claim 1, characterized in that: The step A comprises the following specific steps: A1: A private blockchain generates a trusted genesis node to generate master keys and system parameters for data owners and users. Assume that the total number of attributes is m, and the index of all attributes is S = {attr1, attr2, ..., attr m }; Once the system is initialized, the genesis node will no longer participate in blockchain operations; the specific generation process is as follows: First, the trusted genesis node in the private blockchain randomly selects three collusion-resistant hash functions: H: {0, 1} → G, H1: {0, 1} * →Z p as well as The above function; maps any attribute described as a binary string to a random group element; Secondly, the trusted genesis nodes in the private blockchain are randomly selected As the master key of the system, let n attribute nodes be represented as P = {P1, P2, ..., P n }; Finally, the process of generating system parameters Param is as follows: The trusted genesis node in the private blockchain calculates e(g, g) α and h = g β , the system parameters Param are as follows: Param={G,G T ,H,H1,H1,e,g,e(g,g) α ,h=g β } After the system parameter Param is generated, the system parameter Param is broadcast to all users in the private blockchain; A2: The trusted genesis node of a private blockchain generates public parameters of private keys for attribute nodes. Assuming the total number of attribute nodes is m, the specific generation process is as follows: First, the trusted genesis node of the private blockchain uses Shamir (m, n)-threshold secret sharing technology to distribute the fragment α of the master key to the participant P i ; Secondly, the trusted genesis node of the private blockchain randomly selects a polynomial of degree m-1 f(x) = s + a1x + a2x 2 +…+a m-1 x m-1 (mod p), so that α = s and a1, a2, ..., a m-1 is a random element in some finite field; Finally, the trusted genesis node of the private blockchain calculates and distributes α i Give the attribute node P i ; Then, for each attribute j, the algorithm randomly selects And generate a random number set R = {r1, r2, ..., r n }; A3: The trusted genesis node of the private blockchain generates the respective private key PSK for the attribute node i , assuming that the total number of attribute nodes is m, the specific generation process is as follows: The trusted genesis node of the private blockchain uses the key fragment of the attribute node as the attribute node P i Construct a private key and calculate Construct attribute node P i The private key formula is as follows:

3. The attribute-based encryption method for decentralized key management according to claim 1, characterized in that: The step B comprises the following specific steps: B1: The user sends his GID information to all attribute nodes. The specific generation process is as follows: User Computing H2(GID u )=φ u as well as Then, the user randomly selects a polynomial h(x)=u+u1x+u2x of degree q-1 2 +…+u q-1 x q-1 (mod p), so that φ u =u and u1,u2,…,u q-1 is a random element in a finite field; the user calculates φ1=h(1), φ2=h(2), …, φ n =h(n); Then, the user uses Shamir(m,n)-threshold secret sharing technology to distribute φ i and Give the attribute node P i ; B2: After receiving the information from the user, the attribute node uses its private key PSK i To calculate and send the key component to the user, the specific generation process is as follows: First, each attribute node P i Using Private Key PSK i Calculate the fragment information of the user's private key. The user's partial key fragment is as follows: D u,i =(k f(i) )·(k h(i) )∈G Finally, for the attributes The attribute subkey components calculated by all attribute nodes are as follows: B3: User-involved calculation, when users reconstruct their keys, the parameters of the Lagrange interpolation method are defined as and of The user reconstructs his key as follows: Finally, users use and D u Reconstruct your own key as follows:

4. The attribute-based encryption method for decentralized key management according to claim 1, characterized in that: The step C comprises the following specific steps: C1: The data owner generates the necessary ciphertext data and access tree structure. The specific generation process is as follows: The data owner uses the system parameter Param, the access tree Γ and the plaintext M as input, and the data owner uses SM3 to encrypt the plaintext M; this step encrypts M based on the access tree structure Γ and selects a polynomial q for each node x (including leaves) in the access tree Γ. x , select polynomials from the root node R in a top-down manner, and for each node x in the tree, let the polynomial q x $order d x is the threshold k x Subtract node x, which is d x =k x -1; C2: The data owner uses system parameters, ciphertext data, and access tree structure to encrypt the plaintext and embed it into the tree. The specific generation process is as follows: First, the plaintext M starts from the root node R, and the data owner randomly selects And set q R (0) = s; Then, randomly choose a polynomial q R b x For any other node x, let q x (0) = q parent(x) (0) index(x) , and randomly select the polynomial q x b x Other points to define the polynomial; Next, let Y be the set of leaf nodes of the tree Γ. Then, the ciphertext of the plaintext is constructed by accessing the tree structure Γ. The ciphertext of the plaintext is as follows: C=gβs∈G So, Finally, the ciphertext Cw of the plaintext is as follows:

5. The attribute-based encryption method for decentralized key management according to claim 1, characterized in that: The step D comprises the following specific steps: D1: The user uses the cloud server to perform the decryption operation; using the encrypted plaintext Cw as input, if S′ can satisfy the access structure And the attributes can match, then the plaintext can be correctly searched and obtained. For the access tree structure, the decryption process is a recursive process. The specific generation process is as follows: First, let x be a leaf node of the access structure tree Γ, that is, x∈Γ; for the leaf case, a recursive algorithm DecryptNode(Cw, Tw, x) is defined, and the input of the algorithm is the plaintext Cw and the leaf node x in the tree Γ; let i=att(x) and assume i∈S, then the definition is as follows: Then, if Then define DecryptNode(Cw, x)=⊥; Now consider the recursive case, where x is a non-leaf node. The algorithm DecryptNode(Cw, x) is calculated as follows: For all child nodes z of node x, call the function DecryptNode(Cw, z) and store the result as F z ; Let S x is of size k x Any set z of sub-items such that F z ≠⊥ satisfies; if there is no such set, the function will return ⊥; If F is satisfied z ≠⊥, we define i = index(z), S′ x ={index(z):z∈S x } and calculated as follows: Next, we define the decryption algorithm by defining the function DecryptNode. The algorithm starts by simply calling the function at the root node R of the access tree Γ. If the attribute set S′ can satisfy the access tree Γ, then let And finally execute the decryption algorithm as follows: Finally, if the access tree Γ is successfully satisfied, the above equation holds; the decryption result of the algorithm is the plaintext M, which proves that the attribute set S′ satisfies the access tree Γ and the attribute matching is successful, and the cloud server will return the corresponding data to the user; otherwise, the attribute matching fails and returns ⊥; both are indispensable.

6. The attribute-based encryption method for decentralized key management as described in claims 1-5, characterized in that: Applied to the protection of data in market monitoring activities.

Citation Information

Patent Citations

  • Decentralized attribute-based encryption method and system capable of tracing responsibility and resisting key abuse

    CN118199982A

  • Decentralization attribute-based encryption method supporting complete policy hiding

    CN118264432A

  • Decentralized multi-authority privacy protection data access control method and system

    CN115567247A

  • Multi-center attribute-based encryption method, computer readable storage medium and equipment

    CN116346306A

  • Attribute-based anonymous credential system supporting threshold aggregation

    CN116614220A