Next Article in Journal
PREFMoDeL: A Systematic Review and Proposed Taxonomy of Biomolecular Features for Deep Learning
Next Article in Special Issue
DCAGS-IoT: Dynamic Cross-Domain Authentication Scheme Using Group Signature in IoT
Previous Article in Journal
Study on Crack Propagation of Rock Bridge in Rock-like Material with Fractures under Compression Loading with Sudden Change Rate
Previous Article in Special Issue
Local Differential Privacy-Based Federated Learning under Personalized Settings
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Data Rights Confirmation Scheme Based on Auditable Ciphertext CP-ABE in the Cloud Storage Environment

State Key Laboratory of Public Big Data, College of Computer Science and Technology, Guizhou University, Guiyang 550001, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(7), 4355; https://doi.org/10.3390/app13074355
Submission received: 9 March 2023 / Revised: 20 March 2023 / Accepted: 27 March 2023 / Published: 29 March 2023
(This article belongs to the Special Issue Secure Cloud Storage)

Abstract

:
Advances in information technology have made data accessible anytime and anywhere. Currently, data confirmation is a popular area of research. Many current approaches to data confirmation rely on submitting certificates of ownership, embedding digital watermarks, or using blockchain. However, none of these approaches can avoid exposing source data to third parties that are not fully trusted. To address this issue, this paper proposes a new data confirmation method based on ciphertext policy attribute-based encryption (CP-ABE), which is widely used in cloud storage environments. The unique identifier of the data owner is encrypted by Paillier encryption and embedded into the ciphertext, so that the ownership corresponding to the plaintext is converted to the ownership corresponding to the ciphertext. During the entire confirmation process, third-party organizations cannot access the source data, reducing the risk of source data leakage. Finally, the feasibility of the scheme is proved by security proof and experiment comparison.

1. Introduction

Currently, data have become something within people’s reach, and more and more people are becoming aware of the ownership and usage of their data. What is “data confirmation”? The purpose of data confirmation is to legally establish ownership of the data and the right of the data owner to determine who can have access to the data. Data confirmation requires determining the type of rights, how they will be acquired, and how they will be distributed. With the popularity of cloud computing, people have begun to share data. There are many ways to share data, such as uploading to third-party trading platforms, cloud servers, Github [1], etc., resulting in the inability to ensure the privacy of users. Many scholars have begun to study data sharing, privacy issues [2,3], and how data are uploaded. In addition, the speed of data dissemination is extremely fast. Meng et al. [4] modeled network public opinion data to predict public opinion crisis warnings. Cao et al. [5] proposed a more comprehensive recommendation scheme based on real-world shared mobile data. The proposal of ciphertext-policy attribute-based encryption provides a good answer to these problems. CP-ABE allows the data owner to specify that only those who conform to the access policy can access the data. Figure 1 shows the execution process of CP-ABE. The data owner Alice has some data ( d e f i n e d i n t h e f i g u r e a s D a t a ) , and she sets a set of access policies ( ( A B ) ( C D ) in the figure) according to the potential user subjectively, and combines D a t a with access policies to encrypt and upload to the server. At this time, there are two users U s e r 1 and U s e r 2 in the system; U s e r 1 has attributes A and B, and U s e r 2 has attributes A and C, then according to the access policies in the ciphertext, U s e r 1 can decrypt and access the data, but U s e r 2 fails to decrypt. However, due to the replicability of the data, ownership of the data cannot be determined. The development of blockchain [6,7,8] has brought the possibility of data rights confirmation. Due to its immutability and traceability, the information of the data owner cannot be tampered with once it is on the chain, and it can be easily traced back to the source and destination of the data. However, as a result of the decentralized and public nature of blockchain technology, the privacy of the data owner cannot be guaranteed. Using traditional third-party hosting or issuing certificates of ownership does not guarantee that the data owner’s source data will not be leaked. Therefore, there is the need of a scheme that solves the above problems.
Consider the following scenario: Alice wants to store her data on the cloud and share them with others, but she only wants a specific group of people to access the data. Therefore, she specifies an access policy and encrypts the data using CP-ABE before uploading it. Bob is a member of Alice’s designated group, and he retrieves and decrypts the data from the cloud. Smith is Bob’s friend, but he is not a part of the designated group. Smith contacts Bob and obtains a copy of the data. One day, Alice discovers that Smith is using her data and wants to seek compensation. However, Smith claims that the data are his own. How can Alice prove that the data belong to her?
In 2005, Sahai and Waters [9] introduced the notion of fuzzy identity-based encryption. which was later extended to attribute-based encryption (ABE). In an ABE system, the ciphertext and key are associated with the attribute set and access structure, and decryption only succeeds when the attribute set satisfies the access structure. Goyal et al. [10] suggested correlating the access policy with the ciphertext and key, respectively, and divided ABE for the first time into ciphertext-policy attribute-based encryption (CP-ABE) and key-policy attribute-based encryption (KP-ABE) in 2006. Bethencourt et al. [11] introduced the first CP-ABE system in 2007, embedding the access tree structure within ciphertext; however, it is challenging to deploy in practice. Waters et al. [12] built on Bethencourt et al.’s work in the following year and proposed a CP-ABE system with an efficient general access structure while also proving selection security under the standard model. In 2012, Lewko and Waters [13] developed a broad strategy for converting the standard model’s concept of selection security into adaptive security. In today’s cloud computing, CP-ABE has a significant influence. In 2015, Ning et al. [14] proposed a traceable and auditable CP-ABE scheme in cloud computing to address key abuse by dishonest users in the cloud storage environment [15], but it does not provide key revocation. Yu et al. [16] proposed a traceable and undeniable CP-ABE scheme based on Ning’s work to solve the problem of semi-honest institutions illegally selling keys.
Under the big data environment [17], data can be used to verify the validity of the protocol [18] and can also be used to train the robot [19]. However, these web data have no real ownership. Yun Peng et al. [20] investigated the basic challenges surrounding data confirmation in 2016. Bing Guo et al. [21] presented a service system to defend the property rights of personal data in 2017. Shuaiyu Wang et al. [22] suggested a large data correct confirmation technique based on blockchain technology in the same year, but the issue is that the data source cannot be verified. In 2018, Hailong Wang and his colleagues [23] introduced a novel approach for verifying big data using blockchain and digital watermarking technology, but the authority agency can access the data owner’s source data. Although this solution can be applied to the environment of cloud storage, due to the limitation of its form of plaintext confirmation, the privacy of users cannot be guaranteed. Zhao et al. [24] developed a smart contract-based big data property right confirmation system the following year. In 2021, Zhou et al. [25] proposed a data ownership confirmation scheme based on consortium blockchain in IoT environments [26], with a focus on controlling the flow of data. However, the scheme cannot be applied to one-to-many environments such as cloud storage. Professors Jintai Ding and Ke Tang from Tsinghua University announced their plans to develop an innovative solution for managing large-scale data transactions. Their approach involves leveraging cutting-edge cryptography techniques and advanced mechanisms for economic design to create a robust and effective system for processing and exchanging data. By combining these two technologies, they aim to address the unique challenges associated with managing and securing large volumes of data, ultimately providing a reliable and efficient solution for businesses and organizations worldwide. This technique assures data transaction security while also increasing transaction efficiency. In 2022, Liu et al. [27] proposed a data ownership confirmation scheme based on the Ethereum blockchain and smart contracts. The parties authenticate their identities through a protocol for generating data fingerprints based on smart contracts. However, the article did not address the issue of user privacy protection on the public blockchain.
Based on the research status above, we propose a new data confirmation scheme in the cloud storage environment, focusing on user privacy protection and preventing the leakage of original plaintext data. The scheme can effectively protect the privacy of data owners while ensuring data confirmation, and in the process of confirmation, no one can access plaintext, thus reducing the risk of data leakage. We embed the data owner’s identification information into CP-ABE using Paillier encryption and change the plaintext confirmation form to the ciphertext confirmation form. An audit phase is introduced at the end of the confirmation process.
Our contributions are as follows:
(1)
User privacy protection. We propose a new data confirmation scheme based on CP-ABE in the cloud storage environment. Users only need to embed the information with their own identity into the ciphertext after Paillier encryption and upload it to the cloud. They do not need to worry about revealing their identity.
(2)
Prevent original plaintext data leakage. During the entire right confirmation process, the authority A T can only access the ciphertext and only needs to process the ciphertext. This greatly reduces the risk of plaintext data leakage during the right confirmation process.
(3)
The scheme is safe and efficient. We reduce the scheme to the three-prime subgroup decision problem and prove that the scheme is safe, and through experimental analysis, our scheme is almost as efficient as the scheme proposed by Allison et al. [21] in terms of system setup, key generation, encryption, and encryption algorithms. Table 1 shows the comparison between our scheme and other data confirmation schemes.
Section 2 will present a formal definition and explanation of several fundamental concepts. Section 3 will focus on constructing the scheme, which will include defining the security requirements, implementing the scheme, and providing a security proof. In Section 4, we will conduct experiments and analysis to evaluate the effectiveness of the scheme. Finally, Section 5 will summarize the scheme and its contributions.

2. Preliminaries

2.1. Access Structure

Definition 1
([9]). Consider a set S containing n attributes, where each attribute is denoted by s i for 1 i n , a set A 2 { s 1 , , s n } { } is an access structure on S, for B , C A : if B A and B C , then C A , and A is called monotonic. If a set is in A , then it is called an authorized set, otherwise it is called a non-authorized set.

2.2. Linear Secret-Sharing Schemes

Definition 2.
LSSS [28,29]. Suppose S represents the set of attributes, and let p be a prime number. A secret sharing scheme is denoted as Π and is operating on Z p . If the following two criteria are met by Π, then Π is referred to as linear:
  • The secret s Z p shared by each participant forms a column vector on Z p .
  • A secret sharing scheme Π has a shared generator matrix M, which is an l-by-n matrix for every access structure A defined on S. For i = 1 , , l , the ith line of M is marked as an attribute ρ ( i ) (ρ is a map that maps each row of matrix M to Π). Given a vector v = ( s , r 2 , , r n ) , where s is the shared secret, r 2 , , r n are randomly selected; λ = M l × n · v identifies the l shares of Π to the secret number s. Line i belongs to attribute ρ ( i ) .
Secret Recovery: Assuming Π accesses the LSSS of the structure A , S is the set of authorization attributes owned by the user, and M is the shared generation matrix. Define J = 1 , , j and J = { j ρ ( j ) S } . For the vector { λ j } j J generated by the product of matrix M and secret vector v, there exists a vector w = { w j } of integers in Z p such that j J M j · w j = ( 1 , 0 , , 0 ) and ρ ( j ) T · w = s ( m o d N ) , { w j } can be found in polynomial time, and { w j } does not exist for non-authorized sets.
Definition 3
([30]). Suppose A is a monotonic access structure. In such a case, the definition of the shared generator matrix M yields the following conclusions:
If M A , there exists a vector { κ i } of integers in Z p such that M T · { κ i } = ( 1 , 0 , , 0 ) T .
If M A , there exists a vector { ν i } of integers in Z p such that M T · { ν i } = ( 0 , 0 , , 0 ) T and ν 1 = 1 .

2.3. Composite Order Bilinear Groups

Prime order bilinear groups and composite order bilinear groups [31] are comparable; the difference is that the order of G 1 , G 2 , G T is a composite number N, where N is the product of some large prime numbers, such as N = p 1 p 2 p n , and e is a bilinear map, e : G 1 × G 2 G T . For any element a i in G p i and element b j in G p j ( i j ) , e ( a i , b j ) = 1 .
Assumption 1. (Subgroup decision problem for 3 primes):
We define the distribution shown below for a group generator G :
G G = ( N = p 1 p 2 p 3 , G , G T , e )
g 1 G p 1 , E 3 G p 3
D i s t r = ( E 3 , g , G )
X 1 G p 1 p 2 , X 2 G p 1
In breaking Assumption 1, Algorithm A has the following advantage:
A d v e r 1 G , A ( 1 λ ) : = P r [ A ( D i s t r , X 1 ) = 1 ] P r [ A ( D i s t r , X 2 ) = 1 ]
Definition 4.
If A d v e r 1 G , A ( 1 λ ) is a negligible function of 1 λ for every polynomial time algorithm A , we claim that G satisfies Assumption 1.
Assumption 2.
We define the following distribution for a group generator G :
G G = ( N = p 1 p 2 p 3 , G , G T , e )
g 1 , E 1 G p 1 , E 2 , F 2 G p 2 , E 3 , F 3 G p 3
D i s t r = ( G , g , E 1 E 2 , F 3 , E 2 F 3 )
X 1 G , X 2 G p 1 p 3
In breaking Assumption 2, Algorithm A has the following advantage:
A d v e r 2 G , A ( 1 λ ) : = P r [ A ( D i s t r , X 1 ) = 1 ] P r [ A ( D i s t r , X 2 ) = 1 ]
Definition 5.
If A d v e r 2 G , A ( 1 λ ) is a negligible function of 1 λ for every polynomial time algorithm A , we claim that G satisfies Assumption 2.
Assumption 3.
We define the following distribution for a group generator G :
G G = ( N = p 1 p 2 p 3 , G , G T , e )
γ , t Z N
g 1 G p 1 , E 2 , F 2 , H 2 G p 2 , E 3 , F 3 G p 3
D i s t r = ( G , g , g γ E 2 , E 3 , g t F 2 , H 2 )
X 1 e ( g , g ) γ t , X 2 G p 1 p 3
In breaking Assumption 3, Algorithm A has the following advantage:
A d v e r 3 G , A ( 1 λ ) : = P r [ A ( D i s t r , X 1 ) = 1 ] P r [ A ( D i s t r , X 2 ) = 1 ]
Definition 6.
If A d v e r 3 G , A ( 1 λ ) is a negligible function of 1 λ for every polynomial time algorithm A , we claim that G satisfies Assumption 3.

2.4. CDH Assumption

Computational Diffie–Hellman Assumption can be defined as follows:
Consider a finite cyclic group G with n elements. The CDH assumption holds in G if, given g , g a , and g b , g a b cannot be calculated. The formal definition is as follows:
g , g a , g b g a b
for all efficient algorithms A:
P r [ A ( g , g a , g b ) ] < ϵ
where g is a generator in the group G , a , b Z n .

2.5. Paillier Encryption

The Paillier encryption algorithm [32] is a public key encryption algorithm based on the composite residual difficulty problem, which satisfies the additive homomorphic operation. It contains the following steps:
  • Key generation:
    (1)
    Obtain two large prime numbers p 1 and p 2 that satisfy g c d ( p 1 p 2 , ( p 1 1 ) ( p 2 1 ) ) = 1 . This ensures that the prime numbers p 1 and p 2 have equal lengths.
    (2)
    The following values are computed: n = p 1 p 2 , λ = l c m ( ( p 1 1 ) , ( p 2 1 ) ) ) .
    (3)
    Define L ( x ) = ( x 1 ) / n .
    (4)
    Randomly select a positive integer g less than n 2 , and there exists μ = ( L ( g λ m o d n 2 ) ) 1 m o d n .
    (5)
    System public key p k = ( n , g ) , and system secret key s k = ( λ , μ ) .
  • Encryption:
    Given the plaintext M , randomly select γ Z n 2 * and calculate C = g M γ n m o d n 2 .
  • Decryption:
    M = L ( C λ m o d n 2 ) × μ m o d n .

2.6. Fully Secure CP-ABE

Allison et al. [33] proposed a CP-ABE scheme that is fully secure. The scheme is built using composite order bilinear groups and L S S S . Four algorithms can be executed in polynomial time:
S e t u p ( φ , U ) P K , M S K : The setup procedure receives two input parameters: the security parameter φ , which determines the level of security required, and the attribute universe U , which defines the set of attributes. It then generates two output values: the public parameter P K , which can be shared publicly and used for encryption and decryption, and the master key M S K , which is kept secret and used for key generation.
K e y G e n ( M S K , S , P K ) S K : Given the master key M S K , the user’s attribute S , and the public parameter P K as input, the key generation algorithm computes the decryption key S K as its output. The decryption key S K can be used to decrypt data encrypted using the corresponding attribute S and the public parameter P K .
E n c r y p t ( ( A , ρ ) , P K , M ) C T : To encrypt a plaintext M , the encryption algorithm takes as input a matrix A, where each row of the matrix is mapped to an attribute ρ , along with the public parameter P K . The encryption algorithm computes the ciphertext C T as its output.
D e c r y p t ( C T , P K , S K ) M : Given the ciphertext C T , the public parameter P K , and the decryption key S K , the decryption algorithm computes the corresponding plaintext M as its output. The decryption key S K must be associated with an authorization set mapped to rows of the matrix used during encryption, otherwise the decryption will fail.

3. Construction

3.1. Membership

Our system consists of five parties (as shown in Figure 2). The data owner ( D o ) is in charge of data encryption and uploading. The data user ( D u ) is responsible for retrieving and decrypting the data submitted by the data owner from the cloud. The authority ( A T ) is in charge of giving decryption keys to data users, participating in the ciphertext’s signature, and storing the credentials of the data owner. The public auditor ( P A ) is in charge of publicly auditing the ciphertext and extracting the information of the ciphertext owner from credentials. Finally, the cloud server ( C l o u d ) is responsible for storing the ciphertext uploaded by the data owner.

3.2. Security

3.2.1. IND-CPA Security

We can rephrase the description of the I N D C P A security game process for our proposed scheme, which is equivalent to the one proposed by Allison et al. [21], as follows:
S e t u p : The adversary A is given the public parameter P K after the challenger B calls the S e t u p ( 1 φ , U ) algorithm.
P h a s e 1 : Adversary A can dynamically request the decryption keys S k i associated with attribute sets S 1 , , S q r from the challenger B . In response, B executes the key generation algorithm to generate S k i and sends it to A .
C h a l l e n g e : Adversary A provides two equal-length messages M 1 and M 2 and a generator matrix A * that corresponds to an access structure A * that does not satisfy S 1 , , S q r to the challenger B . Then B randomly chooses a bit σ { 0 , 1 } and generates the ciphertext C T A * , T by calling the encryption algorithm with s k D o , < A * , ρ > , P K , and M σ . Finally, B sends C T A * , T to adversary A .
P h a s e 2 : Adversary A keeps asking B for decryption keys S k i corresponding to attribute sets S q r + 1 , , S q , where each set cannot satisfy the access structure A * . Upon each request, B calls the key generation algorithm and sends S k i to adversary A .
G u e s s : A outputs a guess σ { 0 , 1 } .
The advantage of the adversary in this game is defined as:
A d v ( A ) = P r [ σ = σ ] 1 / 2
Definition 7.
If we assume that any adversary with polynomial time has only a negligible advantage in winning the aforementioned game, we can confidently assert that our scheme is secure.

3.2.2. Dishonest User Game (Non-Replicability of Ciphertext)

The dishonest user game of this scheme is defined as follows: A user attempts to confuse the auditor by forging the authority’s signature and republishing a ciphertext. The game is played by a challenger and an adversary.
S e t u p : Challenger B starts the S e t u p ( 1 φ , U ) algorithm and sends the public parameters P K and s k D o to the attacker A .
C i p h e r t e x t G e n e r a t i o n : Challenger B generates the ciphertext C T A , T through the E n c r y p t algorithm and sends it to A ; A generates a new ciphertext C T A , T according to the initial ciphertext C T A , T .
O u t p u t :
If D e c r y p t ( S k D u , C T A , T ) = D e c r y p t ( S k D u , C T A , T ) and C 0 = M · e ( g α β , g s T ) then we say that the attacker successfully copies the ciphertext.
The adversary’s advantage in the dishonest user game is defined as
A d v = P r [ A s u c c e s s ]
Definition 8.
If the probability of a polynomial-time adversary winning the game described above is negligible, then we consider the ciphertext of our scheme to be secure and irreproducible.
In order to satisfy the requirement of data confirmation, the conventional CP-ABE scheme is insufficient. To ensure auditing capabilities in our CP-ABE scheme, we have developed a method that involves incorporating the data owner’s unique identifier (such as an address or ID number) into the ciphertext using Paillier encryption. The process of our scheme is illustrated in Figure 3.

3.3. Implementation

  • Setup ( 1 φ , U ) P K , M S K , P k A T , S k A T : In the setup phase of our system, we provide the security parameter φ and the user attribute universe U as inputs to the setup algorithm. This algorithm then generates a group G of order N = p 1 p 2 p 3 , a mapping e, an integer group Z N , and a hash function H : H ( x ) Z N . This setup process establishes the necessary parameters and functions to enable secure and efficient cryptographic operations in our system. The resulting setup allows us to implement our system in a manner that satisfies our security and performance requirements. Then the system proceeds to select random parameters α , a Z N , and the generator g G p 1 . For each attribute s U , the system randomly selects a corresponding value u i Z N . The system global parameter is set as
    P K = ( N , G , Z N , H ( x ) , g , g a , e ( g , g ) α , { U = g u i } i U )
    M S K = ( α , g 3 ) ( g 3 G p 3 and is a generator) and M S K is sent to the authority A T ; A T performs the following steps locally: randomly selecting two safe large primes p and q, which satisfy g c d ( p q , ( p 1 ) ( q 1 ) ) = 1 , calculating n = p q , λ = l c m ( p 1 , q 1 ) , and then randomly selecting a positive integer g 1 that is less than n 2 . Next, AT computes μ = ( L ( g λ m o d n 2 ) ) 1 m o d n and randomly selects a value β Z N . The public parameter P k A T = ( n , g 1 , g β ) is generated, whereas the private key S k A T = ( λ , μ , β ) is stored locally.
  • Encrypt ( P k A T , < A , ρ > , P K , M ) C T A , T :
    Step 1 : The unique identifier (e.g., ID number, address, mailbox, etc.) is hashed by data owner D o and mapped to an integer in Z N , denoted as
    t i d = H ( i d e n t i t y ) Z N
    After mapping the data owner’s unique identifier to an integer in Z N , D o chooses a value r R Z n 2 * and employs Paillier encryption to generate the encrypted output T = g 1 t i d r n m o d n 2 . The Algorithm 1 is as follows (here we assume the unique identifier string is a d d r e s s ):
Algorithm 1 Encrypt t i d
Input:    S t r i n g a d d r e s s
 1:
a d d r H a s h ← Convert a d d r e s s to a byte array after hashing;
 2:
t i d M a p a d d r H a s h i n t o Z N ;
 3:
r R a n d o m l y p i c k a n e l e m e n t f r o m Z N ;
 4:
T U s e P a i l l i e r e n c r y p t i o n t o o b t a i n e n c r y p t e d i d e n t i t y i n f o r m a t i o n ;
Output:
   t i d = 79847630022358710946125273965671104052858 065717629025639108307113838327353
  • Step 2 : To encode the access structure for the data, the owner of the data, D o , creates a shared generator matrix A with dimensions l by n using the LSSS. First, a secret number s R Z n is randomly selected. Then, n 1 random numbers y 2 , , y n R Z n are selected to generate a vector y = ( s , y 2 , , y n ) . Finally, random numbers r i R Z N are chosen for each row A i [ l ] of matrix A( [ l ] that represents the entire set of { 1 , 2 , , l } ), H ( M ) is obtained by taking a hash of the plaintext M and mapping it to G T to generate ciphertext:
    C T A , T ¯ = < C 0 ¯ = G T ( H ( M ) ) · e ( g , g ) α s , C 1 = g s T , C i , 1 = g a T A i · v U ρ ( i ) r i , C i , 2 = g r i , C i , 3 = g β T A i · v >
    Step 3 : Both C 0 ¯ , g s and T are sent to the authority A T for decryption. The decryption process begins with A T decrypting G T ( H ( M ) ) using the following method:
    G T ( H ( M ) ) = C 0 ¯ / e ( g α , g s )
    After successfully decrypting G T ( H ( M ) ) , the authority A T checks if it already has a record of G T ( H ( M ) ) in its database. If a record already exists, the application is rejected; otherwise, A T utilizes their private key β to sign the message and generates
    C 0 = G T ( H ( M ) ) · e ( g , g ) α s β
    and stores the data credentials of D o in the local database in the form of T : G T ( H ( M ) ) : t i m e S t a m p . By following this process, it is guaranteed that there is only one legitimate owner associated with the original data source. This measure also serves as a safeguard against any attempts by malicious actors to produce ciphertext and assert false ownership over the data. Furthermore, this also serves to prevent A T from directly accessing the plaintext, which enhances the security of the system. Finally, C 0 is sent back to the data owner D o for further processing. The user credentials setting Algorithm 2 is as follows:
Algorithm 2 Store user credentials
Input:    C 0 ¯ , g s , T
 1:
Divide C 0 ¯ by e ( g α , g s ) to get G T ( H ( M ) ) ;
 2:
if Retrieving G T ( H ( M ) ) locally is empty then
 3:
   Element P = e ( g , g ) α s β ;
 4:
   Date d a t e = Get the current time through the time function;
 5:
    R e c o r d l i s t [ ] ← (T, G T ( H ( M ) ) , d a t e );
 6:
end if
 7:
return  P * G T ( H ( M ) ) ;
  • Step 4 : D o first calculates
    C 0 = M · ( C 0 / G T ( H ( M ) ) ) T
    after receiving C 0 , afterwards, the ciphertext is assigned the value
    C T A , T = < C 0 = M · e ( g , g ) α s T β , C 1 = g s T , C i , 1 = g a T A i · v U ρ ( i ) r i , C i , 2 = g r i , C i , 3 = g β T A i · v >
    and uploads C T A , T to the cloud.
    Note: A notable characteristic of this scheme is the possibility of having multiple owners for a given d a t a , which is made feasible by the additive homomorphism property of Paillier encryption. For example, in a scenario where the data are jointly owned by two parties, denoted as D o 1 and D o 2 , they can both hash their unique identifiers and use them to generate separate P a i l l i e r ciphertexts T 1 and T 2 using different random numbers, then D o 1 , D o 2 calculate T 1 = g 1 t i d 1 r 2 n m o d n 2 , T 2 = g 1 t i d 2 r 2 n m o d n 2 , let T = T 1 · T 2 .
    During the entire encryption stage, we have realized data confirmation. Hash the plaintext and map it to G T for encryption( C 0 ¯ = G T ( H ( M ) ) · e ( g , g ) α s ) and send it to A T ; A T only needs to perform division and signature operations on C 0 ¯ , and store user ID T locally as a certificate. Therefore, A T cannot touch the plaintext.
3.
KeyGen ( M S K , S , P K ) S k D u : The generation of the decryption key in this scheme is a collaborative process between D u and A T ; D u first chooses a random number t R Z N as a parameter. Next, D u forwards their personal set of attributes S and the value g t to “ A T as part of its request to generate a key. Then, A T selects random numbers h R Z N and R 0 , R 1 , R 2 , R 3 , R i G p 3 to generate part of the decryption key
S k p r i = < S , D ¯ = g β α , D 1 ¯ = g a h , D 2 ¯ = g β h , D 3 ¯ = g t h , { D i ¯ = U i h } i S >
Finally, A T transmits the decryption key S k p r i and a collection of values labeled as { R 0 , R 1 , R 2 , R 3 , R i } to D u , and D u generates the decryption key locally using these values:
S k D u = < S , D = D ¯ R 0 , D 1 = D 1 ¯ t R 1 , D 2 = D 2 ¯ t R 2 , D 3 = D 3 ¯ R 3 , { D i = D i ¯ t R i } i S >
4.
Decrypt ( S k D u , C T A , T ) M : The decryption key allows D u to decrypt the ciphertext and obtain access to the data. The decryption algorithm searches for a vector w such that A i T · w = ( 1 , 0 , , 0 ) T ( i S ) , if the attributes of D u do not satisfy the access policy, then there is only one vector { κ i } , such that A i T · { κ i } = ( 0 , 0 , , 0 ) T ( i S ) and κ 1 = 1 , the plaintext M is obtained by the following formula:
F = e ( C 1 , D D 1 D 2 )
E = Π ρ ( i ) S ( e ( C i , 1 C i , 3 , D 3 ) e ( C i , 2 , D i ) ) w i
M = C / F / E
5.
Audit ( P K , M , M * , P k A T , S k A T , M S K ) t i d : If the data owner D o suspects that his data have been infringed upon or abused, he can prove his ownership by interacting with the public auditor P A and the authority A T . This interaction serves two purposes:
(a)
To demonstrate that D o was the first to upload the data;
(b)
To prove that the ciphertext corresponding to the data is indeed generated by  D o .
Step 1 : To prove that D o is the first to upload the data, the source data M and C T A , T are sent by D o to the public auditor P A . P A obtains the hash value of the source data M by applying the hash function H ( x ) and sends it to the authority A T to identify the owner of the plaintext.
Step 2 : First, PA carries out a comparison:
M = ? M * , C 0 = ? M · e ( g α β , C 1 )
If they are equal, P A enter the t i d extraction process using n, λ , defines L ( x ) = ( x 1 ) / n , calculates μ = ( L ( g λ m o d n 2 ) ) 1 m o d n , then by L ( T λ m o d n 2 ) × μ m o d n to extract the D o s t i d .
Step 3 : P A is needed to verify whether the given equation is valid or false.
H ( i d e n t i t y ) Z N = ? t i d
Assuming the equation is satisfied, we can conclude that the data belong to the user D o . Let us take the unique identifier a d d r e s s during encryption as an example: the decryption Algorithm 3 and the decrypted t i d are as follows:
Algorithm 3 Decrypt t i d
 1:
λ ( p 1 ) ( q 1 ) ;
 2:
μ G e t μ a c c o r d i n g t o t h e f o r m u l a ( L ( g 1 λ m o d n 2 ) ) 1 m o d n ;
 3:
t i d O b t a i n t h e t i d i n t h e c i p h e r t e x t a c c o r d i n g t o t h e d e c r y p t i o n a l g o r i t h m L ( T λ m o d n 2 ) × μ m o d n ;
Output:
   t i d = 79847630022358710946125273965671104052858 065717629025639108307113838327353
If the data are generated by multiple users, then t i d 1 + t i d 2 L ( g λ ( t i d 1 + t i d 2 ) · ( r 1 · r 2 ) λ n ) · μ m o d n , P A verifies H ( i d e n t i t y 1 ) Z N + H ( i d e n t i t y 2 ) Z N = ? t i d 1 + t i d 2 .
During the entire audit phase, P A needs to do two things:
(1)
Compare whether the leaked plaintext is the same as that owned by D o and calculate whether the ciphertext is generated by D o through the formula C 0 = ? M · e ( g α β , C 1 ) ;
(2)
Obtain the user credential T corresponding to the plaintext in the A T ’s database and obtain the owner of the plaintext through Paillier decryption.

3.4. Correctness

e ( C 1 , D ) = e ( g s T , g β α R 0 g β h t R 2 g a h t R 1 ) =
e ( g s T , g β α ) e ( g s T , g β h t ) e ( g s T , g a h t )
Π ρ ( i ) S ( e ( C i , 1 C i , 3 , D 3 ) e ( C i , 2 , D i ) ) w i =
Π ρ ( i ) S ( e ( g a T A i · v U ρ ( i ) r i g β T A i · v , g t h R )
e ( g r i , U i h t R i ) )
= ( e ( g a T , g h t ) e ( g β T , g h t ) ) Σ A i · v · w i
= e ( g a T s , g t h ) e ( g β T s , g t h )
F = e ( g s T , g β α ) e ( g s T , g β h t ) e ( g s T , g a h t ) /
e ( g a T s , g t h ) e ( g β T s , g t h )
= e ( g , g ) α β s T
C 0 / F = M

3.5. IND-CPA Security

Suppose there is an adversary A who can eavesdrop on the channel between the user and the data owner, and he can obtain the ciphertext corresponding to the plaintext within a limited time, so as to crack the key and gain unlimited access to the ciphertext. Our scheme’s I N D C P A security is analogous to the I N D C P A security of the C P A B E scheme proposed by Allison and his colleagues in [33], and we only prove Assumption 1 here. To begin with, we create a semi-functional ciphertext (defined as SF-C) and a semi-functional key (defined as SF-K) in the following format:
SF-C: We define g 2 as the generator element of the group G p 2 . It randomly selects f R Z N , for each attribute, selects z i R Z N , then selects γ i R Z N for each row of the shared generator matrix and two random vectors u , w Z N n , SF-C is defined as follows: C 1 = g s T · g 2 f , C 2 = g β s T · g 2 β f , C i , 1 = g a T A i · v U ρ ( i ) r i g 2 A i · u + γ i z ρ ( i ) , C i , 2 = g r i g 2 γ i , C i , 3 = g β T A i · v · g 2 A i · w
SF-K: We can create two types of SF-K by randomly selecting the parameters d , h , c R Z N , R 0 , R 1 , R 2 , R 3 , R i G p 3 as follows:
Type 1 : D = g β α g 2 d R 0 , D 1 = g a h t g 2 d R 1 , D 2 = g β h t g 2 d R 2 , D 3 = g h t g 2 c R 3 , { D i = U i h t R i g 2 c z i }
Type 2 : D = g β α g 2 d R 0 , D 1 = g a h t g 2 d R 1 , D 2 = g β h t g 2 d R 2 , D 3 = g h t R 3 , { D i = U i h t R i } (let c = 0 )
Upon decrypting an SF-C with an SF-K, an additional term is introduced into the plaintext due to the semi-functional properties of the key and ciphertext:
e ( g 2 , g 2 ) 3 f d 2 u 1 c
where u 1 represents the first item of the vector u . We will now introduce a series of games to analyze the security of our proposed scheme:
G a m e R e a l : In this game, both the ciphertext and the decryption key are valid, and the security of the scheme is not compromised.
G a m e 0 : We define a game where all keys are normal, but the challenge ciphertext is SF-C. Let q be the number of times the attacker requests the key. For k [ 1 , q ] , we define:
G a m e k , 1 : The challenge ciphertext is SF-C, the first k 1 keys requested by the adversary are SF-K of Type 2, the kth key is SF-K of Type 1, and the rest are normal. G a m e k , 2 : We define a game where the challenge ciphertext is SF-C, the first k keys are SF-K of Type 2, and the remaining keys are normal.
At the end of the game, we play the game’s last round ( G a m e f i n a l ): all the keys are Type 2 SF-K, and the ciphertext is generated by semi-functionally encrypting random messages without using the two messages supplied by the adversary.
Lemma 1.
Assume the existence of a polynomial-time algorithm A such that G a m e R e a l A d v A G a m e 0 A d v A = ϵ . where ϵ is a non-negligible value. We can find a polynomial-time algorithm B  to break Assumption 1 by ϵ.
Proof. 
Sending g , g 3 , X to B , B will simulate G a m e R e a l or G a m e 0 with adversary A ; B randomly selects α , a , β Z N , and selects a random exponent u i Z N for each attribute in the system, then randomly selects two safe large prime numbers p , q such that g c d ( p q , ( p 1 ) ( q 1 ) ) = 1 , calculates n = p q , λ = l c m ( p 1 , q 1 ) , then randomly selects a positive integer g 1 less than n 2 , and μ = ( L ( g λ m o d n 2 ) ) 1 m o d n , the public parameter
P K = ( N , g , g a , g β , e ( g , g ) α , { U = g u i } i U )
and public key
P k = ( n , g 1 , g β )
are sent to A .    □
Next, A sends two equal-length messages M 0 , M 1 , T generated by his own unique identity and a shared generator matrix ( A * , ρ ) to B , B implicitly sets g s T to the part of G p 1 (and possibly G p 1 p 2 element). Then, B flips a coin and pick σ { 0 , 1 } and sets:
C 0 = M σ e ( g α β , X ) , C 1 = X
then randomly selects y 2 , , y n , r i R Z N , sets the vector v = ( 1 , y 2 , , y n ) , then sets C i , 1 = X a T A i · v X r i u ρ ( i ) , C i , 2 = X r i , C i , 3 = X β T A i · v . We implicitly set v to ( s , s y 1 , , s y n ) , r i = s r i , so when X G p 1 , it is a correctly distributed normal ciphertext.
If X G p 1 p 2 , let g 2 f be the G p 2 part of X ( X = g s g 2 f ), so C 1 = g s T g 2 f T , C 2 = g s β T g 2 β f T , C i , 1 = g s a T A i · v g s r i u ρ ( i ) · g 2 f a T A i · v f r i u ρ ( i ) , C i , 2 = g s r i g 2 f r i , C i , 3 = g s β T A i v g 2 f β T A i v . Let
u = f a T v , γ i = f i r i , z ρ ( i ) = u ρ ( i ) , w = f β T v
this is a correctly distributed semi-functional ciphertext. We simulated and ran local experiments to test our scheme against Choose Plaintext Attack, and in both X G p 1 and X G p 1 p 2 scenarios, attacker A was unable to decrypt the data. Figure 4 illustrates the process of a chosen plaintext attack and the experimental results obtained by the attacker. Therefore, A can break Assumption 1 with the advantage of ϵ .
Assumptions 2 and 3 can be proved by similar constructions above; see Allison’s scheme [33] for details.

3.6. Ciphertext Non-Replicability

Suppose there is an adversary A who can eavesdrop on the channel between the data owner and A T . The purpose of A in this game is to obtain the signature of A T and embed its own T in the ciphertext and replace the identity of the data owner in the ciphertext data with its own identity, so as to obtain the ownership of the data. We assume that the adversary will not send his identity information to A T without being able to copy the ciphertext (even if sent, it does not pass authentication).
Lemma 2.
Assume that there is a polynomial-time algorithm A that can break the CDH Assumption with the advantage of ϵ in the polynomial time, then we can construct a polynomial-time algorithm B that falsifies ciphertext with the advantage of ϵ.
Proof. 
B first runs the S e t u p ( 1 φ , U ) ( P K , M S K , P k A T , S k A T ) algorithm, and P K , P k A T are sent to the adversary A .    □
Ciphertext generation: B first interacts with A T to generate the ciphertext C T A , T , and sends C T A , T to A . The adversary has two ways to generate its own ciphertext:
  • Case 1: After the adversary (dishonest user) decrypts the ciphertext and obtains the plaintext M, it regenerates the ciphertext C T by itself. This method is obviously not advisable, because even if the original decryption key of the ciphertext is generated, it is unable to decrypt C T and G T ( H ( M ) ) has been stored locally in the authority.
  • Case 2: The adversary obtains the signature and generates the ciphertext by eavesdropping on the channel between the data owner and A T , and sending information that is beneficial to A to A T ; B randomly selects s R Z n , hashes the plaintext M and maps it to G T , C 0 ¯ = G T ( H ( M ) ) · e ( g , g ) α s and C 0 ¯ , g s are sent to A .
The adversary A attempts to generate a random number s such that e ( g , g ) α s = e ( g , g ) α s , so he can send C 0 ¯ = G T ( H ( M ) ) · e ( g , g ) α s , g s and his own identity T to obtain the signature of A T , and then according to E n c r y p t ( P k A T , < A , ρ > , P K , M ) C T A , T algorithm to generate ciphertext and publishes it, A can obtain g s after eavesdropping on the channel, by calculating e ( g , g s ) , he can get e ( g , g ) s , that is, the adversary A knows e ( g , g ) α and e ( g , g ) s , wants to calculate e ( g , g ) α s . This is a C D H problem, there is no polynomial time algorithm to break it, so
A d v = P r [ A s u c c e s s ] < ϵ

4. Experiments and Analysis

In this section, we mainly analyze the efficiency of our scheme and compared it with the Fully secure CP-ABE scheme proposed by Allison et al. [33] in setup, key generation, encryption, decryption, and memory consumption. The experiment is in the win10, 16GB, AMD Ryzen 5 R2600 Six -Core 3.40GHz platform. We choose to use the JPBC library of JAVA to build the environment and generate a composite order group with a size of 512 bits and an integer cyclic group with a size of 258 bits through an 83-bit elliptic curve. The data were obtained by running the experiments on a locally set up environment and were saved in a text file in “.xlsx” format. The figures were generated by comparing the data using MATLAB plotting.
Figure 5 shows the setup comparison between our scheme and Allison et al.’s scheme. Since the complexity of the setup is O ( N ) (N represents the number of attributes in the attribute universe), the time efficiency is almost the same except for computer errors.
The master key is in the form of a key–value pair:
MSK:
alpha:210810353108659863024409106247517618452769941479846636980134442864523125
95818033429445987282464226795828802774079330
g3:507123706182628610741111547764849270218939290666858116887669480037266931236
6558956079248951460266712797586740186721012,3848333923503209101783513197106326
835379604308979589246948604032780415086659341351001892795149863403912326337017
537761,0
beta:3971351897302668818568847385425920497495147741445579066512932780617650627
246730432329467425793820791111050407589402
Figure 6 shows a comparison of the key generation time between our scheme and the scheme proposed by Allison et al. Our scheme involves interactive key generation, resulting in higher overhead compared to Allison’s scheme when the attribute space is small. However, as the attribute space grows, the performance gap between the two schemes decreases.
Figure 7 illustrates a comparison of the encryption time between our scheme and the scheme proposed by Allison et al. The ciphertext complexity of Allison et al.’s scheme is O ( C + N ) , and the complexity of our scheme is also O ( C + N ) , where C represents the length of the ciphertext and N represents the number of attributes in the attribute space. In fact, Allison et al.’s scheme involves C + 2 N terms, whereas ours involves C + 3 N terms, which results in a small difference in overhead.
The generated ciphertext is also stored in the form of key–value pairs. We take plaintext “ h e l l o ” as an example, and the encrypted C 0 format is as follows:
CT_AT:
C0_0:{x=18512619911661450195327750867443546794232624419671207238173221146535506
95552872207298169171836981828215064641158984234,y=70592147653957222146120442588
2624722810944092606551932879619145643069907176528665887436471753185725971617607
9123508797}
C0_1:{x=10305743198129175737055428555819461127421625147813759967731163938926816
650740214215836427503578249751830703585598710737,y=9864469019751328170985532932
3260154136345304295214862269824474212174107344885351182673330718902818130451275
75927761095}
C0_2:{x=85627632985010802758634299337508008509965737271381026168608890332725357
51769387446114503063186080075196481905182611275,y=69157043429120428487195645886
4787393452354723338419697486692137357841812076088296305720924512144895097136125
4706491542}
C0_3:{x=85627632985010802758634299337508008509965737271381026168608890332725357
51769387446114503063186080075196481905182611275,y=69157043429120428487195645886
4787393452354723338419697486692137357841812076088296305720924512144895097136125
4706491542}
C0_4:{x=10828209153804955834077646467569440299821102129146337294704720899926979
6582045437576244731444812151580842960742884772,y=411045008855643689234607591514
8105748998457729928230076680665408791706458037634503664240890763024397642409757
902239244}
Figure 8 presents a comparison of the decryption time between our scheme and the scheme proposed by Allison et al. The time overhead is mainly focused on computing the secret s, so apart from computational errors, there is no difference in overhead.
The plaintext obtained by decrypting the above ciphertext is as follows:
ourScheme.Decrypt(“file/Key”,“file/CT_AT”);
The plaintext after decryption is:hello
Finally, Figure 9 shows a comparison of the memory overhead between our scheme and the scheme proposed by Allison et al. Due to the involvement of our scheme’s interactive functions, such as s e n d T o A T ( ) , K e y G e n A T ( ) , and i d extraction function e x t r a c t I D ( ) , our scheme incurs a higher memory overhead than Allison et al.’s scheme.

5. Conclusions

Based on Paillier encryption and CP-ABE, this paper proposes a data rights confirmation scheme, which effectively solves the ownership of data and the right to use data. The work of confirming the rights of the plaintext is transferred to the confirmation of the ciphertext. Before the plaintext audit, no one can access the original data except the user designated by the data user, which provides a guarantee that the source data will not be leaked. Finally, the security of the scheme is proved, and the efficiency and feasibility of the scheme are analyzed through experiments. First, this article does not exclude the third party, and the data transaction behavior between users is not specified, but only stipulates the “ownership” of data and the “rights to use” of data. Second, this paper does not consider how to implement the tracking of the key and revocation of the key when the data owner discovers the data leakage. Finally, there is no guarantee that the credentials stored in A T are authentic. In future work, we will conduct related research on data transactions. Considering the key tracing and key revocation problems, the traceability and revocability of keys can be achieved by combining the scheme proposed by Ning et al. [14] and the subset coverage technique. How to combine smart contracts and blockchain to solve the problem of traditional third-party untrustworthiness is also part of our future work.

Author Contributions

L.Z. designed the article architecture, wrote the manuscript, and completed the experimental tests. Y.C. provided funding support, Z.H., Y.L. and T.L. checked the manuscript and the experimental data. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by Foundation of National Natural Science Foundation of China (61962009 and 62202118), Natural Science Research Technology Top Talent Project of Education Department of Guizhou Province ([2022]073), and the vocational education science research project of Education Department of Guizhou Province.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Sheng, H.; Cong, R.; Yang, D.; Chen, R.; Wang, S.; Cui, Z. UrbanLF: A Comprehensive Light Field Dataset for Semantic Segmentation of Urban Scenes. IEEE Trans. Circuits Syst. Video Technol. 2022, 32, 7880–7893. [Google Scholar] [CrossRef]
  2. Chen, Y.; Sun, J.; Yang, Y.; Li, T.; Niu, X.; Zhou, H. PSSPR: A Source Location Privacy Protection Scheme Based on Sector Phantom Routing in WSNs. Int. J. Intell. Syst. 2022, 37, 1204–1221. [Google Scholar]
  3. Lv, Z.; Song, H. Mobile internet of things under data physical fusion technology. IEEE Internet Things J. 2019, 7, 4616–4624. [Google Scholar]
  4. Meng, F.; Xiao, X.; Wang, J. Rating the crisis of online public opinion using a multi-level index system. arXiv 2022, arXiv:2207.14740. [Google Scholar]
  5. Cao, B.; Zhao, J.; Lv, Z.; Yang, P. Diversified Personalized Recommendation Optimization Based on Mobile Data. IEEE Trans. Intell. Transp. Syst. 2021, 22, 2133–2139. [Google Scholar] [CrossRef]
  6. Chen, T.; Yu, Y.; Duan, Z.T. BlockChain/ABE-based Fusion Solution for E-government Data Sharing and Privacy protection. In Proceedings of the EITCE 2020: 2020 4th International Conference on Electronic Information Technology and Computer Engineering, Xiamen, China, 6–8 November 2020. [Google Scholar]
  7. Li, T.; Wang, Z.; Chen, Y.; Li, C.; Jia, Y.; Yang, Y. Is semi-selfish mining available without being detected? Int. J. Intell. Syst. 2021, 37, 10576–10597. [Google Scholar]
  8. Heidari, A.; Navimipour, N.J.; Unal, M. A Secure Intrusion Detection Platform Using Blockchain and Radial Basis Function Neural Networks for Internet of Drones. IEEE Internet Things J. 2023; early access. [Google Scholar] [CrossRef]
  9. Waters, B.R.; Sahai, A. Fuzzy identity based encryption. In Proceedings of the Advances in Cryptology—EUROCRYPT 2005: 24th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Aarhus, Denmark, 22–26 May 2005. [Google Scholar] [CrossRef] [Green Version]
  10. Goyal, V.; Pandey, O.; Sahai, A.; Waters, B. Attribute-based encryption for finegrained access control of encrypted data. In Proceedings of the 13th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 30 October–3 November 2006. [Google Scholar] [CrossRef]
  11. Bethencourt, J.; Sahai, A.; Waters, B. Ciphertext-policy attribute-based encryption. In Proceedings of the 2007 IEEE Symposium on Security and Privacy, Oakland, CA, USA, 20–23 May 2007. [Google Scholar] [CrossRef] [Green Version]
  12. Waters, B. Ciphertext-policy attribute-based encryption: An expressive, efficient, and provably secure realization. In Proceedings of the International Workshop on Public Key Cryptography, Taormina, Italy, 6–9 March 2011. [Google Scholar] [CrossRef] [Green Version]
  13. Lewko, A.; Waters, B. New proof methods for attribute-based encryption: Achieving full security through selective techniques. In Annual Cryptology Conference; Springer: Berlin/Heidelberg, Germany, 2012. [Google Scholar] [CrossRef] [Green Version]
  14. Ning, J.; Dong, X.; Cao, Z.; Wei, L. Accountable Authority Ciphertext-Policy Attribute-Based Encryption With White-Box Traceability and Public Auditing in the Cloud; Springer: Cham, Switzerland, 2015. [Google Scholar] [CrossRef]
  15. Cao, B.; Sun, Z.; Zhang, J.; Gu, Y. Resource allocation in 5G IoV architecture based on SDN and fog-cloud computing. IEEE Trans. Intell. Transp. Syst. 2021, 22, 3832–3840. [Google Scholar]
  16. Yu, G.; Wang, Y.; Cao, Z.; Lin, J.; Wang, X. Traceable and undeniable ciphertext-policy attribute-based encryption for cloud storage service. Int. J. Distrib. Sens. Netw. 2019, 15. [Google Scholar] [CrossRef]
  17. Yuan, F.; Chen, S.; Xu, K.L.L. Research on the Coordination Mechanism of Traditional Chinese Medicine Medical Record Data Standardization and Characteristic Protection under Big Data Environment; Shandong People’s Publishing House: Jinan, China, 2021. [Google Scholar]
  18. Chen, B.; Hu, J.; Zhao, Y.; Ghosh, B.K. Finite-Time Velocity-Free Rendezvous Control of Multiple AUV Systems With Intermittent Communication. IEEE Trans. Syst. Man Cybern. Syst. 2022, 52, 6618–6629. [Google Scholar] [CrossRef]
  19. Lu, S.; Ban, Y.; Zhang, X.; Yang, B.; Yin, L.; Liu, S.; Zheng, W. Adaptive control of time delay teleoperation system with uncertain dynamics. Front. Neurorobot. 2022, 152, 928863. [Google Scholar]
  20. Peng, Y. Research on authenticating data rights in Big Data environment. Mod. Sci. Technol. Telecommun. 2016, 46, 17–20. [Google Scholar] [CrossRef]
  21. Guo, B.; Li, Q.; Duan, X.L.; Shen, Y.C.; Dong, X.Q.; Zhang, H.; Shen, Y.; Zhang, Z.L.; Luo, J. Personal Data Bank: A New Mode of Personal Big Data Asset Management and Value-Added Services Based on Bank Architecture. Chin. Comput. 2017, 40, 126–143. [Google Scholar]
  22. Wang, S.; Li, C. A Big Data Right Confirmation Method and System Based on Blockchain Technology. Patent CN106815728A, 9 June 2017. [Google Scholar]
  23. Wang, H.; Tian, Y.; Yi, X. Blockchain-based Big Data Right Confirmation Scheme. Comput. Sci. 2018, 45, 6. [Google Scholar]
  24. Zhao, H.; Zhao, B.; Cheng, S. The Mechanism of Confirming Big Data Property Rights Based on Smart Contract. In Proceedings of the 2019 4th International Conference, Jinan, China, 18–21 October 2019. [Google Scholar] [CrossRef]
  25. Zhou, G.; Yan, B.; Wang, G.; Yu, J. Blockchain-Based Data Ownership Confirmation Scheme in Industrial Internet of Things. In Proceedings of the Wireless Algorithms, Systems and Applications: 16th International Conference, WASA 2021, Nanjing, China, 25–27 June 2021; Part I. Springer International Publishing: Cham, Switzerland, 2021; pp. 121–132. [Google Scholar]
  26. Dai, X.; Xiao, Z.; Jiang, H.; Alazab, M.; Lui, J.C.; Min, G.; Dustdar, S.; Liu, J. Task Offloading for Cloud-Assisted Fog Computing With Dynamic Service Caching in Enterprise Management Systems. IEEE Trans. Ind. Inform. 2023, 19, 662–672. [Google Scholar] [CrossRef]
  27. Liu, Y.; Zhang, Y.; Yang, Y.; Ma, Y. DOCS: A Data Ownership Confirmation Scheme for Distributed Data Trading. Systems 2022, 10, 226. [Google Scholar]
  28. Damgrd, I.; Thorbek, R. Linear integer secret sharing and distributed exponentiation. In Proceedings of the Public Key Cryptography—PKC 2006, 9th International Conference on Theory and Practice of Public-Key Cryptography, New York, NY, USA, 24–26 April 2006. [Google Scholar] [CrossRef] [Green Version]
  29. Liu, Z.; Cao, Z.; Wong, D.S. Blackbox traceable CP-ABE: How to catch people leaking their keys by selling decryption devices on ebay. In Proceedings of the 2013 ACM Conference on Computer and Communications Security, Berlin, Germany, 4–8 November 2013. [Google Scholar] [CrossRef]
  30. Boneh, D.; Goh, E.; Nissim, K. Evaluating 2-DNF Formulas on Ciphertexts; Springer: Berlin/Heidelberg, Germany, 2005. [Google Scholar] [CrossRef] [Green Version]
  31. Lewko, A.B.; Waters, B. Decentralizing Attribute Based Encryption. In Proceedings of the 30th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Tallinn, Estonia, 15–19 May 2011. [Google Scholar] [CrossRef] [Green Version]
  32. Paillier, P. Public-key cryptosystems based on composite degree residuosity classes. In Proceedings of the EUROCRYPT’99, Prague, Czech Republic, 2–6 May 1999. [Google Scholar] [CrossRef] [Green Version]
  33. Allison Lewko, B.; Okamoto, T.; Sahai, A.; Takashima, K.; Waters, B. Fully Secure Functional Encryption: Attribute-Based Encryption and (Hierarchical) Inner Product Encryption. In Proceedings of the International Conference on Theory and Applications of Cryptographic Techniques, French Riviera, France, 30 May–3 June 2010; Springer: Berlin/Heidelberg, Germany, 2010. [Google Scholar] [CrossRef] [Green Version]
Figure 1. The principle of encryption and decryption of CP-ABE.
Figure 1. The principle of encryption and decryption of CP-ABE.
Applsci 13 04355 g001
Figure 2. Membership.
Figure 2. Membership.
Applsci 13 04355 g002
Figure 3. Process.
Figure 3. Process.
Applsci 13 04355 g003
Figure 4. Attack process and output results.
Figure 4. Attack process and output results.
Applsci 13 04355 g004
Figure 5. Setup.
Figure 5. Setup.
Applsci 13 04355 g005
Figure 6. Key Generation.
Figure 6. Key Generation.
Applsci 13 04355 g006
Figure 7. Encryption.
Figure 7. Encryption.
Applsci 13 04355 g007
Figure 8. Decryption.
Figure 8. Decryption.
Applsci 13 04355 g008
Figure 9. Memory overhead comparison.
Figure 9. Memory overhead comparison.
Applsci 13 04355 g009
Table 1. Comparison of our scheme and other schemes.
Table 1. Comparison of our scheme and other schemes.
Zhou et al. [25]Liu et al. [27]
Ways of identifyingKey verificationFingerprint tracking protocol
Confirmation methodConsortium blockchain and smart contractsSmart contract
Security assumptionCollision-resistant properties of hash functionnull
Source data security
Can be applied to the cloud storage environment××
Wang et al. [23]ours
Ways of identifyingDigital watermarkPailler decryption
Confirmation methodDigital watermarking + blockchainCP-ABE and Paillier encryption
Security assumptionCDH assumptionSubgroup decision problem for 3 primes
Source data security×
Can be applied to the cloud storage environment
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhang, L.; Chen, Y.; Luo, Y.; He, Z.; Li, T. Data Rights Confirmation Scheme Based on Auditable Ciphertext CP-ABE in the Cloud Storage Environment. Appl. Sci. 2023, 13, 4355. https://doi.org/10.3390/app13074355

AMA Style

Zhang L, Chen Y, Luo Y, He Z, Li T. Data Rights Confirmation Scheme Based on Auditable Ciphertext CP-ABE in the Cloud Storage Environment. Applied Sciences. 2023; 13(7):4355. https://doi.org/10.3390/app13074355

Chicago/Turabian Style

Zhang, Lingyun, Yuling Chen, Yun Luo, Zhongxiang He, and Tao Li. 2023. "Data Rights Confirmation Scheme Based on Auditable Ciphertext CP-ABE in the Cloud Storage Environment" Applied Sciences 13, no. 7: 4355. https://doi.org/10.3390/app13074355

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop