Next Article in Journal
Comparative Approach to De-Noising TEMPEST Video Frames
Next Article in Special Issue
WiFi-Based Human Identification with Machine Learning: A Comprehensive Survey
Previous Article in Journal
Enhancing Coffee Agroforestry Systems Suitability Using Geospatial Analysis and Sentinel Satellite Data in Gedeo Zone, Ethiopia
Previous Article in Special Issue
Reconstruction of Radio Environment Map Based on Multi-Source Domain Adaptive of Graph Neural Network for Regression
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Revocable and Fog-Enabled Proxy Re-Encryption Scheme for IoT Environments

Department of Computer Science and Engineering, National Taiwan Ocean University, Keelung 202, Taiwan
*
Author to whom correspondence should be addressed.
Sensors 2024, 24(19), 6290; https://doi.org/10.3390/s24196290
Submission received: 22 August 2024 / Revised: 21 September 2024 / Accepted: 26 September 2024 / Published: 28 September 2024

Abstract

:
As technology advances rapidly, a diverse array of Internet of Things (IoT) devices finds widespread application across numerous fields. The intelligent nature of these devices not only gives people more convenience, but also introduces new challenges especially in security when transmitting data in fog-based cloud environments. In fog computing environments, data need to be transmitted across multiple devices, increasing the risk of data being intercepted or tampered with during transmission. To securely share cloud ciphertexts, an alleged proxy re-encryption approach is a commonly adopted solution. Without decrypting the original ciphertext, such a mechanism permits a ciphertext intended for user A to be easily converted into the one intended for user B. However, to revoke the decryption privilege of data users usually relies on the system authority to maintain a user revocation list which inevitably increases the storage space. In this research, the authors come up with a fog-based proxy re-encryption system with revocable identity. Without maintaining the traditional user revocation list, the proposed scheme introduces a time-updated key mechanism. The time-update key could be viewed as a partial private key and should be renewed with different time periods. A revoked user is unable to obtain the renewed time-update key and hence cannot share or decrypt cloud ciphertexts. We formally demonstrate that the introduced scheme satisfies the security of indistinguishability against adaptively chosen identity and chosen plaintext attacks (IND-PrID-CPA) assuming the hardness of the Decisional Bilinear Diffie–Hellman (DBDH) problem in the random oracle model. Furthermore, compared with similar systems, the proposed one also has lower computational complexity as a whole.

1. Introduction

Cloud computing [1] is a technology that provides computing resources and services over the Internet. It allows users to access and share computing resources via the Internet without the need to own, manage, or maintain physical hardware and software. Numerous businesses have begun venturing into the cloud computing sector attracted by its benefits like cost-effectiveness and enhanced productivity. Consequently, cloud services have progressively become integral to our daily lives. However, with the emergence of the IoT [2,3,4], many applications require real-time processing capabilities. For example, in smart transportation systems, real-time feedback of vehicle-driving data collected by sensors is necessary for immediate response to emergencies. Therefore, reducing data transmission time and improving efficiency have become major challenges, which further drives the development of fog computing [5,6,7].
Fog computing is often regarded as an expansion of cloud computing. It emphasizes executing computing at the data source to reduce reliance on central cloud resources, meeting the demands of applications like the IoT. In the IoT environment of a fog computing architecture, fog nodes (FNs) are the core components, widely distributed between data sources and the cloud. If applied in the healthcare industry, it can be used for monitoring patient data and providing real-time diagnosis. Fog computing can provide multi-layered data processing and flexible configuration according to requirements and applications. Although its computing power is weaker compared to the cloud, users can transfer data from closer fog nodes to the cloud. This not only accelerates the response to user demands but also reduces the computational burden on cloud servers.
Today, the majority of users opt to store their data in cloud storage solutions. When they attempt to share confidential data kept in the cloud with others, they can utilize the proxy re-encryption [8,9,10,11,12] technique introduced by Blaze et al. [13]. The basic concept is illustrated as Figure 1. Specifically, the data owner encrypts data and stores it in the cloud for future use. Since the data is encrypted, the cloud server cannot learn its content without having the data owner’s private key. If the data owner wants to share the data stored in the cloud with a data requester, they can authorize a semi-honest proxy server to perform the re-encryption process. The re-encryption key is generated by the data owner themselves. As the ciphertext is not decrypted during the process, there is no concern about the proxy server gaining information about the plaintext.

1.1. Related Works

So far, many proxy re-encryption applications have been proposed, including data sharing, data outsourcing, and cloud data storage. In 2015, Chen et al. [14] addressed the concept of a Verifiable Database with Incremental Updates (Inc-VDB), which enables resource-constrained users to outsource large amounts of data to untrusted servers for retrieval and update. If the server attempts to tamper with the data, the user can detect it. However, when users require frequent and small modifications to the data in the database, they must recalculate new ciphertexts and update the data on the server. For resource-constrained users, such operations are costly. To meet the above application requirements, they proposed a specific scheme for verifiable databases with incremental updates under the CDH assumption.
In 2017, Bankar and Raghatwan [15] proposed an identity-based proxy re-encryption using forward security in a cloud framework. Their system enables the data owner to securely store data in the cloud server by initially encrypting them and sending them to a Trustworthy Third Party (TTP), which further encrypts the data. Additionally, the data owner can manage data storage operations such as upgrades, scaling, and retrieval in the cloud server. Access control mechanisms are implemented by the data owner for the outsourced data. Furthermore, in case of disputes concerning data integrity, the TTP has the authority to determine dishonest users.
Conditional proxy re-encryption [16,17,18] is a frequently used method for applying access control policies to cloud ciphertexts. Nonetheless, the size of the re-encryption keys tends to grow proportionally with the number of condition values, posing challenges for implementation on resource-constrained computational devices. In 2018, Chen et al. [19] introduced a key-aggregate proxy re-encryption scheme designed for secure data sharing in cloud environments. Their research demonstrated that the proposed scheme could effectively facilitate fine-grained access control on files using constant-size re-encryption keys. In 2019, Shen et al. [1] proposed a block design-based key agreement protocol for group data sharing in cloud computing. Their method enables secure key agreement among multiple participants in a cloud environment, reducing the overhead in managing group communications.
In 2020, Zhang et al. [20] addressed a data storage method using identity-based systems and the techniques of proxy re-encryption and fog computing. Identity-based encryption schemes typically have the problem of key escrow since the user private key is issued by the private key generation center (PKG). In their method, even though the PKG has the master private key, it cannot learn the real private key of users. Additionally, the re-encryption keys in their method do not need to be generated through the PKG but can be calculated by the data owner themselves. In 2021, Yao et al. [17] introduced a revocable and identity-based conditional proxy re-encryption scheme tailored for cloud data sharing. This scheme supports ciphertext evolution, meaning that re-encrypted ciphertexts are updated over time, ensuring backward security even if a key is compromised. Yang et al. [21] presented an improved proxy re-encryption scheme with equality testing. They enhanced the functionality by allowing for secure ciphertext comparison without decryption. This improvement is particularly valuable in scenarios requiring secure data matching or deduplication in cloud environments, while maintaining strong security guarantees. Zhang and Li [22] introduced a blockchain-based attribute proxy re-encryption scheme specifically designed for secure medical data sharing. By integrating blockchain technology with attribute-based encryption, the scheme ensures that medical records can be shared securely and transparently, with immutable audit trails.
In 2022, Ge et al. [23] proposed a verifiable and fair attribute-based proxy re-encryption scheme designed for secure and efficient data sharing in cloud environments. The scheme ensures that the re-encryption process is verifiable and maintains fairness, which is critical for ensuring that both data owners and recipients are treated equitably. In the same year, Lin et al. [24] pointed out several security flaws in Zhang et al.’s work [20] and presented a secure variant. They also further proposed a more efficient mechanism in [25]. Nevertheless, in these schemes, the PKG has to maintain a revocation list for fulfilling the functionality of user revocation, which would increase additional storage cost. Motivated by this concern, we will propose a fog-based proxy re-encryption system with revocable identity. In particular, the proposed system utilizes a time-update key algorithm to achieve the user revocation without maintaining a user revocation list.

1.2. Motivation and Contributions

In prior revocable schemes [20,24,25], the PKG must maintain a revocation list to manage user revocation, which introduces significant storage overhead as the list grows with each revoked user. This added burden is especially detrimental in resource-constrained environments. Motivated by this limitation, we propose a fog-based proxy re-encryption system that leverages a time-update key algorithm to achieve efficient user revocation without the need for maintaining a traditional revocation list. Our approach offers a more streamlined solution by periodically updating user keys based on time intervals, ensuring that revoked users lose access without requiring constant list maintenance. The proposed system not only simplifies key management but also improves performance metrics. Compared with existing schemes, our method significantly reduces computational overhead by eliminating the need for real-time revocation list queries and updates. Additionally, the time-update key mechanism inherently reduces storage costs and computational complexity, making it more scalable for IoT environments. The findings show that our system achieves the same or better security guarantees, particularly against adaptively chosen identity and chosen plaintext attacks (IND-PrID-CPA), while maintaining lower computational and storage costs. This efficiency makes our scheme highly suitable for fog-enabled IoT applications where resources are limited, and real-time data processing is essential.
The remainder of this paper is organized as follows: Section 2 covers the essential computational assumptions. Section 3 details the proposed scheme. In Section 4, we discuss potential security challenges, provide formal security proof and evaluate performance. Finally, Section 5 concludes the paper and discusses future research directions.

2. Preliminaries

This section primarily elucidates the background knowledge to be used in this paper.

2.1. Bilinear Pairing

Bilinear pairing is a cryptographic primitive with numerous applications in modern security protocols, especially in identity-based encryption (IBE), attribute-based encryption (ABE), and proxy re-encryption schemes. In identity-based encryption, bilinear pairing allows a trusted authority to generate private keys for users based on their identities, simplifying public key infrastructure management. Pairing-based cryptography is also widely used in short digital signatures, where the efficiency of the pairing operation makes it ideal for environments with limited bandwidth or storage. Another key application is in group key exchange protocols, where bilinear pairing is used to establish secure group communication efficiently. In proxy re-encryption schemes, such as the one proposed in this paper, bilinear pairing enables secure re-encryption without exposing the plaintext or compromising the system’s security guarantees. The definition of bilinear pairing is as follows. Let G1 and G2 be multiplicative groups of prime order p, and g an arbitrary generator of G1 that is not the identity element. If the following properties hold, then e: G1 × G1G2 can be regarded as a symmetric bilinear map:
(i)
Bilinearity:
If gG1 and i, jZp*, then e(gi, gj) = e(g, g)ij.
(ii)
Non-degeneracy:
The generator gG1 satisfies that e(g, g) ≠ 1.
(iii)
Computability:
If P, QG1 and there is a polynomial-time algorithm that can efficiently compute e(P, Q), it satisfies computability.

2.2. One-Way Hash Function

One-way hash functions are fundamental in many cryptographic protocols, owing to their properties of irreversibility and collision resistance. These functions are extensively used in digital signatures to ensure data integrity and authenticity, where a message is hashed before signing, allowing for efficient verification without revealing the original message. Another common application is password protection: rather than storing passwords directly, systems store hash values of passwords, making it difficult for attackers to recover the original password, even if they gain access to the hashed values. One-way hash functions are also critical in constructing message authentication codes (MACs) and hash-based digital signatures, where they serve to verify data integrity and authentication. Additionally, in blockchain technology, hash functions ensure that data blocks are cryptographically linked, securing the integrity of the chain. A secure one-way hash function should satisfy the following characteristics:
(i)
Irreversibility (One-way):
Difficult to analyze in reverse, i.e., impossible to derive the original input from the hash value.
(ii)
Fixed-length output:
Any length of message can result in a hash value of the same length.
(iii)
Fast computation:
Even with large amounts of data, the hash function can compute within a reasonable time.
(iv)
Collision resistance:
Two different inputs producing the same hash value, known as hash collisions, should be extremely rare for a secure hash function.
(v)
Avalanche effect:
Slight changes in input values should result in significant changes in the hash value.
-
Decisional Bilinear Diffie–Hellman (DBDH) Problem
Given a set of values (g, gx, gy, gz, e(g, g)xyz, γ) in which g, gx, gy, gzG14 and e(g, g)xyz, γG22, the DBDH problem is to decide whether the equality e(g, g)xyz = γ holds or not.
-
Decisional Bilinear Diffie–Hellman (DBDH) Assumption
When the advantage of any probabilistic polynomial-time adversary in solving the DBDH problem is negligible, the DBDH assumption holds.

3. Proposed IB-PRE-FCAK Scheme

This section will introduce the proposed method and the definition of each algorithm.

3.1. Algorithms Definition

Here are the definitions of the algorithms used in the proposed system:
-
System Initialization (SI): Given the security parameter τ, it generates the public parameters (PP), the master secret key (Msk) and the master public key (Mpk) required for the system
-
Initial Private Key Generation (IPKG): Given the public parameters (PP), the master private key (Msk), and the identity of the user to be registered (IDu), it generates the initial private key (ipku) for the user.
-
Time-Update Key Generation (TUKG): Given the public parameters (PP), the master private key (Msk), the identity of the user to be registered (IDu), and the time period (n), it generates the time-update key (tuku, n) for the user.
-
Encryption: Given the parameters (PP), the time period (n), a symmetric key (Y), a plaintext (m), and the identity of data owner (IDO), it generates the encrypted ciphertext (CT).
-
Query: Given the identity of the data requester (IDR) and the file index (Fi) to be requested, it generates the corresponding query token (Θ).
-
Re-encryption Key Generation (RenKG): Given the parameters (PP), the query token (Θ), and data owner’s private key (skO, n), it generates the re-encryption key (renkO, n).
-
Re-encryption: Given the parameters (PP), the ID of the data requester (IDR), the re-encryption key (renkO, n) sent by the data owner, the file index (Fi), the identity of the data owner (IDO), and an original ciphertext (CT), it calculates the re-encrypted ciphertext (RCT).
-
Decryption: The decryption algorithm can be divided into two types: one is for the data owner to decrypt and the other is for the data requester to decrypt. Specifically, given the public parameters (PP), a user private key (skO, n or skR, n), and the ciphertext (CT) or the re-encrypted ciphertext (RCT), it calculates the symmetric key (Y) for deriving the original plaintext m.

3.2. Method Construction

This section describes the proposed method and architecture. Figure 2 depicts the system model and participating parties in the proposed scheme.
-
System Initialization (SI(1τ))
The Private Key Generation Center (PKG) takes the security parameter τ as input and generates the public parameters PP, the master private key Msk and the master public key Mpk. Let PP = { e , G 1 , G 2 , g , p ,   H 1 , H 2 , H 3 , M p k , S y m E , S y m D }, where the symbols represent the following:
1.
G1 and G2 are two prime-order multiplicative groups of the order p, g is a generator of G1 and e is a bilinear mapping function, i.e., e: G1 × G1G2.
2.
H1, H2 and H3 are three collision-resistant hash functions, i.e., H1: {0, 1}* → G1, H2: {0, 1}* → G1 and H3: G2G1.
3.
Msk is defined as ψ arbitrarily selected from Zp* and the Mpk is calculated as g 1 = g ψ .
4.
S y m E , S y m D are symmetric encryption and decryption functions, respectively.
-
Initial Private Key Generation (IPKG(PP, Msk, IDu))
The steps for generating the initial private key are as follows:
User I D u sends his/her identity ( I D u ) to the PKG;
1.
PKG computes the initial private key i p k u = H 2 ( I D u ) ψ and returns it to the user I D u ;
2.
The accuracy of the initial private key can be checked with the equation
e i p k u , g = e ( H 2 ( I D u ) , g 1 ) .
-
Time-Update Key Generation (TUKG(PP, n, Msk, IDu))
The steps for generating the time-update key associated with the time period n are as follows:
1.
User I D u sends ( I D u , n ) to the PKG;
2.
PKG computes the time-update key t u k u ,   n = H 1 ( I D u n ) ψ and returns it to the user I D u ;
3.
The accuracy of the key can be checked with the equation
e t u k u , n , g = e ( H 2 ( I D u n ) , g 1 ) ;
4.
User I D u can compute the complete private key by using the previously obtained i p k u as
s k u , n = i p k u · t u k u , n = ( H 1 ( I D u n ) H 2 ( I D u ) ) ψ
-
Encryption(PP, n, Y, m, IDO)
Data owner I D O inputs public parameters PP, a time period n, a symmetric key Y, a file index Fi, a plaintext m = m 1 , m 2 , , m w along with his/her identity I D O , and then selects a random number lZp* to compute the ciphertext CT = {CT0 = (C1, C2), CT1} as
C 1 = Y · e ( g 1 , H 1 ( I D O n ) H 2 ( I D O ) l )
C 2 = g l
C T 1 = ( S y m E ( Y , m 1 ) , , S y m E ( Y , m w ) )
After computation, I D O sends n ,   C T , I D O , F i to the nearby fog nodes which will store partial ciphertext C T 0 , I D O , F i and forward the other partial ciphertext C T 1 , I D O , F i to the cloud server.
-
Query(PP, Fi, IDR)
To request the cloud ciphertext associated with the file index Fi, a data requester I D R selects a random number ϱ Zp*, computes
Q = g ϱ
and sends F i , I D R , Q to nearby fog nodes which will generate the corresponding query token Θ = ( Q , I D R ) and deliver it to the data owner I D O .
-
Re-encryption Key Generation (RenKG(PP, Θ, skO, n))
First, data owner I D O selects random numbers c, vZp* and calculates the following values forming the re-encryption key:
r k 1 = g 1 c
r k 2 = ( s k O , n ) r k 1 / H 3 ( e H 2 ( I D R ) Q υ , g 1 )
r k 3 = e ( g υ , g 1 )
After computation, the re-encryption key r e n k O ,   n = r k 1 ,   r k 2 ,   r k 3 is sent to fog nodes.
-
Re-encryption(PP, IDR, renKO, n, Fi, IDO, CT)
After receiving renkO, n, fog nodes perform re-encryption calculations as:
R C 1 = C 1 · e r k 1 , C 2
R C 2 = C 2
R C 3 = r k 2
R C 4 = r k 3
Then the identity of the data owner and the file index I D O ,   F i are transmitted to the cloud server which will return the stored partial ciphertext C T 1 . Fog nodes then send the re-encrypted ciphertext R C T = R C T 0 , C T 1 to the data requester I D R , where R C T 0 = ( R C 1 ,   R C 2 ,   R C 3 ,   R C 4 ) .
-
Decryption(CT, sku, n)
The decryption processes can be divided into two cases:
1.
The data owner I D O decrypts the ciphertext CT by calculating the symmetric key Y as:
Y = C 1 e ( C 2 ,   s k O ,   n )
{ m i = S y m D Y ,   S y m E Y , m i } i = 1 ,   ,   w
The correctness of Y is derived as follows:
Y = C 1 e C 2 ,   s k O ,   n = Y · e ( g 1 ,   ( H 1 I D O n H 2 ( I D O ) ) l ) e ( g l , H 1 I D O n H 2 I D O ψ ) = Y
2.
The data requester I D R
decrypts the re-encrypted ciphertext RCT by computing the meta parameter E and the symmetric key Y as:
E = R C 3 · H 3 ( R C 4 ϱ · e ( s k R ,   n ,   g ) e ( H 1 ( I D R n ) ,     g 1 ) )
Y = R C 1 e E ,     R C 2
{ m i = S y m D Y ,   S y m E Y ,   m i } i = 1 ,   ,   n
The correctness of Y is derived as follows:
Y = R C 1 e E ,   R C 2 = Y · e ( g 1 ,   ( H 1 I D O n H 2 I D O ) l ) e g l c ,   g 1 e ( ( H 1 I D O n H 2 I D O ) ψ g 1 c ,   g l ) = Y

4. Security Proof and Comparison

This section will utilize the DBDH hardness assumption to conduct a security proof of the scheme proposed in this paper.

4.1. Security Analysis and Proof

Based on the proposed scheme, we first address some potential solutions to the challenges related to reliability and security in revocable and fog-enabled proxy re-encryption schemes for IoT environments:
  • Time Synchronization Issues: The scheme uses time-updated keys for user revocation. A solution to time synchronization issues is to introduce a tolerance window for time discrepancies across fog nodes and IoT devices. This allows nodes to remain synchronized within acceptable margins and can be further enhanced by employing distributed time synchronization protocols like the Network Time Protocol (NTP).
  • Increased Computational Overhead: While proxy re-encryption can increase computational overhead, optimizing the encryption algorithm for lightweight IoT devices is essential. A potential approach is using hardware-accelerated cryptography or offloading heavy computations to fog nodes, reducing the burden on resource-constrained devices.
  • Limited Key Lifespan: The scheme introduces time-updated keys, which must be periodically regenerated. To address the risk of frequent key renewal, extending key lifespan through efficient key management policies or using predictive analytics to minimize renewal intervals based on activity patterns can reduce the key-update overhead.
  • Vulnerability to Replay Attacks: The system could mitigate replay attacks by introducing a nonce (a unique value) in each transaction, making each message or data exchange unique. This approach ensures that even if an attacker intercepts and resends a message, it will be rejected as the nonce has already been used.
  • Increased Maintenance Requirements: Automating key management and revocation processes through smart contracts or decentralized identity management systems can help reduce the maintenance burden. These systems can track key usage, revocation, and renewal with minimal manual intervention.
  • Risk of Key Exposure: To prevent key exposure, multi-factor authentication (MFA) and the use of hardware security modules (HSMs) to store sensitive keys can provide additional layers of protection. Additionally, key-splitting techniques, such as Shamir’s Secret Sharing, can distribute key fragments across multiple fog nodes, ensuring that exposure of one fragment does not compromise the entire key.
In the following parts, we will prove that the scheme proposed in this paper satisfies the security of indistinguishability against adaptively chosen identity and chosen plaintext attacks (IND-PrID-CPA) in the random oracle model.
Definition 1.  
(IND-PrID-CPA) If in the following game, no probabilistic polynomial-time (PPT) adversary  A  can defeat the challenger  B  with a non-negligible advantage, it means that the scheme proposed in this paper achieves the security of indistinguishability against adaptively chosen identity and chosen plaintext attacks (IND-PrID-CPA):
Setup: Initially, the challenger  B  executes the algorithm of SI ( 1 λ )  to generate PP and Msk. Then he/she sends PP to  A .
Phase 1:  A  adaptively performs the queries below:
-
IPKG Query:
The adversary  A  selects a user and sends his/her ID to  B  who runs the IPKG(PP, Msk, ID) algorithm to compute and obtain the private key ( i p k I D ), and then submits it to  A .
-
TUKG Query:
A  selects a user and sends his/her ID and the time period n to  B  who runs the TUKG(PP, n, Msk, ID) algorithm to compute and obtain the corresponding time-update key ( t u k I D ,   n ), and then returns it to  A .
-
RenKG Query:
The adversary  A  selects two legitimate users and sends their IDs (say IDO and IDR) along with the desired file index Fi and the time period n to  B . Then  B  invokes the IPKG and the TUKG algorithms to obtain the private key  s k I D O ,   n . Finally,  B  executes the Query(PP, Fi, IDR) algorithm to generate a token Θ and returns the result of the RenKG(PP, Θ, skO, n) algorithm to  A .
Challenge:  A  defines the aimed user identity  I D * , the data  m * = m 1 * ,   m 2 * , ,   m w * , a time period  n * , and two symmetric keys of equal length  Y 0 ,     Y 1 . B ,  using the input  P P ,   I D * ,   m * ,   n * , Y λ  where  λ R 0,1 , generates the ciphertext  C T *  and returns it to  A .
Phase 2:  A  can execute the queries of Phase 1 upon receiving the challenge, but the relevant restrictions are as follows:
1.
The IPKG query of the target identity  I D *  cannot be made.
2.
If A  is already a revoked user (and possesses the initial private key), then no TUKG queries for the target time period  n *  are allowed.
3.
RenKG queries related to the target identity  I D * ,   I D u  or  I D O ,   I D *  cannot be executed.
4.
The number of queries is limited by the maximum execution times of IPKG queries q i p k  , TUKG queries  q t u k , and RenKG queries  q r e n K .
Guess: When the adversary  A  finishes Phase 2, the output isa bitλ. When the conditionλ=λ, the adversary  A  is the winner of the game. Therefore, the adversary  A  ’s advantage, i.e., Adv( A ), can be denoted asAdv( A ) = | Pr[λ=λ]− 1/2 |.
Theorem 1. 
Let  H 1   a n d   H 2  be random oracles. The proposed mechanism of this paper provides IND-PrID-CPA security under the DBDH assumption. In simple terms, if a PPT adversary  A  can break the IND-PrID-CPA security of the proposed system with a non-negligible advantage ε, within the constraints of maximum query numbers  q i p k ,  q t u k , and  q r e n K , there is an algorithm  B  capable of breaking the DBDH problem with a non-negligible advantage  ε  in which
ε     ε e ( q i p k + q r e n K + 1 )
Here, e represents the base of natural logarithm.
Proof: 
Let g ,   g f ,   g s ,   g k ,   e g , g f s k ,   γ be an instance of the DBDH problem obtained by B , where f ,   s ,   k Zp* and γ G 2 . B will utilize the advantage of the opponent A to determine whether γ is equal to e g ,   g f s k or not.
Setup: First, B executes the algorithm of SI(1λ) to generate P P = G 1 ,   G 2 ,   e ,   g ,   p ,   M p k ,   S y m E ,   S y m D ,   H 3 , where M p k = P = g s and the corresponding Msk is implicitly defined as s which is unknown to B . Then PP is delivered to A .
Phase 1:  A adaptively performs the following queries:
-
H1(IDi || n) oracle:
For any query of the form H 1 ( I D i | n , B will use I D i , n as an index to search the H1-table, denoted as HT1. If no entry is found, B will choose a value bt1 such that Pr[bt1 = 1] = ψ in which the value ψ will be decided later. If bt1 = 0, B calculates H O 1 = ( g s ) s 1 , in which s 1 R Zp*. If bt1 = 1, B calculates H O 1 = g s 1 . Subsequently, HT1 is updated to HT1 ∪ { ( I D i ,   n , b t 1 , s 1 , H O 1 ) }, and HO1 is returned to A .
-
H2(IDi) oracle:
For any query of the form H 2 ( I D i ) , B uses (IDᵢ) as an index to search the H2-table, denoted as HT2. If no entry is found, B computes H O 2 = g s 2 , where s 2 R Zp*. Then, HT2 is updated to HT2 ∪ { ( I D i , s 2 , H O 2 ) }, and H O 2 is returned to A .
-
IPKG Query:
For an IPKG query with IDi, B utilizes IDi to be the key value and seeks for a matching entry I D i , s 2 , H O 2 in HT2. If no entry is found, B invokes the H2(IDᵢ) query on behalf of A , computes i p k i = P s 2 and returns it to A .
-
TUKG Query:
For a TUKG query with (IDi, n), B utilizes (IDi, n) to be the key value and seeks for a matching entry I D i , n , b t 1 ,   s 1 , H O 1 in HT1. If no entry is found, B invokes the H1(IDi) query on behalf of A . When bt1 = 0, the process terminates; otherwise, B computes t u k i , n = P s 1 and returns it to A .
-
RenKG Query:
For any RenKG query of I D O , I D u ,   F i ,   n , where I D O I D u and IDu has not been revoked, B first derives the complete private key ( s k O ,   n ) through the IPKG and the TUKG queries and fetches the associated data kept in HT1. When bt1 = 0, the process terminates. Otherwise, B selects ϱ ,   c , v Z p to compute Q = g ϱ , r k 1 = P c , r k 2 = i p k O t u k O , n P c H 3 ( e ( H 2 I D u Q v ,   P ) ) and r k 3 = e g v ,   P . Then B returns the re-encryption key r e n k O ,   n = r k 1 ,   r k 2 ,   r k 3 to A .
Challenge: A selects an aimed user I D * , the data m * = m 1 * , m 2 * , , m w * , a time period n * , and two symmetric keys of equal length Y 0 ,   Y 1 . B generates the ciphertext C T * = { n * , C T 0 * = ( C 1 * ,   C 2 * ) ,   C T 1 * } using the input ( P P , I D * , m * ,   n * , Y λ ) where λ ∈ {0,1} with the processes below:
Step 1 Assume, without loss of generality, that A has already made a query to the hash oracle H 1 corresponding to I D * . B aborts when b t 1 * = 1.
Step 2 Otherwise, B fetches the value s1 from the table HT1 to compute:
C 1 * = Y λ · γ s 1 1 · e ( P ,   g k s 2 )
where
H 2 ( I D * ) = g s 2
C 2 * = g k
C T 1 * = ( S y m E ( Y λ ,   m 1 * ) , ,   S y m E ( Y λ ,   m w * ) )
Finally, B returns the ciphertext C T * = n * , C 1 * , C 2 * , C T 1 * to A .
Phase 2: Upon receiving the challenge ciphertext CT*, A could continue executing its queries in Phase 1, but must adhere to the relevant constraints defined in Definition 1.
Guess: After Phase 2 finishes, A will output a bit λ’. When the condition λ’ = λ holds, B will output 1, indicating that γ = e ( g ,   g ) f s k ; otherwise, it will output 0, indicating that γ e ( g , g ) f s k .
Analysis: According to the challenge stage, if e ( g ,   g ) f s k = γ , the created ciphertext CT* should be valid, which means that the adversary A has a non-negligible advantage to win the game. We can express that as Adv( A ) = | Pr[λ’ = λ] 1/2 | ≥ ε. Conversely, on condition that γ e ( g ,   g ) f s k , meaning that the ciphertext is invalid, we learn that Pr[λ’ = λ] = 1/2. Let “Good” be the event of perfect simulation without unintended termination. We thus can represent the advantage of B in solving the DBDH problem to be:
| Pr g ,     g f ,     g s ,     g k ,   e g , g f s k = 1 ] P r [ g ,   g f ,   g s ,   g k , γ = 1 | | 1 2 + ε 1 2 | · Pr G o o d = ε · Pr G o o d
In order to more accurately estimate Pr[Good], we consider the probabilities of the following events:
E1: All TUKG queries are perfectly performed without termination;
E2: All RenKG queries are perfectly performed without termination;
E3: The challenge stage is perfectly performed without termination.
Seeing that E1, E2 and E3 are all independent events, the probability Pr[Good] could be written as Pr[E1] · Pr[E2] · Pr[E3]. In TUKG queries, B terminates when the b t 1 associated with ID* is 0, which means P r [ E 1 ] Ψ q i p k . In RenKG queries, B terminates when the b t 1 associated with IDO is 0, with a probability of P r [ E 2 ] Ψ q r e n K . Also, in the challenge stage, B terminates when the b t 1 * associated with I D * is 1, with a probability of Pr[E3] ≤ (1 − Ψ). Putting these probability events together, we obtain:
Pr G o o d ( Ψ ) q i p k ( Ψ ) q r e n K ( 1 Ψ ) = ( Ψ ) q i p k + q r e n K ( 1 Ψ )
The probability Pr[Good] has the maximum value of 1 e ( q i p k + q p r + 1 ) in which e is the base of a natural logarithm when we set Ψ = 1 1 q i p k + q r e n K + 1 . Consequently, the advantage of B in solving the DBDH problem can be expressed as ε ε e ( q i p k + q r e n K + 1 ) . □

4.2. Comparison

This subsection will conduct performance analysis and functionality comparisons of similar studies, including Han et al.’s [26] (referred to as HSM), Zhang et al.’s [20] (referred to as ZBW), Lin et al.’s [24] (referred to as LTTC), and Lin et al.’s [25] (referred to as LTTF).
Table 1 summarizes the comparison of functionality and security. From this table, it can be observed that the study of HSM does not support user revocation while other studies, although capable of revoking users, require the PKG to maintain a user revocation list continuously. As the number of revoked users increases over time, the amount of data that needs to be maintained also becomes substantial. The proposed system provides user revocation through time-updated key generation. By combining the current time-update key and the initial private key, users can only use their complete and effective private keys for generating re-encryption keys and decryption. If a user is revoked, the PKG will no longer issue time-updated keys, meaning the revoked user will no longer be able to carry out re-encryption key generation and decryption.
Table 2 provides a comparison of computational efficiency. We consider the most time-consuming bilinear pairing operation (denoted by “B” in the table) and exponentiation operations (denoted, respectively, by “C” and “D” for computation in G1 and G2). To provide better experimental results of computation complexity for compared mechanisms, we use Figure 3 to illustrate the estimated running time of each scheme. In particular, according to the study of Zhu et al.’s work [27], one operation of the above “B”, “C” and “D” computation would separately cost 13.864 ms, 2.893 ms and 9.263 ms. From this comparison, we observe that the efficiency of initial private key generation of our system is superior to previous methods. Compared to LTTF, though our scheme includes a newly added time-update key generation algorithm, the overall complexity of our system is reduced. However, the overhead of decryption by data requesters in our system is still higher than that of the HSM and the ZBW schemes. It might be improved by adding a partial decryption process to either the cloud server or the fog node for reducing the computation costs of data requesters in the future.

5. Conclusions

Cloud computing has greatly changed the lifestyle of people as well as boosting the development of the Internet of Things. As people require to access more and more online data, the need for real-time processing is also gradually increasing. The emergence of so-called fog computing could off-load the computational burdens of clouds due to its distributed nature and the ability of quick response. In fog-enabled cloud applications, the security of data transmission is crucial. In this research, the authors extend the previous study into a fog-based proxy re-encryption scheme with revocable identity. In the proposed method, the re-encryption key is generated by the data owner, which means that the data owner has absolute control over who has the privilege to access his or her cloud ciphertext. Additionally, the revocation of users is achieved through time-updated keys with time intervals. Specifically, the complete private key is obtained by integrating the initial private key and the time-updated key. The private key is not only for re-encryption key generation, but also for ciphertext decryption. That is to say, when the PKG no longer issues time-updated keys to revoked users, he/she cannot share or retrieve cloud ciphertexts. The proposed scheme also owns the security of IND-PrID-CPA under the assumption of DBDH in random oracle models. Compared to previous research, the proposed method achieves the functionality of user revocation without using the traditional revocation list and the overall computational costs are lower, which makes our system well suited for fog-based cloud environments.
While the proposed fog-based proxy re-encryption scheme with revocable identity offers significant improvements in computational efficiency and eliminates the need for a revocation list, there are some limitations to consider. First, our scheme is not designed to resist the quantum attack which is emerging in cryptographic research. Additionally, although computational overhead is reduced, there is still a burden on resource-constrained IoT devices during encryption and decryption processes, which could be problematic for low-power or low-capacity devices. In future research, we will design an appropriate partial decryption process for the cloud server to reduce the computation overhead of data requesters as well as the communication costs between data requesters and the cloud server. Exploring enhanced security models, such as using fully homomorphic encryption or quantum-resistant algorithms, could also help strengthen the system against advanced attacks.

Author Contributions

Writing—original draft, H.-Y.L.; Writing—review and editing, H.-Y.L.; Resources, P.-R.C. 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

This article does not contain any studies with human participants or animals performed by the authors.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data is contained within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

References

  1. Shen, J.; Zhou, T.; He, D.; Zhang, Y.; Sun, X.; Xiang, Y. Block design-based key agreement for group data sharing in cloud computing. IEEE Trans. Dependable Secur. Comput. 2019, 16, 996–1010. [Google Scholar] [CrossRef]
  2. Wang, S.; Hou, Y.; Gao, F.; Ji, X. A novel IoT access architecture for vehicle monitoring system. In Proceedings of the 2016 IEEE 3rd World Forum on Internet of Things (WF-IoT), Reston, VI, USA, 12–14 December 2016; pp. 639–642. [Google Scholar] [CrossRef]
  3. Gupta, A.K.; Johari, R. IoT based electrical device surveillance and control system. In Proceedings of the 2019 4th International Conference on Internet of Things: Smart Innovation and Usages (IoT-SIU), Ghaziabad, India, 18–19 April 2019; pp. 1–5. [Google Scholar] [CrossRef]
  4. Singh, S.; Singh, B.; Ramandeep; Singh, B.; Das, A. Automatic vehicle counting for IoT based smart traffic management system for Indian urban settings. In Proceedings of the 2019 4th International Conference on Internet of Things: Smart Innovation and Usages (IoT-SIU), Ghaziabad, India, 18–19 April 2019; pp. 1–6. [Google Scholar] [CrossRef]
  5. Dang, T.D.; Hoang, D. A data protection model for fog computing. In Proceedings of the 2017 2nd International Conference on Fog and Mobile Edge Computing (FMEC), Valencia, Spain, 8–11 May 2017; pp. 32–38. [Google Scholar] [CrossRef]
  6. De Donno, M.; Tange, K.; Dragoni, N. Foundations and evolution of modern computing paradigms: Cloud, IoT, edge, and fog, IEEE Access 2019, 7, 150936–150948. [CrossRef]
  7. Hameed, A.R.; Munir, K.; Islam, S.U.; Ahmad, I. Load-balancing of computing resources in vehicular fog computing. In Proceedings of the 2020 3rd International Conference on Data Intelligence and Security (ICDIS), South Padre Island, TX, USA, 10–12 November 2020; pp. 101–108. [Google Scholar] [CrossRef]
  8. Chu, C.K.; Tzeng, W.G. Identity-based proxy re-encryption without random oracles. In Proceedings of the International Conference on Information Security, Valparaíso, Chile, 9–12 October 2007; pp. 189–202. [Google Scholar] [CrossRef]
  9. S., sharma; Swarnakar, A.; Babu, C.J.; Padmavathy, R.; Kumar, R. An authenticated keyword searchable conditional proxy re-encryption scheme in cloud services. In Proceedings of the 2020 5th International Conference on Computing, Communication and Security (ICCCS), Patna, India, 14–16 October 2020; pp. 1–8. [Google Scholar] [CrossRef]
  10. Deng, R.H.; Weng, J.; Liu, S.; Chen, K. Chosen-ciphertext secure proxy re-encryption without pairings. In Proceedings of the International Conference on Cryptology and Network Security, Hong Kong, China, 2–4 December 2008; pp. 1–17. [Google Scholar] [CrossRef]
  11. 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]
  12. Green, M.; Ateniese, G. Identity-based proxy re-encryption. In Proceedings of the International Conference on Applied Cryptography and Network Security, Zhuhai, China, 5–8 June 2007; pp. 288–306. [Google Scholar] [CrossRef]
  13. Blaze, M.; Bleumer, G.; Strauss, M. Divertible protocols and atomic proxy cryptography. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Espoo, Finland, 31 May–4 June 1998; pp. 127–144. [Google Scholar] [CrossRef]
  14. Chen, X.; Li, J.; Weng, J.; Ma, J.; Lou, W. Verifiable computation over large database with incremental updates. IEEE Trans. Comput. 2016, 65, 3184–3195. [Google Scholar] [CrossRef]
  15. Bankar, J.; Raghatwan, J. Identity based proxy re-encryption using forward security in cloud framework. In Proceedings of the 2017 International Conference on Computing, Communication, Control and Automation (ICCUBEA), Pune, India, 17–18 August 2017; pp. 1–5. [Google Scholar] [CrossRef]
  16. Zeng, P.; Choo, K.-K.R. A new kind of conditional proxy re-encryption for secure cloud storage. IEEE Access 2018, 6, 70017–70024. [Google Scholar] [CrossRef]
  17. 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]
  18. 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] [CrossRef]
  19. Chen, W.H.; Fan, C.I.; Tseng, Y.F. Efficient key-aggregate proxy re-encryption for secure data sharing in clouds. In Proceedings of the 2018 IEEE Conference on Dependable and Secure Computing (DSC), Kaohsiung, Taiwan, 10–13 December 2018; pp. 1–4. [Google Scholar] [CrossRef]
  20. 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]
  21. 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] [CrossRef]
  22. Zhang, M.; Li, L. Medical data sharing scheme based on blockchain-based attribute proxy re-encryption. In Proceedings of the 2023 12th International Conference of Information and Communication Technology (ICTech), Wuhan, China, 14–16 April 2023; pp. 288–293. [Google Scholar] [CrossRef]
  23. Ge, C.; Susilo, W.; Baek, J.; Liu, Z.; Xia, J.; Fang, L. A verifiable and fair attribute-based proxy re-encryption scheme for data sharing in clouds. IEEE Trans. Dependable Secur. Comput. 2022, 19, 2907–2919. [Google Scholar] [CrossRef]
  24. 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]
  25. 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. [Google Scholar] [CrossRef] [PubMed]
  26. Han, J.; Susilo, W.; Mu, Y. Identity-based data storage in cloud computing. Future Gener. Comput. Syst. 2013, 29, 673–681. [Google Scholar] [CrossRef]
  27. Zhu, F.; Yi, X.; Abuadbba, A.; Khalil, I.; Nepal, S.; Huang, X. Cost-effective authenticated data redaction with privacy protection in IoT. IEEE Internet Things J. 2021, 8, 11678–11689. [Google Scholar] [CrossRef]
Figure 1. Illustration of re-encryption processes.
Figure 1. Illustration of re-encryption processes.
Sensors 24 06290 g001
Figure 2. Illustration of the proposed system model.
Figure 2. Illustration of the proposed system model.
Sensors 24 06290 g002
Figure 3. Comparisons of estimated running time.
Figure 3. Comparisons of estimated running time.
Sensors 24 06290 g003
Table 1. Comparisons of functionality and security.
Table 1. Comparisons of functionality and security.
SchemeHSMZBWLTTCLTTFProposed
Item
Support user revocationNoYesYesYesYes
Resist revoked user attackYesYesYes
Resist dishonest proxy serverYesNoYesYesYes
Without user revocation listNoNoNoYes
Table 2. Comparisons of computational cost.
Table 2. Comparisons of computational cost.
SchemeHSMZBWLTTCLTTFProposed
Phase
System Initialization6C2C2CCC
Initial Private Key Generation5B + 5C5C5C3CC
Time-Update Key Generationn.a.n.a.n.a.n.a.C
Encryption3B + 3C + DB + 2C + DB + 2C + DB + 2CB + 2C
Query2CCCCC
Re-encryption Key Generation5B + 4C + D2C2B + 3C + D2B + 3C2B + 3C
Re-encryption0BBBB
Decryption (by IDo)2B 2B2BBB
Decryption (by IDu)2B + 2C2B + C4B + D3B + D3B + D
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.; Chen, P.-R. Revocable and Fog-Enabled Proxy Re-Encryption Scheme for IoT Environments. Sensors 2024, 24, 6290. https://doi.org/10.3390/s24196290

AMA Style

Lin H-Y, Chen P-R. Revocable and Fog-Enabled Proxy Re-Encryption Scheme for IoT Environments. Sensors. 2024; 24(19):6290. https://doi.org/10.3390/s24196290

Chicago/Turabian Style

Lin, Han-Yu, and Pei-Ru Chen. 2024. "Revocable and Fog-Enabled Proxy Re-Encryption Scheme for IoT Environments" Sensors 24, no. 19: 6290. https://doi.org/10.3390/s24196290

APA Style

Lin, H. -Y., & Chen, P. -R. (2024). Revocable and Fog-Enabled Proxy Re-Encryption Scheme for IoT Environments. Sensors, 24(19), 6290. https://doi.org/10.3390/s24196290

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