Next Article in Journal
Performance of Strengthened, Reinforced Concrete Shear Walls with Opening
Next Article in Special Issue
A Novel Edge-Computing-Based Framework for an Intelligent Smart Healthcare System in Smart Cities
Previous Article in Journal
A Scoping Review of the Relationship of Big Data Analytics with Context-Based Fake News Detection on Digital Media in Data Age
Previous Article in Special Issue
Lattice-Based Verifiably Encrypted Signature Scheme without Gaussian Sampling for Privacy Protection in Blockchain
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Provable Secure Authentication Protocol in Fog-Enabled Smart Home Environment

Key Laboratory of Cryptography of Zhejiang Province, Hangzhou Normal University, Hangzhou 311121, China
*
Author to whom correspondence should be addressed.
Sustainability 2022, 14(21), 14367; https://doi.org/10.3390/su142114367
Submission received: 30 September 2022 / Revised: 26 October 2022 / Accepted: 29 October 2022 / Published: 2 November 2022
(This article belongs to the Special Issue Sustainable Cybersecurity: Information Technology and Education)

Abstract

:
People can access and obtain services from smart home devices conveniently through fog-enabled smart home environments. The security and privacy-preserving authentication protocol play an important role. However, many proposed protocols have one or more security flaws. In particular, almost all the existing protocols for the smart home cannot resist gateway compromised attacks. The adversary can not only know the user’s identity but also launch impersonation attacks. Designing a provable secure authentication protocol that avoids all known attacks on smart homes is challenging. Recently Guo et al. proposed an authentication scheme based on symmetric polynomials in the fog-enabled smart home environment. However, we found that their scheme suffers from gateway compromised attack, desynchronization attack, mobile device loss/stolen and attack, and has no untraceability and perfect forward secrecy. Therefore, we adopt a Physical Unclonable Function (PUF) to resist gateway compromised attack, adopt Elliptic Curve Diffie–Hellman (ECDH) key exchange protocol to achieve perfect forward secrecy, and propose a secure and privacy-preserving authentication protocol, which is provably secure under the random oracle model. According to the comparisons with some related protocols, the proposed protocol has better security and transmission efficiency with the same computation cost level.

1. Introduction

In recent years, with the iteration of communication technology and smart devices, the Internet of Things (IoT) has been gradually applied in many aspects, such as logistics, transportation, security, pollutants monitoring, smart home, etc. The smart home is one of the applications of IoT that connect the user and the devices in residence by using a common communication system and control technology [1,2], such as air conditioners, televisions, monitors, water heaters, etc. The new way of controlling devices provided by the smart home brings people safety, energy conservation, comfort, convenience, and healthcare [3].
Due to the smart devices having limited computation and storage, the smart home must have nodes that provide reliable computing services, storage services, and network services to build a communication system [4]. In general, the cloud is more suitable for resource nodes. However, real-time response is a requirement for some emergency applications in the smart home, so nodes also have to meet the requirements of high bandwidth and low latency. Cloud latency is often determined by physical distance, so real-time requirements cannot be met. To meet real-time requirements, distributing computation and storage to edge devices is an idea called fog computing [5].
Fog computing has the characteristics of low latency and high response, and it has been applied in healthcare and smart home [6,7,8,9]. Because the computing and storage resources of smart devices in the smart home are limited, they cannot afford much computation. A scheme is proposed in [9] which connects the sensor devices of the terminal based on the IoT controller as a gateway in the smart home. In the fog computing network, the fog layer composed of the smart gateways undertakes the message forwarding and the distributed computation and storage [10,11].
The fog-computing smart home enhances the user’s control over computation and storage nodes and provides more privacy. However, it is still vulnerable to malicious attacks because messages are transmitted on open channels. The data, after being maliciously attacked, will transmit false information, induce users to make wrong decisions, and directly affect residential security and privacy. There are great concerns about the security and privacy of remote access in emergencies and dangers. The security and privacy-preserving authentication protocol play an important role in the smart home.
Until now, many authentication protocols have been proposed. These authentication protocols have some shortcomings in terms of security, anonymity, and perfect forward secrecy [12]. Jeong et al. [13] proposed a user authentication (UA) protocol based on the one-time password (OTP) protocol. The scheme provides authentication of users and gateway, mainly used in remote access to the home network. In the smart home, secure communication between devices and gateways is essential. Xue et al. [14] proposed a temporal-credential-based scheme for Wireless Sensor Networks (WSN) using hash and XOR. Saqib et al. [15] indicated that Xue et al.’s scheme is not immune to smart card theft and server fraud attack. Shuai et al. [16] designed an anonymous authentication scheme based on Elliptic Curve Cryptography (ECC) for the smart home environment. The protocol avoided storing the validation table to reduce the harm caused by theft and resisted replay attacks and clock synchronization attacks. Unfortunately, Kaur et al. [17] pointed out that Shuai et al.’s scheme is vulnerable to offline password guessing attacks, insider attacks, replay attacks, gateway bypass attacks, and insecure session key agreement problems and proposed an improvement scheme for the smart home. However, the scheme is vulnerable to gateway compromised and replay attacks. Santoso et al. [18] proposed a scheme based on ECC for the smart home system. The scheme cannot provide anonymity and untraceability and cannot resist privileged-insider and smart card stolen attacks. Guo et al. [19] presented a new authentication mode based on a symmetric bivariate polynomial [20], which includes the edge negotiation phase and the authentication phase, and reduces communication consumption. The scheme has extremely low computational consumption, but we show it is vulnerable to gateway compromised attacks, desynchronization attacks, mobile device loss/stolen attacks, etc.
Some authentication schemes consider the gateway is trusted and store sensitive information. Wazid et al. [21] proposed a lightweight authentication protocol for the smart home environment based on XOR, symmetric cipher, and hash functions. The authentication table is stored in the gateway. Haseeb-ur-Rehman et al. [22] proposed a lightweight protocol for the smart home and declared that the gateway is trusted. Lee et al. [23] proposed a three-factor authentication protocol in an IoT environment; the gateway is also fully trusted and stores the long-term key. Gateway compromised attacks may lead to the disclosure of user identity, long-term secret values, and other information and lead to suffering impersonation attacks, privilege attacks, etc.
On the other hand, privacy-preserving is a necessary security requirement in the smart home. Yeh et al. [24] proposed an authentication scheme established on Elliptic Curve Cryptography (ECC) for WSN. The message in their scheme contains the real identity of the user, so it does not provide anonymity. In addition, the ECC multiplication is used many times, which makes the protocol have high computational complexity [15]. Yang et al. [25] proposed an ID-based authentication protocol for mobile devices, and the scheme has less computation time because it does not require users’ public keys. However, Islam et al. [26] stated that Yang et al.’s scheme has no anonymity.
Perfect forward secrecy (PFS) is an extremely harsh security condition; it is a security feature that can still maintain the confidentiality of previously transmitted messages even if long-term keys are leaked [12]. Although it will increase the computation costs, a better method is to use the Diffie–Hellman key exchange algorithm to design the protocol to guarantee PFS. However, many proposed protocols can not achieve PFS [16,17,19,21,25].
Physical capture attacks often have security implications, and PUF [27] is a way to provide physical device security. A PUF is a one-way function derived from the randomness of physical features caused by the manufacturing variation process. PUFs are unreproducible, unpredictable, and tamper-resistant and are widely used in security. Yi et al. [28] proposed an authentication protocol in WSN. The protocol introduced a PUF chip to provide the physical integrity of sensors. Yu et al. [29] proposed a physically secure privacy-preserving scheme in telecare medical information systems, and PUF is used to store long-term keys. The introduction of PUF to protect devices against physical capture attacks is effective.

Motivation and Contributions

According to the analysis of the existing protocols for smart homes, we found that most of them have one or more security flaws, which cannot achieve perfect forward secrecy, privacy protection, etc. In particular, almost all the existing protocols for a smart home cannot resist gateway compromised attacks. The adversary can not only know the user’s identity but also launch impersonation attacks. Designing a provable secure authentication protocol that avoids gateway compromised attacks for smart homes is challenging. The contributions of this paper are as follows:
  • We pointed out that Guo et al.’s protocol in a fog-enabled smart home is vulnerable to smart gateway compromised attacks, desynchronization attacks, and mobile device lost/stolen attacks, and traceability has no perfect forward secrecy.
  • We propose the first secure and privacy-preserving authentication protocol in fog-enabled smart homes to avoid a gateway compromised attack. We adopt PUF to resist gateway compromised attack, adopt ECDH key exchange protocol to achieve perfect forward secrecy, and redesign the process to provide privacy-preserving and makes it resistant to desynchronization attack and mobile device lost/stolen attack.
  • We prove the security of the proposed protocol formally under the random oracle model. According to the comparisons with some related protocols, the proposed protocol has better security and transmission efficiency with the same computation cost level.

2. System and Attack Models

In this section, we introduce the system and attack models in a fog-enabled smart home environment.

2.1. System Model

Figure 1 shows the system model of Guo et al.’s scheme. The communication system consists of smart devices, users & mobile devices, a smart gateway, and the cloud. The smart device is connected to the smart gateway via the home network, such as Wi-Fi and wired network. The smart gateway is connected to the cloud via the internet, and users can access the smart gateway remotely. The smart gateway provides computing and storage resources in the communication system to ensure real-time data transmission. The smart gateway in this architecture is responsible for collecting from smart devices and processing user requests. The entity negotiation model is shown in Figure 2.
In the edge negotiation stage, the smart gateway and the smart device establish a persistent connection and re-establish the session after the session expires. After the session is established, the gateway can collect real-time data securely from the smart device and fast-forward commands to the smart device from the user.
In addition, the smart gateway will also establish a temporary session with the user. The user negotiates a one-time session key with the gateway after identity verification, accepts the smart device data sent by the gateway, and quickly sends instructions to the smart device via the user’s portable mobile device. The above two stages achieve the user’s security management of smart devices.

2.2. Attack Model

We provide an attack model consistent with the original protocol; according to the Dolev-Yao [30] threat model and CK-adversary [31] model in wireless networks, the attacker can compromise information such as session key and session state.
  • The attacker can eavesdrop, delay, modify, and delete the messages transmitted on public communication channels;
  • The attacker can compromise temporary information such as session key and session state;
  • The smart gateway is not considered fully trusted. And it can be compromised by the attacker;
  • The smart devices are considered untrusted because the device can be physically lost or stolen, and all data can be extracted;
  • The user’s mobile device considers an untrusted entity; the mobile device can be captured or compromised by the attacker; the user’s mobile devices can be obtained by the attacker;
  • Registration authority (RA) is completely credible and cannot be compromised;
  • The private channels are secure and cannot be controlled or eavesdropped on by attackers.

3. Review of the Guo et al.’s Scheme

In this section, we describe Guo et al.’s scheme. The scheme includes a registration phase, edge negotiation phase, and login authentication phase. The secret sharing of Guo et al.’s scheme is based on symmetric bivariate polynomials. For symmetric bivariate polynomial f u n c ( x , y ) , there is f u n c ( x , y ) = f u n c ( y , x ) . Table 1 shows the notations used in this paper.

3.1. Registration Phase

R A generates a long-term private key K and chooses two symmetric bivariate polynomials f ( x , y ) and g ( x , y ) over the finite field G F ( p ) .
The registration phase includes gateway registration, smart home device registration, and user registration.
(1)
Gateway registration
R A chooses a unique identity I D G W for the gateway and computes a pseudo-identity P I D G W = h ( I D G W K ) , a token T C G W = h ( I D G W R T G W K ) and two polynomial functions f ( P I D G W , y ) , g ( P I D G W , y ) . Finally, G W stores { P I D G W , ( T I D D j o l d = n u l l ,   T I D D j n e w = T I D D j ) ,   P I D D j ,   T I D U i ,   T C G W ,   f ( P I D G W , y ) ,   g ( P I D G W , y ) ,   h ( · ) } in its memory, where T I D D j n e w is the latest temporary identity of D j , and T I D D j o l d is the last temporary identity of D j .
(2)
Smart home device registration
R A chooses a unique identity I D D j , a temporary identity T I D D j for a smart home device, and computes a pseudo-identity P I D D j = h ( I D D j K ) , the function g ( P I D D j , y ) . Finally, R A stores { T I D D j o l d = n u l l ,   T I D D j n e w = T I D D j ,   P I D D j ,   g ( P I D D j , y ) ,   h ( · ) } in the memory of D j .
(3)
User registration
Step UR1: U i inputs a unique identity I D U i and biological information B I O U i into mobile device M D U i . M D U i generates a nonce r U i , and computes a pseudo-identity P I D U i = h ( I D U i r U i ) , G e n ( B I O U i ) = ( σ U i ,   τ U i ) [32], H P W U i = h ( P W U i σ U i r U i ) , S = H P W U i σ U i r U i . The message { P I D U i ,   S } is sent to R A via a private channel.
Step UR2: On receiving the message from U i , R A generates a nonce R U i and a timestamp R T U i , then calculates a token T C U i = h ( P I D U i R T U i K ) , A U i = T C U i S ,   B U i = R U i T C U i , C U i = P I D G W S . Then R A picks a temporary identity T I D U i , calculates a function f ( P I D U i , y ) , and sends a message { A U i , B U i , C U i , T I D U i , f ( P I D U i , y ) ,   h ( · ) } to U i via a secure channel.
Step UR3: Once the message { A U i ,   B U i ,   C U i ,   T I D U i ,   f ( P I D U i , y ) ,   h ( · ) } is received, U i computes T C U i = A U i S , R U i = B U i T C U i ,   A u t h U i = h ( T C U i R U i H P W U i ) , D U i = r U i h ( I D U i P W U i σ U i ) , B U i * = B U i H P W U i , P I D U i * = P I D U i H P W U i , T C U i * = T C U i H P W U i , C U i * = C U i T C U i . Finally, U i stores { T I D U i ,   A u t h U i ,   D U i , B U i * , P I D U i * ,   T C U i * ,   C U i * ,   f ( P I D U i ,   y ) ,   τ U i ,   R e p ( · ) ,   G e n ( · ) ,   h ( · ) } in the memory of M D U i .
In this phase, the user can update password and biometrics information.

3.2. Edge Negotiation Phase

This phase establishes a session key between the gateway and the smart home device. The steps are as follows.
Step EN1: The smart device D j sends message { T I D D j ,   r D j ,   T 1 } to the smart gateway G W via the public channel, where T 1 is current timestamp and r D j is a random number.
Step EN2: On receiving the message, G W generates the current timestamp T 2 , checks the freshness of the timestamp T 1 , chooses a random number R D j , and finds P I D D j by T I D D j . Then G W computes g ( P I D G W ,   P I D D j ) , M 1 = R D j h ( g ( P I D G W ,   P I D D j ) r D j T 2 ) , M 2 = h ( T C G W T 2 R D j ) h ( g ( P I D G W ,   P I D D j ) r D j R D j T 2 ) , S K G W D j = h ( g ( P I D G W ,   P I D D j ) r D j h ( T C G W T 2 R D j ) T 2 ) , M 3 = h ( S K G W D j r D j R D j T 2 ) , T I D D j * = T I D D j S K G W D j . Finally, G W updates T I D D j o l d = T I D D j ,   T I D D j n e w = T I D D j * and sends { P I D G W ,   M 1 ,   M 2 ,   M 3 ,   T 2 } to D j .
Step EN3: On receiving the message from G W , D j checks the freshness of the timestamp and calculates g ( P I D D j ,   P I D G W ) , R D j = M 1 h ( g ( P I D D j ,   P I D G W ) r D j T 2 ) , h ( T C G W T 2 R D j ) = M 2 h ( g ( P I D D j ,   P I D G W ) r D j R D j T 2 ) , S K D j G W = h ( g ( P I D D j ,   P I D G W ) r D j h ( T C G W T 2 R D j ) T 2 ) , M 3 * = h ( S K D j G W r D j R D j T 2 ) . Then D j checks M 3 = M 3 * . If yes, D j updates T I D D j * = T I D D j S K D j G W in its memory.

3.3. Login Authentication Phase

When U i wants to access a smart home device, the user does the following steps.
Step LA1: U i inputs I D U i , P W U i i n and B I O U i i n into the mobile device M D U i .
Step LA2: M D U i computes σ U i = R e p ( B I O U i i n ,   τ U i ) , r U i = D i h ( I D U i P W U i i n σ U i ) , H P W U i = h ( P W U i i n σ U i r U i ) , T C U i = T C U i * H P W U i , B U i = B U i * H P W U i , R U i = B U i T C U i , A u t h U i = h ( T C U i R U i H P W U i ) . If A u t h U i = A u t h U i , do the next step; otherwise, re-do the step LA1.
Step LA3: M D U i generates a random number n U i and current timestamp T 3 and calculates P I D G W = C U i * T C U i * H P W U i , f ( P I D U i ,   P I D G W ) , M 1 = P I D U i h ( P I D G W ) , M 2 = n U i h ( f ( P I D U i ,   P I D S G ) ) , M 3 = h ( M 2 T I D U i n U i T 3 ) , M 4 = h ( T C U i T 3 n U i ) . Finally, M D U i sends message { M 1 ,   M 2 ,   M 3 ,   M 4 ,   T I D U i ,   T 3 } to G W publicly.
Step LA4: When G W receives the message from M D U i , G W . checks the freshness of the timestamp T 3 . Then G W computes P I D U i = M 1 h ( P I D G W ) , n U i = M 2 h ( f ( P I D G W ,   P I D U i ) ) , M 3 = h ( M 2 T I D U i n U i T 3 ) . If M 3 M 3 , terminate. Otherwise, G W generates a random number N U i and current timestamp T 4 , and computes M 5 = N U i h ( f ( P I D G W ,   P I D U i ) T I D U i T 3 ) , M 6 = h ( T C G W T 4 N U i ) h ( f ( P I D G W ,   P I D U i ) M 4 T 4 ) , S K G W U i = h ( T I D U i f ( P I D G W ,   P I D U i ) h ( T C G W T 4 N U i ) M 4 T 4 ) , M 7 = h ( S K G W U i n U i N U i T 3 T 4 ) . Subsequently, G W chooses a new random number T I D U i n e w and computes M 8 = T I D U i n e w h ( T I D U i S K G W U i n U i N U i T 3 T 4 ) . Finally, G W sends { M 5 ,   M 6 ,   M 7 ,   M 8 ,   T 4 } to M D U i .
Step LA5: M D U i checks the freshness of the timestamp T 4 after receiving the message, and calculates N U i = M 5 h ( f ( P I D U i ,   P I D G W ) T I D U i T 3 ) , h ( T C G W T 4 N U i ) = M 6 h ( f ( P I D U i , P I D G W ) M 4 T 4 ) , S K U i G W = h ( T I D U i f ( P I D U i , P I D G W ) h ( T C G W T 4 N U i ) M 4 T 4 ) , M 7 * = h ( S K U i G W n U i N U i T 3 T 4 ) . M D U i checks M 7 * = M 7 . If yes, the authentication is successful, M D U i updates T I D U i n e w = M 8   h ( T I D U i S K U i G W n U i N U i T 3 T 4 ) .

4. Cryptanalysis of the Guo et al.’s Scheme

In this section, we show the weaknesses of Guo et al.’s scheme.

4.1. Smart Gateway Compromised Attack

In Guo et al.’s scheme, the smart gateway stores sensitive information and is not fully trusted. Suppose that an attacker compromises the smart gateway and steals information { P I D G W ,   ( T I D D j o l d = n u l l ,   T I D D j n e w = T I D D j ) ,   P I D D j ,   T I D U i ,   T C G W ,   f ( P I D G W , y ) ,   g ( P I D G W , y ) ,   h ( · ) } , each shared secret g ( P I D G W ,   P I D D j ) between D j and G W can be calculated from g ( P I D G W ,   y ) and P I D D j .
(1)
The attacker impersonates the smart device.
The attacker extracts T I D D j from the stolen information and sends T I D D j ,   r D j ,   T 1 to G W in Step EN1, where r D j is a random number and T 1 is a current timestamp. In Step EN3, the attacker gets P I D G W , M 1 ,   M 2 ,   M 3 ,   T 2 from G W , picks P I D D j ,   g ( P I D G W , y ) from the stolen information and can calculate g ( P I D G W ,   P I D D j ) , R D j = M 1 h ( g ( P I D G W ,   P I D D j ) r D j T 2 ) , h ( T C G W T 2 R D j ) = M 2 h ( g ( P I D G W ,   P I D D j ) r D j R D j T 2 ) , S K G W D j = h ( g ( P I D G W ,   P I D D j ) r D j h ( T C G W T 2 R D j ) T 2 ) .
(2)
The attacker eavesdrops on the smart device.
The attacker eavesdrops T I D D j ,   r D j ,   T 1 in Step EN1 and P I D G W ,   M 1 ,   M 2 ,   M 3 ,   T 2 in Step EN2, and picks T I D D j , P I D D j ,   g ( P I D G W ,   y ) from the stolen information, then calculates g ( P I D G W ,   P I D D j ) , R D j = M 1 h ( g ( P I D G W ,   P I D D j ) r D j T 2 ) , h ( T C G W T 2 R D j ) = M 2 h ( g ( P I D G W ,   P I D D j ) r D j R D j T 2 ) and S K G W D j = h ( g ( P I D G W ,   P I D D j ) r D j h ( T C G W T 2 R D j ) T 2 ) in Step EN3. The attacker gets S K G W D j and T I D D j * = T I D D j S K G W D j successfully. The attacker can also eavesdrop on the next session by T I D D j * .

4.2. Desynchronization Attack

The attacker intercepts and modifies r D j in Step EN1. In Step EN2, the smart gateway will receive the tampered r D j and calculate M 1 = R D j h ( g ( P I D G W ,   P I D D j ) r D j T 2 ) , M 2 = h ( T C G W T 2 R D j ) h ( g ( P I D G W ,   P I D D j ) r D j R D j T 2 ) , S K G W D j = h ( g ( P I D G W ,   P I D D j ) r D j h ( T C G W T 2 R D j ) T 2 ) , M 3 = h ( S K G W D j r D j R D j T 2 ) , T I D D j * = T I D D j S K G W D j by the tampered r D j . In Step EN3, the smart device calculates R D j = M 1 h ( g ( P I D D j ,   P I D G W ) r D j T 2 ) ,   h ( T C G W T 2 R D j ) = M 2 h ( g ( P I D D j ,   P I D G W ) r D j R D j T 2 ) , S K D j G W = h ( g ( P I D D j ,   P I D G W ) r D j h ( T C G W T 2 R D j ) T 2 ) , M 3 * = h ( S K D j G W r D j R D j T 2 ) by the real r D j , so M 3 * M 3 and D j won’t update T I D D j in Step EN3.

4.3. Traceability

In the login authentication phase, M 1 = P I D U i h ( P I D G W ) , where P I D U i and P I D G W are constant, and M 1 doesn’t change. Therefore, the attacker can trace U i by eavesdropping on the constant value M 1 .

4.4. Mobile Device Lost/Stolen Attack

Assuming that U i ’s mobile device is lost or stolen, all the information { T I D U i ,   A u t h U i ,   D U i ,   B U i * ,   P I D U i * ,   T C U i * ,   C U i * ,   f ( P I D U i ,   y ) , τ U i ,   R e p ( · ) ,   G e n ( · ) ,   h ( · ) } stored in the mobile device will be obtained by the attacker. The attacker eavesdrops P I D G W in Step EN2 and M 1 in Step LA3, and computes P I D U i = M 1 h ( P I D G W ) . The attacker can perform the following attacks.
(1)
The attacker impersonates the user.
The attacker picks f ( P I D U i ,   y ) , T I D U i . and P I D G W , generates a random number n U i , a fake token T C U i , a current timestamp T 3 , and calculates f ( P I D U i ,   P I D G W ) , M 1 = P I D U i h ( P I D G W ) , M 2 = n U i h ( f ( P I D U i ,   P I D G W ) ) , M 3 = h ( M 2 T I D U i n U i T 3 ) and M 4 = h ( T C U i T 3 n U i ) . Finally, the attacker sends M 1 ,   M 2 ,   M 3 ,   M 4 ,   T I D U i ,   T 3 in Step LA3. In Step LA5, the attacker calculates N U i = M 5 h ( f ( P I D U i ,   P I D G W ) T I D U i T 3 ) , h ( T C G W T 4 N U i ) = M 6 h ( f ( P I D U i ,   P I D G W ) M 4 T 4 ) , S K U i G W = h ( T I D U i f ( P I D U i ,   P I D G W ) h ( T C G W T 4 N U i ) M 4 T 4 ) .
(2)
The attacker eavesdrops on the user.
The attacker picks f ( P I D U i , y ) ,   T I D U i and P I D G W and intercepts M 2 ,   M 4 ,   T 3 in Step LA3, calculates f ( P I D U i   , P I D G W ) , n U i = M 2 h ( f ( P I D U i ,   P I D G W ) ) . Then the attacker eavesdrops M 5 ,   M 6 ,   M 8 ,   T 4 in Step LA4 and calculates N U i = M 5 h ( f ( P I D U i ,   P I D G W ) T I D U i T 3 ) , h ( T C G W T 4 N U i ) = M 6 h ( f ( P I D U i ,   P I D G W ) M 4 T 4 ) , S K U i G W = h ( T I D U i f ( P I D U i , P I D G W ) h ( T C G W T 4 N U i ) M 4 T 4 ) , T I D U i n e w = M 8 h ( T I D U i S K U i G W n U i N U i T 3 T 4 ) in Step LA5. The next session key can be calculated in the same way.

4.5. No Perfect Forward Secrecy

In Guo et al.’s scheme, f ( P I D U i ,   P I D G W ) and g ( P I D G W ,   P I D D j ) are long-term for the session key agreement.
In the login and authentication phase, if f ( P I D U i ,   P I D G W ) leaks, the attacker can eavesdrop M 2 ,   M 4 ,   T 3 ,   T I D U i in Step LA3 and M 5 ,   M 6 ,   M 8 ,   T 4 in Step LA4, then calculate n U i = M 2 h ( f ( P I D U i ,   P I D G W ) ) , N U i = M 5 h ( f ( P I D U i ,   P I D G W ) T I D U i T 3 ) , h ( T C G W T 4 N U i ) = M 6 h ( f ( P I D G W ,   P I D U i ) M 4 T 4 ) , S K G W U i = h ( T I D U i f ( P I D G W ,   P I D U i ) h ( T C G W T 4 N U i ) M 4 T 4 ) . In the same way, the attacker can calculate the previous session key.
In the edge negotiation phase, If g ( P I D G W ,   P I D D j ) leaks, the attacker can compute R D j = M 1   h ( g ( P I D G W , P I D D j ) r D j T 2 ) , h ( T C G W T 2 R D j ) = M 2 h ( g ( P I D G W , P I D D j ) r D j R D j T 2 ) , S K G W D j = h ( g ( P I D G W ,   P I D D j ) r D j h ( T C G W T 2 R D j ) T 2 ) , where r D j can be obtained in Step EN1 and M 1 ,   M 2 ,   T 2 can be obtained in Step EN2. The previous session key can also be calculated in the same way.

5. The Proposed Scheme

In this section, we propose a security-enhanced scheme. The scheme consists of a system initialization phase, entity registration phase, edge negotiation phase, and login authentication phase.
In the proposed scheme, the PUF can improve security. PUF is a one-way function derived from complex physical and environmental characteristics. When a challenge stimulates the device, the device calculates a response from the complex physical functions, and the response is unpredictable and repeatable. The attackers cannot predict the response to the challenge and build the same PUF based on the same design and blueprint [27].

5.1. System Initialization Phase

R A generates private key K and two symmetric bivariate polynomials f ( x , y ) and g ( x ,   y ) with degree τ over the field G F p , and selects the elliptic curve E p ( a ,   b ) over finite field F p , G is the base point.

5.2. Entity Registration Phase

In this phase, we use the PUF to protect the private data of the smart gateway and the smart devices. Figure 3, Figure 4 and Figure 5 describe the registration processes.

5.2.1. Smart Gateway Registration

Step GR1: The smart gateway G W picks a P U F and generates a challenge C h G W , then computes I D G W = P U F ( C h G W ) . The smart gateway sends the message I D G W to the R A via the private channel.
Step GR2: After receiving the message I D G W , R A generates the current timestamp R T G W , and computes P I D G W = h ( I D G W R T G W K ) . R A returns a response P I D G W , R T G W via a private channel.
Step GR3: After receiving the response, the smart gateway calculates S I D G W = P I D G W h ( C h G W I D G W ) and stores S I D G W ,   C h G W ,   R T G W ,   P U F ,   h ,   G in the memory.

5.2.2. Smart Device Registration

Step DR1: The smart device S D j sends a unique identity I D D j to R A via the private channel.
Step DR2: After receiving the message, R A generates a random number T I D D j , current registration timestamp R T D j , then calculates P I D D j = h ( I D D j R T D j K ) and two functions g ( P I D G W , y ) ,   g ( P I D D j ,   y ) from the symmetric bivariate polynomial g ( x ,   y ) , P I D G W and P I D D j . Then R A sends the message < T I D D j ,   g ( P I D D j ,   y ) > to G W and the message g ( P I D G W , y ) ,   P I D D j ,   R T D j ,   T I D D j to S D j via the private channel.
Step DR3: G W stores the message < T I D D j , g ( P I D D j ,   y ) > in its memory.
Step DR4: The smart device S D j chooses a P U F and generates a challenge C h D j , and computes D I D D j = P I D D j h ( P U F ( C h D j ) ) . Finally, S D j stores { T I D D j ,   D I D D j ,   C h D j ,   g ( P I D G W , y ) ,   P U F ,   h ,   G } in its memory.

5.2.3. User Registration

Step UR1: U i selects a unique identity I D U i , a random number r U i , computes P I D U i = h ( I D U i r U i ) , and sends P I D U i to R A via the private channel.
Step UR2: R A generates a random T I D U i , a current registration timestamp R T U i , two functions f ( P I D U i ,   y ) and f ( P I D G W ,   y ) by the symmetric bivariate polynomial f ( x , y ) , and computes T C U i = h ( P I D U i R T U i K ) . Then R A sends < T I D U i ,   f ( P I D U i ,   y ) > to G W and T I D U i , T C U i ,   f ( P I D G W ,   y ) to U i via the private channel.
Step UR3: G W stores < T I D U i , f ( P I D U i , y ) > in its memory.
Step UR4: U i inputs B I O U i , P W U i , and computes ( σ U i ,   τ U i ) = G e n ( B I O U i ) , where B I O U i is U i ’s biological information. Later U i computes H P W U i = h ( I D U i P W U i σ U i r U i ) , B U i = r U i h ( P W U i σ U i ) , where P W U i is the password. Finally, U i stores { B U i ,   T I D U i ,   T C U i ,   τ U i ,   H P W U i ,   f ( P I D G W , y ) , R e p ,   G e n ,   h ,   G } in the memory of a mobile device.

5.3. Edge Negotiation Phase

In the edge negotiation phase, the session key is negotiated between the smart gateway and the smart devices. Figure 6 describes the executive process.
Step EN1: The smart device S D j generates a random number r D j , current timestamp T 1 , and computes P I D D j = D I D D j h ( P U F ( C h D j ) ) , the secret value g ( P I D G W ,   P I D D j ) , M 1 = r D j · G , V 1 = h ( M 1 T I D D j g ( P I D G W ,   P I D D j ) T 1 ) , and sends { T I D D j , M 1 ,   V 1 ,   T 1 } to G W via the public channel, where G is the base point.
Step EN2: On receiving the request, G W checks the freshness of the timestamp T 1 . After that, G W finds the function g ( P I D D j ,   y ) by T I D D j , and calculates I D G W = P U F ( C h G W ) , P I D G W = S I D G W h ( C h G W I D G W ) , the secret value g ( P I D D j ,   P I D G W ) , V 1 = h ( M 1 T I D D j g ( P I D D j ,   P I D G W ) T 1 ) . If V 1 = V 1 , the request is integrity. Then G W generates a random number R D j and timestamp T 2 , and calculates M 2 = R D j · G , S K G W D j = h ( T I D D j g ( P I D D j , P I D G W ) R D j · M 1 T 1 T 2 ) , T I D D j n e w = h ( T I D D j g ( P I D D j , P I D G W ) R D j · M 1 T 2 ) , V 2 = h ( T I D D j n e w T 1 ) . Then G W returns M 2 ,   V 2 ,   T 2 via the public channel. It is worth noting that the G W does not immediately update T I D D j at the time, and updates T I D D j = T I D D j n e w after a secure session is established. Even if the session establishment fails, it will not cause the smart device S D j to get out of sync.
Step EN3: On receiving the response, the smart device S D j checks the freshness of timestamp T 2 . Then S D j calculates S K D j G W = h ( T I D D j g ( P I D G W ,   P I D D j ) r D j · M 2 T 1 T 2 ) , V 2 = h ( T I D D j n e w T 1 ) . If V 2 = V 2 , the negotiation is successful, and S D j calculates T I D D j n e w = h ( T I D D j g ( P I D G W ,   P I D D j ) r D j · M 2 T 2 ) , updates T I D D j = T I D D j n e w and sends a secure message to notify the G W to update T I D D j .

5.4. Login and Authentication Phase

When the user needs to access the smart home, Figure 7 describes the executive process.
Step LA1: The user U i inputs identity information I D U i i n ,   P W U i i n and biometric information B I O U i i n into the mobile device, the mobile device computes σ U i = R e p ( B I O U i i n ,   τ U i ) , r U i = B U i h ( P W U i i n σ U i ) , H P W U i = h ( I D U i i n P W U i i n σ U i r U i ) . If H P W U i H P W U i , login failed. Otherwise, the mobile device generates a random number n U i and current timestamp T 3 , computes P I D U i = h ( I D U i r U i ) , M 3 = n U i · G , V 3 = h ( M 3 T I D U i f ( P I D G W ,   P I D U i ) T 3 ) . Then the mobile device sends T I D U i , M 3 ,   V 3 ,   T 3 to the G W via the public channel.
Step LA2: After receiving the message, G W checks the freshness of the timestamp T 3 . Then G W extracts the information I D G W = P U F ( C h G W ) , P I D G W = S I D G W h ( C h G W I D G W ) , gets f ( P I D U i ,   y ) by T I D U i and calculates the secret value f ( P I D U i ,   P I D G W ) . Similarly, the G W calculates V 3 = h ( M 3 T I D U i f ( P I D U i ,   P I D G W ) T 3 ) . If V 3   V 3 , terminate. Otherwise, G W generates random number N U i and current timestamp T 4 , calculates M 4 = N U i · G , S K G W U i = h ( T I D U i f ( P I D U i ,   P I D G W ) N U i · M 3 T 3 T 4 ) , T I D U i n e w = h ( T I D U i f ( P I D U i ,   P I D G W ) N U i · M 3 T 4 ) , V 4 = h ( T I D U i n e w T 3 ) , and updates the T I D U i with T I D U i n e w after the session is established. Finally, G W sends the message M 4 ,   V 4 ,   T 4 to U i via the public channel.
Step LA3: On receiving the response, the user U i ’s mobile device checks the freshness of the timestamp T 4 . And the mobile device computes S K U i G W = h ( T I D U i f ( P I D G W ,   P I D U i ) n U i · M 4 T 3 T 4 ) , V 4 = h ( T I D U i n e w T 3 ) , T I D U i n e w = h ( T I D U i f ( P I D G W , P I D U i ) n U i · M 4 T 4 ) . If V 4 = V 4 , the authentication succeeded, and the mobile device updates T I D U i with T I D U i n e w and securely informs the smart gateway G W to update T I D U i .

6. Formal Security Proof

6.1. Random Oracle Model

Definition 1 (Participants & partnering).
The participants are composed of User ( U ), Smart Device ( S D ), and Gateway ( G W ). In the i-th instance, the participants are denoted as I n U i i , I n S D j i , and I n G W i , respectively. The state A c c e p t represents that an oracle receives a correct message.
If two oracles are in A c c e p t and the session keys have been agreed upon, the oracles get their session identities and participant identities. The oracles can be considered partners if the following conditions are satisfied:
Their session keys are the same;
Their session identities are the same;
The participant’s identity is equal to each other’s identity.
Definition 2 (Queries).
The queries simulate the capabilities of attackers.
E x e c u t e ( I n U i i ,   I n G W i ,   I n S D j i ) : All the messages transmitted openly can be intercepted by the adversary A .
S e n d ( I n U i i ,   I n G W i ,   I n S D j i ,   m ) : A forges and sends the message m to I n U i i , I n G W i , or I n S D j i , if m is correct, I n U i i , I n G W i , or I n S D j i responses A .
R e v e a l ( I n U i i ,   I n G W i ,   I n S D j i ) : A can get the current session key between I n U i i , I n G W i , and I n S D j i .
T e s t ( I n U i i ,   I n G W i ,   I n S D j i ,   r ) : This query is allowed to be executed at most once, which generates a random bit r , if r = 1 , the real session key is returned.
C o r r u p t U s e r ( I n U i i ) : Which simulates the side-channel attack on the user’s device and returns the stored information { B U i ,   T I D U i ,   T C U i ,   τ U i ,   H P W U i ,   f ( P I D G W ,   y ) ,   R e p ,   G e n ,   h ,   G } .
C o r r u p t D e v i c e ( I n S D j i ) : Which simulates the attack of capturing a smart device and returns the stored information { T I D D j ,   D I D D j ,   C h D j ,   g ( P I D G W ,   y ) ,   P U F ,   h ,   G } .
C o r r u p t G a t e w a y ( I n G W i ) : Which simulates the attack of capturing the smart gateway and returns the stored information { S I D G W ,   T C G W ,   C h G W ,   R T G W ,   P U F ,   h ,   G } , < T I D D j ,   g ( P I D D j ,   y ) >, and < T I D U i ,   f ( P I D U i ,   y ) >.
Definition 3 (Freshness).
An instance can be regarded as fresh if it satisfies:
I n U i i , I n G W i , and I n S D j i are in A c c e p t .
The query R e v e a l ( I n U i i ,   I n G W i ,   I n S D j i ) has not been executed.
The queries C o r r u p t have been executed at most once.
Definition 4 (Semantic security).
A is allowed to execute at most once T e s t ( I n U i i , I n G W i , I n S D j i , r ) and multiple other queries to determine the correctness of the return value of T e s t ( I n U i i , I n G W i , I n S D j i , r ) . That is A guesses the random bit r generated by T e s t . The possibility is A d v P A = | 2 P r [ s u c ( A ) ] 1 | , A d v P A < η represents the protocol is secure, where η is sufficiently small.

6.2. Formal Security Proof under the Random Oracle Model

Theorem 1.
The advantage of obtaining the session key in polynomial time by A is A d v P A q H A 2 2 l H A + ( q S E + q E X ) 2 n + q S E 2 l b i o 1 + 2 q S E A d v P U F A + 2 A d v E C D L P A A d v S B P A .
Where q H A , q S E , and q E X represents the times of executing Hash, Send, and Execute, respectively. l H A , n , and l b i o are the length of hash, transcripts, and biological key, respectively. The advantage of breaking PUF, ECDLP, and the symmetric bivariate polynomial by A are A d v P U F A , A d v E C D L P A , and A d v S B P A , respectively.
Proof. 
The games G a m e i ( 0 i 4 ) are defined to simulate the attacks launched by A . W i n i ( 0 i 4 ) means A guesses the random bit r in the G a m e i . The games are defined as:
G a m e 0 : This game simulates the real attack first launched by A . According to the definition, we get:
A d v P A = | 2 P r [ W i n 0 ] 1 |
G a m e 1 : This game simulates the eavesdropping attack. A gets all the messages transmitted publicly. Then, A guesses the random bit r . However, because of the ECDLP, the attacker cannot judge the association between the captured messages and the session keys. Therefore, we get:
P r [ W i n 0 ] = P r [ W i n 1 ]
G a m e 2 : This game simulates the collision attack on the transcripts and hash results according to the definition of the birthday paradox, the probability of hash collision is less than q H A 2 2 l H A + 1 , and the collision probability of other transcripts is less than ( q S E + q E X ) 2 2 n . Therefore, we have:
P r [ W i n 2 ] P r [ W i n 1 ] q H A 2 2 l H A + 1 + ( q S E + q E X ) 2 2 n
G a m e 3 : This game simulates A executes C o r r u p t U s e r ( I n U i i ) , C o r r u p t D e v i c e ( I n S D j i ) , and C o r r u p t G a t e w a y ( I n G W i ) to obtain the stored information { B U i , T I D U i , T C U i , τ U i ,   H P W U i ,   f ( P I D G W ,   y ) , R e p , G e n , h , G } in the user’s device, { T I D D j ,   D I D D j ,   C h D j ,   g ( P I D G W ,   y ) ,   P U F ,   h ,   G } in the smart device, and { S I D G W ,   T C G W ,   C h G W ,   R T G W ,   P U F ,   h ,   G } , < T I D D j ,   g ( P I D D j ,   y ) >, and < T I D U i ,   f ( P I D U i ,   y ) > in the smart gateway. Where r U i = B U i h ( P W U i i n σ U i ) , P I D U i = h ( I D U i r U i ) , σ U i is the biometric key, P I D D j = D I D D j h ( P U F ( C h D j ) ) , P I D G W = S I D G W h ( C h G W P U F ( C h G W ) ) , P I D U i , P I D D j , and P I D G W are used for verification and session key agreement. If A wants to obtain the valuable parameters, A must guess σ U i or break PUF. Suppose the probability of breaking PUF by A is A d v P U F A . Therefore, we have:
P r [ W i n 3 ] P r [ W i n 2 ] q S E ( 1 2 l b i o + A d v P U F A )
G a m e 4 : A can obtain M 1 = r D j · G , M 2 = R D j · G , M 3 = n U i · G , and M 4 = N U i · G publicly, the session key agreements are based on ECDLP and the symmetric bivariate polynomial. This game simulates that A calculates the session keys according to the transcripts. We have:
P r [ W i n 4 ] P r [ W i n 3 ] A d v E C D L P A A d v S B P A
The session keys are generated independently and randomly. Hence, the advantage of guessing r is equal to guessing the session key. We have:
P r [ W i n 4 ] = 1 2
Combining the above formulas, we have:
1 2 A d v P A = | P r [ W i n 0 ] 1 2 |
q H A 2 2 l H A + 1 + ( q S E + q E X ) 2 2 n + q S E 2 l b i o + q S E A d v P U F A + A d v E C D L P A A d v S B P A
That is:
A d v P A q H A 2 2 l H A + ( q S E + q E X ) 2 n + q S E 2 l b i o 1 + 2 q S E A d v P U F A + 2 A d v E C D L P A A d v S B P A

7. Informal Security Analysis

7.1. Anonymity and Untraceability

In our proposed scheme, all messages are calculated from random numbers, and the temporary identities are changed in each session. Therefore, the proposed scheme is anonymous and untraceable.

7.2. Perfect Forward Secrecy

In our proposed scheme, the session key negotiation is based on long-term shared secrets and ECDLP. Even if the long-term key g ( P I D D j ,   P I D G W ) , f ( P I D U i ,   P I D G W ) and the current session key is leaked, the attacker cannot get the random number and cannot calculate the previous or later session key. Therefore, the protocol has perfect forward secrecy.

7.3. Impersonation Attack

If an attacker wants to impersonate S D j , stealing the secret g ( P I D G W ,   P I D D j ) is a precondition. The attacker can’t get the P I D D j because of the security features of PUF, and the secret will not be revealed even if the gateway is compromised, so the attacker can’t impersonate S D j .
If an attacker wants to impersonate U i . Calculating P I D U i = h ( I D U i r U i ) , where I D U i is public. But calculating r U i = B U i h ( P W U i σ U i ) is difficult because of the biological key σ U i , so it is impossible to impersonate U i .
If an attacker wants to impersonate G W negotiate with S D j or communicate with U i , the attacker needs to know the P I D G W to calculate the secret g ( P I D D j , P I D G W ) or f ( P I D U i ,   P I D G W ) . However, the P I D G W of the smart gateway also needs to be calculated by the PUF, so the attacker can’t impersonate G W .

7.4. Replay Attack

If an attacker captures previous data transmitted on the public channel and resends it, the data recipient will verify the freshness of timestamp. The integrity of the message is combined with the timestamps. The modified timestamp cannot pass the verification.

7.5. Mobile Device Loss/Stolen Attack

If an attacker gets the user’s mobile device, all the information is extracted in the U i ’s mobile device. Because the secret value r U i is calculated from the U i ’s bioinformatic features σ U i , the attacker cannot calculate P I D U i and secret value f ( P I D U i ,   P I D G W ) . Therefore, the scheme can resist the mobile device loss/stolen attack.

7.6. Smart Device Captured Attack

Suppose an attacker captures the smart device S D j and extracts the information stored in it. Due to the security features of PUF, the attacker cannot calculate P U F ( C h D j ) , P I D D j and g ( P I D G W ,   P I D D j ) . So, the attacker cannot impersonate S D j , and it is impossible to affect other smart devices.

7.7. Smart Gateway Compromised Attack

Suppose an attacker compromises the smart gateway; he can get the information { S I D G W ,   T C G W ,   C h G W ,   R T G W ,   P U F ,   h ,   G ,   T I D D j ,   g ( P I D D j ,   y ) ,   T I D U i ,   f ( P I D U i ,   y ) }   stored in the memory. Because of the features of PUF, the attacker cannot calculate P I D G W , g ( P I D D j ,   P I D G W ) , g ( P I D D j ,   P I D G W ) . Therefore, the scheme can resist the smart gateway compromised attack.

7.8. Man-in-the-Middle Attack

Since an attacker can neither impersonate G W , nor U i and S D j , which is described in the Impersonation Attack. Therefore, the scheme can resist the man-in-the-middle attack.

7.9. Desynchronization Attack

The reason our protocol can resist the desynchronization attack is that T I D D j is updated after passing the authentication and establishing the session key.

7.10. The Ephemeral Secret Leakage (ESL) Attack

Suppose an attacker gets an ephemeral secret during a negotiation, such as r D j , R D j , n U i , N U i . However, the session key calculation requires the long-term key g ( P I D D j ,   P I D G W ) or f ( P I D U i ,   P I D G W ) . Therefore, the scheme is resistant to the ephemeral secret leakage (ESL) attack.

8. Comparisons

In this section, we compared the security features and performance between our protocol and some related schemes [16,17,19,21]. The performance evaluation consists of communication and computation costs.
In terms of computational consumption, TI MSP430 microcontrollers are widely used in measurement and control equipment, so we take them to carry the TMP36 sensor to simulate the calculation consumption of the smart device. The mobile device chip uses ARM Cortex-A9 MPCore@890 Mhz CPU, and the smart gateway uses Intel Core [email protected] GHz. To ensure the consistency of statistical methods, we adopt the conversion method of [19], T h T m a c T h m a c , T e p m T m e , T p 16 T m a c , where T h is the time of the hash function, T e is the time of symmetric key encryption or decryption, T p is the time of symmetric polynomial, T e p m is the time of ECC point multiplication, T m a c is the time of message authentication code (MAC), T h m a c is the time of hashed MAC and T m e the time of is modular exponentiation; the notations are shown in Table 2. According to the smart device simulation result, T h 1.42   ms , T e 2.18   ms , T e p m 21.82   ms . According to the mobile device simulation, T h 0.067   ms , T e 0.085   ms , T e p m 13.56   ms . According to the smart gateway simulation, T h 0.037   ms , T e 0.055   ms , T e p m 8.77   ms . The result is shown in Table 3.
In terms of communication consumption, the length of the output, such as random number, identity, timestamp, hash, MAC, symmetric encryption block, and ECC point are 128 bits, 128 bits, 32 bits, 256 bits, 256 bits, 128 bits, and 1024 bits, respectively.
Table 4 is the comparison of the security features, and the comparison of the computation and communication consumptions are shown in Table 5 and Table 6.
In the scheme [16], the user inputs the identity and the password to achieve verification. When facing the offline password guessing attack, the password will no longer be secure. In addition, the gateway stores the long-term keys, the keys of users and devices will be leaked when the gateway is compromised, which threatens the security of communication data and session keys. The protocol cannot resist the gateway compromised attack and has no perfect forward secrecy. In addition, there is no timestamp verification in the authentication process; messages can be replayed.
In terms of communication consumption, the scheme [16] performs a total of 4 transmissions, the message sent by the user is 2560 bits (1024 + 1024 + 256 + 256), the gateway sent to the device is 768 bits (512 + 256), the returned message from the device is 512 bits (256 + 256), and the gateway sends to the user is 640 bits (384 + 256), so a total consumption is 4480 bits (2560 + 768 + 512 + 640).
In scheme [17], protocol is improved based on [16]. However, it can not resist the offline password-guessing attack and the replay attack. Similarly, because the gateway stores keys and sensitive data, the protocol does not provide perfect forward secrecy and cannot resist the gateway compromised attack. On the communication consumption, this protocol makes 4 transmissions. The user sends to the gateway 2592 bits (1024 + 1024 + 256 + 256 + 32), the gateway sends to the device 800 bits (512 + 256 + 32), the device returns 544 bits (256 + 256 + 32) message, then the gateway returns 672 bits (384 + 256 + 32) message to the user, the total consumption is 4608 bits (2592 + 800 + 544 + 672).
The scheme [21] stores the keys in the gateway, and the authors claimed that the gateway is fully trusted and cannot be compromised. So, the gateway compromised attack does not apply to this scheme. The biometric information and password are used for user verification, which can resist offline password guessing attacks and mobile device stolen attacks. A temporary identifier is used in the scheme to provide anonymity, which brings the issue of updating the temporary identifier. If the attacker intercepts the last message, the temporary identifier will be out of sync. In addition, the session key is built based on the shared secret key, so the scheme has no perfect forward secrecy. The data transmission communication consumptions in the protocol are 672 bits (128 + 256 + 256 + 32), 1056 bits (768 + 256 + 32), 800 bits (256 + 256 + 256 + 32), 1472 bits (896 + 256 + 256 + 32 + 32) respectively, so the total communication consumption is 4000 bits (672 + 1056 + 800 + 1472). The scheme [21] is based on symmetric encryption, and the shared key is preset in the gateway, so the calculation is fast.
We have pointed out that Guo et al.’s scheme [19] is not immune to the mobile device stolen attack, the gateway compromised attack, and the desynchronization attack. There is traceability and no perfect forward secrecy. In terms of communication consumption, access to the smart home requires 2 message transfers, consuming 1056 bits (256 + 128 + 256 + 256 + 128 + 32), 1056 bits (256 + 256 + 256 + 256 + 32), respectively, so total consumption is 2112 bits (1056 + 1056).
Our proposed scheme can support all security features. In terms of communication, our authentication requires 2 message transfers, sending 1440 bits (128 + 1024 + 256 + 32) and 1312 bits (1024 + 256 + 32), respectively, so total consumption is 2752 bits (1440 + 1312).
Table 2 and Table 5 show that our protocol has better security and transmission efficiency. To achieve perfect forward secrecy (PFS), it needs at least four times elliptic curve point multiplication. Since only our scheme achieves PFS, the computation cost of our scheme is a little more than others but at the same computation cost level.

9. Conclusions

In this paper, we first pointed out that many existing authentication protocols for a smart home have one or more security flaws. It further showed that almost all these protocols may suffer from gateway compromised attacks. Then we described that Guo et al.’s protocol in a fog-enabled smart home is vulnerable to smart gateway compromised attacks, desynchronization attacks, and mobile device lost/stolen attacks and has no perfect forward secrecy and untraceability. To overcome the shortcomings of Guo et al.’s protocol, we adopt PUF to resist gateway compromised attacks, adopt ECDH to achieve perfect forward secrecy, and propose a secure and privacy-preserving authentication protocol that avoids gateway compromised attacks in fog-enabled smart homes, and formally prove the security of the proposed protocol under random oracle model. Finally, we compare our protocol with some related protocols. The proposed protocol has better security and transmission efficiency with the same computation cost level.

Author Contributions

Conceptualization, Q.X. and J.H.; methodology, Q.X.; validation, Q.X., J.H., and Z.D.; formal analysis, Z.D.; investigation, J.H.; writing—original draft preparation, J.H.; writing—review and editing, Q.X.; supervision, Q.X.; project administration, Q.X.; funding acquisition, Q.X. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the National Natural Science Foundation of China (Grant No. U21A20466).

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. Lutolf, R. Smart home concept and the integration of energy meters into a home based system. In Proceedings of the Seventh International Conference on Metering Apparatus and Tariffs for Electricity Supply, Glasgow, UK, 17–19 November 1992; pp. 277–278. [Google Scholar]
  2. Berlo, A.V.; Allen, B. Design Guidelines on Smart Homes: A COST 219bis Guidebook; COST, European Co-Operation in the Field of Scientific and Technical Research: Cham, Switzerland, 1999. [Google Scholar]
  3. Zemrane, H.; Baddi, Y.; Hasbi, A. Internet of things smart home ecosystem. In Emerging Technologies for Connected Internet of Vehicles and Intelligent Transportation System Networks; Springer: Cham, Switzerland, 2020; pp. 101–125. [Google Scholar]
  4. Zanella, A.; Bui, N.; Castellani, A.; Vangelista, L.; Zorzi, M. Internet of things for smart cities. IEEE Internet Things J. 2014, 1, 22–32. [Google Scholar] [CrossRef]
  5. 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]
  6. Rahimi, M.; Songhorabadi, M.; Kashani, M.H. Fog-based smart homes: A systematic review. J. Netw. Comput. Appl. 2020, 153, 102531. [Google Scholar] [CrossRef]
  7. Alatoun, K.; Matrouk, K.; Mohammed, M.A.; Nedoma, J.; Martinek, R.; Zmij, P. A Novel Low-Latency and Energy-Efficient Task Scheduling Framework for Internet of Medical Things in an Edge Fog Cloud System. Sensors 2022, 22, 5327. [Google Scholar] [CrossRef] [PubMed]
  8. Rocha Filho, G.P.; Brandão, A.H.; Nobre, R.A.; Meneguette, R.I.; Freitas, H.; Gonçalves, V.P. HOsT: Towards a Low-Cost Fog Solution via Smart Objects to Deal with the Heterogeneity of Data in a Residential Environment. Sensors 2022, 22, 6257. [Google Scholar] [CrossRef]
  9. Chen, Y.-Y.; Chen, M.-H.; Chang, C.-M.; Chang, F.-S.; Lin, Y.-H. A Smart Home Energy Management System Using Two-Stage Non-Intrusive Appliance Load Monitoring over Fog-Cloud Analytics Based on Tridium’s Niagara Framework for Residential Demand-Side Management. Sensors 2021, 21, 2883. [Google Scholar] [CrossRef]
  10. Debauche, O.; Nkamla Penka, J.B.; Mahmoudi, S.; Lessage, X.; Hani, M.; Manneback, P.; Lufuluabu, U.K.; Bert, N.; Messaoudi, D.; Guttadauria, A. RAMi: A New Real-Time Internet of Medical Things Architecture for Elderly Patient Monitoring. Information 2022, 13, 423. [Google Scholar] [CrossRef]
  11. Verma, P.; Sood, S.K. Fog assisted-IoT enabled patient health monitoring in smart homes. IEEE Internet Things J. 2018, 5, 1789–1796. [Google Scholar] [CrossRef]
  12. Hu, B.; Tang, W.; Xie, Q. A Two-factor Security Authentication Scheme for Wireless Sensor Networks in IoT Environments. Neurocomputing 2022, 500, 741–749. [Google Scholar] [CrossRef]
  13. Jeong, J.; Chung, M.Y.; Choo, H. Integrated OTP-based user authentication scheme using smart cards in home networks. In Proceedings of the 41st Annual Hawaii International Conference on System Sciences (HICSS 2008), Waikoloa, HI, USA, 7–10 January 2008; p. 294. [Google Scholar]
  14. Xue, K.; Ma, C.; Hong, P.; Ding, R. A temporal-credential-based mutual authentication and key agreement scheme for wireless sensor networks. J. Netw. Comput. Appl. 2013, 36, 316–323. [Google Scholar] [CrossRef]
  15. Saqib, M.; Jasra, B.; Moon, A.H. A lightweight three factor authentication framework for IoT based critical applications. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 6925–6937. [Google Scholar] [CrossRef]
  16. Shuai, M.; Yu, N.; Wang, H.; Xiong, L. Anonymous authentication scheme for smart home environment with provable security. Comput. Secur. 2019, 86, 132–146. [Google Scholar] [CrossRef]
  17. Kaur, D.; Kumar, D. Cryptanalysis and improvement of a two-factor user authentication scheme for smart home. J. Inf. Secur. Appl. 2021, 58, 102787. [Google Scholar] [CrossRef]
  18. Santoso, F.K.; Vun, N.C. Securing IoT for smart home system. In Proceedings of the 2015 International Symposium on Consumer Electronics (ISCE), Madrid, Spain, 24–26 June 2015; pp. 1–2. [Google Scholar]
  19. Guo, Y.; Zhang, Z.; Guo, Y. SecFHome: Secure remote authentication in fog-enabled smart home environment. Comput. Netw. 2022, 207, 108818. [Google Scholar] [CrossRef]
  20. Blundo, C.; Santis, A.D.; Herzberg, A.; Kutten, S.; Vaccaro, U.; Yung, M. Perfectly-Secure Key Distribution for Dynamic Conferences. Annual International Cryptology Conference; Springer: Berlin/Heidelberg, Germany, 1992; pp. 471–486. [Google Scholar]
  21. Wazid, M.; Das, A.K.; Odelu, V.; Kumar, N.; Susilo, W. Secure remote user authenticated key establishment protocol for smart home environment. IEEE Trans. Dependable Secur. Comput. 2017, 17, 391–406. [Google Scholar] [CrossRef]
  22. Haseeb-ur-rehman, R.M.A.; Liaqat, M.; Aman, A.H.M.; Almazroi, A.A.; Hasan, M.K.; Ali, Z.; Ali, R.L. LR-AKAP: A Lightweight and Robust Security Protocol for Smart Home Environments. Sensors 2022, 22, 6902. [Google Scholar] [CrossRef]
  23. Lee, J.; Oh, J.; Kwon, D.; Kim, M.; Yu, S.; Jho, N.-S.; Park, Y. PUFTAP-IoT: PUF-Based Three-Factor Authentication Protocol in IoT Environment Focused on Sensing Devices. Sensors 2022, 22, 7075. [Google Scholar] [CrossRef]
  24. Yeh, H.L.; Chen, T.H.; Liu, P.C.; Kim, T.H.; Wei, H.W. A secured authentication protocol for wireless sensor networks using elliptic curves cryptography. Sensors 2011, 11, 4767–4779. [Google Scholar] [CrossRef]
  25. Yang, J.H.; Chang, C.C. An ID-based remote mutual authentication with key agreement scheme for mobile devices on elliptic curve cryptosystem. Comput. Secur. 2009, 28, 138–143. [Google Scholar] [CrossRef]
  26. Islam, S.H.; Biswas, G.P. A more efficient and secure ID-based remote mutual authentication with key agreement scheme for mobile devices on elliptic curve cryptosystem. J. Syst. Softw. 2011, 84, 1892–1898. [Google Scholar] [CrossRef]
  27. Zerrouki, F.; Ouchani, S.; Bouarfa, H. A survey on silicon PUFs. J. Syst. Archit. 2022, 127, 102514. [Google Scholar] [CrossRef]
  28. Yi, F.; Zhang, L.; Xu, L.; Yang, S.; Lu, Y.; Zhao, D. WSNEAP: An Efficient Authentication Protocol for IIoT-Oriented Wireless Sensor Networks. Sensors 2022, 22, 7413. [Google Scholar] [CrossRef] [PubMed]
  29. Yu, S.; Park, K. PUF-PSS: A Physically Secure Privacy-Preserving Scheme Using PUF for IoMT-Enabled TMIS. Electronics 2022, 11, 3081. [Google Scholar] [CrossRef]
  30. Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
  31. Canetti, R.; Krawczyk, H. Analysis of key-exchange protocols and their use for building secure channels. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2001; pp. 453–474. [Google Scholar]
  32. Dodis, Y.; Reyzin, L.; Smith, A. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2004; pp. 523–540. [Google Scholar]
Figure 1. The system model of a smart home.
Figure 1. The system model of a smart home.
Sustainability 14 14367 g001
Figure 2. The entity negotiation mode.
Figure 2. The entity negotiation mode.
Sustainability 14 14367 g002
Figure 3. Summary of smart gateway registration.
Figure 3. Summary of smart gateway registration.
Sustainability 14 14367 g003
Figure 4. Summary of smart device registration.
Figure 4. Summary of smart device registration.
Sustainability 14 14367 g004
Figure 5. Summary of user registration.
Figure 5. Summary of user registration.
Sustainability 14 14367 g005
Figure 6. Summary of edge negotiation phase.
Figure 6. Summary of edge negotiation phase.
Sustainability 14 14367 g006
Figure 7. Summary of login and authentication phase.
Figure 7. Summary of login and authentication phase.
Sustainability 14 14367 g007
Table 1. Notations.
Table 1. Notations.
NotationsDescriptions
U i ,   G W ,   D j ,   M D U i User, gateway, smart home device, and user’s mobile device
I D U i ,   I D G W ,   I D D j Identities   of   U i ,   G W ,   D j
P I D U i ,   P I D G W ,   P I D D j Pseudo   identities   of   U i ,   G W ,   D j
T I D U i ,   T I D D j Temporary   identities   of   U i ,   D j
R T U i ,   R T G W ,   R T D j Registration   timestamps   of   U i ,   G W ,   D j
T C U i ,   T C G W ,   T C D j . Token   of   U i ,   G W ,   D j
P W U i ,   B I O U i U i ’s password and biometric information
f ( · ) , g ( · ) Symmetric bivariate polynomial
R e p ( · ) , G e n ( · ) Reproduction and generation of fuzzy extractor
σ U i ,   τ U i . U i ’s biometric private key and public key of fuzzy extractor
SKSession key
r G W , r U i , r D j Random nonce
R A Registration authority
K Private   key   of   R A
T ,   Δ T Timestamp and maximum transmission delay time
h ( · ) Hash function
, XOR operation and concatenation
Table 2. Notations.
Table 2. Notations.
SymbolAlgorithm
T h Hash function
T e Symmetric key encryption or decryption
T p Symmetric polynomial
T e p m ECC point multiplication
T m a c Message authentication code (MAC)
T h m a c Hashed MAC
T m e Modular exponentiation
Table 3. Algorithm execution time (ms).
Table 3. Algorithm execution time (ms).
DeviceThTeTepm
Mobile device0.0670.08513.56
Smart device1.422.1821.82
Gateway0.0370.0558.77
Table 4. Security features.
Table 4. Security features.
Features[16][17][21][19]Ours
Offline password-guessing attack
Mobile device stolen attack
Smart device captured attack
Gateway compromised attack
Replay attack
User impersonation attack
Smart device impersonation attack
Gateway impersonation attack
User anonymity
Un-traceability
Man-in-the-middle attack
Mutual authentication
Desynchronization attack
Key agreement
Perfect forward secrecy
✓: secure; ✗: insecure; ⊘: not applicable.
Table 5. Computation costs (ms).
Table 5. Computation costs (ms).
SchemeMobile DeviceSmart DeviceGatewayTotal
[16] 6 T h + 2 T e p m 27.52 3 T h 4.26 7 T h + T e p m 9.03 40.81
[17] 6 T h + 2 T e p m 27.52 3 T h 4.26 7 T h + T e p m 9.03 40.81
[19] 27 T h 1.81 - 24 T h 0.89 2.7
[21] 8 T h + T e 0.62 6 T h + T e 10.7 10 T h + 2 T e 0.48 11.8
Ours 21 T h + 2 T e p m 28.53 - 19 T h + 2 T e p m 18.24 46.77
Table 6. Communication costs (bits).
Table 6. Communication costs (bits).
SchemeTotal MessagesCommunication Cost
[16]44480
[17]44608
[21]44000
[19]22112
Ours22752
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Xie, Q.; Han, J.; Ding, Z. Provable Secure Authentication Protocol in Fog-Enabled Smart Home Environment. Sustainability 2022, 14, 14367. https://doi.org/10.3390/su142114367

AMA Style

Xie Q, Han J, Ding Z. Provable Secure Authentication Protocol in Fog-Enabled Smart Home Environment. Sustainability. 2022; 14(21):14367. https://doi.org/10.3390/su142114367

Chicago/Turabian Style

Xie, Qi, Jinming Han, and Zixuan Ding. 2022. "Provable Secure Authentication Protocol in Fog-Enabled Smart Home Environment" Sustainability 14, no. 21: 14367. https://doi.org/10.3390/su142114367

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