Next Article in Journal
Enabling Semantic-Functional Communications for Multiuser Event Transmissions via Wireless Power Transfer
Previous Article in Journal
Impact of Estimation Uncertainty in PMU-Based Resynchronization of Continental Europe Synchronous Areas
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Identity-Based Proxy Re-Encryption Scheme Using Fog Computing and Anonymous Key Generation

Department of Computer Science and Engineering, National Taiwan Ocean University, Keelung 202, Taiwan
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(5), 2706; https://doi.org/10.3390/s23052706
Submission received: 6 February 2023 / Revised: 24 February 2023 / Accepted: 27 February 2023 / Published: 1 March 2023
(This article belongs to the Section Sensor Networks)

Abstract

:
In the fog computing architecture, a fog is a node closer to clients and responsible for responding to users’ requests as well as forwarding messages to clouds. In some medical applications such as the remote healthcare, a sensor of patients will first send encrypted data of sensed information to a nearby fog such that the fog acting as a re-encryption proxy could generate a re-encrypted ciphertext designated for requested data users in the cloud. Specifically, a data user can request access to cloud ciphertexts by sending a query to the fog node that will forward this query to the corresponding data owner who preserves the right to grant or deny the permission to access his/her data. When the access request is granted, the fog node will obtain a unique re-encryption key for carrying out the re-encryption process. Although some previous concepts have been proposed to fulfill these application requirements, they either have known security flaws or incur higher computational complexity. In this work, we present an identity-based proxy re-encryption scheme on the basis of the fog computing architecture. Our identity-based mechanism uses public channels for key distribution and avoids the troublesome problem of key escrow. We also formally prove that the proposed protocol is secure in the IND-PrID-CPA notion. Furthermore, we show that our work exhibits better performance in terms of computational complexity.

1. Introduction

Cloud computing was first introduced by Chellappa [1] who hoped to store data in remote servers via networks. In 2006, Amazon brought in the so-called Amazon Web Services (AWS) to seek more business opportunities. Since then, such services have been widely developed and spread out. Many companies like Microsoft and Google are gradually competing for the cloud computing market due to its advantages in reducing costs and improving productivity. Cloud services have also become an inevitable part of our daily life. When using cloud services, we have to pay attention to the safeguard of Internet security [2] by employing all kinds of cryptographic techniques [3,4,5,6].
Clouds are not only for storage; the deployment model influences managing and owning the cloud, and the location and users of the cloud. According to the location of stored data and how the technologies are deployed and consumed, we can classify cloud service models into three kinds, as follows:
(i)
Public Cloud: It is usually constructed by third-party cloud service companies (such as Google (Mountain View, CA, USA), Azure (Redmond, WA, USA), etc.). Users can purchase storage space from service providers and the latter will be responsible for system maintenance, which helps with reducing unnecessary user costs. Yet, the security is low owing to uncontrollable cloud environments.
(ii)
Private Cloud: It is constructed by the individual company and hence has high security and privacy. However, it requires self-maintenance and the cost is relatively high.
(iii)
Hybrid Cloud: It combines the advantages of public and private clouds and can separately store data by its confidentiality. Nevertheless, it is also relatively difficult to manage and maintain.
According to the definition given in NIST SP 800-145, the cloud service model is also categorized into the following three kinds:
(i)
Software as a Service (SaaS): It is the most common model in which users can utilize all kinds of interfaces (including web-based or program-based) to acquire resources and web services [7] such as stream media platforms running on cloud infrastructure. The advantage of this model is that users do not have to be responsible for controlling or maintaining the cloud infrastructure, such as communication networks [8], operating systems, storage, and applications.
(ii)
Platform as a Service (PaaS): In this model, the cloud service provider is responsible for providing application development platforms such as storage capacity, computing resources, programming languages, libraries and related development tools, etc. Users can utilize these tools to deploy consumer-created application programs on the cloud infrastructure and they do not have to control or maintain the cloud infrastructure.
(iii)
Infrastructure as a Service (IaaS): The cloud service provider supplies users with all kinds of storage, computing, and network resources, and users can utilize these infrastructures to deploy their own platforms and application programs. The advantage of this model is that users do not have to control or maintain the cloud infrastructure, but have the control over their deployed applications, storage, and operating systems.
Fog computing in IoT environments [9,10,11] is an extension of cloud computing and was first addressed by the research of Stolfo et al. [12], who attempt to protect the cloud data security [13] with the assistance of fog computing. Bonomi et al. [14] viewed the fog as a cloud closer to the ground and users. The architecture of fog computing can also benefit by sharing cloud data. A proxy re-encryption (PRE) scheme [15] is a commonly adopted ciphertext sharing protocol in which a ciphertext intended for Alice can be re-encrypted into another ciphertext designated for Bob by a proxy. When we combine the PRE scheme with fog computing, a fog would act as the proxy to carry out the cloud ciphertext transformation process, so as to reduce the network transmission latency. However, the privacy of cloud ciphertexts in the transformation must be further assured and the fog node (proxy) should learn nothing about the ciphertext.

2. Related Work

In 2010, Luo et al. [16] developed a ciphertext-policy attribute-based PRE scheme using AND-Gates policy. In particular, their policy supports multi-value attributes, negative attributes, and wildcards. They also showed that their mechanism fulfills the property of unidirectionality, non-interactivity, and multi-use. Moreover, in their scheme, the encryptor can decide if the ciphertext can be re-encrypted.
Considering the property of keyword search, in 2012, Fang et al. [15] proposed a chosen-ciphertext secure-anonymous-conditional PRE with keyword search. That is, they provided the PRE mechanism with the property of keyword search. Additionally, they gave the CCA security definition of conditional PRE schemes and showed that their protocol satisfies such a definition. Wang et al. [17] further introduced a constrained PRE scheme with a conjunctive keyword search. Specifically, their mechanism is both single-hop and unidirectional.
In 2013, Liang et al. [18] addressed a ciphertext-policy attribute-based PRE with chosen-ciphertext security assuming the hardness of the decisional q-parallel bilinear Diffie–Hellman exponent problem. In this mechanism, a ciphertext with respect to a given access policy is able to be re-encrypted into one in relation to another access policy. Their scheme is suitable for any monotonic access structure. They proved the security of their scheme in the random oracle model. Considering the queries from intra-domain and inter-domain in a cloud computing scenario, Han et al. [19] proposed an identity-based PRE scheme. Their scheme is secure against collusion attacks and the access permission could be made by the data owner, rather than by the central authority. However, the computational complexity of their scheme is high.
In 2014, Liang et al. [20] presented an adaptively CCA-secure ciphertext-policy attribute-based PRE for cloud data sharing. Their work integrated the dual system encryption technology with selective proof technique to achieve the adaptive CCA security in the standard model. Additionally, their work supports any monotonic access structures.
To improve the security of sharing data using QR codes, Akhil et al. [21] combined the PRE mechanism with QR code applications. Using QR codes to share data among different users is a commonly utilized approach. However, it is easily altered during transmission, since the format of QR codes is only readable by machines.
For improving the security of cloud storage, in 2018, Zeng and Choo [22] introduced a new conditional PRE scheme that is also known as the sender-specified PRE, i.e., SS-PRE, since their scheme only allows the proxy to transform the ciphertexts of the designated sender to the delegatee. They also present the formal definition of their SS-PRE scheme and prove its security in the standard model.
In order to share data securely in the cloud, in 2020, Zhang et al. [23] proposed an identity-based data storage scheme combining the architecture of fog computing. In their scheme, the fog node sends the request of the data user to both the cloud and the data owner. If the requested data user is non-revoked and has access privilege, the data owner will delegate the fog node to perform the cloud ciphertext re-encryption process. The fog node then forwards the re-encrypted ciphertext to the data user for decryption.
Considering the security of message transmission in a group, in 2021, Xiong et al. [24] presented a so-called puncturable PRE scheme on the identity-based cryptosystem. In particular, there is a message server that carries out the ciphertext re-encryption for all users and thus the computational efforts of the user sides are released. Yet, the message server plays a crucial role in the system performance and might become an obvious attacking target.
In 2022, Lin et al. [25] improved Zhang et al.’s scheme [23] by eliminating some security flaws. They also showed that their enhanced scheme maintains the properties to revoke invalid users and generate private keys anonymously. Although their work has improved security, which is provably secure in the random oracle model, the computational complexity is still high. Motivated by this challenging problem, we propose a more efficient PRE scheme based on the study of Lin et al. [25]. Up to the present, there have been several PRE mechanisms [26,27,28,29,30,31,32] proposed for different applications. However, only a few works [19,23,25] take the issue of cloud computing or fog computing scenarios into consideration. We compare the proposed mechanism with these schemes and show the computational advantage of ours in a later section.
The main contribution of this study is to propose an identity-based PRE scheme for the fog computing scenario and using the technique of anonymous key generation. In the proposed system, we use public channels for key distribution and avoid the troublesome problem of key escrow. In addition, the decision of access privilege for cloud ciphertexts is controlled by the data owner, rather than by the central authority. Moreover, we demonstrate that the proposed protocol is not only IND-PrID-CPA secure, but also has lower computational costs.

3. Preliminaries

Let the symbols (G1, G2) be two multiplicative groups and p is a prime order of both groups. We express e: G1 × G1G2 as a symmetric bilinear pairing. The properties of e are listed as follows:
(i) 
Bilinearity:  
Given a group element g in G1 and two integers a, b in Zp, we have e(ga, gb) = e(g, g)ab.
(ii) 
Non-degeneracy: 
There are group elements A, B in G1 such that e(A, B) ≠ 1.
(iii) 
Computability: 
Given two group elements A, B in G1, the value e(A, B) can be efficiently computed.

Decisional Bilinear Diffie–Hellman (DBDH) Problem and Assumption

Let the problem instance be (g, gx, gy, gz, e(g, g)xyz, C) in which (g, gx, gy, gz) are elements in G1 while (e(g, g)xyz, C) are elements in G2; the DBDH problem has to decide if the equality e(g, g)xyz = C holds or not. Its assumption asserts that the chance of any adversary running in polynomial-time to solve the DBDH problem is insignificant.

4. Proposed IB-PRE-FCAK Scheme

Before introducing the proposed identity-based proxy re-encryption scheme using fog computing and anonymous key generation (short for IB-PRE-FCAK), we first address the system model and composed algorithms.

4.1. System Model

We illustrate the system model for our proposed IB-PRE-FCAK scheme in Figure 1, and it is mainly composed of three levels. Among the hierarchy, the top level is a cloud server that can be viewed as a data repository center storing ciphertexts. The middle level is a collection of fog nodes that process requests from users and transmit ciphertexts to the cloud server. The third level consists of the data owner and the data user. The former generates ciphertexts to be uploaded to the cloud server while the latter can request access to cloud ciphertexts. Note that both the ciphertext uploading and downloading processes are assisted by the fog nodes. In particular, the data owner can authorize the fog node to perform the ciphertext re-encryption procedure for sharing cloud ciphertexts with other data users. Moreover, there is also a private key generation center (PKG) responsible for issuing private keys to all users.

4.2. Algorithms

The IB-PRE-FCAK scheme can be divided into several subroutines, i.e., Setup, KeyExtract, Enc, Tkgen, RKgen, Re-Enc, and Dec. We define the parameters and corresponding outputs of these subroutines as follows:
 
Setup(1l): This subroutine utilizes the value l as a security parameter and returns the system public information Φ along with the master secret key Msk.
 
KeyExtract(Φ, Msk, ID): This subroutine utilizes three input parameters (Φ, Msk, ID) where ID is a user identity, and performs an interactive process to return the private key KID associated with ID.
 
Enc(Φ, ID, m, SK): This subroutine utilizes four input parameters (Φ, ID, m, SK) where (m, SK) separately represents a plaintext and a symmetric encryption key. It returns a ciphertext C of the plaintext m under the key SK.
 
Tkgen(Φ, IDu, KIDu, Cind): This subroutine utilizes four input parameters (Φ, IDu, KIDu, Cind) where Cind is the name of data category, and then returns a token Tu,ind.
 
RKgen(Φ, IDu, KIDo, Tu,ind): This subroutine utilizes five input parameters (Φ, IDu, KIDo, Tu,ind) where IDo is the data owner. It returns either the symbol of error ⊥ or a corresponding key RKo,u,ind for re-encryption.
 
Re-Enc(Φ, IDu, C, RKo,u,ind): This subroutine utilizes four input parameters (Φ, IDu, C, RKo,u,ind) and then returns a re-encrypted ciphertext C′.
 
Dec(Φ, KID, C*): This subroutine utilizes three input parameters (Φ, KID, C*) where C* could be C or C′, and then returns a plaintext m.

4.3. Construction

We introduce a concrete construction based on the previously defined subroutines. First, some utilized symbols are defined as Table 1:
 
Setup: Taking the value l as a security value, the PKG chooses G1 and G2 groups of prime order p and both are multiplicative. Let the symbol g denote a generator in group G1 and the notation e be a bilinear map written as e: G1 × G1G2. Msk determined by the PKG is a random value sZp*, and its corresponding master public key (Mpk) is calculated as Q = gs. There is also a user revocation list, i.e., RL, maintained by the PKG. Whenever IDi has to be revoked, the PKG renews RL as RL′ = RL ∪ {IDi}. Three collision-resistant hash functions are defined as follows:
hi: {0, 1}* → G1, for i = 1 and 2
h3: G2G1
Except for Msk, all the other parameters could be viewed as the system public information Φ.
 
KeyExtract: For obtaining his/her private key, a user IDi randomly chooses integers di, kiZp* and computes
Di = gdi,
Hi = Di·h1(IDiki)
The values (IDi, Hi) are delivered to the PKG. After receiving it, the PKG derives
Ki = (Hi·h2(IDiIDPKG))s,
and sends Ki back to IDi. Consequently, IDi is able to calculate his private key as
Ki = K′i/(Q)di = (h1(IDiki)·h2(IDiIDPKG))s
With the following equality, the correctness of Ki can be easily verified.
e(Ki, g) = e(h1(IDikih2(IDiIDPKG), Q)
 
Enc: Let m = (m1, m2, …, mn) be a plaintext to be encrypted and SKG2 a chosen symmetric key. A data owner IDo then selects an integer zR Zp* to calculate
r1 = SK · e(Q, (h1(IDokoh2(IDoIDPKG))z),
r2 = gz,
r3 = (E(SK, m1), E(SK, m2), …, E(SK, mn))
where the notation E(·) denotes the symmetric encryption function.
Here, the ciphertext C is composed of {r1, r2, r3}. Next, the data owner sends (IDo, C) along with the data category name Cind to the adjacent fog. It stores (IDo, Cind, r1, r2) in the local repository and further transmit (IDo, Cind, r3) to the cloud server.
 
Tkgen: For accessing the cloud data with respect to the data category name Cind, a data user IDu randomly selects an integer rR Zp* to compute
R = gr,
and delivers his request (IDu, Cind, R) to the adjacent fog. It then searches for the record (IDo, Cind, r1, r2) from the local repository and further forwards the token Tu,ind = (IDu, R) to the associated data owner IDo.
 
RKgen: Upon obtaining the token Tu,ind = (IDu, R), the data owner IDo asks the PKG to check if the maintained user revocation list RL contains IDu. If it does, an error symbol ⊥ is sent to the requested data user IDu via the assistance of the fog. Or else, IDo randomly selects two random numbers t, yZp* and computes
w1 = Qt
w 2 = K o w 1 h 3 ( e ( h 2 ( I D u | | I D P K G ) R y ,     Q ) )  
w3 = e(gy, Q)
Next, IDo sends the re-encryption key RKo,u,ind = (w1, w2, w3) to the fog node.
 
Re-Enc: Upon receiving RKo,u,ind, the fog re-encrypts the original ciphertext C as C′ by setting
r1′ = r1·e(w1, r2),
r4′ = w2,
r5′ = w3
At last, the re-encrypted ciphertext C′ consisting of (r1′, r2, r3, r4′, r5′) is sent back to IDu. Note that the partial ciphertext r3 can be retrieved from the cloud storage.
 
Dec: In the case that the data owner IDo wants to access his/her original ciphertext C = (r1, r2, r3), he/she can derive the symmetric key by computing
S K = r 1 e ( r 2 ,   K o )
Then, the plaintext can be decrypted as
m = (m1, m2, …, mn) = (D(SK, r3, 1), D(SK, r3, 2), …, D(SK, r3, n)).
where D(·) is a symmetric decryption function.
The correctness of Equation (16) can be verified as follows. From the right side of Equation (16), it can be derived that
r 1 e ( r 2 , K o ) = S K · e ( Q ,   ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) z ) e ( g z , ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) s ) = S K · e ( g s z ,   ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) ) e ( g z , ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) s ) = S K
Whenever a data user IDu obtains a re-encrypted ciphertext C′ that is composed of (r1′, r2, r3, r4′, r5′), he/she first utilizes his/her own private key Ku to calculate
X = r 4 · h 3 ( r 5 r · e ( K u ,   g ) e ( h 1 ( I D u | | k u ) ,     Q ) )
S K = r 1 e ( X ,     r 2 ) .  
Consequently, the plaintext m can be decrypted with the symmetric key SK by Equation (17). We give the derivations of Equation (19) below. Our first step is to simplify Equation (18):
X = r 4 · h 3 ( r 5 r · e ( K u ,   g ) e ( h 1 ( I D u | | k u ) , Q ) ) = K o w 1 h 3 ( e ( h 2 ( I D u | | I D P K G ) R y , Q ) ) h 3 ( e ( g y r ,   Q ) e ( K u , g ) e ( h 1 ( I D u | | k u ) , Q ) ) = K o w 1 h 3 ( e ( h 2 ( I D u | | I D P K G ) R y , Q ) ) h 3 ( e ( g y r ,   Q ) e ( h 1 ( I D u | | k u ) h 2 ( I D u | | I D P K G ) , g s ) e ( h 1 ( I D u | | k u ) , Q ) ) = K o w 1 h 3 ( e ( h 2 ( I D u | | I D P K G ) R y , Q ) ) h 3 ( e ( R y h 2 ( I D u | | I D P K G ) ,   Q ) ) = K o w 1
Next, we could rewrite Equation (19) as
r 1 e ( X ,   r 2 ) = r 1 · e ( w 1 ,   r 2 ) e ( K o w 1 , r 2 ) = S K · e ( Q , ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) z ) e ( Q t , g z ) e ( ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) s Q t , g z ) = S K · e ( ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) s Q t , g z ) e ( ( h 1 ( I D O | | k O ) h 2 ( I D O | | I D P K G ) ) s Q t , g z ) = S K

5. Formal Model and Security Proof

The fundamental security for any encryption scheme is confidentiality. There is also a well-defined security model for PRE schemes. We adopt this security model to demonstrate formally the security of the proposed IB-PRE-FCAK protocol. Namely, we initially review the security definition of IND-PrID-CPA, i.e., indistinguishability against adaptively chosen identity and chosen plaintext attacks. Then, we demonstrate that the proposed construction fulfills the secure notion of IND-PrID-CPA by utilizing the proof techniques of random oracle models.
The concept of this security proof is a technique of proof by contradiction. That is, we first assume that there is an adversary who is able to break the proposed scheme under the adaptively chosen identity and chosen plaintext attacks. Then, we can take the advantage of this adversary to break a well-known intractable cryptographic assumption with non-negligible advantage. Since there is no efficient polynomial-time algorithm that could solve any well-known cryptographic assumption, we conclude that our initial assumption is wrong, which also completes the whole security proof.
(IND-PrID-CPA) In the following interactive game between a probabilistic adversary  A  and a challenger  B , if the former does not have a non-negligible advantage to defeat the latter in polynomial-time, we say that an IB-PRE-FCAE scheme fulfills the security requirement of indistinguishability under the attacks of adaptively chosen identity and chosen-plaintext:
Setup: At first, the challenger  B  invokes the Setup(1l) subroutine to obtain system public information Φ along with the master secret key Msk. The adversary  A  can only learn the public information Φ.
Phase 1:  A  is allowed to adaptively invoke the following queries:
KeyExtract Queries:  A  can query the private key for his chosen identity.
RKgen Queries:  A  can query the re-encryption key for his chosen (IDo, IDu, Cind) in which IDu has to be a non-revoked data user and Cind is the name of data category.
Challenge:  A  chooses the identity of ID* as an object and prepares the plaintext m* = (m1*, m2*, …, mn*). Let (SK0, SK1) be symmetric keys with an identical length. Then,  B  flips a bit bt and then creates a challenge ciphertext C* = (r1*, r2*, r3*) in relation to (ID*, m*, SKbt) for  A .
Phase 2: Given the ciphertext C*, the adversary  A  goes on to invoke previous queries based on the following limits:
The KeyExtract query with respect to ID*, i.e., the target identity, is prohibited.
Any RKgen query for the identities (ID*, IDu) or (IDo, ID*) is prohibited.
A  can invoke at most qke KeyExtract and qrk RKgen queries.
Guess: After invoking enough queries,  A  returns a bit bt′. We say that  A  wins this game, provided that bt′ = bt. Therefore, we can express  A ’s advantage as Adv( A ) = | Pr[bt′ = bt′] − 1/2 |.
Using the techniques of random oracle proof models, we prove that the proposed IB-PRE-FCAK scheme satisfies the security notion of IND-PrID-CPA as Theorem 1.
Theorem 1. 
Provided thatthe DBDH assumption holds, the proposed IB-PRE-FCAK scheme satisfies the security requirement of indistinguishability under adaptively chosen identity and chosen plaintext attacks (IND-PrID-CPA). Specifically, an algorithm  B  breaking the DBDH problem with non-negligible advantage ε′ can be created by utilizing a probabilistic adversary  A  that is able to break the IND-PrID-CPA security of the proposed IB-PRE-FCAK scheme with non-negligible advantage ε in polynomial-time. To be precise, the non-negligible advantage ε′ can be expressed as
ε     ε e ( q k e + q r k + 1 )
where qke and qrk are the maximum numbers of KeyExtract and RKgen queries, respectively.
Proof. 
Given an instance (g, ga, gb, gc, e(g, g)abc, F) of DBDH, we build an algorithm  B  to judge if e(g, g)abc = F holds or not by taking the adversary  A  as subroutine. In the following interactions,  B  is responsible for responding to various queries submitted by  A .
Setup: At first, the challenger  B  invokes the Setup(1l) subroutine to obtain system public information Φ. Let (h1, h2) be random oracles and h3 a collision-resistant hash function.  B  further sets Mpk = Q = ga, i.e., Msk is implicitly specified as the value a unknown to  B .
Phase 1:  A  is allowed to adaptively invoke the following queries:
h1(IDiki) query: In this query,  B  first searches the maintained h1-list for a matched record. Or else, he selects a bit η such that Pr[η = 1] = τ. The value τ would be derived subsequently. Whenever η = 0,  B  returns the value J1 = (gb)v1 in which v1Zp*. Otherwise, J1 is computed as gv1. The maintained h1-list is also renewed by adding the record (IDi, ki, η, v1, J1).
h2(IDiIDPKG) query: In this query,  B  first searches the maintained h2-list for a matched record. Or else, he returns the value J2 = gv2 in which v2Zp*. The maintained h2-list is also renewed by adding the record (IDi, IDPKG, v2, J2).
KeyExtract query: In response to the KeyExtract(IDi) query,  B  tries to determine the corresponding records (IDi, ki, η, v1, J1) and (IDi, IDPKG, v2, J2) in h1-list and h2-list, respectively. (If one datum exists,  B  could directly invoke the two queries to create records.) As long as η = 1,  B  aborts; or else, the return value is computed as Ki Q ( v 1   +   v 2 )
RKgen query: In response to the RKgen(IDo, IDu, Cind) query in which IDu is a non-revoked user,  B  obtains the private key KIDo by invoking the KeyExtract(IDo) query and checks the record (IDi, ki, η, v1, J1) kept in the h1-list. As long as η = 0,  B  aborts. Or else,  B  chooses random numbers r, t, yZp* and calculates R = gr, w1 = Qt, w2 K o Q t h 3 ( e ( h 2 ( I D u | | I D P K G ) ) R y ,   Q ) ) , w3 = e(gy, Q). Thus, the returned re-encryption key RKo,u,ind is composed of (w1, w2, w3).
Challenge:  A  chooses the identity of ID* as an object and prepares the plaintext m* = (m1*, m2*, …, mn*). Let (SK0, SK1) be symmetric keys with an identical length. Then,  B  flips a bit bt and then creates a challenge ciphertext C* = (r1*, r2*, r3*) in relation to (ID*, m*, SKbt) for  A  as follows:
  • Step 1 Suppose that the h1(ID*k*) query has been made. As long as η* = 1,  B  directly aborts.
  • Step 2 Define h2(ID* ‖ IDPKG) = gv2 in which v2Zp*.
  • Step 3 Set the partial ciphertext r2* = gc.
  • Step 4 Determine the value v1 of the record (ID*, k*, η*, v1, J1) in the h1-list and calculate
r 1 = S K b t · F v 1 1 · e ( Q ,   ( g c ) v 2 ) ,  
r3* = (E(SKbt, m1*), E(SKbt, m2*), …, E(SKbt, mn*)).
Consequently, the returned challenge ciphertext is C* = (r1*, r2*, r3*).
Phase 2: Given the ciphertext C*, the adversary  A  goes on to invoke queries based on the previous limitations.
Guess: After invoking enough queries,  A  returns a bit bt′. In case that bt′ = bt B  directly returns 1, meaning that F = e(g, g)abc. Otherwise, the value 0 is outputted instead.
Analysis: In these simulation processes, it can be observed that when F is equivalent to e(g, g)abc, the prepared challenge ciphertext C* is a legal one. According to the initial assumption,  A  would have the non-negligible advantage to break the proposed IB-PRE-FCAK scheme provided that the simulated ciphertext C* is valid. That is to say, we know that Adv( A ) = | Pr[bt′ = bt] − 1/2 | ≥ ε. Yet, when F is not equivalent to e(g, g)abc, the advantage for  A  to output a correct bit bt′ is not superior, which implies that Pr[bt′ = bt] = 1/2. Therefore, the chance for  B  to solve the problem of DBDH could be written as
| Pr[(g, ga, gb, gc, e(g, g)abc) = 1] − Pr[(g, ga, gb, gc, F) = 1] |
≥ | (1/2 + ε) − 1/2 |·Pr[Good]
= ε·Pr[Good]
where Pr[Good] represents the probability event that  B  never aborts during the game interaction processes. To calculate Pr[Good], we further consider the following several cases:
Pr[¬KeyExtract]: the likelihood that  B  never aborts in any KeyExtract query;
Pr[¬RKgen]: the likelihood that  B  never aborts in any RKgen query;
Pr[¬Challenge]: the likelihood that  B  never aborts in the challenge phase.
In the first case of a KeyExtract query,  B  aborts as long as the bit η in the corresponding entry of the h1-list equals 0. Thus, we can learn that Pr[¬KeyExtract] ≤ τ qke. Likewise, as for the second case of an RKgen query, we also know that  B  aborts on the condition that the bit η = 0, which indicates that Pr[¬RKgen] ≤ τ qrk. In the third case that  B  might abort only when the bit η* for the chosen identity ID* is equivalent to 1. Therefore, we could derive that Pr[¬Challenge] ≤ (1 − τ). Putting all the three independent probability events together, we further obtain
Pr[Good] = Pr[¬KeyExtract]·Pr[¬RKgen]·Pr[¬Challenge]
      ≤ (τ)qke(τ)qrk(1 − τ)
      = (τ)qke + qrk(1 − τ).
      = 1 e ( q p k + q p r + 1 )
To maximize the value of Pr[Good], we set τ to be  1 1 q k e   + q r k + 1  such that Pr[Good] =  1 e ( q p k + q p r + 1 )  becomes the greatest value, where e denotes the base of natural logarithm. As a result, we claim that the constructed algorithm  B  has a non-negligible advantage ε′ ≥  ε e ( q p k + q p r + 1 )  to break the DBDH problem. □

6. Efficiency and Comparison

We made some efficiency comparisons with related protocols [19,23,25] in terms of several time-consuming computations. For convenience, the simulation environments are listed in Table 2 and the compared computation is also converted into approximate running time in Table 3. The detailed evaluation results are summarized in Table 4 and Figure 2.
Although Han et al.’s scheme is cost-free in the Re-Enc phase, their scheme has the highest computation costs in the Setup, KeyExtract, Enc, TKgen, and RKgen phases. Zhang et al.’s scheme has the lowest computation costs in both the RKgen and the Dec by IDu phases. Lin et al.’s scheme incurs higher computation cost in the Dec by IDu phase. As a whole, the proposed protocol exhibits optimal computational costs in the Setup, KeyExtract, Enc, and Dec by IDo phases.

7. Conclusions

Fog-based applications have received much attention in recent years due to their advantages in fast response time and more bandwidth savings. A fog-enabled proxy re-encryption scheme allows a fog node to perform the ciphertext re-encryption process, so as to share cloud ciphertexts to desired data users. In this paper, we propose an identity-based proxy re-encryption scheme taking the advantage of fog computing. Specifically, the proposed scheme removes the necessity for a fully trusted system authority, as the private key of each user is not generated by the system authority solely. Therefore, it is unnecessary to establish a secure channel for distributing private keys in the proposed scheme. The access privilege of cloud ciphertexts can be determined independently by the data owner. As for security, we adopt the security notion of IND-PrID-CPA to formally prove that the proposed mechanism is able to withstand the adaptive adversary in random oracle models. In the performance analyses, we also demonstrate that our work is efficient in the processes of Setup, KeyExtract, Enc, and Dec, when compared with related protocols.

Author Contributions

Writing—original draft, H.-Y.L.; writing—review and editing, T.-T.T. and P.-Y.T.; Resources, Y.-R.F. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the Ministry of Science and Technology of the Republic of China under the contract number MOST 110-2221-E-019-041-MY3.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data is contained within the article.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chellappa, R. Intermediaries in cloud-computing: A new computing paradigm. In Proceedings of the 1997 INFORMS Annual Meeting, San Diego, CA, USA, 4–5 May 1997; pp. 26–29. [Google Scholar]
  2. Chen, Z. Research on Internet security situation awareness prediction technology based on improved RBF neural network algorithm. J. Comput. Cogn. Eng. 2022, 1, 103–108. [Google Scholar]
  3. Gutub, A.; Gong, M. Boosting image watermarking authenticity spreading secrecy from counting-based secret-sharing. CAAI Trans. Intell. Technol. 2022, 1–13. [Google Scholar] [CrossRef]
  4. Pavithran, P.; Mathew, S.; Namasudra, S.; Srivastava, G. A novel cryptosystem based on DNA cryptography, hyperchaotic systems and a randomly generated Moore machine for cyber physical systems. Comput. Commun. 2022, 188, 1–12. [Google Scholar] [CrossRef]
  5. Mahmood, Z.H.; Ibrahem, M.K. New fully homomorphic encryption scheme based on multistage partial homomorphic encryption applied in cloud computing. In Proceedings of the 2018 1st Annual International Conference on Information and Sciences (AiCIS), Fallujah, Iraq, 20–21 November 2018; pp. 182–186. [Google Scholar]
  6. Dostalek, L.; Safarik, J. Strong password authentication with AKA authentication mechanism. In Proceedings of the 2017 International Conference on Applied Electronics (AE), Pilsen, Czech Republic, 5–6 September 2017; pp. 1–6. [Google Scholar]
  7. Sarkar, M.; Saha, K.; Namasudra, S.; Roy, P. An efficient and time saving web service based android application. SSRG Int. J. Comput. Sci. Eng. 2015, 2, 18–21. [Google Scholar]
  8. Kumari, S.; Kumar, R.; Kadry, S.; Namasudra, S.; Taniar, D. Maintainable stochastic communication network reliability within tolerable packet error rate. Comput. Commun. 2021, 178, 161–168. [Google Scholar] [CrossRef]
  9. Wani, A.; Revathi, S.; Khaliq, R. SDN-based intrusion detection system for IoT using deep learning classifier (IDSIoT-SDL). CAAI Trans. Intell. Technol. 2021, 6, 281–290. [Google Scholar] [CrossRef]
  10. Bajaj, K.; Sharma, B.; Singh, R. Comparative analysis of simulators for IoT applications in fog/cloud computing. In Proceedings of the 2022 International Conference on Sustainable Computing and Data Communication Systems (ICSCDS), Erode, India, 7–9 April 2022; pp. 983–988. [Google Scholar]
  11. Tseng, C.L.; Lin, F.J. Extending scalability of IoT/M2M platforms with fog computing. In Proceedings of the 2018 IEEE 4th World Forum on Internet of Things (WF-IoT), Singapore, 5–8 February 2018; pp. 825–830. [Google Scholar]
  12. Stolfo, S.J.; Salem, M.B.; Keromytis, A.D. Fog computing: Mitigating insider data theft attacks in the cloud. In Proceedings of the 2012 IEEE Symposium on Security and Privacy Workshops, San Francisco, CA, USA, 24–25 May 2012; pp. 125–128. [Google Scholar]
  13. Verma, R.; Kumari, A.; Anand, A.; Yadavalli, V.S.S. Revisiting shift cipher technique for amplified data security. J. Comput. Cogn. Eng. 2022, 1–7. [Google Scholar] [CrossRef]
  14. Bonomi, F.; Milito, R.; Zhu, J.; Addepalli, S. Fog computing and its role in the internet of things. In Proceedings of the First Edition of the MCC Workshop on Mobile Cloud Computing, Helsinki, Finland, 17 August 2012; pp. 13–16. [Google Scholar]
  15. Fang, L.; Susilo, W.; Ge, C.; Wang, J. Chosen-ciphertext secure anonymous conditional proxy re-encryption with keyword search. Theor. Comput. Sci. 2012, 462, 39–58. [Google Scholar] [CrossRef] [Green Version]
  16. Luo, S.; Hu, J.; Chen, Z. Ciphertext policy attribute-based proxy re-encryption. In Proceedings of the International Conference on Information and Communications Security, Barcelona, Spain, 15–17 December 2010; pp. 401–415. [Google Scholar]
  17. Wang, X.A.; Huang, X.; Yang, X.; Liu, L.; Wu, X. Further observation on proxy re-encryption with keyword search. J. Syst. Softw. 2012, 85, 643–654. [Google Scholar] [CrossRef]
  18. Liang, K.; Fang, L.; Susilo, W.; Wong, D.S. A ciphertext-policy attribute-based proxy re-encryption with chosen-ciphertext security. In Proceedings of the IEEE 2013 5th International Conference on Intelligent Networking and Collaborative Systems (INCoS), Xi’an, China, 9–11 September 2013; pp. 552–559. [Google Scholar]
  19. Han, J.; Susilo, W.; Mu, Y. Identity-based data storage in cloud computing. Future Gener. Comput. Syst. 2013, 29, 673–681. [Google Scholar] [CrossRef] [Green Version]
  20. Liang, K.; Au, M.H.; Susilo, W.; Wong, D.S.; Yang, G.; Yu, Y. An adaptively CCA-secure ciphertext-policy attribute-based proxy re-encryption for cloud data sharing. In Proceedings of the International Conference on Information Security Practice and Experience, Fuzhou, China, 5–8 May 2014; pp. 448–461. [Google Scholar]
  21. Akhil, N.V.; Vijay, A.; Kumar, D.S. QR code security using proxy re-encryption. In Proceedings of the 2016 International Conference on Circuit, Power and Computing Technologies (ICCPCT), Nagercoil, India, 18–19 March 2016; pp. 1–5. [Google Scholar]
  22. Zeng, P.; Choo, K.R. A new kind of conditional proxy re-encryption for secure cloud storage. IEEE Access 2018, 6, 70017–70024. [Google Scholar] [CrossRef]
  23. Zhang, J.; Bai, W.; Wang, X. Identity-based data storage scheme with anonymous key generation in fog computing. Soft Comput. 2020, 24, 5561–5571. [Google Scholar] [CrossRef]
  24. Xiong, H.; Wang, L.; Zhou, Z.; Zhao, Z.; Huang, X.; Kumari, S. Burn after reading: Adaptively secure puncturable identity-based proxy re-encryption scheme for securing group message. IEEE Internet Things J. 2021, 9, 11248–11260. [Google Scholar] [CrossRef]
  25. Lin, H.Y.; Tsai, T.T.; Ting, P.Y.; Chen, C.C. An improved ID-based data storage scheme for fog-enabled IoT environments. Sensors 2022, 22, 4223. [Google Scholar] [CrossRef] [PubMed]
  26. Chandini, A.G.; Basarkod, P.I. A robust blockchain architecture for electronic health data using efficient lightweight encryption model with re-encryption scheme. In Proceedings of the 2022 IEEE International Conference on Data Science and Information System (ICDSIS), Hassan, India, 29–30 July 2022; pp. 1–6. [Google Scholar]
  27. Hu, H.; Cao, Z.; Dong, X. Autonomous path identity-based broadcast proxy re-encryption for data sharing in clouds. IEEE Access 2022, 10, 87322–87332. [Google Scholar] [CrossRef]
  28. Yang, H.; Li, L.; Yang, C. A fine-grained certificateless conditional proxy broadcast re-encryption scheme without pairing. In Proceedings of the 2022 IEEE 10th Joint International Information Technology and Artificial Intelligence Conference (ITAIC), Chongqing, China, 17–19 June 2022; pp. 1414–1423. [Google Scholar]
  29. Devaki, K.; Leena, J.L. Re-encryption model for multi-block data updates in network security. In Proceedings of the 2022 International Conference on Applied Artificial Intelligence and Computing (ICAAIC), Salem, India, 9–11 May 2022; pp. 1331–1336. [Google Scholar]
  30. Yang, C.C.; Tso, R.; Liu, Z.Y.; Hsu, J.C.; Tseng, Y.F. Improved proxy re-encryption scheme with equality test. In Proceedings of the 2021 16th Asia Joint Conference on Information Security (AsiaJCIS), Seoul, Republic of Korea, 19–20 August 2021; pp. 37–44. [Google Scholar]
  31. Khashan, O.A. Parallel proxy re-encryption workload distribution for efficient big data sharing in cloud computing. In Proceedings of the 2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC), Virtual, 27–30 January 2021; pp. 554–559. [Google Scholar]
  32. Yao, S.; Dayot, R.V.J.; Kim, H.J.; Ra, I.H. A novel revocable and identity-based conditional proxy re-encryption scheme with ciphertext evolution for secure cloud data sharing. IEEE Access 2021, 9, 42801–42816. [Google Scholar] [CrossRef]
  33. PBC Library, the Pairing-Based Cryptography Library. Available online: http://crypto.stanford.edu/pbc/ (accessed on 28 December 2022).
Figure 1. System model of the IB-PRE-FCAK scheme.
Figure 1. System model of the IB-PRE-FCAK scheme.
Sensors 23 02706 g001
Figure 2. Comparison of approximate running time [11,13,19].
Figure 2. Comparison of approximate running time [11,13,19].
Sensors 23 02706 g002
Table 1. Symbol notations.
Table 1. Symbol notations.
NotationDescription
lsecurity value
G1, G2groups of prime order p
ga generator of G1
ea bilinear map satisfying e: G1 × G1G2
smaster secret key
Qmaster public key satisfying Q = gs
RLrevocation list
h1, h2, h3collision-resistant hash functions
Φsystem public information
SKsymmetric key
E(·)/D(·)symmetric encryption/decryption function
{r1, r2, r3}ciphertext
Cinddata category name
(w1, w2, w3)re-encryption key
(r1′, r2, r3, r4′, r5′)re-encrypted ciphertext
Table 2. Simulation environments.
Table 2. Simulation environments.
ItemEnvironment
ProcessorIntel Core 2 Duo @ 2.1 Ghz
Memory size2 GB
Operating systemLinux Ubuntu version 9.1
SoftwarePBC library [33]
Table 3. Computation and approximate running time.
Table 3. Computation and approximate running time.
ItemNotationRunning Time
Computation
Bilinear pairingC05.883 ms
Exponentiation over G1C10.736 ms
Exponentiation over G2C20.142 ms
Table 4. Evaluation of computational cost.
Table 4. Evaluation of computational cost.
SchemeHan et al.
[19]
Zhang et al.
[11]
Lin et al.
[13]
Proposed
Phase
Setup cost6C12C12C1C1
KeyExtract cost5C0 + 5C15C15C13C1
Enc cost3C0 + 3C1 + C2C0 + 2C1 + C2C0 + 2C1 + C2C0 + 2C1
Tkgen cost2C1C1C1C1
RKgen cost5C0 + 4C1 + C22C12C0 + 3C1 + C22C0 + 3C1
Re-Enc cost0C0C0C0
Dec cost by IDo2C02C02C0C0
Dec cost by IDu2C0 + 2C12C0 + C14C0 + C23C0 + C2
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

Lin, H.-Y.; Tsai, T.-T.; Ting, P.-Y.; Fan, Y.-R. Identity-Based Proxy Re-Encryption Scheme Using Fog Computing and Anonymous Key Generation. Sensors 2023, 23, 2706. https://doi.org/10.3390/s23052706

AMA Style

Lin H-Y, Tsai T-T, Ting P-Y, Fan Y-R. Identity-Based Proxy Re-Encryption Scheme Using Fog Computing and Anonymous Key Generation. Sensors. 2023; 23(5):2706. https://doi.org/10.3390/s23052706

Chicago/Turabian Style

Lin, Han-Yu, Tung-Tso Tsai, Pei-Yih Ting, and Yan-Rong Fan. 2023. "Identity-Based Proxy Re-Encryption Scheme Using Fog Computing and Anonymous Key Generation" Sensors 23, no. 5: 2706. https://doi.org/10.3390/s23052706

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