Data security flow method based on access control encryption in cloud edge environment
By adopting cross-domain internal component access control encryption and distributed key generation protocols in the cloud computing environment, the problems of cross-domain data circulation control and data writing control in the cloud computing environment are solved, and the secure circulation of private data and effective control of data are achieved.
Patent Information
- Application Number
- CN202411678082.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2044-11-22
AI Technical Summary
The prior art is difficult to achieve cross-domain data circulation control and data writing control in a cloud computing environment, resulting in malicious senders who may disclose sensitive data.
Cross-domain internal product access control encryption is adopted, and the threshold-keeping structure and distributed key generation protocol are used to ensure that only authorized senders and receivers can generate legal encrypted cryptographic texts, and use edge nodes to clean up to realize data write control.
It realizes the secure circulation of private data in a cloud-edge environment, ensures that the cross-domain circulation of data between different institutions is controlled, and prevents malicious senders from leaking sensitive data.
Smart Images

Figure CN119622700A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of secure data circulation, and specifically relates to a secure data flow method based on access control encryption in a cloud-edge environment. Background Art
[0002] With the development of information technology, the amount of enterprise data continues to increase. How to effectively manage and utilize this data has become an important issue facing enterprise managers. In order to reduce the cost of maintaining data centers and improve the efficiency of data sharing, enterprises usually use cloud platforms such as Alibaba Cloud or Huawei Cloud to store and manage data so that users can share data efficiently through the cloud.
[0003] However, on the one hand, the data may contain users' privacy information, which cannot be shared arbitrarily according to relevant laws and regulations; on the other hand, the cloud platform is semi-trusted and may leak stored data.
[0004] Therefore, private data cannot be directly shared on the cloud. An efficient and secure sharing mechanism is needed to realize private data sharing in a cloud-edge environment.
[0005] Currently, in the existing technologies, technologies such as attribute-based encryption (ABE) and inner product encryption (IPE) are used to protect data privacy while achieving efficient data sharing.
[0006] Specifically, in the IPE-based data sharing system, the sender embeds the attribute vector describing the access policy into the ciphertext and publishes the encrypted data to the cloud server, so that only users who meet the specified access policy can decrypt it, and ensure that the cloud server and external adversaries cannot obtain any information about the data and access policy.
[0007] Inner Product Encryption (IPE) technology can realize the encryption protection of private data in the cloud-edge environment. The entities involved include trusted authorization agencies, cloud servers, senders, and receivers. Figure 1 As shown, the implementation process of IPE includes the following steps:
[0008] 1) System initialization: The trusted authority generates the system public key PK and the system master key MK.
[0009] 2) Key generation: The trusted authority generates a key based on the system master key MK and the predicate vector Generate the decryption key DK and distribute it securely to the recipient.
[0010] 3) Data encryption: The sender inputs the system public key PK, plaintext m and attribute vector , generate the ciphertext ct.
[0011] 4) Data decryption: The receiver inputs the decryption key DK and the ciphertext ct and decrypts the plaintext m or ⊥.
[0012] In the cloud computing environment, although IPE technology can protect the privacy of data and recipients, there are still the following problems with the secure circulation of data:
[0013] 1) IPE does not support cross-domain data flow control, that is, one authorization agency is responsible for both sender and receiver authorization. In actual applications, in order to better mine data value, data often needs to circulate between different agencies, and senders and receivers in different agencies are often authorized by their respective agencies.
[0014] 2) IPE can only implement read control of data, that is, only authorized recipients can access data through their decryption keys, but cannot implement write control of data, that is, any sender can execute the encryption algorithm to upload the ciphertext to the cloud server, causing malicious senders to encrypt sensitive data and leak it to certain recipients, thereby rendering data circulation control ineffective.
[0015] The existing references are as follows:
[0016] [1] Wang Guohuan. Principle and application of inner product encryption technology[J]. Network Security Technology and Applications, 2021, (01): 27-30.
[0017] [2] Chen Lixuan. Research on access control encryption scheme for edge cloud computing[D]. Beijing University of Posts and Telecommunications, 2023.
[0018] [3] Wang Zheng, Wang Jingwei, Yin Xinchun. Attribute-based purifiable and collaborative data sharing scheme in medical scenarios[J / OL]. Computer Science, 1-12[2024-09-28]. Summary of the invention
[0019] In response to the problems existing in the prior art, the present invention proposes a data security flow method based on access control encryption in a cloud-edge environment, which adopts cross-domain in-product access control encryption to realize encryption protection and circulation control of privacy data, and meet the security circulation requirements of privacy data in the cloud-edge environment.
[0020] The method for secure data flow based on access control encryption in a cloud-edge environment has the following specific steps:
[0021] Step 1: Build a cloud-edge environment simulation scenario including the sender and the cloud server;
[0022] The simulation scenario includes: receiving domain authority (RA), sending domain authority (SAs), sender, edge node, cloud server and receiver;
[0023] The receiving domain authority is responsible for generating decryption keys for each recipient within its domain.
[0024] A single sending domain authority cannot generate a valid encryption key. At least a threshold number t of authorities must jointly generate valid encryption keys for senders in their domains.
[0025] The sender obtains the encryption key corresponding to its attribute vector from multiple sending domain authorities, encrypts the shared data with the key, and transmits the original ciphertext to the edge node.
[0026] The edge node checks the original ciphertext and converts it into a purified ciphertext. First, the edge node verifies whether the sender ciphertext is generated by the authorized attribute vector. If the verification is correct, the edge node purifies the ciphertext using a random message key and uploads the purified ciphertext to the cloud server.
[0027] The cloud server provides a large amount of storage space for the purified ciphertext from the edge nodes and sends the frequently accessed ciphertext to the edge nodes for caching for fast access.
[0028] The receiver obtains the corresponding decryption key from the receiving domain authority, obtains the purified ciphertext from the edge node, and uses the decryption key to decrypt the purified ciphertext to restore the plaintext.
[0029] Step 2: Initially input the security parameter λ of the algorithm Setup(λ) and output the public parameter pp.
[0030] Step 3: The receiving domain authority inputs the public parameter pp into the algorithm RASetup(pp) and outputs the receiving domain public key mpk ra and receiving domain private key msk ra .
[0031] Step 4: n sending domain authorities jointly execute the public parameter pp and the receiving domain public key mpk ra Send to algorithm SASetup(pp,mpk ra ,n,t), obtain the public key mpk of the sending domain sa and respective authorization keys.
[0032] n is the number of sending domain authorities, t is the threshold of the number of sending domain authorities n, and the authorization key of the i-th sending domain authority is
[0033] Step 5: For each sending domain authority within the threshold, use the sending domain's public key mpk sa and their respective authorization keys, run the partial encryption key generation algorithm to obtain their respective partial encryption keys, and return them to the sender; after the sender receives t partial encryption keys, it runs the aggregate encryption key algorithm to obtain the aggregate encryption key
[0034] Partial encryption key generation algorithm For: Enter the sending domain public key mpk sa , the authorized private key of the i-th sending domain authority The sender's unique identifier id and attribute vector Output the partial encryption key ek generated by the i-th sending domain authority for the sender i .
[0035] Aggregate encryption key algorithm EKReconst(mpk sa ,{ek i} i∈T ): Enter the sending domain public key mpk sa and t partial encryption keys {ek i} i∈T , T represents the set [1,2,...,i,...t]; output aggregate encryption key
[0036] Step 6: The receiver requests the decryption key from the receiving domain authority, and the receiving domain authority runs the decryption key generation algorithm to obtain the decryption key. and returned to the receiver.
[0037] Decryption key generation algorithm Enter the receiving domain private key msk ra and predicate vector Output decryption key
[0038] Step 7: The sender uses the aggregate encryption key Run the encryption algorithm Encrypt to encrypt the given plaintext data m, obtain the encrypted original ciphertext ct, and upload it to the edge node.
[0039] Enter the receiving domain public key mpk ra , send domain public key mpk sa , encryption key And the given plaintext data m to the encryption algorithm Encrypt, output the encrypted original ciphertext: ct = (c, π), c is the ciphertext of the plaintext data m, π is the zero-knowledge proof;
[0040] in:
[0041]
[0042] s,τ are selected random numbers; Y, g, g0, g j ,y j All are receiving domain public key mpkra The group element of ; l represents the length of the attribute vector; C, C0, E, E0, C j , E j Represents the parameters of the original ciphertext ct.
[0043] The zero-knowledge proof π is obtained by the sender running the proof algorithm of the Schnorr scheme. The specific formula is as follows:
[0044]
[0045] pok represents proof of knowledge, W is evidence, e(·,·) is the pairing operation, μ, η are encryption keys Parameters.
[0046] vk 00 , vk 0j It comes from the sending domain public key mpk sa group element.
[0047] Step 8. After receiving the original ciphertext ct from the sender, the edge node runs the purification algorithm to generate the purified ciphertext and uploads it to the cloud server.
[0048] Sanitize(mpk ra ,mpk sa ,ct) Input the receiving domain public key mpk ra , send domain public key mpk sa and the original ciphertext ct, determine whether ct is legal, if so, output the purified ciphertext ct′, otherwise output ⊥.
[0049] Select random number calculate:
[0050]
[0051] Step 9: When the user as a recipient wants to access the purified ciphertext in the cloud server, he requests the ciphertext from the nearest edge node. The edge node determines whether the ciphertext exists. If so, it returns it directly to the user. Otherwise, the edge node requests the cloud server, saves the ciphertext and returns it to the user.
[0052] Step 10: After the user retrieves the purified ciphertext ct′, use the decryption key Run the decryption algorithm Decrypt to decrypt and get the message m.
[0053] Decryption algorithm Enter the decryption key and the purified ciphertext ct′, if the predicate vector in the decryption key and the attribute vector in the purified ciphertext satisfy Output message m, otherwise output ⊥.
[0054] The advantages of the present invention are:
[0055] 1) A data security flow method based on access control encryption in a cloud-edge environment improves the security of private data circulation in the cloud-edge environment and realizes cross-domain data sharing. The sending domain authorization agency controls to whom the sender can send data, and the receiving domain authorization agency controls whose data the receiver can receive. At the same time, it ensures that a single sending domain authorization agency cannot arbitrarily generate encryption keys to produce legal ciphertext.
[0056] 2) A data security flow method based on access control encryption in a cloud-edge environment can not only realize data read control, but also data write control, ensuring that only authorized senders can use their encryption keys to generate valid ciphertexts, and the ciphertexts generated by unauthorized senders will be discarded by edge nodes, preventing malicious senders from leaking sensitive data to unauthorized receivers. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 It is a schematic diagram of data protection based on IPE in the prior art;
[0058] Figure 2 This is a flow chart of a data security flow method based on access control encryption in a cloud-edge environment of the present invention;
[0059] Figure 3 A cloud-edge environment simulation scenario diagram including a sender and a cloud server built for the present invention. DETAILED DESCRIPTION
[0060] The present invention will be further described in detail below with reference to the accompanying drawings and examples.
[0061] The present invention proposes a data security flow method based on access control encryption in a cloud-edge environment, and adopts cross-domain inner product access control encryption to realize the encryption protection and circulation control of private data. First, decentralized encryption key generation is realized through threshold-maintaining structured signatures and distributed key generation protocols, ensuring that a single sending domain authorization agency cannot arbitrarily generate encryption keys to produce legal ciphertexts to bypass purification. Then, a zero-knowledge proof mechanism is used to prove that only authorized encryption keys can produce legal ciphertexts, and edge nodes are used to purify legal original ciphertexts, while illegal ciphertexts are discarded, ensuring that only authorized senders and receivers can successfully send and receive ciphertexts, and unauthorized receivers cannot recover messages from ciphertexts even if they collude with the sender; the requirements for the secure circulation of private data in a cloud-edge environment are met. Specifically:
[0062] 1) The authorization agencies are divided into sending domain authorization agencies (SA) and receiving domain authorization agencies (RA), which generate corresponding keys for senders and receivers in their domains to support cross-domain data flow control. At the same time, a distributed key generation protocol and a threshold structure-preserving signature scheme are used to achieve decentralized encryption key generation. All SAs jointly select and distribute domain keys for generating encryption keys, and share them among all SAs, so that legal encryption keys can only be generated when a certain threshold number of SAs are working, thereby reducing trust and dependence on a single SA.
[0063] 2) Designed a purifiable inner product encryption and purification algorithm, using the attribute vector The associated encryption key encrypts the message and uses the zero-knowledge proof mechanism to generate the corresponding proof. In the purification phase, the purifier verifies the proof and purifies the legal ciphertext (i.e., using the authorized attribute vector The generated ciphertext is then uploaded to the cloud server, while the illegal ciphertext is discarded to achieve data write control. The purified ciphertext can only be correctly decrypted by the recipient who holds a valid private key. Unauthorized recipients cannot decrypt the purified ciphertext even if they collude with malicious senders.
[0064] like Figure 2 As shown, the data security flow method based on access control encryption in a cloud-edge environment has the following specific steps:
[0065] Step 1: Build a cloud-edge environment simulation scenario including the sender and the cloud server;
[0066] All network communications between the sender and the cloud server are controlled by the purifier, and the read control of the data is determined by the receiver's predicate vector. The entities involved are Figure 3 As shown, it includes: a receiving domain authority (RA), a sending domain authority (SAs), a sender, an edge node, a cloud server and a receiver.
[0067] The receiving domain authority acts as the administrator of the receiving domain and is a completely honest entity responsible for generating decryption keys for each recipient within its domain.
[0068] The sending domain authority acts as the information security committee of the sending domain. The secret key of the sending domain is distributed among n committee members. Therefore, a single sending domain authority cannot generate a valid encryption key. At least a threshold number t of authorities are required to jointly generate a valid encryption key for the sender in its domain.
[0069] The sender obtains the encryption key corresponding to its attribute vector from multiple sending domain authorities, encrypts the shared data with the key, and transmits the original ciphertext to the edge node.
[0070] For each data, the sender first processes it with a random message key, then uses the encryption key to encapsulate the message key, and finally sends the encrypted result to the edge node.
[0071] The edge node checks the original ciphertext and converts it into a purified ciphertext. First, the edge node verifies whether the sender ciphertext is generated by the authorized attribute vector. If the verification is correct, the edge node purifies the ciphertext using a random message key and uploads the purified ciphertext to the cloud server.
[0072] The cloud server provides a large amount of storage space for the purified ciphertext from the edge nodes and sends the frequently accessed ciphertext to the edge nodes for caching for fast access.
[0073] The receiver obtains the corresponding decryption key from the receiving domain authority, obtains the purified ciphertext from the edge node, and uses the decryption key to decrypt the purified ciphertext to restore the plaintext.
[0074] Step 2: Initially input the security parameter λ of the algorithm Setup(λ) and output the public parameter pp.
[0075] Step 3: The receiving domain authority inputs the public parameter pp into the algorithm RASetup(pp) and outputs the receiving domain public key mpk ra and receiving domain private key msk ra .
[0076] Step 4: n sending domain authorities jointly execute the public parameter pp and the receiving domain public key mpk ra Send to algorithm SASetup(pp,mpk ra ,n,t), obtain the public key mpk of the sending domain sa and respective authorization keys.
[0077] n is the number of sending domain authorities, t is the threshold of the number of sending domain authorities n, and the authorization key of the i-th sending domain authority is
[0078] Step 5: For each sending domain authority within the threshold, use the sending domain's public key mpk sa and their respective authorization keys, run the partial encryption key generation algorithm to obtain their respective partial encryption keys, and return them to the sender; after the sender receives t partial encryption keys, it runs the aggregate encryption key algorithm to obtain the aggregate encryption key
[0079] Partial encryption key generation algorithm For: Enter the sending domain public key mpk sa , the authorized private key of the i-th sending domain authority The sender's unique identifier id and attribute vector Output the partial encryption key ek generated by the i-th sending domain authority for the sender i .
[0080] Aggregate encryption key algorithm EKReconst(mpk sa ,{ek i} i∈T ): Enter the sending domain public key mpk sa and t partial encryption keys {ek i} i∈T , T represents the set [1,2,...,i,...t]; output aggregate encryption key
[0081] Step 6: The receiver requests the decryption key from the receiving domain authority, and the receiving domain authority runs the decryption key generation algorithm to obtain the decryption key. and returned to the receiver.
[0082] Decryption key generation algorithm Enter the receiving domain private key msk ra and predicate vector Output decryption key
[0083] Step 7: The sender uses the aggregate encryption key Run the encryption algorithm Encrypt to encrypt the given plaintext data m, obtain the encrypted original ciphertext ct, and upload it to the edge node.
[0084] Enter the receiving domain public key mpk ra , send domain public key mpk sa , encryption key And the given plaintext data m to the encryption algorithm Output the encrypted original ciphertext: ct = (c, π), where c is the ciphertext of the plaintext data m, and π is the zero-knowledge proof;
[0085] in:
[0086]
[0087] s,τ are selected random numbers; Y, g, g0, g j ,y j All are receiving domain public key mpk ra The group element of ; l represents the length of the attribute vector; C, C0, E, E0, C j , E j Represents the parameters of the original ciphertext ct.
[0088] The zero-knowledge proof π is obtained by the sender running the proof algorithm of the Schnorr scheme. The specific formula is as follows:
[0089]
[0090] pok represents proof of knowledge, W is evidence, e(·,·) is the pairing operation, μ, η are encryption keys Parameters of vk 00 , vk 0j It comes from the sending domain public key mpk sa group element.
[0091] Step 8. After receiving the original ciphertext ct from the sender, the edge node runs the purification algorithm to generate the purified ciphertext and uploads it to the cloud server.
[0092] Sanitize(mpk ra ,mpk sa ,ct) Input the receiving domain public key mpk ra , send domain public key mpk sa and the original ciphertext ct, determine whether ct is legal, if so, output the purified ciphertext ct′, otherwise output ⊥.
[0093] Select random number calculate:
[0094]
[0095] Among them, C, E, C0,E0,C j ,E j are the parameters from the original ciphertext ct.
[0096] Step 9: When the user as a recipient wants to access the purified ciphertext in the cloud server, he requests the ciphertext from the nearest edge node. The edge node determines whether the ciphertext exists. If so, it returns it directly to the user. Otherwise, the edge node requests the cloud server, saves the ciphertext and returns it to the user.
[0097] Step 10: After the user retrieves the purified ciphertext ct′, use the decryption key Run the decryption algorithm Decrypt to decrypt and get the message m.
[0098] Decryption algorithm Enter the decryption key and the purified ciphertext ct′, if the predicate vector in the decryption key and the attribute vector in the purified ciphertext satisfy Output message m, otherwise output ⊥.
[0099] Example:
[0100] 1) System initialization
[0101] First, the security parameter λ is selected and RA runs the Setup algorithm.
[0102] The details are as follows: construct a bilinear group with a prime order of p and The corresponding bilinear map is Select random number is the length of the attribute / predicate vector that the user has.
[0103] Final output of public parameters
[0104] Secondly, RA runs the RASetup algorithm to create the receiving domain private key;
[0105] The details are as follows: Select a random number calculate:
[0106]
[0107] where g,h are selected from the public parameters pp.
[0108] Then, RA publishes the receiving domain public key mpk ra And keep the domain key msk ra .
[0109] Finally, n SAs jointly run the SASetup algorithm to create the sending domain authority key, as follows:
[0110] Let SA1,…,SA n Want to choose Secret and distribute these secrets among them;SA i Calculate the shares according to the Pedersen distributed key generation protocol And keep its signing key: Specifically, taking the allocation of v as an example, assuming that each SA i Can sign, SA i Execute the following protocol:
[0111] Random selection And publish v i0 The commitment E0, where
[0112] Random selection Let F(x) = s i0 +d1x+…+d t-1 x t-1And calculate v ij =F(j),j=1,…,n.
[0113] Random selection And use b k Commitment k ,k=1,…,t-1, the last broadcast:
[0114] E ik =E(d k ,b k ),k=1,…,t-1.
[0115] First, let G(x) = r i0 +b1x+…+b t-1 x t-1 ,r ij =G(j), j=1,…,n, the last signature (v ij ,r ij ) and send the signature and shared shares to SA j .
[0116] Verify SA from other parties j Share received (v ji ,r ji ), and check If there is an index j for which the check fails, the share and its signature are published and the protocol is terminated.
[0117] Calculate the secret v = v 10 +…+v n0 Share of
[0118] Publish its verification key
[0119] Global Authentication Key It can be calculated based on Lagrange polynomial interpolation.
[0120] Finally, each SA initializes a list And keep the authority key And based on the Schnorr non-interactive zero-knowledge proof scheme, a public reference string crs is generated and the domain public key is published:
[0121] mpk sa =(vk,{vk i} i∈N ,crs).
[0122] 2) Encryption key generation
[0123] Each sender requests attribute vectors from t SAs respectively Corresponding partial encryption key, the i-th SA independently runs the EKParGen algorithm to create the partial encryption key ek i Specifically, for the attribute vector with identifier id SA first check If not, let η = H(id) and calculate and
[0124] Then generate the signature Finally, through the safe passage Send to the sender and put the id in
[0125] After obtaining t partial encryption keys, the sender runs the EKReconst algorithm to combine them into the final encryption key The details are as follows: Calculation in is the Lagrange coefficient of participant i. Finally, use as his / her encryption key.
[0126] 3) Decryption key generation
[0127] For each receiver, first assign it a predicate vector Then run the DKGen algorithm to generate the decryption key Specifically, given a predicate vector Select random number calculate
[0128]
[0129] Finally, the receiving domain authority sends the decryption key to Send to the receiver.
[0130] 4) Data encryption
[0131] Given plaintext data m, the sender uses the encryption key Run the Encrypt algorithm to encrypt data.
[0132] First, choose a random number calculate
[0133] get
[0134] Second, the sender runs the Schnorr scheme’s proof algorithm to calculate the zero-knowledge proof π to prove to the purifier that it has the correct Specifically, the sender obtains π through the proof of the following equation.
[0135]
[0136] Finally, the sender securely sends the ciphertext ct = (c,π) to the edge node.
[0137] 5) Ciphertext purification
[0138] For each uploaded ciphertext ct = (c, π), the edge node runs the Sanitize algorithm to purify it. First, the edge node verifies the zero-knowledge proof π to verify that the sender has The corresponding encryption key is used to generate ciphertext, and the ciphertext is discarded if the verification fails.
[0139] If all checks pass, the purified ciphertext is calculated as follows. Choose a random number Then calculate:
[0140]
[0141] Finally, the edge node will purify the ciphertext Upload to the cloud server.
[0142] 6) Data decryption
[0143] The receiver receives data from an edge node or cloud server. For the purified ciphertext c′, the receiver uses the decryption key Run the Decrypt algorithm to decrypt the plaintext m. Specifically, if Then calculate
[0144]
[0145] Finally, the receiver can recover the plaintext m=C / A.
Claims
1. A data security flow method based on access control encryption in a cloud-edge environment, characterized in that: The specific steps are as follows: Step 1: Build a cloud-edge environment simulation scenario including the sender and the cloud server; The simulation scenario includes: receiving domain authority, sending domain authority, sender, edge node, cloud server and receiver; Step 2: Initially input the security parameter λ of the algorithm Setup(λ) and output the public parameter pp; Step 3: The receiving domain authority inputs the public parameter pp into the algorithm RASetup(pp) and outputs the receiving domain public key mpk ra and receiving domain private key msk ra ; Step 4: n sending domain authorities jointly execute the public parameter pp and the receiving domain public key mpk ra Send to algorithm SASetup(pp,mpk ra ,n,t), obtain the public key mpk of the sending domain sa and respective authorization keys; n is the number of sending domain authorities, t is the threshold of the number of sending domain authorities n, and the authorization key of the i-th sending domain authority is Step 5: For each sending domain authority within the threshold, use the sending domain's public key mpk sa and their respective authorization keys, run the partial encryption key generation algorithm to obtain their respective partial encryption keys, and return them to the sender; after the sender receives t partial encryption keys, it runs the aggregate encryption key algorithm to obtain the aggregate encryption key Step 6: The receiver requests the decryption key from the receiving domain authority, and the receiving domain authority runs the decryption key generation algorithm to obtain the decryption key. and returns it to the recipient; Step 7: The sender uses the aggregate encryption key Run the encryption algorithm Encrypt to encrypt the given plaintext data m, obtain the encrypted original ciphertext ct, and upload it to the edge node; Enter the receiving domain public key mpk ra , send domain public key mpk sa , encryption key And the given plaintext data m to the encryption algorithm Encrypt, output the encrypted original ciphertext: ct = (c, π), c is the ciphertext of the plaintext data m, π is the zero-knowledge proof; in: s,τ are selected random numbers; Y, g, g0, g j ,y j All are receiving domain public key mpk ra The group element; l represents the length of the attribute vector; C, C0, E, E0, C j , E j Represents the parameters of the original ciphertext ct; The zero-knowledge proof π is obtained by the sender running the proof algorithm of the Schnorr scheme. The specific formula is as follows: pok represents proof of knowledge, W is the evidence, e(·,·) is the pairing operation, ′, η are the encryption keys Parameters; vk 00 , vk 0j It comes from the sending domain public key mpk sa The group elements of Step 8: After receiving the original ciphertext ct from the sender, the edge node runs the purification algorithm to generate the purified ciphertext and uploads it to the cloud server; Sanitize(mpk ra ,mpk sa ,ct) Input the receiving domain public key mpk ra , send domain public key mpk sa and the original ciphertext ct, determine whether ct is legal, if so, output the purified ciphertext ct′, otherwise output ⊥; Select random number calculate: Step 9: When the user as a receiver wants to access the purified ciphertext in the cloud server, the user requests the ciphertext from the nearest edge node. The edge node determines whether the ciphertext exists. If so, it returns it directly to the user. Otherwise, the edge node requests the cloud server, obtains the ciphertext, saves it, and returns it to the user. Step 10: After the user retrieves the purified ciphertext ct′, use the decryption key Run the decryption algorithm Decrypt to decrypt and get the message m.
2. A data security flow method based on access control encryption in a cloud-edge environment as claimed in claim 1, characterized in that: In the simulation scenario of step 1, the receiving domain authority is responsible for generating a decryption key for each receiver in its domain; A single sending domain authority cannot generate a valid encryption key, and at least a threshold number t of authorities jointly generate valid encryption keys for senders in their domains; The sender obtains the encryption key corresponding to its attribute vector from multiple sending domain authorities, encrypts the shared data with the key, and transmits the original ciphertext to the edge node; The edge node checks the original ciphertext and converts it into a purified ciphertext. First, the edge node verifies whether the sender ciphertext is generated by the authorized attribute vector. If the verification is correct, the edge node purifies the ciphertext using a random message key and uploads the purified ciphertext to the cloud server. The cloud server provides a large amount of storage space for the purified ciphertext from the edge nodes and sends the frequently accessed ciphertext to the edge nodes for caching for fast access; The receiver obtains the corresponding decryption key from the receiving domain authority, obtains the purified ciphertext from the edge node, and uses the decryption key to decrypt the purified ciphertext to restore the plaintext.
3. A data security flow method based on access control encryption in a cloud-edge environment as claimed in claim 1, characterized in that: In step 5, the partial encryption key generation algorithm For: Enter the sending domain public key mpk sa , the authorized private key of the i-th sending domain authority The sender's unique identifier id and attribute vector Output the partial encryption key ek generated by the i-th sending domain authority for the sender i ; Aggregate encryption key algorithm EKReconst(mpk sa ,{ek i } i∈T ): Enter the sending domain public key mpk sa and t partial encryption keys {ek i } i∈T , T represents the set [1,2,...,i,...t]; output aggregate encryption key 4. A data security flow method based on access control encryption in a cloud-edge environment as claimed in claim 1, characterized in that: In step 6, the decryption key generation algorithm Enter the receiving domain private key msk ra and predicate vector Output decryption key 5. A data security flow method based on access control encryption in a cloud-edge environment as claimed in claim 1, characterized in that: In step 10, the decryption algorithm Enter the decryption key and the purified ciphertext ct′, if the predicate vector in the decryption key and the attribute vector in the purified ciphertext satisfy Output message m, otherwise output ⊥.
Citation Information
Patent Citations
User privacy protection method based on attribute and homomorphism mixed encryption under cloud environment
CN104079574A
A safe, controllable and efficient data sharing method and system in a cloud computing environment
CN109831430A
Bidirectional access control method and system applied to cloud side data sharing
CN112187798A
Data circulation control method based on cleanable attribute encryption in cloud environment
CN115277171A
Access control encryption and decryption method, device and system for post-quantum security
CN115348006A
Cited By
Anonymous public key encryption method and system suitable for edge computing
CN120528602A
Data security controllable flow method supporting time constraint in cloud edge environment
CN121907585A