Abstract
To improve the quality of service and reduce the possibility of security attacks, a secure and efficient user authentication mechanism is required for Wireless Sensor Networks (WSNs) and the Internet of Things (IoT). Session key establishment between the sensor node and the user is also required for secure communication. In this paper, we perform the security analysis of A.K.Das’s user authentication scheme (given in 2015), Choi et al.’s scheme (given in 2016), and Park et al.’s scheme (given in 2016). The security analysis shows that their schemes are vulnerable to various attacks like user impersonation attack, sensor node impersonation attack and attacks based on legitimate users. Based on the cryptanalysis of these existing protocols, we propose a secure and efficient authenticated session key establishment protocol which ensures various security features and overcomes the drawbacks of existing protocols. The formal and informal security analysis indicates that the proposed protocol withstands the various security vulnerabilities involved in WSNs. The automated validation using AVISPA and Scyther tool ensures the absence of security attacks in our scheme. The logical verification using the Burrows-Abadi-Needham (BAN) logic confirms the correctness of the proposed protocol. Finally, the comparative analysis based on computational overhead and security features of other existing protocol indicate that the proposed user authentication system is secure and efficient. In future, we intend to implement the proposed protocol in real-world applications of WSNs and IoT.
1. Introduction
Recent advancements in the micro-electro-mechanical system enable the production of low-cost sensor nodes with small-scale sensing module, a radio frequency transceiver, a small processing module for limited computation, small-scale memory and a short-lived power unit. For instance, a sensor node can have temperature, pressure, humidity and light sensors with 7.7 MHz 8-bit ATmega 128 processor, 4 K byte RAM, 128 K byte ROM, 512 K byte EEPROM, and 2 AA battery. The sensing module may consist of few sensors with analog to digital converters (ADCs). These sensors can measure the change in physical parameters such as temperature, humidity, light, pressure. The analog signals produced by the sensor node based on the measured physical parameters can be transformed into the digital signal using ADC. Then, the digital signals can be fed into the processing element to perform the necessary calculation on raw data, and the transceiver unit communicates with its adjacent sensor nodes. Nowadays, we find sensors are on our smart phones, watches, vehicles, homes, offices, cities, and industries which connect our world more than we ever thought possible.
A WSN [1] or IoT [2] may consist of a large number of scattered sensor nodes capable of collecting data from their surroundings for specific users, communicating with the neighboring sensor nodes using wireless medium and routing the data to the gateway node having trusted high-performance computing resources. Some important aspects of WSNs are as follows:
- The sensor nodes of WSNs sufferer with energy constraints, memory limitations, unreliable communications, higher latency in communication and unattended operation of networks.
- The topology of WSNs can vary very often.
- The sensor node can be deployed densely in WSNs area.
The IoT aims at overcoming the gap between the physical world and its characterization within the digital world. The term things refer to an object that has sensors attached to it, and can transmit data to the internet, where it can be processed, analyzed and used to make decisions, one such example is medical health care system.
An example of medical health care system for monitoring patient’s condition and recovery by authentic medical practitioners and doctors using wireless body area network (WBAN) is shown in Figure 1. The sensor nodes are planted in patient’s body for measuring various parameters like ECG, blood pressure, temperature, visual straight, etc. The measured parameters from different sensor nodes are transmitted to a master sensor node. The master sensor node processes the data locally and sends to the gateway node. Only the authentic medical practitioners and doctors are allowed to access the confidential and real-time data of high-profile patients from the master sensor node and the gateway respectively.
Figure 1.
Wireless body area network (WBAN).
The conventional specializations of WSNs, embedded systems, control systems and automation (including smart home, smart city, industry and building automation) contribute to facilitating the IoT. The advances in IoT technology facilitate wearable devices which broadly cover health, fitness and entertainment requirements. These devices are installed with sensors which collect the sensitive data about the human beings and transmit these data to the neighboring device, base station or gateway node for further processing and analysis. If the data is security sensitive, only an authentic user should be allowed to pre-process the data to extract essential insights about the patient. With the rise of IoT where the number of sensor devices would grow multi-fold, it would be infeasible for a user to make the system secure using traditional authentication mechanism. Therefore, it is important to address this concern by devising ways in which multiple advanced factors of authentication and session key establishment would be required to gain access to any smart devices of WSNs/IoT and at the same time its usability would be at high level.
The members of a smart home, city, and office (which has an automated system for monitoring temperature, light, air conditioners, windows, doors, refrigerator, alarms, alerts, etc.) should be given access by configuring the security system. However, to enhance system’s security, it is important to have multiple hierarchies of authentication and session key establishment scheme. Authenticating users who connect to the sensor nodes of WSNs and IoT is a process of validating the identity (based on one or more factors such as user’s inherence, possession, knowledge) using sensor devices. The security of traditional user authentication protocols for WSNs is based on low entropy password which is easy to break through dictionary attacks. However, the biometric information can not be lost, forgotten, guessed easily or shared.Therefore, the biometric based user authentication scheme is more secure and reliable than traditional password based systems.
From last decades, WSNs and IoT have drawn attention in many applications including health-care, battlefield surveillance, smart home, smart banking, financial office and other secure, real-time applications where efficient user authentication and session key establishment is required. A secure and efficient user authentication scheme should provide various security features (e.g., confidentiality, integrity, freshness, etc.) and it should resist various security attacks (e.g., user impersonation, sensor impersonation, stolen smart card and energy exhausting attacks, etc.) with less computation and communication overhead of sensor node. The traditional cryptographic algorithm cannot be implemented on resource constraint sensor nodes for efficient user authentication system. Therefore, we aim to design a secure and light-weight cryptographic mechanism of user authentication and session key establishment for WSNs/IoT.
The significant contributions of our work are as follows:
- In this paper, we first discuss various security issues involved in authenticating the users of WSNs and IoT.
- We perform the security analysis of various existing protocols of user authentication for WSNs. Through security analysis, we show that the existing protocols are vulnerable to various attacks like user impersonation attack, sensor node impersonation attack, attacks based on legitimate users.
- We propose a secure and efficient protocol for authenticating the users of WSNs and IoT considering mutual authentication, session key establishment, data freshness, and confidentiality.
- Through informal security analysis, we show that our proposed protocol resists the stolen smart card, sensor node compromise, gateway node compromise, man-in-the-middle and replay attacks.
- We execute “proof of security” using random oracle model to ensure the correctness of various security features involved in our proposed protocol.
- Subsequently, we verify the proposed protocol on popular and robust security verification tool such as AVISPA and Scyther.
- We use BAN logic to determine whether exchanged messages of the proposed protocol are trustworthy and secure against eavesdropping.
- Finally, we present the comparative analysis of our proposed protocol with other existing protocols based on security and computational overhead.
The remaining portions of this paper are structured as follows: Section 2 appraises the security features and deficiencies of existing user authentication schemes. Section 3 explains the notations and cryptography procedures we used in security analysis and proposed protocol. Section 4 demonstrates the recent protocols of user authentication and their cryptanalysis. Section 5 illustrates our proposed scheme. Section 6 performs the security analysis of our proposed scheme. Section 7 shows the results of comparative study. Section 8 represents the comprehensive analysis. Section 9 concludes our research work.
2. Related Work
In 2002, Akyildiz et al. [1] explored many significant aspects of WSNs and discussed critical open research issues of WSNs. Afterwards, several user authentications and session key agreement mechanism for WSNs have been proposed. Unfortunately, many of them still suffer from various security vulnerability. In 2004, Benenson et al. [3] proposed a user authentication and access control mechanism for WSNs. Consequently, Watro et al. [4] (in 2004) developed a public-key (RSA) based user authentication scheme TinyPK using Diffie-Hellman key exchange mechanism which provides mutual authentication and withstand sensor node impersonation attack. Subsequently (in 2005), Benenson et al. [5] designed an elliptic curve cryptography based user authentication system. In 2006, Wong et al. [6] declared that Benenson et al.’s [5] scheme is resistless to denial of service and impersonation attacks. Then, Wong et al. [6] designed a secure hash function based authentication scheme to enhance the security features but it does not support mutual authenticity and session key establishment between the user and sensor node. However, in 2007, Tseng et al. [7] specified that Watro et al.’s [4] and Wong et al.’s [6] schemes exhibit replay and forgery attack. Further, Tseng et al. improved Wong et al.’s scheme and recommended password update mechanism. In 2008, Lee [8] revealed that Wong et al. [6] scheme exhibit more computational overhead on sensor node compared to gateway node and proposed an improved authentication scheme by fixing the security drawbacks of Wong et al. scheme with less computation overhead of sensor node. Later, L.C. Ko [9] indicated that Tseng et al.’s scheme does not provide mutual authentication. Then, L.C. Ko [9] proposed mutual authenticity and time-stamp based user authentication scheme in 2008. In 2009, Vaidya et al. [10] elaborated mutual authentication scheme with formal verification. In 2009, Das [11] developed a secure mechanism to provide authenticity using smart card and user’s password (two-factor) but it does not offer session key between the user and sensor node. In 2010, Khan-Alghathbar (2010) [12] identified the gateway node bypass attack, insider attack and lack of password update mechanism in Das’s [11] scheme and improved Das’s scheme by including password update and mutual authentication technique.
The proposed two-factor authentication mechanism based on user’s identity and password is generally not reliable because the user intends to choose a low-entropy password that can be easily cracked by applying simple dictionary attacks.
To improve the security feature of two-factor user authentication mechanism that are vulnerable to password guessing attacks and subject to inefficient password update procedure in WSNs, biometric-based user authentication mechanism, accompanied with user passwords and smart cards, have drawn considerable attention. In 2010, Yuan et al. [13] provided a bio-metric based scheme but it is unprotected from node capture and denial of service attack. In 2012, Yoo et al. [14] designed a scheme that provides secure session key and mutual authentication. In 2013, Xue et al. [15] designed a mutual authentication scheme based on temporal information. However, in 2014, Jiang et al. [16] revealed that Xue et al.’s scheme is susceptible to stolen smart card and privilege insider attack. In 2015, A.K. Das [17] proposed fuzzy extractor based authentication scheme which resists well known security attacks of WSNs and have more security features compared to Althobaiti et al. (2013) [18] scheme. Sharaf et al. [19] proposed (in 2016) an object authentication system in order to exploit device-specific data, known as fingerprints, to authenticate the objects associated with the IoT. In 2016, Alizadeh et al. [20] presented a comprehensive survey of authentication schemes of mobile cloud computing (MCC) to explain MCC authentication and differentiate it with that of cloud computing schemes. However, in this paper we performed the cryptanalysis of A.K.Das [17] scheme and found that it is susceptible to stolen smart card attack. Similarly, we found that Choi et al. [21] (proposed in 2016), Park et al. [22] (introduced in 2016), and Moon et al.’s [23] (proposed in 2017) schemes are also insecure against various security attacks as we have illustrated in Section 4 of this paper.
3. Notations, Assumptions and Cryptography Concepts Used
3.1. Notations
Some important notations used for design and analysis of user authentication protocol for WSNs and IoT are listed in Table 1.
Table 1.
Notations used.
3.2. Assumptions
- Sensor node may not fix up with tamper-resistant hardware and if a node is captured by an adversary, all the prominent and confidential information stored in its memory can be accessed by the adversary. If the sensor nodes are tamper-resistant the adversary can know the information stored in the memory by measuring the power consumption of the captured sensor nodes.
- The base station or the gateway node is the trusted entity, and it works both as an authentication as well as a key distribution center.
- The adversary can intercept the public communication channel, inject packets and replay the previously transmitted packets.
- The adversary can capture the smart card of user and it can extract the sensitive information stored in the card through simple and differential power analysis techniques [24].
- We assume that the WSNs and IoT consist of few users (with smart card which can be captured or stolen by the adversary ), hundreds of sensor nodes (it can be captured by ) and the trusted gateway node.
- The processed data from the sensor nodes are gathered periodically at the gateway node . The gathered data may not always be real-time and fresh at . Therefore, the authentic user should be allowed to access the data directly from the sensor node to make quick decision for secure and real-time applications of WSNs and IoT.
3.3. Cryptography Concepts Used
Some basic cryptography concepts used in the security analysis of existing protocols and also in our proposed protocol are defined as follows:
Definition 1.
Secure Hash Function [25]: A function , with a binary string of arbitrary length as input and a binary string of fixed length m as an output, is a secure hash function if the following conditions holds:
- ’s advantage to find the collision and
- , for any sufficiently small .
where indicates that the pair is randomly chosen by and represents the probability of the event with execution time .
Definition 2.
Secure Encryption Scheme [25]: For any probabilistic, polynomial time adversary , an encryption algorithm is said to be IND-CPA (indistinguishability of encryption and chosen plaintext attack) secure if is negligible. Where denotes the advantage function of and denotes that the bit τ is a randomly chosen from set . denotes the execution time.
Definition 3.
Elliptic Curve Diffie-Hellman [26]: If p > 3 be a prime number, the elliptic curve considered over the finite field is represented by the solutions of the equation , along with a point of infinity, where mod p. If P be a generator or a base point of a cyclic subgroup G of the elliptic curve considered over the finite field , i.e., the elliptic curve Diffie-Hellman (ECDH) key exchange can be described as follows:
Initially, and agree on a generator point P and choose their private key as and respectively. Afterwards, they construct and exchange their public keys as and . Finally, and calculate the common secret key as and respectively. Where and it is intractable to find and for an adversary who knows and i.e.,
The advantage in finding is defined by Where for any sufficient small and means the pair is randomly selected by with execution time , such that
Definition 4.
Fuzzy Extractor for user authentication: Fuzzy extractor [27] is a cryptography mechanism for securely authenticating a user using bio-metric credentials. Suppose a finite set M is a metric space with a distance function along with an error tolerance limit calculated using error correction codes for any particular distance metric (hamming distance, set difference metric, edit distance metric etc.) such that:
- .
- iff
- , where
The fuzzy extractor consists of two randomized operations i.e., Generator (Gen) and Reproduction (Rep) with the following characteristics:
- The operation takes a bio-metric credential of user as an input and produces outputs—a secret string and a public accessory string , i.e.,
- The operation takes a noisy bio-metric credential of user and the public accessory string as an input and reproduces the secret string as an output i.e., if and only if
4. Review and Cryptanalysis of Various Recent Schemes of User Authentication for WSNs
In this section, we concisely review and present the security analysis of the various recently proposed user authentication protocols of WSNs. The security analysis performed in this section illustrates that the existing protocols have various security vulnerability based on the logical proofs and the assumptions considered in the Section 3.2 of this paper. This section provides an awareness of what needs to be fixed and how the user authentication protocol should be design to withstand the miscellaneous attacks incorporated into the WSNs/IoT.
4.1. Review of A.K.Das’s Scheme
A.K.Das [17] performed the security analysis of Althobaiti et al.’s [18] scheme and proposed an improved scheme of user authentication using the fuzzy extractor in order to resist node capture attack, impersonation attack, man-in-the-middle attack. A.K.Das [17] proposed a novel approach (considering the resource constraints of sensor node) for bio-metric based user authentication using the fuzzy extractor. For evaluating the security features of A.K.Das’s Scheme, the user registration phase of Das’s scheme is described in the follwing Step DR1, Step DR2, Step DR3 and the authentication-key agreement phase is summarized in the Steps DA1, Step DA2, Step DA3 based on the notations of Table 1. We summarize the user registration, authentication and key agreement phase of A.K.Das’s scheme in Table 2 and Table 3 respectively.
Table 2.
User registration phase of A.K.Das’s scheme.
Table 3.
Login, authentication and key sharing phase of A.K.Das’s scheme.
- Step DR1:
- The user inputs and and generates 1024 bit random number K. Subsequently, calculates and selects a key Then, transmits to using secure communication channel.
- Step DR2:
- After receiving the message , the gateway node generates 1024 bit key , evaluates and stores into . Then, sends to using secure communication channel.
- Step DR3:
- After receiving , the user evaluates and Finally, replaces with in and stores into
- Step DA1:
- The registered user inserts his/her smart card into the card reader device and provides the secret bio-metric information . Then, evaluates . If , transmits to via public communication channel. Otherwise, aborts this phase.
- Step DA2:
- After receiving the message , verifies the message. If is valid, sends a Random challenge R to via public communication channel. Otherwise, aborts this phase.
- Step DA3:
- After receiving the Random challenge R, evaluates Finds the current time-stamp . Then, transmits to via public communication channel.
- Step DA4:
- evaluates using decryption operation based on key . If is fresh and R is valid, computes , finds the current time-stamp and computes Finally, transmits to via public communication channel. Otherwise, aborts this phase immediately.
- Step DA5:
- retrieves as using decryption operation on based on key . If is fresh and is valid, finds the current time-stamp and evaluates the session key . Then, sends to via public communication channel and stores in its memory. Otherwise, aborts this phase immediately. Finally, stores in its memory.
- Step DA6:
- If is fresh, the user computes , If establishes the session key with the sensor node Otherwise, aborts this phase immediately.
4.2. Cryptanalysis of A.K.Das’s Scheme
In this section, we perform the cryptanalysis of the A.K.Das’s scheme and found that A.K.Das’s scheme is also vulnerable. The vulnerabilities involve in A.K.Das’s scheme are elaborated in the following subsection:
4.2.1. Stolen Smart Card Attacks
The adversary ascertains the value of from stolen by measuring the power consumption of smart card [24]. Then, computes: .
Afterwards, the adversary find out the value of K and by implementing one of the following three mechanism:
- Derives the value of K and using the frequency analysis of stream cipher and .
- Eavesdrops R and and implements the known plain text attack to find out the value of . Thereafter, find out the value of .
- Steals the bio-metric information of (where ) and find out the value of . Eavesdrops the value of from public communication channel and then evaluates the value of , . It is possible, because is not password protected.
Subsequently, chooses its own identity , password , biometric information and computes:
, , , and .
Finally, replaces the information of with respectively.
The login phase of the adversary is as follows:
- insert and inputs and imprints .
- computes , and . Then, it verifies if . It would be true i.e., both the password and bio-metric verification would be correct.
- Afterwards, sends the login message to via a public channel. However, the adversary intercepts the message and replaces with .
Authentication and key agreement phase for the adversary is illustrated as follows:
- Since is valid, therefore generates a random challenge R and send it to .
- select the login sensor node and sends to .
- After receiving , decrypt it using and verifies the validity of and R. Subsequently, computes and finally sends to the sensor node
- After receiving , computes and sends to
- Then, computes using , stolen bio-metric and evaluated K. It is possible because has no password protection.
- Finally, computes and the session key shared with .
4.3. Review of Choi et al.’s Scheme
Choi et al. [21] performed the security analysis of Yoon and Kim’s [28] protocol and proposed an improved protocol (considering the resource constraints of sensor node of WSNs) of user authentication using the fuzzy extractor and biometric information. The Choi et al.’s protocol solves the problems of biometric recognition inaccuracy, user verification difficulty, lack of anonymity, perfect forward secrecy, session key revelation by the GWN, DoS attack, and a revocation problem. In this scheme, the gateway node originates master keys, x and y, and allocates to the sensor node . The registration phase of this scheme is summarized in Step CR1, Step CR2 and Step CR3. The authentication, and session key establishment phase is summarized in Table 4.
Table 4.
Authentication and session key establishment phase of Choi et al. protocol.
- Step CR1:
- The user inputs his/her identity , biometric information and computes: . Then, transmits to via secure communication channel.
- Step CR1:
- After receiving the message , the gateway node generates 1024 bit secret key x and computes , Then, stores into smart card . Finally, sends the smart card to the user
- Step CR2:
- After receiving the smart card , the user stores into .
4.4. Cryptanalysis of Choi et al.’s Scheme
In this section, we perform the cryptanalysis of the Choi et al.’s scheme and found that Choi et al.’s scheme is also vulnerable. The vulnerabilities involve in this scheme are elaborated in the following subsection:
4.4.1. Attack Based on Legitimate User
In this scheme, a legitimate user can be an adversary , because can find out the hashed master key and then it can derive the secret information of user as follows:
- inputs , imprints , computes , , and finally verifies
- If verification succeeds, generate random number and computes
- intercepts the message of and find out:
- Therefore, we find that Choi et al. scheme does not provide user anonymity i.e., an adversary can compute user ’s identification . However, Choi et al. claimed that their protocol provides user anonymity.
- Furthermore intercepts the cipher text and derives the plain-text , therefore Choi et al. scheme is vulnerable to known plain-text attack.
4.4.2. User Impersonation Attack
An adversary with an stolen smart card can impersonate a legitimate user as follows:
- extracts from the smart card of the user and computes and verify the computed with the stored .
- generates a random number , calculates ,. Find out the current timestamps , computes , , , .
- sends the message to . Subsequently, establishes the session key with using Steps 2–4 of authentication and session key establishment phase of Choi et al. protocol.
4.5. Review of Park et al.’s Scheme
Park et al. [22] performed the security analysis of Chang et al.’s [29] scheme. Then, Park et al. proposed an improved scheme of user authentication using the fuzzy extractor and biometric information in order to provide forward secrecy, accurate password update phase and resist off-line password guessing attacks. In this scheme the gateway node originates master keys, x and y, and allocates a key to the sensor node . Afterwards, the scheme follows the registration, login and authentication phase as shown in Table 5 and Table 6.
Table 5.
User registration phase of Park et al.’s protocol.
Table 6.
’s authentication and session key sharing phase of Park et al. protocol.
4.6. Cryptanalysis of Park et al.’s Scheme
In this section, we perform the cryptanalysis of the Park et al.’s scheme and found that Park et al.’s scheme is also vulnerable and it has the following security vulnerabilities:
4.6.1. Sensor Node Impersonation Attack
According to Park et al., to impersonate a sensor node , an adversary need to have the key . Although, an adversary can impersonate the sensor node without having with the help of following steps:
- The adversary intercepts the message and
- Then, generates a random number , finds current times-stamp and computes: Query response and .
- Afterwards, sends to .
- After receiving , computes: If , computes
Therefore, the adversary succeeds in impersonating the sensor node and establishing the session key with the user .
4.6.2. User Impersonation Attack
In Park et al.’s scheme, a legitimate user can be an adversary to impersonate the user because can find out the hashed master key and then it can derive the secret information of user as follows:
- First, the adversary extract the information from the smart card.
- Then, imprints its biometric information and computes and , .
- Afterwards, generates random number , selects an identity and computes: and . Finally, sends to
- After receiving , if , computes
- If , the finds the current time stamp and computes:
- Finally, sends to
- After receiving , if and , computes: and
- If , generates a random number and computes: Query Response,
- Then, sends to the adversary
- After receiving , if the adversary computes: If , computes and establishes the session key with sensor node Therefore, Park et al.’s scheme is vulnerable to user impersonation attack. Similar attack is possible in Moon et al.’s scheme [23] also, since the value of in Moon et al.’s scheme can be evaluated using and .
5. Proposed Protocol
In our proposed protocol, we consider that the WSNs and IoT consist of few users (with the smart card which can be captured or stolen by the adversary ), hundreds of sensor nodes (these nodes can be captured by ) and trusted gateway node. Considering these entities, we design the protocol which consists of four critical components (i) Set-up before the deployment of WSNs/IoT (ii) Registration of by the (iii) ’s authentication and session key establishment phase (iv) ’s credentials update phase.
5.1. Set-Up before the Deployment of WSNs/IoT
In this phase, we select a high-performance and trusted computing node as a gateway . The assigns a unique identity to each sensor node and loads a unique secret key into the memory of .
5.2. Registration of by the Using Secure Communication Channel
In this phase, a legitimate user sends the hashed secret credential to using a secure communication channel and the provides a smart card (consisting of some secret parameter which is known only to the ) to . The steps associated with the proposed user registration phase are described in following Steps R1, R2, R3 and summarized in Table 7 (using Steps 1–3).
Table 7.
User registration phase of proposed protocol.
- Step R1:
- A legitimate user selects her identity , password and inputs his/her biometric information into the generator function which generates a secret information and a public reproduction parameter . Then, calculates using secure hash function and sends to the gateway node
- Step R2:
- generates a secret key x, selects a generator point P of G with order q and computes:(where “×” is the scalar multiplication operator of elliptic curve),Finally, the gateway node stores the value of into the smart card and sends to the user .
- Step R3:
- After receiving the from , the user stores function and the values of into .
5.3. User Authentication and Session Key Establishment Phase
In this module, we use the reproduction procedure of fuzzy extractor for authentication the user with its noisy biometric credential and we use Elliptic curve Diffie-Hellman procedure for sharing the common session key between user and sensor node . The detail descriptions of this phase are illustrated in following Steps A1–A4 and summarized in Table 8 (using Steps 1–4).
Table 8.
User authentication and session key establishment phase of the proposed protocol.
- Step A1:
- inputs , imprints her noisy biometric information and computes using reproduction function of fuzzy extractor as described in Definition 4. Then, calculates , , .If the equivalent condition does not fulfill; abort the protocol. Otherwise, evaluates generates a random number . and find out her current time stamp . Then, the user calculates , (where “×” is the scalar multiplication operator of elliptic curve) and encrypts the message considering as a symmetric key to find: . Finally, Construct a message and sends to the gateway node .
- Step A2:
- After receiving the message , the gateway node compute and decrypts the cipher text considering as a symmetric key to find: And if the condition does not fulfill; the aborts the protocol. Otherwise, the gateway node generates a random number and calculates the session key (where “×” is the scalar multiplication operator of elliptic curve). Then, the gateway node finds its current time-stamp and calculates: , Finally, construct the message and sends to the sensor node .
- Step A3:
- After receiving the message , decrypts the cipher text using symmetric key to find out: If the condition fulfills, stores the session key and finally transmits to
- Step A4:
- After receiving the message , the user decrypts the message considering as a symmetric key and find out: Once the condition fulfills, the user establishes the session key with . Where based on problem.
5.4. User’s Credential Update Phase
If a legitimate user gets authenticated using her identity , password , biometric information and the smart card , she can update her password and biometric information using the mechanism described in Table 9.
Table 9.
User’s credential update phase of proposed protocol.
6. Security Analysis:
To estimate the security strength of our proposed protocol, we perform the informal and formal analysis of security features.
6.1. Informal Analysis
Our proposed protocol can withstand various known security attacks as illustrated in the following propositions.
Proposition 1.
The proposed protocol is secure against Stolen Smart Card Attack.
Proof.
An adversary who have stolen the smart card can extract the intimate data such as from the using side channel attacks such as differential and simple power analysis. However, in our protocol the most important private information such as and are stored in well-protected form. If succeed to find out , it can not find out or using frequency analysis attack. The private information also can not be extracted by because it is hashed after concatenated with . ☐
Proposition 2.
The proposed protocol is secure against node compromise attack.
Proof.
According to our presumption, the sensor node is not fixed with tamper resistant hardware, therefore an adversary can capture the sensor node and find out the value of the key and session key . However, can not use the same session key at next session because we made the session key unique using the random number and . If captures the key from , it can establish a session key with any user who wants to access data from but it can not establish a session key with any other user associated with non-compromised sensor node because the key is uniquely given to . ☐
Proposition 3.
The proposed protocol is secure against Man-in-the-middle attack.
Proof.
Suppose an adversary eavesdrops the message during user authentication and session key establishment phase, generates a random number and the current time-stamp . However, can not evaluate the value of without knowing the bio-metric information and smart card credentials of in order to decrypt and modify the value of . Likewise, it is computationally infeasible for an adversary to modify the value of and without knowing the key and respectively.Therefore, our scheme is secure against the Man-in-the-middle attack. ☐
Proposition 4.
The proposed protocol is secure against replay attack.
Proof.
Suppose an adversary intercepts the message from the public communication channel established between Step 1 and Step 2 of user authentication and session key establishment phase of our proposed protocol. Sometime later, resends to the gateway node . At the gateway node , the message will be declared as replayed because the time-stamp will not be fresh and the condition will not be satisfied. Similarly, if the adversary intercepts and replays the messages and from the public communication channels of user authentication and session key establishment phase, they will be declared (after time-stamp verification) as replayed messages by the sensor node and the user respectively. Therefore, our scheme is secure against the replay attack. ☐
Proposition 5.
The proposed protocol is resilience against gateway node capture attack.
Proof.
In the registration phase of our proposed protocol, the user transmits only the value of , instead of sending the original biometric information , to the gateway node . Where, is generated using Fuzzy extractor and the function is a secure one-way hash function. Therefore, for an adversary , it is not possible to find out the value of user’s password and biometric information from the captured Gateway node . Then, can not impersonate the user based on the authentication phase of our proposed protocol. Hence, our proposed protocol is resilience against gateway node capture attack. ☐
6.2. Formal Security Analysis
In this section, we first use random oracle model to perform the formal security analysis of our proposed protocol. Then, we use Scyther tool [30] to verify all the security claims specified in different roles. Afterwards, we automatically validate the safety of our protocol using AVISPA [31] (version v1.1) tool based on Dolev-Yao intruder model with OFMC and CL-AtSe back-ends. We do logical verification using BAN logic to ensure that our protocol works correctly and achieve the specified security feature.
6.2.1. Formal Security Verification Using Random Oracle Model
The random oracle model (ROM) is a robust tool proposed by Bellare and Rogaway in [32] to make it possible to execute meticulous “proofs of security” for particular fundamental cryptographic protocols.
A random oracle is a theoretical black box that responds to every individual query with an accurate random response chosen uniformly from its output domain. If a query is occurring several times, it responds the same way every time that query is performed.
Based on random oracle model, the following Theorem 1 shows that our protocol can resist various security attacks.
With the help of random oracle model we prove that for an adversary it is not possible to obtain the value of legitimate user’s identity , password , biometric information , and the session key . Considering the method of contradiction, we assume that there exist some random oracles as illustrated in following Definitions 5–7.
Definition 5.
Reveal1: Given a hash value , this oracle unconditionally outputs the string s.
Definition 6.
Reveal2: Given an encrypted value , this oracle unconditionally outputs the string s without knowing the key k.
Definition 7.
Reveal3: Given and the public parameter , this oracle outputs the private key r.
Theorem 1.
If the hash function , encryption mechanism , and elliptic curve Diffie-Hellman problem follows the random oracle Reveal1, Reveal2 and Reveal3 respectively; our scheme resist the adversary for deriving the values of user ’s secret parameters and .
Proof of Theorem 1.
If we assume that, there exist the oracle Reveal1, Reveal2, Reveal3 which can derive string s from the hash digest , string s from the cipher-text and private key r from the public parameter respectively. Then, the adversary can design an procedure as shown in Algorithm 1 such that probability of success of is . The advantage function for can be represented as:
.
According to Algorithm 1, there exist oracle Reveal1, Reveal2, Reveal3 capable of finding the preimage of , the plain-text s from the cipher-text and private key r from the public parameter . Therefore, the adversary can get the values of . However, according to Definitions 1–3 (defined in Section 3) we have
which indicates that is negligible for any probabilistic polynomial time adversary . Now, we find that the secure hash function , encryption mechanism and elliptic curve Diffie-Hellman problem defined in Section 3 contradicts the oracle Reveal1, Reveal2 and Reveal3 respectively considered in Algorithm 1. This indicates that our scheme resist the adversary for deriving the values of the secret parameters and Hence, the theorem is proved. ☐
Where represents the total number of queries made to the Reveal1, Reveal2, Reveal3 oracle respectively.
| Algorithm 1: |
![]() |
6.2.2. Verification Using Scyther tool
The Scyther tool algorithm provides some novel features, including:
- Guaranteed termination, after which the result is either unbounded correctness, falsification, or bounded correctness.
- Efficient generation of a finite representation of an infinite set of traces concerning patterns, also known as a complete characterization.
- State-of-the-art performance, which has made new types of protocol analysis feasible, such as multi-protocol analysis.
The proposed protocol is specified in Security Protocol Description Language(SPDL). The protocol specification defines sequence of roles of , and . Every role encompasses sequences of events (i.e., send, receive, declarations and claim events). The protocol specification and the roles of , and are represented in Table 10, Table 11, Table 12 and Table 13 respectively. The verification result obtained using Scyther tool is shown in Figure 2. The result indicates that no attacks found on each of the claims specified in our protocol.
Table 10.
Specification of the proposed protocol in SPDL.
Table 11.
Specification of the user’s role in SPDL.
Table 12.
Specification of the gateway node’s role in SPDL.
Table 13.
Specification of the sensor’s role in SPDL.
Figure 2.
Security verification result obtained using Scyther tool.
6.3. Verification Using AVISPA Tool
In this section, we first explain the setup procedure and some basic features of AVISPA tool which we use for the formal security analysis of our protocol. Afterwards, we describe the implementation of our protocol using High- Level Protocol Specification Language (HLPSL). Finally, we discuss about the results obtained.
6.3.1. Experimental Setup and the Size of the Entities Involved in WSNs/IoT for the Simulation of Proposed Protocol Using AVISPA Tool
In order to simulate the proposed protocol on AVISPA v1.1, we use a Security Protocol ANimator (SPAN) Version 1.6 on a computer system having ubuntu 16.04 LTS operating system (64 bit), Intel (R) core (TM) i7-6500U CPU @ 2.50 GHz x4 processor, and 8 GB RAM. We extract the archive avispa-package-1.1_Linux-i686.tgz, set up the environment variable AVISPA_PACKAGE and keep the script of the avispa protocol in the execution path. We implement our protocol considering minimal number of entities involved in WSNs/IoT (i.e, one user , one sensor node and one gateway node ) using Dolev-Yao model [33] with a bounded number of sessions, specified goal, On-the-Fly Model-Checker(OFMC) and Constraint-Logic based Attack Searcher (CL-AtSe) backend.
6.3.2. Basic Features of AVISPA Tool
AVISPA is a broadly accepted and robust software tool for automatically validating (using push-button mechanism) the security features of the protocols used in Internet of Things. The architecture of AVISPA tool is shown in following Figure 3.
Figure 3.
AVISPA Architecture.
AVISPA involves HLPSL to specify the protocol in a file with.hlpsl extension. It performs a static analysis to verify the executability of the protocol. A HLPSL2IF translator is used to translate the HLPSL specification into an Intermediate Formate (IF) specification, which is tool-independent language and compatible for automated deduction. The IF specifications are provided as an input to one of the four back-ends. The back-ends are as follows:
- On-the-fly model-checker (OFMC)
- Constraint-logic based attack searcher (CL-AtSe)
- SAT-based model-checker (SATMC)
- Tree automata based on automatic approximation for the analysis of security protocols (TA4SP).
6.4. Implementation of the Proposed Protocol Using HLPSL
The HLPSL specification of the protocol consist of some important section as follow:
- Basic Role: Basic role explains the activity of the entities (e.g., User , Gateway and Sensor node ) involve in the protocol.
- Each role may have some parameter like , , of type agent and Kui1, Kgsnj of type symmetric_key.
- The parameter RCV and SND denotes the agent’s communication channels for receiving and sending the information.
- The parameter (dy) represents the Dolev-Yao intruder model for the channel.
- The function H, Gen, Rep, EccMul, Enc, Dec and XOR corresponding to the hash function, fuzzy extractor’s generator, fuzzy extractor’s reproduction, elliptic curve scalar multiplication, encryption, decryption and logical XOR operations respectively.
- The term hash_func represents all the functions which are not easily invertible because the random non-invertible arithmetic operators are not supportable in HLPSL.
- The term “played_by ” denotes that the role User is played by .
Table 14. Specification of ’s role in HLPSL.
Table 15. Specification of ’s role in HLPSL.
Table 16. Specification of ’s role in HLPSL. - Transitions: The transitions are declared in steps. It consist of trigger which fires when an event occurs. For any States in a transition if a message received on channel RCV, then transition fires and allocates a new value to the State.
- Composed Roles: It makes one or more basic roles to execute together and represent the sessions involve in the protocol. The operator ∧ represents the parallel execution of the roles.The HLPSL specification of proposed protocol’s session is shown in Table 17.
Table 17. Specification of proposed protocol’s session in HLPSL. - Environment: It consist of global constant and session composition, where the adversary may execute some role as a authorized user.The HLPSL specification of proposed protocol’s environment is shown in Table 18.
Table 18. Specification of proposed protocol’s environment in HLPSL. - Security Goal: This module specifies the security Goal of the protocol. Some important predicates used in this module are as follows:
- secret({PWi,Bi,SIGi’}, sub1, Ui): It indicates that the information {PWi,Bi,SIGi’} is secretly shared to and it can be recognize with a constant identity in goal section.
- witness(Ui, GWN, gateway_user_gu, Tui,Alpha’): It represents the weak authenticity of by and is the witness for the data {Tui’, Alpha’}. The identity of this goal is represented as in goal section.
- request(Ui,SNj, user_sensor_us, Skey’): It represents the strong authenticity of by on Skey with an identity user_sensor_us.
- Symbols: Concatenation (.) is used for message composition (e.g., SND (IDi.PBi’)) and Commas (,) is used in case of multiple arguments of events or functions (e.g., secret(PWi,Bi,SIGi’, sub1, Ui)).
The HLPSL specification of proposed protocol’s goal is shown in Table 19.
Table 19.
Specification of proposed protocol’s goal in HLPSL.
6.5. Description of the Output Format Generated by AVISPA Tool
The output generated by AVISPA tool describes the final result obtained under various conditions after the security analysis of the protocol. The output produced by the AVISPA tool consist of following sections and subsections:
- Summary: This section specifies the security reliability of the protocol regarding safe, unsafe or inconclusive.
- Details: In this portion, the output specifies the environment and the context under which the protocol is claimed to be safe, unsafe or inconclusive.
- Protocol: It indicates the name of the protocol given as an input for security verification.
- Goal: This section represents the specified security goal of the protocol.
- Backend: This section represents one of the four back-ends used for the analysis of the protocol.
The verification result of AVISPA [31] tool is shown in Table 20 which represents that the proposed protocol is safe from various attacks (like man-in-the-middle attack, replay attack etc.) using Dolev-Yao model [33] with bounded number of sessions, specified goal, On-the-Fly Model-Checker(OFMC) and Constraint-Logic based Attack Searcher (CL-AtSe) backend.
Table 20.
Security verification result obtained using AVISPA tool.
6.5.1. Logical Verification Using BAN Logic
In this subsection, we use BAN logic [34] to verify the freshness of time-stamp to avoid replay attack and we validate the message origin to achieve authenticity. The notation we use for logical verification is shown in Table 21.
Table 21.
Notations used in verification using BAN logic.
- Rule 1
- Message meaning rule: . That is, if believes that she shared the key K with , and sees the message encrypted with key K, believes that once said S.
- Rule 2
- Nonce verification rule: . That is, if believes S is fresh and once said S, believes believes S.
- Rule 3
- Jurisdiction rule: . That is, if believes that had jurisdiction right to S and believes believes S, believes S.
In order to achieve the better security features, the proposed protocol should achieve the security Goals as defined in Table 22.
Table 22.
Goals: The goals made to analyze the proposed scheme.
- Message 1
- Message 2
- Message 3
Hypotheses: Some important assumptions (as shown in Table 23) about the initial state are made to analyze the proposed scheme:
Table 23.
Hypotheses: The assumptions made to analyze the proposed scheme.
Now, based on the hypothesis as described in Table 23 and the rules of the BAN logic, we validate that the proposed protocol can accomplish the intended goals and the clear explanations are as follows:
- Derivation of user ’s trusts on the truth of secret information .That is, if believes that has jurisdiction over then trusts on the truth of Therefore, we achieve Goal 1.
- Derivation of sensor node ’s trusts on the truth of secret informationThat is, if sensor node believes that the gateway node has jurisdiction over then trusts on the truth of Therefore, we achieve Goal 2.
- Verification of freshness of user’s time-stamp on the gateway node (using message-meaning and nonce verification rule):
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said- (Based on nonce verification rule)
That is, if believes that the time-stamp is fresh and once said , then believes believes Therefore, we achieve Goal 3. - Verification of freshness of gateway node’s time-stamp on the sensor node (using message-meaning and nonce verification rule):
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said- (Based on nonce-verification rule)
That is, if believes that the time-stamp is fresh and once said , then believes believes Therefore, we achieve Goal 4. - Verification of freshness of gateway node’s time-stamp on user (using message-meaning and nonce verification rule):
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said- (Based on nonce-verification rule)
That is, if believes that the time-stamp is fresh and once said , then believes believes Therefore, we achieve Goal 5. - Verification of sensor node’s identity on the gateway node :
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said Therefore, we achieve Goal 6. - Verification of user’s identity on the sensor node :
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said Therefore, we achieve Goal 7. - Verification of the public key by user :
- (Based on message-meaning rule)
That is, if believes the secret is shared with and sees , then believes once said Therefore, we achieve Goal 8.
7. Comparative Study Based on Security Features and Computational Overhead
7.1. Relative Security Analysis
Our comparative analysis of security features is based the popular features which need to be considered and the resistant against well-known attacks. Table 24 shows that our scheme overcomes the major attacks and provides more security.
Table 24.
Comparison of protocols based on security features.
7.2. Relative Performance Based on Computational Cost
The execution time as considered in [35,36], for the different cryptographic operation (performed by user and the gateway node with a computer system having windows 7 operating system, Intel (R) core (TM) 2 Quad CPU Q8300, @2.50 Hz processor, and 2 GB RAM) are listed in following Table 25. We assumed the time for executing a fuzzy extractor is the same as that for executing a hash function because the fuzzy extractor [27] can be constructed from universal hash functions or error-correcting codes requiring only lightweight operations.
Table 25.
Execution time on computer system for cryptographic operation.
The computational time and energy consumed by the various cryptographic operations (performed by MicaZ sensor node with 8-bit ATmega128L Atmel processor, 4 K bytes ROM, 128 K bytes ROM, 512 K bytes EEPROM, 2 AA battery with TinyOS [37] and nesC [38] programming language) are listed in following Table 26. The comparison of user authentication protocols based on computational cost is shown in Table 27. In the proposed protocol, the registration phase has computation costs millisecond and millisecond associated with and respectively; the authenticated session key establishment phase has computational costs millisecond, millisecond and millisecond associated with , and respectively. Similarly the computational cost for Das et al. [17], Choi et al. [21], Park et al. [22] and Moon et al.’s [23] schemes are evaluated, represented and compared in Table 27. This comparison indicates that the execution time for the sensor node is very less (because we shifted the overload of performance of elliptic curve point multiplication from sensor node to the gateway node with improved security features) in the proposed protocol. The energy consumption of the cryptographic operations on the sensor node is evaluated based on the following equation:
where current = 8 Milliampere and Voltage = 3.0 Volts for the micaZ sensor node with AA batteries. Therefore, the energy consumption for Das et al. [17], Choi et al. [21], Park et al. [22] and Moon et al.’s [23] schemes are , and respectively. For the proposed protocol the energy consumption is . The comparison of user authentication protocols based on energy consumption is shown in Table 28 which illustrate that the proposed protocol consumes less energy compared to other existing protocols. For the comparative analysis of communicational overhead, we assume that , message request , message response , encrypted message time-stamp , hash function and the point on elliptic curve take and 160 bits respectively. In our proposed protocol, during the authentication and session key establishment phase, the message requires bits, whereas the messages and require bits. As a result, the total communication overhead of our proposed protocol becomes 713 bits based on 3 communicated messages. For A.K.Das’s [17] protocol, in the login phase, the message requires bits, whereas in the authentication and key agreement phase, the messages and require and 352 bits, respectively. As a result, the total communication overhead of A.K.Das’s scheme becomes 832 bits. Similarly the communicational overhead for Choi et al. [21], Park et al. [22] and Moon et al.’s [23] schemes are evaluated, represented and compared in Table 29. The comparative analysis of Table 29 illustrates that the proposed protocol has less communication overhead (which saves communication energy and bandwidth) compared to other existing protocols.
Table 26.
Execution time and energy consumption on MicaZ sensor node for cryptographic operations.
Table 27.
Comparison of protocols based on computational cost.
Table 28.
Comparison of protocols based on energy consumption on sensor node .
Table 29.
Comparison of protocols based on communication overhead.
8. Comprehensive Analysis and Lessons Learnt
The security analysis of existing user authentication protocols of the literature demonstrates that the protocols are vulnerable to various attacks like user impersonation attack, sensor node impersonation attack and attacks based on legitimate users. The performance analysis illustrates that the existing protocols are inefficient considering the computational cost. Whereas, the comparative security and performance analysis indicate that our proposed protocol is secure against stolen smart card attack, user impersonation attack, sensor node impersonation attack, sensor node capture attack, replay attack, man-in-the-middle attack. The proposed authentication protocol provides various security features such as mutual authentication, three-factor authentication, secure password and biometric information update, confidentiality, integrity, freshness. The proposed protocol is efficient concerning the computational cost of the resource-constrained sensor nodes, and it saves communication energy, bandwidth. As a result, the protocol is appropriate for applications of resource-constrained ubiquitous computing devices. Therefore, the proposed protocol can be used in various real-world applications consisting of resource constraint sensor devices of WSNs and IoT where bio-metric based secure user authentication and efficient session key establishment is required. The proposed protocol can be used for the implementation of bio-metric based secure authentic banking and financial transactions using the smart card, automated teller machines (ATM), point-of-sale (POS) machines.
9. Conclusions and Future Work
In this paper, we have discussed the security issues involved with the sensor nodes of WSNs and performed the security analysis of various existing protocols of user authentication for WSNs. We have proposed an efficient user authentication, session key establishment protocol for WSNs and IoT using the smart card, fuzzy extractor, ECDH techniques. We have presented security proof using random oracle model and BAN logic to ensure the correctness of various security features involved in the proposed protocol. Afterwards, we have performed the security analysis and verification using well-known and robust tools such as AVISPA and Scyther. Through the precise security analysis using mathematical functions and simulation tools, we have demonstrated that the proposed protocol fulfills the desirable security requirements and withstands the security drawbacks found in existing protocols of user authentication for WSNs. Finally, we have presented the comparative analysis of our protocol with other existing protocols based on security features and computational overhead which justify that our proposed protocol is secure, efficient and suitable for WSNs/IoT. In future, we would like to propose hyper-elliptic curve cryptography based authenticated key exchange protocol suitable for WSNs and IoT.
Acknowledgments
This work was supported by IDRBT.
Author Contributions
The authors worked jointly in the security analysis and development of the proposed protocol.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Akyildiz, I.F.; Su, W.; Sankarasubramaniam, Y.; Cayirci, E. Wireless sensor networks: A Survey. Comput. Netw. 2002, 38, 393–422. [Google Scholar] [CrossRef]
- Ashton, K. That ‘Internet of Things’ Thing. In the real world, things matter more than ideas. RFID J. 2009. Available online: http://www.rfidjournal.com/articles/view?4986 (accessed on 27 October 2017).
- Benenson, Z.; Gartner, F.; Kesdogan, D. User authentication in sensor networks. In Proceedings of the Workshop Sensor Networks, Lecture Notes Informatics Proceedings Informatik, Ulm, Germany, 2004; pp. 385–389. [Google Scholar]
- Watro, R.; Kong, D.; Cuti, S.F.; Gardiner, C.; Lynn, C.; Kruus, P. TinyPK: Securing Sensor Networks with Public Key Technology. In ACM Workshop on Security of Ad Hoc and Sensor Networks; ACM Press: Washington, DC, USA, 2004; pp. 59–64. [Google Scholar]
- Benenson, Z.; Gedicke, N.; Raivio, O. Realizing robust user authentication in sensor networks. In Proceedings of the Workshop on Real-World Wireless Sensor Network (REALWSN’05), Stockholm, Sweden, 20–21 June 2005. [Google Scholar]
- Wong, K.H.; Zheng, Y.; Cao, J.; Wang, S. A dynamic user authentication scheme for wireless sensor networks. In Proceedings of the 2006 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing, Taichung, Taiwan, 5–7 June 2006; pp. 1–9. [Google Scholar]
- Tseng, H.R.; Jan, R.H.; Yang, W. An improved dynamic user authentication scheme for wireless sensor networks. In Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM’07), Washington, DC, USA, 26–30 November 2007; pp. 9869–9890. [Google Scholar]
- Lee, T.H. Simple Dynamic User Authentication Protocols for Wireless Sensor Networks. In Proceedings of the Second International Conference on Sensor Technologies and Applications, Cap Esterel, France, 25–31 August 2008; pp. 657–660. [Google Scholar]
- Ko, L.C. A Novel Dynamic User Authentication Scheme for Wireless Sensor Networks. In Proceedings of the IEEE International Symposium on Wireless Communication Systems (ISWCS ’08), Reykjavik, Iceland, 21–24 October 2008; pp. T608–T612. [Google Scholar]
- Vaidya, B.; Silva, J.S.; Rodrigues, J.J. Robust Dynamic User Authentication Scheme for Wireless Sensor Networks. In Proceedings of the 5th ACM Symposium on QoS and Security for Wireless and Mobile Networks (Q2SWinet 2009), Tenerife, Spain, 26–30 October 2009; pp. 88–91. [Google Scholar]
- Das, M.L. Two-factor user authentication in wireless sensor networks. IEEE Trans. Wirel. Commun. 2009, 8, 1086–1090. [Google Scholar] [CrossRef]
- Khan, M.K.; Alghathbar, K. Cryptanalysis and Security Improvements of “Two-factor User Authentication in Wireless Sensor Networks”. Sensors 2010, 10, 2450–2459. [Google Scholar] [CrossRef] [PubMed]
- Yuan, J.; Jiang, C.; Jiang, Z. A biometric-based user authentication for wireless sensor networks. Wuhan Univ. J. Nat. Sci. 2010, 15, 272–276. [Google Scholar] [CrossRef]
- Yoo, S.G.; Park, K.Y.; Kim, J. A Security-performance-balanced User Authentication Scheme for Wireless Sensor Networks. Int. J. Distrib. Sens. Netw. 2012, 8, 1–11. [Google Scholar] [CrossRef]
- 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]
- Jiang, Q.; Ma, J.; Lu, X.; Tian, Y. An efficient two-factor user authentication scheme with unlinkability for wireless sensor networks. Peer-to-Peer Netw. Appl. 2014. [Google Scholar] [CrossRef]
- Das, A.K. A secure and effective biometric-based user authentication scheme for wireless sensor networks using smart card and fuzzy extractor. Int. J. Commun. Syst. 2015. [Google Scholar] [CrossRef]
- Althobaiti, O.; Al-Rodhaan, M.; Al-Dhelaan, A. An efficient biometric authentication protocol for wireless sensor networks. Int. J. Distrib. Sens. Netw. 2013, 8, 1–13. [Google Scholar] [CrossRef]
- Sharaf-Dabbagh, Y.; Saad, W. On the Authentication of Devices in the Internet of Things. In Proceedings of the 17th International Symposium on A World of Wireless, Mobile and Multimedia Networks (WoWMoM), Coimbra, Portugal, 21–24 June 2016. [Google Scholar]
- Alizadeh, M.; Abolfazli, S.; Zamani, M.; Baharun, S.; Sakurai, K. Authentication in mobile cloud computing: A survey. J. Netw. Comput. Appl. 2016, 61, 59–80. [Google Scholar] [CrossRef]
- Choi, Y.; Lee, Y.; Won, D. Security improvement on biometric based authentication scheme for wireless sensor networks using fuzzy extraction. Int. J. Distrib. Sens. Netw. 2016, 12, 1–16. [Google Scholar] [CrossRef]
- Park, Y.; Park, Y. Three-factor user authentication and key agreement using elliptic curve cryptosystem in wireless sensor networks. Sensors 2016, 16, 2123. [Google Scholar] [CrossRef] [PubMed]
- Moon, J.; Lee, D.; Lee, Y.; Won, D. Improving Biometric-Based Authentication Schemes with Smart Card Revocation/Reissue for Wireless Sensor Networks. Sensors 2017, 17, 940. [Google Scholar] [CrossRef] [PubMed]
- Kocher, P.; Jaffe, J.; Jun, B. Differential power analysis. In Advances in Cryptology-CRYPTO 99, LNCS, Santa Barbara, California, USA, 15–19 August 1999; Springer: Berlin, Germany, 1999; Volume 1666, pp. 388–397. [Google Scholar]
- Stinson, D.R. Some observations on the theory of cryptographic hash functions. Des. Codes Cryptogr. 2006, 38, 259–277. [Google Scholar] [CrossRef]
- Miller, V.S. Use of elliptic curves in cryptography. In Advances in Cryptology-CRYPTO 85; Lecture Notes in Computer Sciences; Springer-Verlag New York, Inc.: New York, NY, USA, 1986; pp. 417–426. [Google Scholar]
- Dodis, Y.; Reyzin, L.; Smith, A. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. In Advances in Cryptology (Eurocrypt 04), Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin, Germany, 2004; pp. 523–540. [Google Scholar]
- Yoon, E.J.; Kim, C. Advanced biometric-based user authentication scheme for wireless sensor networks. Sens. Lett. 2013, 11, 1836–1843. [Google Scholar] [CrossRef]
- Chang, I.P.; Lee, T.F.; Lin, T.H.; Liu, C.M. Enhanced two-factor authentication and key agreement using dynamic identities in wireless sensor networks. Sensors 2015, 15, 29841–29854. [Google Scholar] [CrossRef] [PubMed]
- Cremers, C. Scyther-Semantics and Verification of Security Protocols. Ph.D. Thesis, Eindhoven University of Technology, Eindhoven, The Netherlands, 2006. [Google Scholar]
- AVISPA Tool. Available online: http://www.avispa-project.org/ (accessed on 11 July 2017).
- Bellare, M.; Rogaway, P. Random oracles are practical: A paradigm for designing efficient protocols. In Proceedings of the First Annual Conference Computer and Communications Security, Fairfax, VA, USA, 3–5 November 1993; pp. 62–73. [Google Scholar]
- Dolev, D.; Yao, A. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208. [Google Scholar] [CrossRef]
- Burrows, M.; Abadi, M.; Needham, R.M. A logic of authentication. Proc. R. Soc. Lond. 1989, 426, 233–271. [Google Scholar] [CrossRef]
- Mohit, P.; Amin, R.; Karati, A.; Biswas, G.; Khan, M.K. A standard mutual authentication protocol for cloud computing based health care system. J. Med. Syst. 2017, 41, 50. [Google Scholar] [CrossRef] [PubMed]
- Chiou, S.Y.; Ying, Z.; Liu, J. Improvement of a privacy authentication scheme based on cloud for medical environment. J. Med. Syst. 2016, 40, 1–15. [Google Scholar] [CrossRef] [PubMed]
- TinyOS: An Open-Source OS for the Networked Sensor Regime. Available online: http://www.tinyos.net/ (accessed on 13 July 2017).
- Gay, D.; Levis, P.; Von Behren, R.; Welsh, M.; Brewer, E.; Culler, D. The nesc language: A holistic approach to networked embedded systems. ACM SIGPLAN Not. 2003, 38, 1–11. [Google Scholar] [CrossRef]
- Lee, J.; Kapitanova, K.; Son, S. The price of security in wireless sensor networks. Comput. Netw. 2010, 54, 2967–2978. [Google Scholar] [CrossRef]
- Eastlake, D., 3rd; Jones, P. US Secure Hash Algorithm 1 (SHA 1). Available online: https://www.rfc-editor.org/rfc/rfc3174.txt (accessed on 25 October 2017).
- Liu, Z.; Wenger, E.; Johann, G. MoTE-ECC: Energy-scalable elliptic curve cryptography for wireless sensor networks. In Applied Cryptography and Network Security—ACNS 2014, LNCS, Proceedings of the 12th International Conference, ACNS 2014, Lausanne, Switzerland, 10–13 June 2014; Springer: Cham, Switzerland, 2014; Volume 8479, pp. 361–379. [Google Scholar]
© 2017 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).











