1. Introduction
With the recent advances in wireless sensor networks and embedded technologies, internet of things (IoT) connects objects and shares various useful data with internet through resource-constrained devices to provide convenient services for users such as smart home, healthcare, vehicle to everything and smart gird. However, a single server environment also is inefficient for IoT because an ocean of data is generated by resource-constrained devices such as microsensor, RFID tag and smart cards.
Cloud computing is a distributed computing mechanism for a large-scale data and allows sharing resources among all of the servers and users. The cloud computing provides five essential characteristics: on-demand self-services, ubiquitous network access, rapid elasticity, measured service and resource pooling [1,2]. On-demand self-service handles cloud services without human interaction and ubiquitous network access controls access service using standard protocols. Rapid elasticity and measured service optimize the resource usage. Resource pooling provides cloud service using homogeneous infrastructure among service users. The cloud computing deals with an ocean of data generated by devices and sensors and provides data managing service for users through these essential characteristics.
However, these services are vulnerable to potential attacks by malicious adversaries because they are provided through an open channel, including sensitive data of legitimate user about location, health, payment, etc. Therefore, a secure and efficient authentication for IoT environment has become essential security requirements to provide useful services to user.
In 1981, Lamport [3] proposed one factor user authentication scheme using passwords to ensure user’s privacy. However, security of the password based authentication scheme is easily broken because its security only relies on the passwords. In 2002, Chien et al. proposed two factor authentication scheme to overcome this security flaw using password and smart cards. However, their scheme is vulnerable to smart card stolen attack as the data stored in smart cards can be extracted by power analysis attacks [4]. When a malicious adversary obtains smart cards and password, they can perform various attacks such as impersonation, replay and insider attacks. To overcome the above-mentioned security weaknesses, three-factor authentication schemes have been proposed [5,6,7]. Biometrics (e.g., face, retina, fingerprint, iris, etc.) have several important characteristics: they cannot be lost or forgotten; they are hard to forge, copy, share or distribute; and they are difficult to guess.
In 2019, Pelaez et al. [8] demonstrated that the previous scheme is vulnerable to insider, off-line guessing and disclosure attacks and proposed enhanced IoT-based authentication scheme in cloud computing environment. This paper demonstrates that Pelaez et al.’s scheme does not withstand impersonation, session key disclosure and replay attacks. We also show that their scheme does not achieve secure mutual authentication and anonymity. Moreover, we propose a secure and lightweight three-factor authentication scheme for IoT in cloud computing environment to resolve these security weaknesses, considering computational costs.
1.1. Adversary Model
We present the Dolev–Yao (DY) model [9] to evaluate security of ours and previous schemes, which is widely accepted as security threat model. The detailed description of the DY model is as below:
1. A malicious adversary can modify, intercept, delete or insert the transmitted messages via an open channel. A malicious adversary can obtain or steal the smart card of legitimate user and can extract the data stored in the smart card by using power-analysis [4].
2. A malicious adversary can perform various attacks such as man-in-the-middle (MITM), replay, impersonation, and session key disclosure attack [10,11].
1.2. Our Contributions
Our contributions in this paper are as follows.
1. We demonstrate that Pelaez et al.’s scheme is not secure against various attacks such as impersonation, session key disclosure and replay attacks and does not achieve secure mutual authentication and anonymity.
2. We propose a secure and lightweight three-factor authentication scheme for IoT in cloud computing environment to address the security shortcomings of Pelaez et al.’s scheme. The proposed scheme withstands impersonation, session key disclosure, and replay attacks and achieve secure mutual authentication and anonymity. Moreover, the proposed scheme is more efficient than Pelaez et al.’s scheme because it utilizes only bitwise exclusive or (XOR) and hash operations.
3. We prove that the proposed scheme provides secure mutual authentication using the Burrows–Abadi–Needham (BAN) logic [12] and perform an informal security analysis to prove that our scheme is secure against various attacks such as MITM, impersonation, replay and session key disclosure attacks. Furthermore, we compare the security properties and performance of proposed protocol with other related schemes.
4. We perform a formal security analysis using the automated validation of internet security protocols and applications (AVISPA) simulation tool to prove that the proposed protocol resists the MITM and replay attacks.
1.3. Organization
We introduce the related works and review Pelaez et al.’s scheme in Section 2 and Section 3. In Section 4 and Section 5, we cryptanalyze Pelaez et al.’s scheme and propose a lightweight IoT-based three-factor authentication scheme in cloud computing environment to enhance the security shortcomings of Pelaez et al.’s scheme. Section 6 and Section 7 prove the security of proposed scheme and present the simulation analysis using AVISPA. In Section 8, we compare the security properties and performances of proposed protocol with other related schemes. Finally, Section 9 concludes the paper.
2. Related Works
In last few decades, numerous authentication and key agreement schemes have been proposed to ensure privacy of user, considering resource-constrained environments such as wireless sensor networks, global mobility networks and vehicular networks [3,13,14,15,16,17,18,19]. In 1981, Lamport [3] firstly proposed a lightweight password based user authentication scheme to provide secure communication. However, Lamport’s scheme has low security level because its security only relies on passwords. In 2002, Chien et al. [13] presented a two-factor user authentication protocol using smart card and password to resolve this problem. Unfortunately, the two-factor authentication schemes using password and smart cards cannot ensure user’s privacy [13,14,15,16,17,18,19], when the data stored in token (e.g., smart card, mobile device, etc.) are compromised.
Later, several authentication and key agreement schemes for IoT have been presented in various fields [20,21,22]. However, these environments are not suitable for IoT because it cannot handle a large number of data. In 2019, Zhou et al. [23] presented a lightweight IoT-based authentication scheme in cloud computing environment to overcome this issue. Zhou et al. claimed that their scheme can prevent various attacks such as insider, forgery and tracking attacks and provide secure mutual authentication and session key security. However, in 2019, Pelaez et al. [8] pointed out that Zhou et al.’s scheme [23] cannot withstand insider, off-line guessing and session key disclosure attacks and provide secure mutual authentication. To resolve these security problems, Pelaez et al. [8] presented a lightweight IoT-based authentication scheme in cloud computing environment. They also claimed that their scheme is secure against off-line password guessing, insider, impersonation and replay attacks.
3. Review of Pelaez et al.’s Scheme
We briefly review Pelaez et al.’s IoT based authentication scheme in cloud computing environment. Their scheme comprises of three processes: registration, authentication, and password change. These processes are presented as below (for details, see [8]).
3.1. User Registration Process
In Pelaez et al.’s scheme, a new userUiis registered from control serverCS via a secure channel. Figure 1 shows the user registration process of Pelaez et al.’s scheme. In Figure 1,Uisends the registration request toCSand thenCSissues the smart cards.
3.2. Cloud Server Registration Process
In Pelaez et al.’s scheme, a cloud serverSjis registered from control serverCS via a secure channel. Figure 2 shows the cloud server registration process of the Pelaez et al.’s scheme. In Figure 2,Sjsends the registration request toCSand thenCSsends parametersB2andB3toSj.
3.3. Login Process
WhenUiwants to access the service,Uifirstly sends login request message toSj . In Figure 3,Uisends login request messages{TUnew,D1,PIDi,D2}toSj, and thenSjsends the messages{TUnew,D1,PIDi,D2,TSnew,D3,PSIDj,D4,D5}toCSin order to check validation ofUi.
3.4. Authentication Process
After finishing the login process,Ui,SjandCSperform mutual authentication with each entity, and thenUiandSjcan share the session keySKU−S . Figure 4 shows the authentication process of the Pelaez et al.’s scheme.
4. Cryptanalysis of Pelaez et al.’s Scheme
In this section, we demonstrate that Pelaez et al.’s scheme does not resist replay, session key disclosure and impersonation attacks and show that their scheme does not achieve secure mutual authentication and anonymity.
4.1. Impersonation Attack
The impersonation attack is that a malicious adversary try to impersonate as a legitimate user. When a malicious adversaryUMAmay attempt to impersonate a legal user,UMAcan easily generate the login request message ofUi . According to Section 1.1,UMAcan obtain smart card ofUiand can extract the data{PIDi,C2,C3,C4,h(nU)}stored in smart card. Furthermore,UMAintercepts the message transmitted via an open channel. Finally,UMAperforms the impersonation attack as below:
Step 1:
A malicious adversaryUMAcan compute real identityIDi=C2⊕D1of legitimate userUiandh(nUnew)=D2⊕C3⊕h(TMAnew||IDi). Then,UMAgenerates timestampTMAnewand random noncenMAnew, computesD2MA=C3⊕h(TMAnew||IDi)⊕h(nMAnew), and sends{TMAnew,D1,PIDi,D2MA}to theSj.
Step 2:
Upon getting the message fromUMA, theSjgenerates random noncesTSnewandnSnewand computesD3=B2⊕SIDj,D4=B3⊕h(TSnew||SIDj)⊕h(nSnew)andD5=h(PIDi||TMAnew||SIDj||PSIDj||TSnew). Then, theSjsends{TMAnew,D1,PIDi,D2MA,TSnew,D3,PSIDj,D4,D5}to theCS.
Step 3:
Upon getting the message fromSj, theCScomputesC2∗=h(PIDi∗||h(IDCS||x)||h(IDCS ||y))∗⊕h(IDCS||x)⊕h(IDCS||y),IDi∗=h(PIDi∗||h(IDCS||x)||h(IDCS ||y))∗⊕h(IDCS||x)⊕h(IDCS||y)⊕D1andC1∗=h(IDi∗||PIDi). Then, theCSchecks whetherC1∗=?C1. If it is valid, theCSauthenticatesUMA. Then, theCScomputesh(nMAnew)∗=h(IDi∗||PIDi∗||h(IDCS||x)||h(IDCS ||y))∗⊕PIDi∗⊕h(x||y)⊕h(TMAnew||IDi∗ )∗⊕D2. After that, theCScomputesSIDj∗=h(PSIDj∗||h(IDCS||z)||h(IDCS ||y))∗⊕h(IDCS||z)⊕h(IDCS||y)⊕D3andB1∗=h(SIDj∗||PSIDj∗). Then, theCSchecks whetherB1∗=?B1. If it is valid, theCSauthenticateSj. After that, theCSrecoversh(nSnew)∗=h(SIDj∗||PSIDj∗||h(IDCS||z)||h(IDCS ||y))∗⊕PSIDj∗⊕h(z||y)⊕h(TSnew||SIDj∗)⊕D4. Then, theCScomputesD5∗=h(PIDi∗||TMAnew||SIDj∗||PSIDj∗||TSnew )∗and checks whetherD5∗=?D5. If it is valid, theCShave evidence of the connection attempt betweenUMAandSj. To key agreement and mutual authentication, theCSgenerates a random noncenCSnewand computes the session keySKMA−S=h(h(nMAnew)⊕h(nSnew)⊕h(nCSnew||TCSnew)). Then, theCScomputesD6=B2⊕h(TSnew||SIDj)⊕TCSnew,D7MA=h(nCSnew||TCSnew)⊕h(SIDj||TCSnew)⊕h(nMAnew),D8MA=C2⊕h(TMAnew||IDi)⊕TCSnew,D9=h(nCSnew||TCSnew)⊕h(IDi||TCSnew)⊕h(nSnew),D10MA=ESK(h(nCSnew)⊕h(SIDj||PSIDj||B2))andD11MA=ESK(h(nCSnew)⊕h(IDi||PIDi||C2)). Finally, theCSsends{D6,D7MA,D10MA,D8MA,D9,D11MA}to theSj.
Step 4:
Upon getting the message fromCS, theSjcomputesTCSnew∗=B2⊕h(TSnew||SIDj)⊕D6,h(nCSnew||TCSnew )∗⊕h(nMAnew)∗=h(SIDj||Tcsnew)⊕D7MA,SKU−S∗=h(h(nMAnew)∗⊕h(nSnew)⊕h(nCSnew||TCSnew)∗)and decryptsDSK∗(D10MA)=h(nCSnew)⊕h(SIDj||PSIDj||B2)=h(nCSnew)∗. After that, theSjsends{D6,D7MA,D10MA,D8MA,D9,D11MA}to theUMA.
Step 5:
Upon getting the messages fromSj, theUMAcomputesTCSnew∗=C2⊕h(TMAnew||IDi)⊕D8MA,h(nCSnew||TCSnew )∗⊕h(nSnew)∗=h(IDi||TCSnew)⊕D9,SKMA−S∗=h(h(nUnew)⊕h(nSnew)∗⊕h(nCSnew||TCSnew)∗)and decryptsDSK∗(D11MA)=h(nCSnew)⊕h(IDi||PIDi||C2)=h(nCSnew)∗. For mutual authentication withSj, theUMAcomputesM9MA={ESK(h(nCSnew||serverValue(challenge)))}and sendsM9MAto theSj.
Step 6:
Upon getting the messages fromUMA, theSjcomputesDSK(M9MA)=h(nCSnew)∗||serverValue(challenge))and checks whetherh(nCSnew)∗=?h(nCSnew). Finally, theSjcomputesM10MA={ESK(serverValue(h(nCSnew)||TCSnew))}and sendsM10MAto theUMA.
Step 7:
Upon getting the messages fromSj, theUMAcomputesDSK(M10MA)=serverValue(h(nCSnew)||TCSnew)=h(nCSnew||TCSnew )∗and checks whetherh(nCSnew||TCSnew )∗=?h(nCSnew||TCSnew).
UMAcan successfully generates the login request message and session key betweenUMAandSj. As a result, we show that Pelaez et al.’s scheme cannot withstand impersonation attack.
4.2. Session Key Disclosure Attack
The session key disclosure attack is that a malicious adversary can obtain the session key betweenUiandSj. Pelaez et al. claimed that their scheme can ensure security of session key because a malicious adversary cannot obtain random noncenUnew,nSnew,nCSnewand current timestampTCSnew . However, according to Section 1.1, a malicious adversaryUMAcan extract the data{PIDi,C2,C3,C4,h(nU)}stored in the smart card and can obtain the transmitted messagesD1,D2,TUnew,D8,D9via an open channel. Therefore, a malicious adversaryUMAcan easily compute session keySKU−S∗=h(h(nUnew)∗⊕h(nSnew)⊕h(nCSnew||TCSnew)∗).
4.3. Replay Attack
Replay attack is that a malicious adversary try to obtain sensitive messages of user using the messages transmitted in previous and current session. Pelaez et al. claimed that their scheme can resist replay attack because a malicious adversaryUMAcannot obtain random nonce and timestamp. However,UMAcan calculate the random nonce and timestamp of legitimate user correctly. According to 4.1,UMAalso impersonates a legitimate userUi. Therefore,UMAcan obtainnUnew,nSnewandnCSnewand timestampTUnew,TSnewandTCSnew. As a result, Pelaez et al.’s scheme does not withstand replay attack.
4.4. Mutual Authentication
Pelaez et al claimed that their protocol allows secure mutual authentication among the userUi, the cloud serverSj, and the control serverCS . However, according to Section 3.1, their protocol does not withstand to impersonation attack, as a malicious adversaryUMAcan successfully generate authentication request messageD2=C3⊕h(TUnew||IDi)⊕h(nUnew). Therefore, Pelaez et al.’s scheme does not achieve secure mutual authentication.
4.5. Anonymity
Pelaez et al claimed that a malicious adversaryUMAcannot obtain the real identityIDi of legitimate user. However, according to Section 1.1, a malicious adversaryUMAcan extract the secret parameterC2stored in the smart card and can intercept the transmitted messageD1via an open channel.UMAcan also computeIDi=C2⊕D1and easily obtain real identity of legitimate userUi. Therefore, Pelaez et al.’s scheme does not guarantee anonymity.
5. Proposed Scheme
In this section, we propose a secure and lightweight three-factor authentication scheme for IoT in cloud computing environment to enhance security drawbacks of Pelaez et al.’s scheme. The proposed scheme consists of three processes: registration, login and authentication, and password change. The details of each process are presented below.
5.1. User Registration Process
A new userUiwho requests the use of the IoT services must register with control serverCS . Figure 5 shows the user registration process of proposed scheme and the detailed processes are as below.
Step 1:
TheUiselectsIDiandPWiand imprints biometricBIOi. After that,Uicomputes〈Ri,Pi〉=Gen(BIOi),RPWi=h(PWi||Ri)and sends messages{IDi,RPWi}to control serverCSvia a secure channel.
Step 2:
After getting the messages fromUi, theCSgenerates a random nonceS1and computesRIDi=h(IDi||h(S1||KS)),Xi=h(RIDi||KS||S1),Ai=Xi⊕h(RIDi||RPWi), andBi=h(Xi||RPWi). Then, theCSstores{S1},{Ai,Bi}in a database and smart card, respectively. TheCSsends{RIDi}and issues smart card toUivia a secure channel.
Step 3:
After getting the message and smart card fromCS, theUicomputesQi=h(IDi||PWi||Ri)⊕RIDiand stores{Qi}in a smart cardSC.
5.2. Cloud Server Registration Process
A cloud serverSjmust register with the control serverCS to provide IoT service to the users. Figure 6 shows the cloud server registration process of proposed scheme and the detailed processes are as below.
Step 1:
The cloud serverSjselectsSIDjand generates a random noncerj. After that, theSjsends messages{SIDj,rj}to theCSvia a secure channel.
Step 2:
After getting the messages, theCSgenerates a random nonceS2and computesRSIDj=h(SIDj||rj||KS)andSIj=h(RSIDj||h(S2||KS)). Then, theCSstores{S2}in a database and sends messages{RSIDj,SIj}to theSjvia a secure channel.
Step 3:
After getting the messages, theSjstores{RSIDj,SIj}in a database.
5.3. Login and Authentication Process
A userUiwho requests access to IoT service must send a login request message to theCS . Figure 7 shows the login and authentication process of the proposed scheme. The detailed process is as below.
Step 1:
TheUiinputsIDi,PWiand imprints biometricBIDi. Then, theUicalculatesRi=Rep(BIOi,Pi),RIDi=h(IDi||PWi||Ri)⊕Qi,RPWi=h(PWi||Ri),Xi=Ai⊕h(RIDi||RPWi)andBi∗=h(Xi||RPWi). TheUichecks whetherBi∗=?Bi. If it is correct, theUigenerates a random nonceRUi. After that, theUicomputesM1=RUi⊕Xi,CIDi=IDi⊕h(Xi||RUi)andM2=h(IDi||Xi||RUi)and sends login request messages{M1,M2,CIDi,RIDi}to theSjvia an open channel.
Step 2:
Upon getting the messages from theUi, theSjgenerates a random nonceRSjand computesD1=SIj⊕RSj,CSIDj=SIDj⊕h(SIj||RSj)andD2=h(SIDj||SIj||RSj). Then, theSjsends the messages{M1,M2,CIDi,RIDi,D1,D2,CSIDj,RSIDj}to theCSvia an open channel.
Step 3:
Upon getting the messages from theSj, theCScomputesXi=h(RIDi||KS||S1),RUi=M1⊕Xi,IDi=CIDi⊕h(Xi||RUi), andM2∗=h(IDi||Xi||RUi)and checks whetherM2∗=?M2. If it is correct, theCScomputesSIj=h(RSIDj||h(S2||KS)),RSj=h(D1)⊕SIj,SIDj=CSIDj⊕h(SIj||RSj), andD2∗=h(SIDj||SIj||RSj)and checks whetherD2∗=?D2. If it is valid, theCScomputesM3=RSj⊕h(IDi||RUi),D3=RUi⊕h(SIDj||RSj)andQCS=h(RUi||RSj||SIj). Then, theCSupdatesRIDitoRIDinewand replaces{RIDi}with{RIDinew}. Finally, theCSsends messages{M3,D3,QCS}to theSj.
Step 4:
Upon getting the messages from theCS, theSjcomputesRUi=D3⊕h(SIDj||RSj)andQCS∗=h(RUi||RSj||SIj)and checks whetherQCS∗=?QCS. If it is valid, theSjcomputesSKi=h(RUi||RSj)andQCU=h(RUi||RSj||SKi)and sends messages{M3,QCU}to theUi.
Step 5:
Upon getting the messages from theSj, theUicomputesRSj=M3⊕h(IDi||RUi),SKi=h(RUi||RSj)andQCU∗=h(RUi||RSj||SKi)and checks whetherQCU∗=?QCU. If it is correct, theUicomputesRIDinew=h(RIDi||h(RUi||RSj))andRIDitoRIDinew. After that, the smart card updatesAinew=Xi⊕h(RIDinew||RPWi) andQinew=h(IDi||PWi||Ri)⊕RIDinewand replaces{Ai,Qi}with{Ainew,Qinew}. As a result, theUi,SjandCSachieve the mutual authentication successfully.
5.4. Password Change Process
WhenUiwants to update his/her password, theUi can freely update their password in the proposed scheme. Figure 8 shows the password change process of the proposed scheme. The detailed process is as below.
Step 1:
TheUichoosesIDi∗,PWi∗and imprints biometricsBIOi∗. Then, theUicalculates〈Ri,Pi〉=Gen(BIOi∗),RPWi∗=h(PWMU||Ri)and sends{IDMU∗,RPWi∗}to the smart cardSC.
Step 2:
After getting the message fromUi, theSCcomputesXi∗=Ai∗⊕h(IDi∗||RPWi∗)andBi∗=h(Xi∗||RPWi∗)and checks whetherBi∗=?Bi. If it is equal, theSCsends the authentication message to theUi.
Step 3:
Upon getting the message from theSC, theUiinputs a new passwordPWinewand imprints a new biometricsBIOinew.Uicomputes〈Rinew,Pinew〉=Gen(BIOinew),RPWinew=h(PWinew||Rinew)and sends{RPWinew}to theSC.
Step 4:
Upon getting the message from theUi, theSCcomputesAinew=Xi∗⊕h(IDi∗||RPWinew),Binew=h(Xi∗||RPWinew)and replaces{Ai,Bi}with{Ainew,Binew}.
6. Security Analysis
To assess secure mutual authentication of the proposed scheme, we utilize the BAN logic, which is widely accepted formal security model. Furthermore, we perform an informal security analysis to assess the safety of proposed scheme against various types of attacks.
6.1. Informal Security Analysis
The security of the proposed scheme is accessed utilizing an informal security analysis. Our scheme can withstand against various types of attacks, including impersonation, replay, session key disclosure attacks, and allows secure mutual authentication and anonymity.
6.1.1. Impersonation Attack
When a malicious adversaryUMAmay attempt to impersonate a legitimate user,UMAmust generate a login request messageM2=h(IDi||Xi||RUi)correctly. However,UMAcannot compute it becauseUMAcannot obtainUi’s random nonceRUi, real identityIDi, and secret parameterXi. Therefore, our scheme is secure against the impersonation attack becauseUMAcannot calculate a login request message successfully.
6.1.2. Replay Attack
If a malicious adversaryUMAmay attempt to impersonate legal user by resending messages transmitted in a previous session,UMAcannot utilize the previous messages because theCSchecks whetherM2∗=?M2andD2∗=?D2, respectively. Furthermore, our scheme can withstand replay attack by using dynamic random nonceRUiandRSjthat are changed every session. Therefore, our scheme protects against replay attack.
6.1.3. Session Key Disclosure Attack
In our scheme, a malicious adversaryUMAcannot compute session keySKibecauseUMAcannot obtain random nonceRUiandRSj. In addition,UMAcannot obtain random nonceRUiandRSjwithout secret parameterXiandSIj. Consequently, our scheme withstands the session key disclosure attack.
6.1.4. Smart card Stolen Attack
According to Section 1.1, we suppose that aUMAcan obtain a smart card and extract the data{Ai,Bi,Qi}stored in the smart card. However, theUMAcannot obtain sensitive informationIDiandPWiof legitimate user because the data stored in the smart card are protectedAi=Xi⊕h(RIDi||RPWi),Bi=h(Xi||RPWi)andQi=h(IDi||PWi||Ri)⊕RIDiby using a hash function and XOR operation.
6.1.5. Mutual Authentication
In our scheme, after getting the request message{M1,M2,CIDi,RIDi}from theUi, the control serverCSchecks whetherM2∗=?M2. If it is correct,CSauthenticatesUi. After getting the messages{D1,D2,CSIDj,RSIDj}from cloud serverSj, theCSchecks whetherD2∗=?D2. If it is equal,CSauthenticatesSj. After getting the messages{M3,D3,QCS}from theCS, theSjchecks whetherQCS∗=?QCS. If it is correct,SjauthenticatesCS. After getting the messages{QCU}from theSj, theUichecks whetherQCU∗=?QCU. Finally, theUiauthenticatesSj. As a result, our scheme achieve secure mutual authentication amongUi,Sj, andCSbecause a malicious adversaryUMAdoes not know secret parametersXiandSIj.
6.1.6. Anonymity
A malicious adversaryUMAcannot obtain the real identityIDiof legitimate user because it is masked by using hash function and XOR operation such asCIDi=IDi⊕h(Xi||RUi). In addition, theUMAcannot obtain secret parameterXiand random nonceRUi. Consequently, our scheme provides anonymity.
6.2. Security Features
We shows the better security levels achieved by the proposed scheme compared with some existing schemes [8,23,24,25]. The existing schemes are insecure against various attacks, including impersonation, session key disclosure smart card stolen, and replay attacks and cannot provide mutual authentication and anonymity. Table 1 shows the analysis results of the security features.
6.3. BAN Logic Based Authentication Proof
We performed security analysis utilizing the BAN logic to demonstrate the secure mutual authentication of the proposed scheme. We present the BAN logic notations in Table 2. Furthermore, we define the rules, the goals, the idealized form, and the assumptions for BAN logic analysis. We prove that the proposed scheme provides secure mutual authentication amongUi,SjandCS.
6.3.1. BAN Logic Rules
The rules of BAN logic are as below.
1. Message meaning rule:
A|≡A↔KB,A⊲XKA≡B∼X
2. Nonce verification rule:
A≡#(X),A≡B|∼XA≡B≡X
3. Jurisdiction rule:
A≡B⟹X,A≡B≡XA|≡X
4. Freshness rule:
A|≡#(X)A|≡#X,Y
5. Belief rule:
A|≡X,YA|≡X.
6.3.2. Goals
To assess the BAN logic proof, we present the goals of the proposed scheme as below.
Goal 1:
Ui∣≡(Ui⟷SKSj)
Goal 2:
Sj∣≡(Ui⟷SKSj)
Goal 3:
Ui∣≡Sj∣≡(Ui⟷SKSj)
Goal 4:
Sj∣≡Ui∣≡(Ui⟷SKSj)
6.3.3. Idealized Forms
To assess the BAN logic proof, we define the assumptions of the proposed scheme as below.
Msg1:
Ui→Sj:(RIDi,IDi,RUi)Xi
Msg2:
Sj→CS:(RIDi,IDi,RUi,RSIDj,SIDj,RSj)SIj
Msg3:
CS→Sj:(IDi,SIDj,RUi,RSj)SIj
Msg4:
Sj→Ui:(IDi,RUi,RSj,(Ui⟷SKSj))Xi
6.3.4. Assumptions
We present the initial assumptions to assess the BAN logic proof.
A1:
Sj∣≡(Ui⟷XiSj)
A2:
Sj∣≡#(RUi)
A3:
CS∣≡(CS⟷SIjSj)
A4:
CS∣≡#(RSj)
A5:
Sj∣≡(CS⟷SIjSj)
A6:
FA∣≡#(RSj)
A7:
Ui∣≡(Ui⟷XiSj)
A8:
Ui∣≡#(RSj)
A9:
Ui∣≡Sj⇒(Ui⟷SKSj)
A10:
Sj∣≡Ui⇒(Ui⟷SKSj)
6.3.5. Proof Using BAN Logic
The proof then proceeds as below.
Step 1:
According toMsg1, we could get
(S1):Sj⊲(RIDi,IDi,RUi)Xi
Step 2:
Using the message meaning rule withS1andA1, we get
(S2):Sj∣≡Ui∣∼(RIDi,IDi,RUi)Xi
Step 3:
From the freshness rule withS2andA2, we obtain
(S3):Sj∣≡#(RIDi,IDi,RUi)Xi
Step 4:
Using the nonce verification withS2andS3, we get
(S4):Sj∣≡Ui∣≡(RIDi,IDi,RUi)Xi
Step 5:
From the belief rule withS4, we obtain
(S5):Sj∣≡Ui∣≡(RUi)Xi
Step 6:
According toMsg2, we could get
(S6):CS⊲(RIDi,IDi,RUi,RSIDj,SIDj,RSj)SIj
Step 7:
Using the message meaning rule withS6andA3, we get
(S7):CS∣≡Sj∣∼(RIDi,IDi,RUi,RSIDj,SIDj,RSj)SIj
Step 8:
From the freshness rule withS7andA4, we obtain
(S8):CS∣≡#(RIDi,IDi,RUi,RSIDj,SIDj,RSj)SIj
Step 9:
Using the nonce verification rule withS7andS8, we get
(S9):CS∣≡Sj∣≡(RIDi,IDi,RUi,RSIDj,SIDj,RSj)SIj
Step 10:
According toMsg3, we could get
(S10):Sj⊲(IDi,SIDj,RUi,RSj)SIj
Step 11:
Using the message meaning rule withS10andA5, we get
(S11):Sj∣≡CS∣∼(IDi,SIDj,RUi,RSj)SIj
Step 12:
From the freshness rule withS11andA6, we obtain
(S12):Sj∣≡#(IDi,SIDj,RUi,RSj)SIj
Step 13:
Using the nonce verification rule withS11andS12, we get
(S13):Sj∣≡CS∣≡(IDi,SIDj,RUi,RSj)SIj
Step 14:
According toMsg4, we could get
(S14):Ui⊲(IDi,RUi,RSj,(Ui⟷SKSj))Xi
Step 15:
Using the message meaning rule withS14andA7, we get
(S15):Ui∣≡Sj∣∼(IDi,RUi,RSj,(Ui⟷SKSj))Xi
Step 16:
From the freshness rule withS15andA8, we obtain
(S16):Ui∣≡#(IDi,RUi,RSj,(Ui⟷SKSj))Xi
Step 17:
Using the nonce verification withS15andS16, we get
(S17):Ui∣≡Sj∣≡(IDi,RUi,RSj,(Ui⟷SKSj))Xi
Step 18:
From the belief rule withS17, we obtain
(S18):Ui∣≡Sj∣≡(Ui⟷SKSj)(Goal3)
Step 19:
Using the jurisdiction rule withS18andA9, we get
(S19):Ui∣≡(Ui⟷SKSj)(Goal1)
Step 20:
Because ofSK=h(RUi||RSj), from theS5,S9,S13andS17we could get
(S20):Sj∣≡Ui∣≡(Ui⟷SKSj)(Goal4)
Step 21:
Using the jurisdiction rule withS19andA10, we obtain
(S21):Sj∣≡(Ui⟷SKSj)(Goal2)
Referring to Goals 1–4, we show that proposed scheme achieves secure mutual authentication amongUi,SjandCS.
7. Simulation for Security Verification with the AVISPA tool
We performed a formal security verification of the proposed scheme utilizing AVISPA simulation tool [26,27] to evaluate the safety of the authentication protocol against MITM and replay attacks, which is widely accepted for formal security analysis [28,29,30,31]. To perform AVISPA simulation tool, the environment and the session of security protocol must be implemented using the High Level Protocols Specification Language (HLPSL).
7.1. HLPSL Specifications
We considered three basic roles: userUi, cloud serverSj, and control serverCS. Then, we presentsessionandenvironment utilizing HLPSL in Figure 9, which contains the security goals. The role specifications ofUi,Sj, andCS are as shown in Figure 10, Figure 11 and Figure 12.
TheUireceives the initial message and updates the updates the state value from 0 to 1. TheUithen sends the registration request messages{IDi,RPWi}to theCSvia a secure channel and receives{RIDi,Smartcard}from theCS. TheUiupdates the state value from 1 to 2. In the login and authentication phase, theUideclareswitness(UA,CS,ua_sn_rui,RUi′)from theSj, and then updates the state value from 2 to 3. Finally, theUireceives the authentication messages{M3,QCU}from theSj. TheUichecks whetherQCU∗=?QCU. If it is valid, theUiauthenticates theSjsuccessfully. The role specification forSjis similarly defined.
7.2. AVISPA Simulation Result
We show the AVISPA results to verify the safety of the proposed scheme using OFMC and CL-AtSe. The OFMC checks whether the proposed scheme is safe from MITM attack. In addition, the CL-AtSe demonstrates the safety of the protocol against replay attack. Consequently, Figure 13 shows that the proposed scheme is secure against MITM and replay attacks though AVISPA simulation.
8. Performance Analysis
We compared the computation cost, communication cost and security features of the proposed scheme with some existing schemes [8,23,24,25]. We show that the proposed scheme provides better efficiency and security features.
8.1. Computation Cost
We compared the computation overheads of the proposed scheme with some existing schemes [8,23,24,25]. To analyze of computation cost, we estimated using the following parameters. Table 3 shows the analysis results of computation cost and the detailed total cost are as below.
The total computation cost for the proposed scheme and Pelaez et al.’s scheme are 34Thand 48Th+ 8Ts, respectively. We provide better efficiency than some existing schemes because the proposed scheme uses only hash and XOR operations. Therefore, our scheme is secure and efficient for practical IoT-based cloud computing environment.
1. Thdenotes the time for the hash function (Case 1≈0.00517 ms [23] and Case 2≈0.0000328 ms [32]).
2. Tsdenotes the time for the symmetric key cryptography operation using AES algorithm (case 1≈0.02148 ms [23] and Case 2≈0.0214385 ms [32]).
3. The XOR operation was not included because it is negligible compared to the other operations.
8.2. Communication Cost
We compared the communication overhead of the proposed scheme with some existing schemes [8,23,24,25]. In authentication phase of the proposed scheme, the transmitted messages{M1,M2,CIDi,RIDi},{M1,M2,CIDi,RIDi,D1,D2,CSIDj,RSIDj},{M3,D3,QCS}and{M3,QCU} require (128 + 128 + 128 + 128 = 512 bits), (128 + 128 + 128 + 128 + 128 + 128 + 128 + 128 = 1024 bits), (128 + 128 + 128 = 384 bits), and (128 + 128 = 256 bits), respectively. Table 4 shows the analysis results of communication cost. Consequently, the proposed scheme is thus more efficient than other related schemes [8,23,24,25] because the total communications cost are 2176 bits (Case 1) and 4352 bits (Case 2).
1. Case 1 defines that the pseudo-identity, random nonce, timestamp, identity, password, and hash function are 128 bits, respectively.
2. Case 2 defines that the pseudo-identity, random nonce, timestamp, identity, password, and hash function are 256 bits, respectively.
3. The block length for symmetric encryption is 128 bits.
9. Conclusions
This paper shows that Pelaez et al.’s scheme does not defend various attacks such as impersonation, session key disclosure and replay attacks. Furthermore, we show that Pelaez et al.’s scheme cannot allow mutual authentication and anonymity. We propose a secure and lightweight three-factor authentication scheme for IoT in cloud computing environment to enhance the security drawbacks of Pelaez et al.’s scheme. Our scheme can withstand various types of attacks, including impersonation, session key disclosure and replay attacks, and can provide mutual authentication and anonymity. Then, we demonstrate that our scheme allows secure mutual authentication amongUi,Sj, andCSutilizing BAN logic analysis. We also performed a formal security verification analysis of the proposed scheme utilizing the AVISPA simulation tool. In addition, we compared the security features and performance of the proposed scheme with some existing schemes. We show that our scheme provides better safety and efficiency than related schemes. Therefore, our scheme can be suitable for practical IoT-based cloud computing environment because it is more secure and lightweight than the previous schemes.
[Image omitted. See PDF.]."]
[Image omitted. See PDF.]."]
[Image omitted. See PDF.]."]
[Image omitted. See PDF.]."]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
[Image omitted. See PDF.]
Security Features | Xue et al. [24] | Amin et al. [25] | Zhou et al. [23] | Pelaez et al. [8] | Ours |
---|---|---|---|---|---|
Impersonation attack | × | × | × | × | ∘ |
Smart card stolen attack | × | × | ∘ | × | ∘ |
Session key disclosure attack | × | ∘ | × | × | ∘ |
Replay attack | ∘ | ∘ | × | × | ∘ |
Anonymity | × | ∘ | ∘ | × | ∘ |
Mutual authentication | × | ∘ | × | × | ∘ |
∘, preserves the security features; ×, does not preserve the security features;
Notation | Description |
---|---|
A|≡X | Abelieves statement X |
#X | Statement X is fresh |
A⊲X | Asees statement X |
A|∼X | A once said X |
A⇒X | A has got jurisdiction of X |
<X>Y | X is combined with Y |
{X}K | X is encrypted under key K |
A↔KB | A and B may use shared key K to communicate |
SK | Session key used in the current session |
Schemes | User | Cloud Server | Control Server | Total | Total Cost (Case 1) | Total Cost (Case 2) |
---|---|---|---|---|---|---|
Xue et al. [24] | 12Th | 6Th | 18Th | 36Th | 0.18612 ms | 0.0011808 ms |
Amin et al. [25] | 12Th | 4Th | 14Th | 30Th | 0.1551 ms | 0.000984 ms |
Zhou et al. [23] | 13Th | 7Th | 23Th | 43Th | 0.22231 ms | 0.0014104 ms |
Pelaez et al. [8] | 9Th+3Ts | 6Th+3Ts | 33Th+2Ts | 48Th+8Ts | 0.42 ms | 0.1730824 ms |
Ours | 12Th | 6Th | 16Th | 34Th | 0.17578 ms | 0.0011152 ms |
Th, hash function; Ts, symmetric key cryptography operation using AES algorithm
Schemes | Message Length | Total Cost (Case 1) | Total Cost (Case 2) |
---|---|---|---|
Xue et al. [24] | 30 | 3840 bits | 7680 bits |
Amin et al. [25] | 27 | 3456 bits | 6912 bits |
Zhou et al. [23] | 34 | 4352 bits | 8704 bits |
Pelaez et al. [8] | 34 | 4352 bits | 8704 bits |
Ours | 25 | 2176 bits | 4352 bits |
Author Contributions
Conceptualization, S.Y.; software, S.Y. and K.P.; validation, K.P.; formal analysis, K.P.; writing—original draft preparation, S.Y.; writing—review and editing, K.P. and Y.P.; supervision, Y.P.
Funding
This work was supported by the Basic Science Research Program through the National Research Foundation of Korea funded by the Ministry of Science, ICT and Future Planning under Grant 2017R1A2B1002147 and in part by the BK21 Plus project funded by the Ministry of Education, Korea under Grant 21A20131600011.
Conflicts of Interest
The authors declare no conflict of interest.
1. Effectively and Securely Using the Cloud Computing Paradigm (v0.25). Available online: http://csrc.nist.gov/groups/SNS/cloud-computing (accessed on 5 August 2019).
2. Grobauer, B.; Walloscheck, T.; Stocker, E. Understanding cloud computing vulnerabilities. IEEE Secur. Priv. 2011, 9, 50–57.
3. Lamport, L. Password authentication with insecure communication. Commun. ACM 1981, 24, 770–772.
4. Kocher, P.; Jaffe, J.; Jun, B. Differential power analysis. In Advances in Cryptology; Springer: Berlin, Germany, 1999; pp. 388–397.
5. Amin, R.; Islam, S.K.; Biswas, G.P.; Khan, M.K.; Leng, L.; Kumar, N. Design of an anonymity-preserving three-factor authenticated key exchange protocol for wireless sensor networks. Comput. Netw. 2016, 101, 42–62.
6. Jiang, Q.; Zeadally, S.; Ma, J.; He, D. Lightweight three-factor authentication and key agreement protocol for internet-integrated wireless sensor networks. IEEE Access 2017, 5, 3376–3392.
7. Li, X.; Niu, J.; Kumari, S.; Wu, F.; Choo, K.K.R. A robust biometrics based three-factor authentication scheme for global mobility networks in smart city. Future Gener. Comput. Syst. 2018, 83, 607–618.
8. Pelaez, R.M.; Cruz, H.T.; Michel, J.R.; Garcia, V.; Mena, L.J.; Felix, V.G.; Brust, A.O. An enhanced lightweight IoT-based authentication scheme in cloud computing circumstances. Sensors 2019, 19, 2098.
9. Dolev, D.; Yao, A.C. On the security of public key protocols. IEEE Trans. Inf. Theory 1983, 29, 198–208.
10. Park, Y.; Park, K.; Park, Y. Secure user authentication scheme with novel server mutual verification for multiserver environments. J. Commun. Syst. 2019, 32, 1–17.
11. Park, K.; Park, Y.; Das, A.K.; Yu, S.; Lee, J.; Park, Y.H. A dynamic privacy-preserving key management protocol for V2G in social internet of things. IEEE Access 2019, 7, 76812–76832.
12. Burrows, M.; Abadi, M.; Needham, R. A logic of authentication. ACM Trans. Comput. Syst. 1990, 8, 18–36.
13. Chien, H.Y.; Jan, J.; Tseng, Y.M. An efficient and practical solution to remote authentication: Smart card. Comput. Secur. 2002, 21, 372–375.
14. Zhu, J.; Ma, J. A new authentication scheme with anonymity for wireless environments. IEEE Trans. Cons. Elec. 2004, 50, 231–235.
15. Lee, Y.; Kim, S.; Won, D. Enhancement of two-factor authenticated key exchange protocols in public wireless LANs. Comput. Electr. Eng. 2010, 36, 213–223.
16. Kim, J.; Lee, D.; Jeon, D.; Lee, Y.; Won, D. Security anaylsis and improvements two-factor mutual authentication with key agreement in wireless sensor networks. Sensors 2014, 14, 6443–6462.
17. Wang, D.; Wang, P. On the anonymity of two-factor authentication schemes for wireless sensor networks. Comput. Netw. 2014, 73, 41–57.
18. Wang, D.; Li, W.; Wang, P. Measuring two-factor authentication schemes for real-time data access in industrial wireless sensor networks. IEEE Trans. Indust. Inform. 2018, 14, 4081–4092.
19. Wong, K.H.; Zheng, Y.; Cao, J.; Wang, S. A dynamic user authentication scheme for wireless sensor networks. IEEE Inter. Conf. Sensor Netw. Ubiq. Trustworthy Comp. 2006, 1, 1–8.
20. Li, X.; Peng, J.; Niu, J.; Wu, F.; Liao, J.; Choo, K.K.R. A robust and energy efficient authentication protocol for industrial internet of things. IEEE Internet Things J. 2018, 5, 1606–1615.
21. Li, X.; Niu, J.; Kumari, S.; Wu, F.; Sangaiah, A.; Choo, K.K.R. A three-factor anonymous authentication scheme for wireless sensor networks in internet of things environments. J. Netw. Comp. Appl. 2018, 103, 194–204.
22. Lee, J.; Yu, S.; Park, K.; Park, Y.; Park, Y. Secure three-factor authentication protocol for multi-gateway IoT environments. Sensors 2019, 19, 2358.
23. Zhou, L.; Li, X.; Yeh, K.H.; Su, C.; Chiu, W. Lightweight IoT-based authentication scheme in cloud computing circumstance. Future Gener. Comput. Syst. 2019, 91, 244–251.
24. Xue, K.; Hong, P.; Ma, C.A. A lightweight dynamic pseudonym identity based authentication and key agreement protocol without verification tables for multi-server architecture. J. Comput. Syst. Sci. 2014, 80, 195–206.
25. Amin, R.; Kumar, N.; Biswas, G.P.; Iqbal, R.; Chang, V. A lightweight authentication protocol for IoT-enabled devices in distributed cloud computing environment. Future Gener. Comput. Syst. 2018, 78, 1005–1019.
26. AVISPA. Automated Validation of Internet Security Protocols and Applications. Available online: http://www.avispa-project.org/ (accessed on 6 May 2019).
27. SPAN: A Security Protocol Animator for AVISPA. Available online: http://www.avispa-project.org/ (accessed on 6 May 2019).
28. Park, K.; Park, Y.; Park, Y.; Reddy, A.G.; Das, A.K. Provably secure and efficient authentication protocol for roaming service in global mobility networks. IEEE Access 2017, 5, 25110–25125.
29. Park, K.; Park, Y.; Park, Y.; Das, A.K. 2PAKEP: Provably secure and efficient two-party authenticated key exchange protocol for mobile environment. IEEE Access 2018, 6, 30225–30241.
30. Yu, S.; Lee, J.; Lee, K.; Park, K.; Park, Y. Secure authentication protocol for wireless sensor networks in vehicular communications. Sensors 2018, 18, 3191.
31. Park, Y.; Park, Y. Three-factor user authentication and key agreement using elliptic curve cryptosystem in wireless sensor networks. Sensors 2016, 16, 2123.
32. Wu, F.; Xu, L.; Kumari, S.; Li, X.; Shen, J.; Choo, K.K.R.; Wazid, M.; Das, A.K. An efficient authentication and key agreement scheme for multi-gateway wireless sensor networks in IoT deployment. J. Netw. Comput. Appl. 2017, 89, 72–85.
School of Electronics Engineering, Kyungpook National University, Daegu 41566, Korea
*Author to whom correspondence should be addressed.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2019. This work is licensed under https://creativecommons.org/licenses/by/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Abstract
With the development of cloud computing and communication technology, users can access the internet of things (IoT) services provided in various environments, including smart home, smart factory, and smart healthcare. However, a user is insecure various types of attacks, because sensitive information is often transmitted via an open channel. Therefore, secure authentication schemes are essential to provide IoT services for legal users. In 2019, Pelaez et al. presented a lightweight IoT-based authentication scheme in cloud computing environment. However, we prove that Pelaez et al.’s scheme cannot prevent various types of attacks such as impersonation, session key disclosure, and replay attacks and cannot provide mutual authentication and anonymity. In this paper, we present a secure and lightweight three-factor authentication scheme for IoT in cloud computing environment to resolve these security problems. The proposed scheme can withstand various attacks and provide secure mutual authentication and anonymity by utilizing secret parameters and biometric. We also show that our scheme achieves secure mutual authentication using Burrows–Abadi–Needham logic analysis. Furthermore, we demonstrate that our scheme resists replay and man-in-the-middle attacks usingthe automated validation of internet security protocols and applications (AVISPA) simulation tool. Finally, we compare the performance and the security features of the proposed scheme with some existing schemes. Consequently, we provide better safety and efficiency than related schemes and the proposed scheme is suitable for practical IoT-based cloud computing environment.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer