CN111130757A - Multi-cloud CP-ABE access control method based on block chain - Google Patents

Multi-cloud CP-ABE access control method based on block chain Download PDF

Info

Publication number
CN111130757A
CN111130757A CN201911408586.4A CN201911408586A CN111130757A CN 111130757 A CN111130757 A CN 111130757A CN 201911408586 A CN201911408586 A CN 201911408586A CN 111130757 A CN111130757 A CN 111130757A
Authority
CN
China
Prior art keywords
cloud
access control
attribute
ciphertext
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911408586.4A
Other languages
Chinese (zh)
Other versions
CN111130757B (en
Inventor
李春花
周可
张洲
何锦彪
魏荣磊
雷成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201911408586.4A priority Critical patent/CN111130757B/en
Publication of CN111130757A publication Critical patent/CN111130757A/en
Application granted granted Critical
Publication of CN111130757B publication Critical patent/CN111130757B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Abstract

The invention discloses a multi-cloud CP-ABE access control scheme based on a block chain, which comprises an encryption process and a decryption process, wherein the encryption process comprises the generation of a data ciphertext CTfAnd secret key ciphertext CTkAnd CT for data cipher textfSending to cloud, partitioning and hiding access policy tree T, logically structuring access policy tree T' and decrypting security parameters
Figure DDA0002349349820000011
Store into block chain, ciphertext { Y', Cy,C′yStore }Entering each sub-cloud and the like; the decryption process comprises the step of acquiring data ciphertext CT from the cloudfAnd dividing the user attribute set S to obtain attribute subsets { SC }iDividing the user attribute private key SK to obtain an attribute private key subset { SKCiAnd decrypting ciphertext information related to the attribute x hosted on each sub-cloud to obtain intermediate node information DNxBlock chain super account book chain code aggregation sub-cloud decryption information DNxAnd calculating an intermediate decryption result M', and decrypting by the client to obtain a final key plaintext M and a data plaintext. The invention can effectively protect the privacy of the access control strategy and the privacy of the user attributes.

Description

Multi-cloud CP-ABE access control method based on block chain
Technical Field
The invention belongs to the field of computer security, and particularly relates to a multi-cloud CP-ABE access control method based on a block chain.
Background
Access control is an important technique for effectively preventing unauthorized users from acquiring system resources. The method of Ciphertext Policy Attribute Based Encryption (CP-ABE for short) is considered as the most appropriate access control method in the cloud environment, and an original CP-ABE Encryption algorithm stores an access Policy in the head of a Ciphertext in a plaintext form and stores the access Policy and the Ciphertext together in the cloud, so that the cloud has complete access control Policy information, including logic structure information of the access control Policy and user characteristic information of resources having authority to access. When a cloud user requests to read data from a server, according to the requirement of authority judgment of the CP-ABE algorithm, characteristic information of the user needs to be provided in request information, and then sensitive information of the user can be deduced through a statistical analysis cloud end, so that a leakage risk is brought to the privacy of the user.
The document "improving Privacy-maintaining CP-ABE Access Control with Multi-Cloud (ISPA 2018)" proposes a CP-ABE Access Control method supporting Access policy Privacy protection in a Multi-Cloud environment, the method divides an Access Control policy into a plurality of subsets, and stores the subsets in different sub-clouds respectively, and each sub-Cloud hosts mutually disjoint attribute subsets; and storing the logic structure of the access control strategy in a third-party agent, aggregating part of access strategy information decrypted by each sub-cloud by the agent, and further decrypting the ciphertext and judging the access authority. The multi-cloud architecture provided by the scheme enables the cloud end not to obtain a complete access control strategy from the stored ciphertext, so that the privacy of the access control strategy and the privacy of a user are effectively protected.
However, the above access control method has non-negligible technical problems: in a cloud environment, the third-party agent has an untrusted problem, and if the third-party agent and the cloud end collude, a security risk of the system is caused.
Disclosure of Invention
Aiming at the defects or the improvement requirements in the prior art, the invention provides a multi-cloud CP-ABE access control method based on a block chain, and aims to effectively provide privacy guarantee for a user and provide a better redundancy and fault-tolerant mechanism by introducing a multi-cloud storage architecture and hosting part of attribute sets of each sub-cloud on the basis of the traditional CP-ABE scheme; in addition, the invention utilizes the characteristic that the block chain can still work in a credible mode in an incredible environment, and solves the technical problem that a third party agent in the existing multi-cloud CP-ABE scheme is not credible and further brings security risk to the system.
In order to achieve the above object, according to an aspect of the present invention, there is provided a blockchain-based multi-cloud CP-ABE access control method, which is applied in a system including a client, a cloud server, and a super-account blockchain network, the method including:
an encryption process comprising the steps of:
s11, the client acquires the original plaintext of the user, and encrypts the original plaintext by using a symmetric encryption algorithm to obtain a data ciphertext CTfEncrypting a secret key M used in a symmetric encryption algorithm by using a public parameter PK of a user and a pre-established access control tree T to obtain a secret key ciphertext CTkThe data ciphertext CTfSending to cloud server, and sending CTkEndorsements sent into a super-ledger blockchain networkA node;
s12, endorsement node calls chain code pair key ciphertext CTkAnd analyzing to obtain the access control tree T, segmenting and hiding the access control tree T, sending one part of the processed result to the cloud server, and storing the other part of the processed result in a block chain.
Secondly, the decryption process comprises the following steps:
s21, the client acquires an attribute set S submitted by a user and a global unique identifier GID of the user, generates a corresponding attribute private key SK according to the attribute set S and the global unique identifier GID, and sends the attribute private key SK and the attribute set S to an endorsement node in the super-account block-chain network;
s22, endorsement node calls chain code to acquire cloud server CiHosted user attribute set AttrsCiThrough the user attribute set AttrsCiObtaining corresponding set SC in attribute set SiAccording to the corresponding set SCiObtaining corresponding set SKC in attribute private key SKiAnd combining SCiAnd SKCiSent to cloud server C togetheriWhere i represents the number of the cloud server, and i ∈ [1, N ]]Wherein N represents the total number of cloud servers;
s23 and cloud server CiFor set SCiAccording to SKCzComputing cloud decryption ciphertext DNzAnd sending the cloud decrypted ciphertext to an endorsement node in the super account block chain network:
s24, after receiving the cloud decryption ciphertexts sent by all the cloud servers, the endorsement node acquires a set formed by all the elements z corresponding to the cloud decryption ciphertexts, and acquires a logic structure P of an access control strategy and a key ciphertext CT from a block of a block chain through a chain codekSecond part of (2)
Figure BDA0002349349800000035
And a third part C, and then determines whether there is a subset in the set that satisfies the access control policy, and if so, proceeds to step S25,otherwise, the process is ended;
s25, endorsement node according to attribute private key SK first part D, and key ciphertext CTkSecond part of (2)
Figure BDA0002349349800000031
And a third part C obtains an intermediate decryption result M 'and combines the intermediate decryption result M' and the secret key ciphertext CTkThe third part C of the message is sent to the client;
s26, the client side decrypts the result M' and the key ciphertext CT according to the received intermediate decryption resultkGenerates a decryption result M (i.e., a symmetric key), and obtains a data ciphertext CT from the cloud serverfAnd using the decryption result M to encrypt the data ciphertext CTfDecryption is performed to obtain the original plaintext of the user.
Preferably, the public parameter PK of the user is equal to:
Figure BDA0002349349800000032
wherein
Figure BDA0002349349800000033
A multiplication cycle group with a prime number p, a generator g, a random number α, β, α,
Figure BDA0002349349800000034
Representing a modulo-p complete residual system, p representing a random large prime number, e representing a bilinear mapping;
preferably, the access control tree T is a binary tree structure, with leaf nodes being elements in the attribute set S of the user AND non-leaf nodes being logical operators of the access control policy, such as AND OR.
Preferably, the key ciphertext CTkEqual to:
Figure BDA0002349349800000041
wherein the access control tree T is the cipher text CT of the keykThe first part of (a) is,
Figure BDA0002349349800000042
is the second part, C is the third part, CyIs the fourth fraction, C'yIs the fifth part, s represents a random number and
Figure BDA0002349349800000043
x represents any node in the access control tree T, and the polynomial q corresponding to the node xx(0)= qparent(x)(index (x)), qparent (x) represents the parent node of node x, and index (x) represents the sequence number of node x in its corresponding parent node qparent (x), and polynomial q corresponding to the root nodex(0) Equal to s, Y represents a set of leaf nodes in the access control tree T, Y represents a leaf node in the set of leaf nodes Y, H () represents a hash function, att (Y) represents an attribute associated with the leaf node Y.
Preferably, step S12 is specifically to firstly analyze the access control tree T, and obtain the logical structure P and the leaf node set Y of the access control policy in the access control tree T; subsequently, numbering the leaf nodes in the leaf node set Y according to the sequence from left to right in the access control tree T, thereby forming a new leaf node set Y'; finally, { set of leaf nodes Y', Cy=gqy(0), C′y=H(att(y))qy(0)Sent to the cloud server together, the logical structure P of the access control policy,
Figure BDA0002349349800000048
C=hsand the entry blocks are stored in a block chain super ledger.
Preferably, the specific structure of the attribute private key SK is as follows:
Figure BDA0002349349800000044
wherein the first part D of the attribute private key SK is a fixed parameter which is randomly generated, r is a random number and has
Figure BDA0002349349800000045
j∈S,DjRepresenting the second part of the attribute private key SK, a random number
Figure BDA0002349349800000046
H (j) represents the hash value of attribute j, H (GID) represents the hash value of globally unique identifier GID, D'jRepresenting a third part of the attribute private key SK, DjAnd D'jAre all arrays.
Preferably, the cloud decryption ciphertext DN is calculated in step S23zThe following formula is adopted:
Figure BDA0002349349800000047
Figure BDA0002349349800000051
where m represents the number of element z in the new set of leaf nodes Y'.
Preferably, the intermediate decryption result M' obtained in step S25 is obtained by using the following formula;
Figure BDA0002349349800000052
wherein K represents the root node computation result and has
K=e(gr·H(GID)β,g)s
Thus is provided with
Figure BDA0002349349800000053
Preferably, the following formula is specifically adopted to calculate the decryption result M in step S26:
Figure BDA0002349349800000054
in general, compared with the prior art, the above technical solution conceived by the present invention can obtain the following beneficial effects:
(1) because the steps (2), (4) and (5) are adopted in the decryption process, the credible super account book is adopted to carry out the segmentation and hiding of the access control strategy tree, the segmentation of the user attribute private key, the calculation of the intermediate decryption result, the storage of the encryption and decryption security parameters and the like, the security of the system is greatly improved;
(2) the invention provides a multi-cloud architecture, namely, a part of encryption results are sent to a cloud server through the step (2) in the encryption process, and the cloud end obtains corresponding cloud end decryption results according to the managed data set through the step (3) in the decryption process, so that different cloud ends can manage non-intersecting attribute sets, and the privacy of an access control strategy and the privacy of user attributes are effectively protected.
Drawings
FIG. 1 is a flow chart of an encryption process in the multi-cloud CP-ABE access control method based on block chains according to the present invention;
FIG. 2 is a flowchart of a decryption process in the blockchain-based multi-cloud CP-ABE access control method of the present invention;
fig. 3 is a schematic diagram of the process of partitioning and hiding the access control tree in the method of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention. In addition, the technical features involved in the embodiments of the present invention described below may be combined with each other as long as they do not conflict with each other.
The technical terms of the present invention are explained and explained first:
bilinear operation: and G and GT are taken as multiplication cycle groups with the order p, Zr is taken as real number groups, G is assumed to be a random element in G, and when the condition that e is G multiplied by G < - > GT meets, e is called as a bilinear mapping.
1. Calculability: for any two elements G in G1And g2There is an efficient algorithm that can calculate e (g)1,g2)。
2. Bilinear: for any two elements G in G1And g2Any two elements a, b of Zr have
Figure BDA0002349349800000061
3. Non-degeneration: for any element G in G which is not 0, there is e (G, G) ≠ 1.
Based on the above three conditions, the bilinear mapping can be derived to have the following properties:
1. for any three elements G in G1,g2And g3All have e (g)1·g3,g2)=e(g1,g2)· e(g3,g2)。
2. For any three elements G in G1,g2And g3All have e (g)1,g2·g3)=e(g1,g2)· e(g1,g3)。
Block chaining techniques: BlockChain (BlockChain) technology refers to a completely new decentralized distributed computing paradigm for verifying and storing data using an encrypted chained block structure, generating and updating data based on consensus algorithms of distributed nodes, and programming and manipulating data using smart contracts (an automated script). The method adopts a cryptography method instead of a central mechanism to establish a trust relationship between nodes, thereby forming a decentralized distributed architecture; secondly, the block chain resists external attack by means of strong computing power formed by consensus algorithms such as workload certification and the like of nodes of the distributed system, only more than 51% of the nodes are attacked to tamper information, and in a sufficiently large block chain system, the cost for tampering the information is extremely high, so that the data of the block chain is guaranteed to be not tampered and counterfeited. The characteristics of a decentralized mechanism, ultrahigh reliability, non-falsification of block data and the like of the block chain technology are very suitable for high-security protection of data by applying a cloud storage environment.
Super account book: the hyper ledger (hyper ledger) is a new blockchain platform under the blockchain 3.0, and has a plurality of sub-items under the flag, wherein the most common hyper ledger network is Fabric, and the Fabric puts away the constraint of virtual currency of traditional blockchain finance, and expands the blockchain into a more universal blockchain platform. Because the virtual currency is removed, public accounting is not needed to ensure the security of data, the super account book is not a public chain but a federation chain, and a user can join an organization only by verifying through an organization authentication server, so that the privacy of files can be ensured.
An access control technique: access control is an important technique for effectively preventing unauthorized users from acquiring system resources. The existing cloud security access control model assumes that a data owner and a data storage server are in the same trust domain, and the storage server is responsible for managing, executing access control strategies and monitoring relevant details of user access. In a distributed semi-trusted cloud environment, the flexibility of an Attribute Based Encryption (ABE) access control method when an access policy is customized is considered as a data access control technology most suitable for the cloud environment. In the ABE mechanism, the ciphertext is not encrypted by a user using a public key as in the conventional method, but the ciphertext and the decryption key of the user are associated with an attribute set or an access policy consisting of attribute logic, and the user can access the data only when the decryption key of the user and the ciphertext meet a preset matching rule. On the basis of ABE, a Ciphertext Policy-Based Attribute Encryption (CP-ABE) is developed. In CP-ABE, data owner selects access strategy for data, the access strategy is formed by attribute logic combination, only the user whose attribute set meets the access strategy has access to the data, its attribute private key is related to attribute set, and the access strategy is bound with cipher text data.
The block chain technology can ensure the safe use of data in an untrusted environment, and provides a technical guarantee for solving the difficult problem of safe mutual trust of the cloud storage system. The super account book is a typical block chain union chain, and the super account book is high in transaction throughput and very suitable for a large-scale actual production environment. The invention provides a multi-cloud CP-ABE access control scheme based on a block chain by utilizing the technical characteristics of decentralization, distrust and the like of the block chain technology, and introduces a super account book as a trusted third party agent on the basis of the multi-cloud CP-ABE scheme so as to enhance the safety of the multi-cloud CP-ABE scheme.
As shown in fig. 1 and fig. 2, the present invention provides a block chain-based multi-cloud CP-ABE access control method, which is applied to a system including a client, a cloud server, and a super-account block chain network, and the method includes:
an encryption process comprising the steps of:
(1) the client acquires an original plaintext of a user, and encrypts the original plaintext by using a symmetric encryption algorithm to obtain a data ciphertext CTfEncrypting a secret key M used in a symmetric encryption algorithm by using a public parameter PK of a user and a pre-established access control tree T to obtain a secret key ciphertext CTkThe data ciphertext CTfSending to cloud server, and sending CTkSending the data to an Endorsement node (Endorsement node) in the super account block chain network;
the public parameter PK of the user is equal to:
Figure BDA0002349349800000081
wherein
Figure BDA0002349349800000082
Representing a multiplicative cyclic group of order prime p, g representing a generator, α, β both being random numbers, and α,
Figure BDA0002349349800000083
representing a modulo-p complete residual system, p representing a random large prime number, e representing bilinear mapping;
the access control tree T in the present invention is a binary tree structure, whose leaf nodes are elements in the attribute set S of the user, AND non-leaf nodes are logical operators of the access control policy, such as AND OR.
As shown on the left side of fig. 2, which shows an example of an access control tree T, it can be seen that the access control tree T can be denoted as T ═ (AttrA OR AttrB) and (attrc OR attrd).
Secret key ciphertext CTkEqual to:
Figure BDA0002349349800000091
wherein the access control tree T is the cipher text CT of the keykThe first part of (a) is,
Figure BDA0002349349800000092
is the second part, C is the third part, CyIs the fourth fraction, C'yIs the fifth part, s represents a random number and
Figure BDA0002349349800000093
x represents any node in the access control tree T, and the polynomial q corresponding to the node xx(0)= qparent(x)(index (x)), parent (x) represents the parent node of node x, and index (x) represents the sequence number of node x in its corresponding parent node parent (x), and polynomial q corresponding to the root nodex(0) Equal to s, Y represents the set of leaf nodes in the access control tree T, Y represents a leaf node in the set of leaf nodes Y, i.e., Y e Y, H () represents a hash function, att (Y) represents an attribute associated with the leaf node Y.
(2) Endorsement node calls chain code (Chaincode) to key ciphertext CTkAnd analyzing to obtain the access control tree T, performing segmentation and hiding processing on the access control tree T (as shown in the right side of fig. 2), sending one part of processed results to the cloud server, and storing the other part of processed results in a block chain.
Specifically, in this step, an access control tree T is parsed, and a logical structure P and a leaf node set Y of an access control policy in the access control tree T are obtained; subsequently, numbering the leaf nodes in the leaf node set Y according to the sequence from left to right in the access control tree T, thereby forming a new leaf node set Y'; finally, { set of leaf nodes Y', Cy=gqy(0),C′y= H(att(y))qy(0)Sent to the cloud server together, the logical structure P of the access control policy,
Figure BDA0002349349800000094
Figure BDA0002349349800000095
C=hsand the entry blocks are stored in a block chain super ledger.
For example, for the example in fig. 3, the leaf node set Y ═ { AttrA, AttrB, AttrC, AttrD }, and the new leaf node set Y' formed in this step ═ { AttrA-1, AttrB-2, AttrC-3, AttrD-4 }.
Secondly, the decryption process comprises the following steps:
(1) the method comprises the steps that a client side obtains an attribute set S submitted by a user and a global unique identifier (GID) of the user, generates a corresponding attribute private key SK according to the attribute set S and the GID, and sends the attribute private key SK and the attribute set S to an endorsement node in a super account block chain network;
by way of example, the attributes in the user-submitted attribute set may be gender, occupation, age, and the like.
Specifically, the specific structure of the attribute private key SK is as follows:
Figure BDA0002349349800000101
wherein the first part D of the attribute private key SK is a fixed parameter which is randomly generated, r is a random number and has
Figure BDA0002349349800000102
j∈S,DjRepresenting the second part of the attribute private key SK, a random number
Figure BDA0002349349800000103
H (j) represents the hash value of attribute j, H (GID) represents the hash value of globally unique identifier GID, D'jRepresentation attribute private keyThird part of SK, DjAnd D'jAre all arrays.
Unlike the original CP-ABE algorithm, this step ensures that for the same attribute, even the generated random number r, by introducing the GID into the attribute private key SKjSame, user's attribute private key DjAnd the uniqueness of the attribute private key is further ensured. Meanwhile, the introduction of the GID enables the intermediate decryption result returned by the agent to be successfully decrypted only by the initiator of the decryption request, and other people cannot restore the plaintext even if acquiring the intermediate decryption result, so that the security of the decryption operation can be still ensured when the agent is illegally controlled.
(2) Endorsement node calls chain code to obtain cloud server CiHosted user attribute set AttrsCiThrough the user attribute set AttrsCiObtaining corresponding set SC in attribute set SiAccording to the corresponding set SCiObtaining corresponding set SKC in attribute private key SKi(i.e. SC)iThis time corresponding to parameter j) in SK, and SCiAnd SKCiSent to the cloud server C togetheriWhere i represents the number of the cloud server, and i ∈ [1, N ]]Wherein N represents the total number of cloud servers;
(3) cloud server CiFor set SCiAccording to SKCz、Y′、CzAnd C'zComputing cloud decryption ciphertext DNzAnd sending the cloud decrypted ciphertext to an endorsement node in the super account block chain network:
Figure BDA0002349349800000104
Figure BDA0002349349800000111
where m represents the number of element z in the new set of leaf nodes Y'.
(4) The endorsement node receives the cloud decrypted ciphertext sent by all the cloud serversA set formed by all elements z corresponding to the cloud decryption ciphertexts is taken, and a logical structure P of an access control strategy and a key ciphertext CT are obtained from a block of a block chain through a chain codekSecond part of (2)
Figure BDA0002349349800000115
And a third part C, then judging whether a subset meeting the access control strategy exists in the set, if so, entering the step (5), otherwise, ending the process;
for the example above, if a subset of the set of all elements z is one of { AttrA-1, AttrC-3}, { AttrA-1, AttrD-4}, { AttrB-2, AttrC-3}, or { AttrB-2, AttrD-4}, then it satisfies the access control policy.
(5) The endorsement node is according to the first part D of the attribute private key SK and the key ciphertext CTkSecond part of (2)
Figure BDA0002349349800000112
And a third part C obtains an intermediate decryption result M 'and combines the intermediate decryption result M' and the secret key ciphertext CTkThe third part C of the message is sent to the client;
the calculation process of the step specifically comprises the following steps:
Figure BDA0002349349800000113
wherein K represents a root node computation result, which is obtained by a recursive operation of intermediate nodes to the root node:
K=e(gr·H(GID)β,g)s
thus is provided with
Figure BDA0002349349800000114
(6) The client end receives the intermediate decryption result M' and the key ciphertext CTkGenerates a decryption result M (i.e., a symmetric key), and obtains a data ciphertext CT from the cloud serverfAnd are favorable toUsing the decryption result M to encrypt the data ciphertext CTfDecrypting to obtain an original plaintext of the user;
the decryption result M calculated in this step specifically adopts the following formula:
Figure BDA0002349349800000121
due to the introduction of the independent private key h (gid), the decryption work of the ciphertext can be performed only by the originator of the decryption request. Because the GID is unknown, even if an attacker acquires the ciphertext and the intermediate settlement result thereof, the last step cannot be executed to acquire the plaintext, thereby improving the security of the ciphertext and the uniqueness of the decryption operation. Meanwhile, a user unique identifier GID is embedded in the private key, so that even if the same attribute is adopted, the attribute private keys of different users are different, and when different users utilize attribute collusion to attack, the GIDs are different, so that the collusion users cannot obtain the calculation results of the intermediate node and even the root node through a Lagrange interpolation method, and the user attribute collusion attack is effectively resisted.
Compared with the prior art, the technical scheme of the invention can obtain the following beneficial effects: the multi-cloud architecture enables different cloud ends to host mutually disjoint attribute sets, the CP-ABE process is improved to be matched with the multi-cloud architecture, a block chain super account book is introduced to serve as a trusted third party and used for storing an intermediate logic structure and decryption security parameters of an access control strategy tree, and privacy of an access control strategy and privacy of user attributes are effectively protected. In addition, the invention embeds globally unique user GID information on the basis of the prior CP-ABE algorithm, so that only the initiator of the access request can finally decrypt the ciphertext, thereby effectively resisting replay attack and man-in-the-middle attack.
It will be understood by those skilled in the art that the foregoing is only a preferred embodiment of the present invention, and is not intended to limit the invention, and that any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (9)

1. A multi-cloud CP-ABE access control method based on a blockchain is applied to a system comprising a client, a cloud server and a super-account blockchain network, and is characterized by comprising the following steps:
an encryption process comprising the steps of:
s11, the client acquires the original plaintext of the user, and encrypts the original plaintext by using a symmetric encryption algorithm to obtain a data ciphertext CTfEncrypting a secret key M used in a symmetric encryption algorithm using a user's public parameter PK and a pre-established access control tree T to obtain a secret key ciphertext CTkThe data ciphertext CTfSending to cloud server, and sending CTkSending the data to an endorsement node in a super account block chain network;
s12, endorsement node calls chain code pair key ciphertext CTkAnd analyzing to obtain the access control tree T, segmenting and hiding the access control tree T, sending one part of the processed result to the cloud server, and storing the other part of the processed result in a block chain.
Secondly, the decryption process comprises the following steps:
s21, the client acquires an attribute set S submitted by a user and a global unique identifier GID of the user, generates a corresponding attribute private key SK according to the attribute set S and the global unique identifier GID, and sends the attribute private key SK and the attribute set S to an endorsement node in the super-account block-chain network;
s22, endorsement node calls chain code to acquire cloud server CiHosted user attribute set AttrsCiThrough the user attribute set AttrsCiObtaining corresponding set SC in attribute set SiAccording to the corresponding set SCiObtaining corresponding set SKC in attribute private key SKiAnd combining SCiAnd SKCiSent to the cloud server C togetheriWhere i represents the number of the cloud server, and i ∈ [1, N ]]Wherein N represents the total number of cloud servers;
s23 and cloud server CiFor set SCiEach of which isElement z according to SKCzComputing cloud decryption ciphertext DNzAnd sending the cloud decrypted ciphertext to an endorsement node in the super account block chain network:
s24, after receiving the cloud decryption ciphertexts sent by all the cloud servers, the endorsement node acquires a set formed by all the elements z corresponding to the cloud decryption ciphertexts, and acquires a logic structure P of an access control strategy and a key ciphertext CT from a block of a block chain through a chain codekSecond part of (2)
Figure FDA0002349349790000029
And a third part C, then judging whether a subset meeting the access control strategy exists in the set, if so, entering a step S25, otherwise, ending the process;
s25, endorsement node according to attribute private key SK first part D, and key ciphertext CTkSecond part of (2)
Figure FDA00023493497900000210
And the third part C obtains an intermediate decryption result M' and the key ciphertext CTkThe third part C of the message is sent to the client;
s26, the client side decrypts the result M' and the key ciphertext CT according to the received intermediate decryption resultkGenerates a decryption result M (i.e., a symmetric key), and obtains a data ciphertext CT from the cloud serverfAnd using the decryption result M to encrypt the data ciphertext CTfDecryption is performed to obtain the original plaintext of the user.
2. The multi-cloud CP-ABE access control method according to claim 1, wherein the public parameter PK of the user is equal to:
Figure FDA0002349349790000021
wherein
Figure FDA0002349349790000022
Multiplication loop with the order of prime pGroup g represents a generator, α and β are random numbers, α,
Figure FDA0002349349790000023
Figure FDA0002349349790000024
Figure FDA0002349349790000025
Denotes the modulo-p complete residual frame, p denotes a random large prime number, and e denotes a bilinear map.
3. The multi-cloud CP-ABE access control method according to claim 2, wherein the access control tree T is a binary tree structure with leaf nodes being elements in the attribute set S of the user AND non-leaf nodes being logical operators of the access control policy, such as AND OR.
4. The multi-cloud CP-ABE access control method of claim 3, wherein the key ciphertext CTkEqual to:
Figure FDA0002349349790000026
wherein the access control tree T is the cipher text CT of the keykThe first part of (a) is,
Figure FDA0002349349790000027
is the second part, C is the third part, CyIs the fourth fraction, C'yIs the fifth part, s represents a random number and
Figure FDA0002349349790000028
x represents any node in the access control tree T, and the polynomial q corresponding to the node xx(0)=qparent(x)(index (x)), parent (x) represents the parent node of node x, and index (x) represents the sequence number of node x in its corresponding parent node parent (x), the polynomial corresponding to the root nodeqx(0) Equal to s, Y represents a set of leaf nodes in the access control tree T, Y represents a leaf node in the set of leaf nodes Y, H () represents a hash function, att (Y) represents an attribute associated with the leaf node Y.
5. The multi-cloud CP-ABE access control method according to claim 4, wherein the step S12 specifically comprises parsing out the access control tree T, and obtaining a logical structure P and a leaf node set Y of an access control policy in the access control tree T; subsequently, numbering the leaf nodes in the leaf node set Y according to the sequence from left to right in the access control tree T, thereby forming a new leaf node set Y'; finally, the { set of leaf nodes Y',
Figure FDA0002349349790000031
Figure FDA0002349349790000032
sent to the cloud server together, the logical structure P of the access control policy,
Figure FDA0002349349790000033
Figure FDA0002349349790000034
C=hsand the entry blocks are stored in a block chain super ledger.
6. The multi-cloud CP-ABE access control method according to claim 5, wherein the specific structure of the attribute private key SK is as follows:
Figure FDA0002349349790000035
wherein the first part D of the attribute private key SK is a fixed parameter which is randomly generated, r is a random number and has
Figure FDA0002349349790000036
j∈S,DjRepresenting the second part of the attribute private key SK, a random number
Figure FDA0002349349790000037
H (j) represents the hash value of attribute j, H (GID) represents the hash value of globally unique identifier GID, D'jRepresenting a third part of the attribute private key SK, DjAnd D'jAre all arrays.
7. The multi-cloud CP-ABE access control method of claim 6, wherein in step S23, a cloud decryption ciphertext DN is calculatedzThe following formula is adopted:
Figure FDA0002349349790000038
where m represents the number of element z in the new set of leaf nodes Y'.
8. The multi-cloud CP-ABE access control method of claim 7,
the intermediate decryption result M' obtained in step S25 is obtained by using the following formula;
Figure FDA0002349349790000041
wherein K represents the root node computation result and has
K=e(gr·H(GID)β,g)s
Thus is provided with
Figure FDA0002349349790000042
9. The multi-cloud CP-ABE access control method according to claim 8, wherein the following formula is specifically adopted for calculating the decryption result M in step S26:
Figure FDA0002349349790000043
CN201911408586.4A 2019-12-31 2019-12-31 Multi-cloud CP-ABE access control method based on block chain Active CN111130757B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911408586.4A CN111130757B (en) 2019-12-31 2019-12-31 Multi-cloud CP-ABE access control method based on block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911408586.4A CN111130757B (en) 2019-12-31 2019-12-31 Multi-cloud CP-ABE access control method based on block chain

Publications (2)

Publication Number Publication Date
CN111130757A true CN111130757A (en) 2020-05-08
CN111130757B CN111130757B (en) 2020-12-25

Family

ID=70506222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911408586.4A Active CN111130757B (en) 2019-12-31 2019-12-31 Multi-cloud CP-ABE access control method based on block chain

Country Status (1)

Country Link
CN (1) CN111130757B (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111598695A (en) * 2020-05-18 2020-08-28 国网电子商务有限公司 Block chain data access method and device
CN111614680A (en) * 2020-05-25 2020-09-01 华中科技大学 CP-ABE-based traceable cloud storage access control method and system
CN111740988A (en) * 2020-06-19 2020-10-02 武汉大学 Cloud storage data encryption method, system and storage medium
CN111901302A (en) * 2020-06-28 2020-11-06 石家庄铁道大学 Medical information attribute encryption access control method based on block chain
CN112039880A (en) * 2020-08-30 2020-12-04 河南大学 Block chain distributed outsourcing-based dual-policy access control method
CN112073479A (en) * 2020-08-26 2020-12-11 重庆邮电大学 Method and system for controlling de-centering data access based on block chain
CN112104454A (en) * 2020-08-11 2020-12-18 东方红卫星移动通信有限公司 Data secure transmission method and system
CN112291053A (en) * 2020-11-06 2021-01-29 中国科学院重庆绿色智能技术研究院 Lattice and basic access tree based CP-ABE method
CN112365945A (en) * 2020-10-27 2021-02-12 扬州大学 Block chain-based electronic medical record fine-grained access control and ciphertext searchable method
CN112487443A (en) * 2020-11-11 2021-03-12 昆明理工大学 Energy data fine-grained access control method based on block chain
CN112637278A (en) * 2020-12-09 2021-04-09 云南财经大学 Data sharing method and system based on block chain and attribute-based encryption and computer readable storage medium
CN112966294A (en) * 2021-01-15 2021-06-15 长沙理工大学 Single-wheel interactive linked list ORAM access method
CN113242219A (en) * 2021-04-26 2021-08-10 卓尔智联(武汉)研究院有限公司 Data transmission method, block chain network and storage medium
CN113411300A (en) * 2021-05-10 2021-09-17 南京玄盾科技有限公司 Method and system for managing authority on chain based on ciphertext policy attribute-based encryption
CN114039790A (en) * 2021-11-23 2022-02-11 重庆邮电大学 Block chain-based fine-grained cloud storage security access control method
CN114065265A (en) * 2021-11-29 2022-02-18 重庆邮电大学 Fine-grained cloud storage access control method, system and equipment based on block chain technology
CN114650184A (en) * 2022-04-15 2022-06-21 四川中电启明星信息技术有限公司 Docker process security access control method based on trust degree
WO2023078013A1 (en) * 2021-11-08 2023-05-11 华为云计算技术有限公司 Encryption method and apparatus, and related device
CN116112244A (en) * 2023-01-13 2023-05-12 重庆邮电大学 Access control method based on blockchain and attribute-based encryption

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503994A (en) * 2016-11-02 2017-03-15 西安电子科技大学 Block chain private data access control method based on encryption attribute
CN107370604A (en) * 2017-07-07 2017-11-21 华中科技大学 A kind of more granularity access control methods under big data environment
KR20190041784A (en) * 2017-10-13 2019-04-23 주식회사 포스링크 System and method for controlling distribution synchronization access based on blockchain in multicloud environment
CN109951498A (en) * 2019-04-18 2019-06-28 中央财经大学 A kind of block chain access control method and device based on ciphertext policy ABE encryption
CN110493347A (en) * 2019-08-26 2019-11-22 重庆邮电大学 Data access control method and system in large-scale cloud storage based on block chain

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503994A (en) * 2016-11-02 2017-03-15 西安电子科技大学 Block chain private data access control method based on encryption attribute
CN107370604A (en) * 2017-07-07 2017-11-21 华中科技大学 A kind of more granularity access control methods under big data environment
KR20190041784A (en) * 2017-10-13 2019-04-23 주식회사 포스링크 System and method for controlling distribution synchronization access based on blockchain in multicloud environment
CN109951498A (en) * 2019-04-18 2019-06-28 中央财经大学 A kind of block chain access control method and device based on ciphertext policy ABE encryption
CN110493347A (en) * 2019-08-26 2019-11-22 重庆邮电大学 Data access control method and system in large-scale cloud storage based on block chain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHUNHUA LI ET AL.: "Achieving Privacy-Preserving CP-ABE Access Control with Multi-Cloud", 《2018 IEEE INTL CONF ON PARALLEL & DISTRIBUTED PROCESSING WITH ISPA/IUCC/BDCLOUD/SOCIALCOM/SUSTAINCOM》 *

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111598695A (en) * 2020-05-18 2020-08-28 国网电子商务有限公司 Block chain data access method and device
CN111614680B (en) * 2020-05-25 2021-04-02 华中科技大学 CP-ABE-based traceable cloud storage access control method and system
CN111614680A (en) * 2020-05-25 2020-09-01 华中科技大学 CP-ABE-based traceable cloud storage access control method and system
CN111740988A (en) * 2020-06-19 2020-10-02 武汉大学 Cloud storage data encryption method, system and storage medium
CN111901302A (en) * 2020-06-28 2020-11-06 石家庄铁道大学 Medical information attribute encryption access control method based on block chain
CN112104454A (en) * 2020-08-11 2020-12-18 东方红卫星移动通信有限公司 Data secure transmission method and system
CN112104454B (en) * 2020-08-11 2023-04-07 东方红卫星移动通信有限公司 Data secure transmission method and system
CN112073479A (en) * 2020-08-26 2020-12-11 重庆邮电大学 Method and system for controlling de-centering data access based on block chain
CN112039880A (en) * 2020-08-30 2020-12-04 河南大学 Block chain distributed outsourcing-based dual-policy access control method
CN112039880B (en) * 2020-08-30 2021-07-30 河南大学 Block chain distributed outsourcing-based dual-policy access control method
CN112365945A (en) * 2020-10-27 2021-02-12 扬州大学 Block chain-based electronic medical record fine-grained access control and ciphertext searchable method
CN112365945B (en) * 2020-10-27 2024-03-26 扬州大学 Electronic medical record fine granularity access control and ciphertext searchable method based on blockchain
CN112291053A (en) * 2020-11-06 2021-01-29 中国科学院重庆绿色智能技术研究院 Lattice and basic access tree based CP-ABE method
CN112487443A (en) * 2020-11-11 2021-03-12 昆明理工大学 Energy data fine-grained access control method based on block chain
CN112637278A (en) * 2020-12-09 2021-04-09 云南财经大学 Data sharing method and system based on block chain and attribute-based encryption and computer readable storage medium
CN112966294A (en) * 2021-01-15 2021-06-15 长沙理工大学 Single-wheel interactive linked list ORAM access method
CN113242219A (en) * 2021-04-26 2021-08-10 卓尔智联(武汉)研究院有限公司 Data transmission method, block chain network and storage medium
CN113411300B (en) * 2021-05-10 2022-08-19 南京玄盾科技有限公司 Ciphertext policy attribute based encryption-based on-chain authority management method and system
CN113411300A (en) * 2021-05-10 2021-09-17 南京玄盾科技有限公司 Method and system for managing authority on chain based on ciphertext policy attribute-based encryption
WO2023078013A1 (en) * 2021-11-08 2023-05-11 华为云计算技术有限公司 Encryption method and apparatus, and related device
CN114039790A (en) * 2021-11-23 2022-02-11 重庆邮电大学 Block chain-based fine-grained cloud storage security access control method
CN114039790B (en) * 2021-11-23 2023-07-18 重庆邮电大学 Fine-grained cloud storage security access control method based on blockchain
CN114065265A (en) * 2021-11-29 2022-02-18 重庆邮电大学 Fine-grained cloud storage access control method, system and equipment based on block chain technology
CN114065265B (en) * 2021-11-29 2024-04-16 重庆邮电大学 Fine-grained cloud storage access control method, system and equipment based on blockchain technology
CN114650184A (en) * 2022-04-15 2022-06-21 四川中电启明星信息技术有限公司 Docker process security access control method based on trust degree
CN116112244A (en) * 2023-01-13 2023-05-12 重庆邮电大学 Access control method based on blockchain and attribute-based encryption

Also Published As

Publication number Publication date
CN111130757B (en) 2020-12-25

Similar Documents

Publication Publication Date Title
CN111130757B (en) Multi-cloud CP-ABE access control method based on block chain
Li et al. Full verifiability for outsourced decryption in attribute based encryption
CN112019591B (en) Cloud data sharing method based on block chain
Sanka et al. Secure data access in cloud computing
JP5562687B2 (en) Securing communications sent by a first user to a second user
WO2018045568A1 (en) Access control method oriented to cloud storage service platform and system thereof
US10880100B2 (en) Apparatus and method for certificate enrollment
US20100115260A1 (en) Universal secure token for obfuscation and tamper resistance
Muthurajkumar et al. Secured temporal log management techniques for cloud
CN111614680B (en) CP-ABE-based traceable cloud storage access control method and system
Deng et al. Tracing and revoking leaked credentials: accountability in leaking sensitive outsourced data
CN113434875A (en) Lightweight access method and system based on block chain
Xu et al. Secure deduplication for big data with efficient dynamic ownership updates
Abo-Alian et al. Auditing-as-a-service for cloud storage
Gajmal et al. Blockchain-based access control and data sharing mechanism in cloud decentralized storage system
WO2023134576A1 (en) Data encryption method, attribute authorization center, and storage medium
CN114430321B (en) DFA self-adaptive security-based black box traceable key attribute encryption method and device
Xu et al. NC-MACPABE: Non-centered multi-authority proxy re-encryption based on CP-ABE for cloud storage systems
Abbdal et al. Secure third party auditor for ensuring data integrity in cloud storage
CN113656818A (en) No-trusted third party cloud storage ciphertext duplication removing method and system meeting semantic security
Li Data Protection of Accounting Information Based on Big Data and Cloud Computing
Keerthana et al. Slicing, Tokenization, and Encryption Based Combinational Approach to Protect Data-at-Rest in Cloud Using TF-Sec Model
Joseph et al. Design a hybrid optimization and homomorphic encryption for securing data in a cloud environment
CN111585756A (en) Certificateless cloud auditing method suitable for multi-copy-multi-cloud condition
Hahn et al. Verifiable outsourced decryption of encrypted data from heterogeneous trust networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant