Challa Et - Al
Challa Et - Al
Challa Et - Al
a r t i c l e i n f o a b s t r a c t
Article history: We first show the security limitations of a recent user authentication scheme proposed for
Received 9 September 2016 wireless healthcare sensor networks. We then present a provably secure three-factor user
Revised 4 August 2017
authentication and key agreement protocol for wireless healthcare sensor networks. The
Accepted 7 August 2017
proposed scheme supports functionality features, such as dynamic sensor node addition,
Available online 18 August 2017
password as well as biometrics update, smart card revocation along with other usual fea-
Keywords: tures required for user authentication in wireless sensor networks. Our scheme is shown to
Wireless healthcare sensor networks be secure through the rigorous formal security analysis under the Real-Or-Random (ROR)
User authentication model and broadly-accepted Burrows-Abadi-Needham (BAN) logic. Furthermore, the simu-
Session key lation through the widely-known Automated Validation of Internet Security Protocols and
Elliptic curve cryptography Applications (AVISPA) tool shows that our scheme is also secure. High security, and low
AVISPA communication and computation costs make our scheme more suitable for practical appli-
BAN logic cation in healthcare applications as compared to other related existing schemes.
Formal security
© 2017 Elsevier Ltd. All rights reserved.
1. Introduction
Developments in telecommunication and information technology helped in eliminating distance barriers while providing
health care. Over the years, telemedicine using radio and telephone has been replaced with video-telephony, distributed
client/server applications and devices that support home-care. This has facilitated remote monitoring of patients and thus
has improved medical facilities in rural communities. Technology also allows doctors in multiple locations to share infor-
mation and discuss cases. Apart from decreasing the number of required outpatient visits, use of telemedicine reduces the
R
Reviews processed and recommended for publication to the editor-in-chief by area editor Dr. G. Martinez Perez.
∗
Corresponding author.
E-mail addresses: c.sravani@research.iiit.ac.in (S. Challa), iitkgp.akdas@gmail.com, ashok.das@iiit.ac.in (A.K. Das), odelu.vanga@gmail.com,
odelu.vanga@iiits.in (V. Odelu), neeraj.kumar@thapar.edu (N. Kumar), saryusiirohi@gmail.com (S. Kumari), mkhurram@ksu.edu.sa (M.K. Khan),
th.vasilakos@gmail.com (A.V. Vasilakos).
http://dx.doi.org/10.1016/j.compeleceng.2017.08.003
0045-7906/© 2017 Elsevier Ltd. All rights reserved.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 535
overall cost of medical care. Telemedicine can be delivered using networks linking hospitals with community health centers
in rural areas.
Wireless Sensor Networks (WSNs) for medical applications has been garnering a lot of attention in recent years due to
advantages over wired alternatives such as enhanced mobility, reduced risk of infection, low cost etc. An emerging aspect
of the telemedicine is the Wireless Body Area Network (WBAN), where each patient belonging to the system is provided
with the body sensor nodes that collect and monitor vitals such as temperature, heart beat, blood pressure etc., irrespective
of the patient’s condition and location. The collected information is then received by a smart mobile device using any one
of bluetooth, wi-fi, etc. The smart device forwards the information to a remote health care facility over a wi-fi or 3G/4G
network. A typical healthcare-monitoring scenario is demonstrated in Fig. 1, which is adapted from the scheme [1]. Along
with providing continuous monitoring by instantly updating patient’s vitals for hospitals to store and process using wearable
sensor devices, WSNs also help to detect emergencies sooner.
Multiple technical challenges need to be faced while setting up a WSN for health care. Along with the obvious limitations
in a WSN, such as scarce energy reserves, processing and memory constraints, limited network capacity etc., any health care
network imposes a definite requirement of quality of service, system reliability and above all, privacy and security. Since
most sensor network deployment consists of stationery nodes that transmit data with focus on best effort data collection
at the base station at a relatively low rate, there is a huge gap between the design of such networks and requirements
of telemedicine. Also, as the sensor nodes are usually deployed over an unattended area, it may lead to a compromise of
patient privacy either due to eavesdropping attacks or sensor node capture physically by an adversary.
This section outlines various authentication schemes proposed to secure health care sensor networks. Over the years,
many researchers have come up with schemes to strengthen the security of wireless medical care networks. Malasri and
Wang [2] implemented a secure key exchange protocol using Elliptic Curve Cryptography (ECC) to establish a shared key
between sensor node and base station along with a two-tier architecture for user data authentication with the help of
biometrics. Hu et al. [3] proposed a real-time hardware and software based protocol for monitoring cardiac patients. Wire-
less ECG communication unit, called a mobile platform, is integrated together. Although the scheme provides privacy and
integrity, it does not include strong user authentication. Huang et al. [4] proposed a three-tiered sensor-based hierarchical
architecture for monitoring health. Wireless Sensor Motes (WSM) and Wearable Sensor Systems (WSS) were placed strate-
gically in each tier to broadcast data. Advanced Encryption Standard (AES)-based authentication and encryption is used at
the WSS, while a polynomial-based encryption is used at the WSM to establish point-to-point secure communication.
In recent years, Le et al. [5] came up with a scheme supporting access control and mutual authentication using ECC. Also,
they argue that the scheme is secure against known attacks like replay and denial-of-service attack. However, it has been
proved that this scheme is vulnerable to eavesdropping compromising patient privacy. Das [6] proposed a two-factor user
authentication protocol for WSNs claiming that the scheme is secure against known attacks like password-guessing, user
impersonation, replay, node compromise and stolen-verifier attacks. However, Khan and co-workers [7,8] showed that this
protocol is not secure against user impersonation and insider attack. Also, the scheme does not support mutual authentica-
tion and message confidentiality between the user and the sensor.
536 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
In [9], Kumar and Lee established that the schemes in [7,8] had security vulnerabilities and high computation costs
making them unsuitable for wireless health care applications. A major drawback of all the above schemes is the absence of
a strong user authentication, which is a primary concern in such networks.
Wu et al. [10] pointed out weaknesses of existing authentication schemes and then presented a three-factor remote au-
thentication scheme. Their scheme provides forward security as well as the user’s privacy. However, Xie et al. [11] showed
that Wu et al.’s scheme [10] is vulnerable to an impersonation attack as the de/encryption key of the server and the user
can be computed by an adversary. Furthermore, Arshad and Nikooghadam [12] proposed an efficient three-factor anonymous
authentication and key agreement scheme for the telecare medicine information systems.
Nam et al. [13] proposed a smart-card based provably secure authentication scheme for wireless sensor networks. Their
scheme is based on ECC and uses user password in the proposed scheme. Turkanovic et al. [14] proposed a user authentica-
tion and key agreement scheme for heterogeneous WSN (HWSN). Their scheme was adapted to the Internet of Things (IoT)
notion. Later, Farash et al. [15] showed that Turkanovic et al. [14] is suspected to some security shortcomings, such as (1) it
does not provide user traceability, (2) it does not provide sensor node anonymity, (3) it is insecure against stolen smart card
attacks, sensor node impersonation attack and man-in-the-middle attack and (4) the secret parameters and session key are
disclosed to an attacker. To overcome the security limitations of Turkanovic et al.’s scheme, they proposed improved user
authentication and key agreement scheme for HWSN.
In 2016, Liu and Chung [16] proposed a user authentication scheme using bilinear pairing and a trusted authority to au-
thenticate the user, and also to establish secure communication between a user and a sensor node. In this paper, we discuss
the security limitations in Liu–Chung’s scheme [16] and show it is vulnerable to many known attacks. To counter these limi-
tations, we present a provably secure three-factor authentication and key agreement scheme suitable for wireless healthcare
sensor networks, which is based on lightweight ECC point multiplications as compared to costly bilinear operations as in
Liu–Chung’s scheme [16].
The Dolev–Yao threat model [17] is used, where communication between two entities is over an open (public) channel.
An adversary can then modify, delete or eavesdrop on the messages being transmitted. We further assume that an adversary
can physically capture one or more sensors equipped in a patient’s body, and can extract all the sensitive information stored
in the captured sensors using the power analysis attacks [18].
• The scheme proposed by Liu and Chung [16] is reviewed to show that it is indeed susceptible to attacks, such as
stolen smart card, password guessing, privileged insider and user impersonation attacks. In addition, Liu–Chung’s scheme
[16] fails to provide proper mutual authentication.
• A provably secure three-factor authentication and key agreement protocol has been proposed to counter the security lim-
itations found in Liu–Chung’s scheme. The three factors used in the proposed scheme are the smart card, user password
and user biometrics. Note that biometric authentication enhances security of the system.
• The proposed scheme is proved to be secure against various known attacks using the broadly-accepted BAN logic and
formal security analysis under the standard model, and also through the rigorous informal security analysis. Note that
AVISPA tool has been used to simulate the formal verification of the security of the proposed scheme.
• Finally, it is shown that the proposed scheme ensures low computation and communication costs while proving high
security as compared to that for Liu–Chung’s scheme and other existing schemes.
The paper is organized as follows. Section 2 explains the required mathematical preliminaries and definitions. In Section 3,
the scheme proposed by Liu–Chung [16] is reviewed, and its cryptanalysis is also done. The proposed authentication scheme
and its security analysis are detailed in Sections 4 and 5, respectively. AVISPA simulation is shown in Section 6 for the pro-
posed scheme. A comparative analysis of communication and computation costs has been done in Section 7. The paper is
finally concluded in Section 8.
2. Mathematical background
This section discusses the useful cryptographic primitives needed to describe and analyze both Liu–Chung’s scheme and
the proposed scheme.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 537
Let p > 3 be a prime. The elliptic curve y2 = x3 + ax + b over the finite field Z p = {0, 1, . . . , p − 1} is the set Ep (a, b) of
solutions (x, y) ∈ Zp × Zp to the congruence y2 = x3 + ax + b (mod p), where a, b ∈ Zp are constants with the non-singularity
of the elliptic curve property 4a3 + 27b2 = 0 (mod p), together with a special point O, called the point at infinity (or zero
point). Note that Ep (a, b) constitutes an abelian or commutative group under addition modulo p operation.
Let G be the base point on Ep (a, b) whose order be n, that is, nG = G + G + . . . + G(n times ) = O. If P = (xP , yP ) and Q =
(xQ , yQ ) be two points on elliptic curve y2 = x3 + ax + b ( mod p), R = (xR , yR ) = P + Q is computed as follows [19]: xR =
yQ −yP 3xP 2 +a
(λ2 − xP − xQ ) (mod p) and yR = (λ(xP − xR ) − yP ) (mod p), where λ = xQ −xP (mod p) if P = −Q and λ = 2yP (mod p)
if P = Q.
In elliptic curve cryptography, multiplication is defined as repeated additions. For example, if P ∈ Ep (a, b), then 5P is
computed as 5P = P + P + P + P + P (mod p) is known as ECC point or scalar multiplication.
Definition 1 (Elliptic Curve Discrete Logarithm Problem (ECDLP)). Suppose k is a positive integer and P, Q ∈ Ep (a, b) be two
points on the elliptic curve such that Q = k.P . Then, the Elliptic Curve Discrete Logarithm Problem (ECDLP) is to determine
k given P and Q. It is computationally easy to calculate Q given k and P, but it is computationally infeasible to determine
k given Q and P, when the prime p is large. In other words, ECDLP can be also formally defined as follows. For any Proba-
bilistic Polynomial Time (PPT) algorithm, say A (in the security parameter l), P r[A(P, Q ) = k] < (l ), where (l) is a negligible
function depending on l and Pr[B] is the probability of a random event B.
A one-way hash function h: {0, 1}∗ → {0, 1}n that takes an arbitrary length binary string x ∈ {0, 1}∗ as input, and then
outputs a binary string of fixed length n, say y ∈ {0, 1}n such that y = h(x ). Here, y is known as the hash digest of input x.
Definition 2 (Collision resistant one-way hash function). Let AdvHASH (A ) (t ) denote the advantage that an adversary A can find
a collision in hash digest. Then, AdvHASH (t ) = P r[ ( x, x ) ∈ A : x = x , h (x ) = h (x )], where the pair (x, x ) ∈ A is selected
(A ) R R
randomly by A. By an (ψ , t)-adversary A attacking the collision resistance of h( · ), it means that the runtime of A is at
(A ) (t ) ≤ ψ .
most t and that AdvHASH
Let q be a large prime and p be a prime such that q | p − 1. Let G1 and G2 be two cyclic groups of prime order q, where
G1 be an additive cyclic group over an elliptic curve Ep (a, b) and G2 a multiplicative cyclic group over a finite field Zp .
Definition 3 (Bilinear map). A bilinear map eˆ : G1 × G1 → G2 is a function with the following desirable properties:
Bilinearity: Let P, Q, R ∈ G1 and a, b ∈ Z ∗p . Then, eˆ(P + Q, R ) = eˆ(P, R ).eˆ(Q, R ), eˆ(P, Q + R ) = eˆ(P, Q ).eˆ(P, R ), eˆ(aP, bQ ) =
eˆ(bP, aQ ) = eˆ(P, Q )ab .
Non-degeneracy: Let P be a generator in the group G1 . Then, eˆ(P, P ) becomes a generator in the group G2 such that
eˆ(P, P ) = 1.
Computability: There exists an efficient algorithm to compute eˆ(P, Q ) ∈ G2 in polynomial time for all P, Q ∈ G1 .
In this section, we review the recent scheme proposed by Liu and Chung [16] along with a brief cryptanalysis of it to
prove that it is vulnerable to several known attacks. The notations used in this paper are listed in Table 1.
There are three main participants in this scheme - the trusted authority (TA), sensor nodes and the patients. The system
architecture considered here has been illustrated in Fig. 2 . In this scenario, the patients in hospitals or health-care institu-
tions are fitted with wireless monitoring devices that record their vitals continuously. The base station requests the sensors
on patients for periodic updates of physiological data. This data is then uploaded to the care center servers to be analyzed
by medical professionals. To ensure authorized access to data, each user (medical personnel) must register with the TA and
procure valid credentials. To ensure secure communication, this scheme comprises of four phases, each of which is described
briefly in the following subsections.
Table 1
Notations used in this paper.
Symbol Description
Ui , SNj , TA ith user, jth sensor node & trusted authority, respectively
SCi Ui ’s smart card
IDi , PWi , BIOi Ui ’s identity, password & personal biometrics template, respectively
Gen( · ), Rep( · ) Probabilistic generation & deterministic reproduction procedures in fuzzy extractor, respectively
t Error tolerance threshold used by fuzzy extractor
σ i, τ i Biometric secret key & public reproduction parameter, respectively
h( · ) Collision-resistant one-way cryptographic hash function
So 1024-bit master secret key only known to the TA
Po Large prime number
P = (xP , yP ), k.P An elliptic curve (ECC) point in elliptic curve Ep (a, b) and ECC point multiplication, respectively
Ti , Ts Current system timestamps
T Maximum transmission delay
SK Session key between Ui and S
, || Bitwise XOR and concatenation operations, respectively
Step S1. Let q be a large prime and p be a prime such that q | p − 1. Let G1 and G2 be two cyclic groups of prime order q,
where G1 be an additive cyclic group over an elliptic curve Ep (a, b) and G2 a multiplicative cyclic group over a finite
field Zp . A bilinear map eˆ : G1 × G1 → G2 and Po ∈ G1 are selected by the TA.
Step S2. One-way hash functions H1 , H2 are also selected by the TA, where H1 : {0, 1}∗ → G2 and H2 : G2 → {0, 1}∗ .
Step S3. The TA then chooses a random number So ∈ Zq∗ to calculate the public parameter Ppub = So .Po , which is an elliptic
curve point in Ep (a, b).
Step R1. Ui chooses IDi and PWi , and sends these to TA securely.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 539
Step L1. SCi checks if IDi and PWi entered by Ui match with those already stored in it, and proceeds if the verification
holds.
Step L2. SCi computes Sig = r.Upriv , where r = h(IDPWa).
Step L3. SCi then sends the message Sig, IDi , r, TL to TA over a public channel, where TL is the time during the login.
Step V1. TA permits Ui ’s request, if the IDi in the login request message matches that stored at TA and eˆ(Po, Sig) = eˆ(Ppub ,
r.Upub ).
Step V2. TA proceeds to Step V3 if the condition Tnow − TL < T holds, where Tnow is the current time at TA.
Step V3. TA chooses a random number b, and computes E = h(b Upub ) which is sent to Ui .
Step V4. TA also sends the message Tu , b, IDi to all sensor nodes and confirms that Ui is legal. Here, Tu is the time limit
within which Ui can legally access data from a sensor node.
Step AE1. Ui inserts SCi , and enters IDi and PWi . SCi compares them to the stored values to authenticate Ui and then
proceeds.
Step AE2. SCi computes C = h(a IDi ) E and sends the message C, IDi , T to an accessed sensor node SN, where T is
the current time stamp.
Step AE3. After receiving the message C, IDi , T , SN verifies if Tnow − T < T and Tnow = Tu .
Step AE4. SN uses b received from TA and Upub of Ui to compute C = h(a IDi ) h(bUpub ) and verifies if C = C. It then
proceeds if the check holds.
Step AE5. The data M requested by Ui is sent by SN using the computation M = m H2 (eˆ(U pub , Ppub )).
Step AE6. Ui retrieves M by computing M = m H2 (eˆ(U priv , W)), where W is a public parameter.
In the following subsections, we discuss several security limitations of the recently proposed Liu–Chung’s scheme for
wireless healthcare sensor networks.
It is then clear that A can successfully guess a user’s low-entropy password. Note that Ui can sometimes use the same
password to login to other applications. Hence, A will be able to access those applications which use the same password
PWi . As a result, Liu-Chung’s scheme is insecure against offline password guessing attack.
540 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
This section puts forward a provably secure ECC-based user authentication scheme for wireless healthcare sensor net-
works. The proposed scheme withstands the security limitations of Liu–Chung’s scheme listed in Section 3.2. Various phases
related to our scheme are given in detail in the following subsections.
The trusted authority TA sets up the system by executing the following steps:
Step S1. TA selects an elliptic curve Ep (a, b) over a finite field Zp , p being a large prime, a base point P of order n over
Ep (a, b), where 4a3 + 27b2 = 0 (mod p) and n.P = O, and a secret master key So ∈ Z ∗p .
Step S2. After that the public key Ppub = So .P is computed by TA, and a one-way cryptographic hash function h( · ) is also
chosen by TA.
Step S3. For biometric authentication, we apply the fuzzy extractor, where the probabilistic (randomized) generation
function Gen( · ) takes the user personal biometrics Bioi as input, and then returns a biometric key of length l bits, say
σ i ∈ {0, 1}l and a public reproduction parameter τ i . Another fuzzy extractor deterministic reproduction function Rep( · )
is used in the authentication phase. It takes the biometrics entered by the user, say Bio and τ i as input, provided the
hamming distance d (Bioi , Bioi ) ≤ t, where t is the error tolerance threshold value. The output of Rep( · ) is the original
biometric key σ i , that is, σi = Rep(Bioi , τi ).
Step S4. Finally, the system parameters {Ep (a, b), p, P, h( · ), Ppub , Gen( · ), Rep( · ), t} are made public, whereas So is kept
secret by the TA.
Along with the aforementioned system setup, all the required sensor nodes are also registered with the TA in offline as
follows:
Step PD1. For each sensor node SNj , the TA chooses a unique identity IDj and a unique master secret key mk j ∈ Z ∗p . The
TA then computes a secret value S j = h(IDj mkj ).
Step PD2. After that IDj and Sj are stored in SNj ’s memory prior to its deployment in the target field. The TA also stores
{IDj , Sj } in its database corresponding to the deployed sensor node SNj .
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 541
A user Ui (for example, in our case a patient) registers with the TA after physically presenting his/her identification at the
respective institute and obtaining permission from system manager after verification. At the end of this phase, Ui is supplied
with a smart card SCi securely. The steps involved in this phase are as follows:
Step R1. Ui chooses an identity IDi and a random number K ∈ Z ∗p . Ui then computes RIDi = h(K IDi ) and sends the
registration request RIDi to the TA via a secure channel.
Step R2. Upon reception of the registration request, the TA computes Ri = h(RIDi So ) and stores it on a smart card SCi ,
and then sends SCi to Ui via a secure channel.
Step R3. After receiving the smart card SCi , Ui chooses a password PWi and imprints biometrics Bioi at the sensor of a
specific terminal. Ui then computes Gen(Bioi ) = (σ i , τ i ), RPWi = h(PWi K), Xi = h(RPWi σ i ), Yi = K h(IDi PWi σ i ),
Ri = Ri h(IDi σ i ).
Step R4. Ui stores the information {Xi , Yi , Gen( · ), Rep( · ), τ i , h( · ), t} in SCi and also replaces Ri with Ri in it. Hence, SCi
finally contains {Ri , Xi , Yi , Gen( · ), Rep( · ), τ i , h( · ), t}.
Step L1. Ui inserts SCi , enters his/her identity IDi , password PWi and imprints personal biometrics Bioi at the sensor of a
specific terminal.
Step L2. SCi computes σi = Rep(Bioi , τi ), K = Yi h(IDi PWi σi ), RPWi = h(PWi K ) and Xi = h(RPWi σi ), and
checks if Xi = Xi holds.
Step L3. If the verification succeeds, Ui chooses a random number m ∈ Z ∗p , generates the current time stamp Ti and
forms a login message {DIDi , DIDj , Mi , Ti , Vi } after computing Mi = m.P = (Mix , Mi ), Ni = m.Ppub = (Nix , Ni ), RIDi =
y y
y ∗
h(K IDi ), DIDi = RIDi Ni , DID j = ID j Ni , Ri = Ri h(IDi σi ), and Vi = h(DIDi DIDj Ti Mi Ri ), where IDj is
y ∗
y
the identity of the sensor node SNj that Ui wants to access it and (Mix , Mi ) denotes the x-coordinate and y-coordinate
of an ECC point Mi = m.P, respectively. Finally, Ui sends the login request message DIDi , DIDj , Mi , Ti , Vi to the TA via
open channel.
In this phase, the TA authenticates a legal user Ui and helps to establish a session key between an accessed sensor node
SNj and Ui using the following steps:
Step A1. After receiving the login message DIDi , DIDj , Mi , Ti , Vi from Ui at time Ti , the TA first checks the validity of the
received timestamp Ti in the message by the condition Ti −Ti ≤ T. If it holds, the TA then calculates NTA = So.Mi =
542 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
x , N y ), RID = DID N y , ID∗ = DID N y , R = h(RID S ) and V ∗ = h(DID DID T M R ). The TA proceeds
(NTA TA i i TA j j TA i i o i i j i i i
to check if Vi∗ = Vi and ID∗j is registered with its database. If any one of these checks fails, the session is immediately
terminated.
Step A2. The TA generates the current time stamp TTA , computes WTA = h(Ri ) h(Sj || TTA ||Ti ), and sends the message
WTA , TTA , Ti to SNj via open channel.
. SN verifies the condition T −T
Step A3. Let the message WTA , TTA , Ti be received by SNj at time TTA j TA TA ≤ T for the
purpose of validating the received timestamp TTA . It it is valid, SNj generates the current time stamp Tj and computes
h(Ri ) = WTA h(Sj || TTA || Ti ), ski j = h(IDj h(Ri ) h(Sj ) Ti Tj ), VSN j = h(skij IDj Tj ) and W j = h(IDj h(Ri )) h(Sj ). SNj
then sends the authentication response message Wj , VSN j , Tj to Ui directly via open channel.
Step A4. On receiving the authentication response message Wj , VSN j , Tj at time T j , Ui verifies T j − Tj ≤ T for validating
the received time stamp Tj in the message, and then computes h(S j ) = Wj h(IDj h(R∗i )), ski j = h(IDj h(R∗i ) h(Sj )
∗ = h (sk ID T ). U verifies if V ∗
Ti Tj ) and VSN = VSN j . If it is valid, Ui then starts secure communication with
j ij j j i SN j
SNj with the session key ski j (= ski j ).
This phase is executed internally by Ui by avoiding communication with the TA to reduce the communication and com-
putation overheads. The steps involved are as follows:
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 543
Step PB1. After Ui enters the identity IDi , present password PWiold and imprints present biometrics Bioold i
at the sensor
of a specific terminal, SCi computes σiold = Rep(Bioold , τ ) ; K = Y h (ID PW old σ old ); RPW old = h (PW old K );
i i i i i i i i
Xiold = h(RPWiold σiold ). SCi then verifies if Xiold = Xi and terminates the request if they do not match. Otherwise, the
credentials entered by Ui are authentic.
Step PB2. SCi permits Ui to enter new password PWinew and imprint new biometrics Bionew i
at the sensor of a specific
terminal. SCi then computes Gen(Bionew ) = ( σ new , τ new ); RPW new = h (PW new K ); X new = h (RPW new σ new ); Y new =
i i i i i i i i i
K h(IDi PWinew σinew ), Rnew
i
= (Ri h(IDi σiold )) h(IDi σinew ) = Ri h(IDi σinew ).
Step PB3. The values of Ri , Xi , Yi and τ i on SCi are replaced with Rnew i
, Xinew , Yinew and τinew , respectively. Hence, the
smart card SCi contains the information {Rnew i
, Xi
new , Y new , Gen( · ), Rep( · ), τ new , h( · ), t}.
i i
If a legitimate user Ui has lost his/her smart card SCi or his/her smart card SCi is stolen by an adversary, he/she can
request to the TA for re-registration through the following steps:
Step RV1. Using the same identity IDi , Ui sends a registration request containing RIDnew i
= h(Knew IDi ) to the TA via
secure channel, where K new ∈ Z ∗p is a new random number chosen by Ui .
Step RV2. Upon getting the registration request from Ui , the TA computes Rnew i
= h(RIDnewi
So ) and sends a new smart
card SCinew to Ui with Rnew
i
stored in it via secure channel.
Step RV3. Ui chooses a new password PWinew and imprint new biometrics Bionew i
at the sensor of a specific terminal.
Ui then computes RPWinew = h(Knew PWinew ), Gen(Bionew i
) = (σinew , τinew ), Xinew = h(RPWinew σinew ), Yinew = Knew
h(IDi PWinew σinew ), Ri = Rnew
i
h(IDi σinew ).
Step RV4. Finally, the values {Ri , Xi , Yinew , τ i , t, h( · ), Gen( · ) and Rep( · )} are stored in Ui ’s new smart card SCinew and
new
It is required sometimes to add dynamically some sensor nodes in the existing network because they may be exhausted
due to battery power or may be physically captured by an adversary. Suppose a new sensor node SN new
j
needs to be deployed
in the sensor network. For this purpose, the TA executes the following steps:
Step DA1. For SN new
j
, the TA chooses a unique identity IDnewj
and a master secret key mknew j
∈ Z ∗p . It then computes a
secret value S j = h(ID j mk j ).
new new new
For wireless healthcare sensor networks, a registered user may not be working with the system after some period, and
a new user, say Uinew may also join in the network. The steps involved in this phase are as discussed below:
Step UA1. Uinew selects a unique new identity IDnew i
and a random number K new ∈ Z ∗p . Uinew then computes RIDnew i
=
h(K new IDnew
i
) and sends the registration request RID new to the TA via a secure channel.
i
Step UA2. Upon reception of the registration request, the TA computes Rnew i
= h(RIDnew
i
So ) and stores it on a smart card
new
SCi , and then sends SCi new to Uinew via a secure channel.
Step UA3. After receiving the smart card SCinew , Uinew chooses a password PWinew and imprints biometrics Bioi at the
sensor of a specific terminal. Uinew then computes Gen(Bioi ) = (σi , τi ), RPWinew = h(PWinew K new ), Xinew = h(RPWinew
σi ), Yinew = Knew h(IDnew
i
PWinew σi ) and Ri = Rnew i
h(IDnewi
σi ).
Step UA4. Ui new new new
stores the information {Xi , Yi , Gen( · ), Rep( · ), τi , h( · ), t} in SCinew and also replaces Rnew with Ri in
i
it. Hence, SCinew finally contains {Ri , Xinew , Yinew , Gen( · ), Rep( · ), τi , h( · ), t}.
Remark 1. In the proposed scheme, during the login and authentication phases, a resource constrained sensor node SNj
requires only five hash functions computation to verify the authentication request message WTA , TTA , Ti and send the
authentication reply message Wj , VSN j , Tj to the user Ui . Due to efficient hash computation, the proposed scheme supports
a large-scale sensor network and it is also flexible against substantial increase in the size of the network even after initial
deployment of the sensor nodes. As a result, the proposed scheme is highly scalable.
This section discusses the rigorous security analysis of the proposed scheme using both the formal and informal security
analysis.
544 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
The security of the proposed scheme is formally analyzed in the standard model using the widely-accepted Real-Or-
Random (ROR) model by Abdalla et al. [20].
Lemma 1 (Difference Lemma). Let B1 , B2 and B3 be the events defined in some probability distribution. Assume B1 ∧¬B3
⇔B2 ∧¬B3 . Then, we have,
|Pr[B1 ] − Pr[B2 ]| ≤ Pr[B3 ].
Theorem 1. Assume an adversary A runs against our proposed scheme P in polynomial time t in the random oracle. Let the
biometrics key σ i be of l bits and D be a uniformly distributed password dictionary. The following gives the advantage of A in
breaking P’s session key security (SK-security):
q2h qsend
AdvAKE ≤ + + 2AdvECDLP (t ),
P
|Hash| 2l−1 .|D|
where |D|, |Hash|, AdvECDLP (t), qh and qsend represent, respectively the size of D, the range space of the one-way cryptographic
hash function h( · ), the advantage of A in breaking the ECDLP, the number of Hash queries made, and the number of SD queries
made.
Proof. There are five different games in the formal proof, say Gai (i = 0, 1, 2, 3, 4 ). Let Wi denote an event where A guesses
the bit c in the game Gai and then wins that game. A real attack on P is denoted by Ga0 and the game ends with Ga4
proving that A has negligible advantage of breaking the SK-security in our scheme.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 545
• Ga0 : A begins with this game by launching a real attack on P. Prior to this, the bit c is selected. Hence,
AdvAKE
P = |2.P r[W0 ] − 1|. (1)
• Ga1 : Modifying Ga0 to simulate an eavesdropping attack, this game begins with querying the ET(t , u ) oracle by A.
Subsequently, A sends a query to the TS oracle to determine if the actual session key SK is the outcome or if it is a
random value. The session key is calculated by SNj as skij = h(ID j h(Ri ) h(Sj ) Ti Tj ). Also, Ui calculates the same
session key as ski j = h(IDj h(R∗i ) h(Sj ) Ti Tj ). To compute RIDi = h(K IDi ) and thus, Ri = h(RIDi So ), A needs to
know K, the random number at Ui and So , the master secret key of the TA. Therefore, A’s chances at winning this game
through eavesdropping are not increased. This shows that Ga0 and Ga1 are equivalent. Hence, we have,
• Ga2 : Extending Ga1 , the SD and the Hash oracles are queried in this game. Here, A actively attacks a participant by send-
ing a fabricated message. For A to be able to generate an authentic message either DIDi , DIDj , Mi , Vi , Ti or W j , VSN j , T j ,
access to all secret keys and random numbers is needed which cannot be obtained through the queries as the random-
ness in the messages ensures no collision in hash digests. Using the results from the birthday paradox, we get
q2h
|Pr[W1 ] − Pr[W2 ]| ≤ . (3)
2.|Hash|
• Ga3 : Modeling after the stolen smart card attack, this game starts with the CorruptMD oracle being queried. Using the
dictionary attack, A can guess password PWi of Ui from the extracted information in the smart card SCi . Since a strong
fuzzy extractor is used in P, it allows for the retrieval of at most l nearly random bits. The probability of A guessing the
biometric key σ i ∈ {0, 1}l is 1l approximately [22]. As the number of wrong password entries permitted is limited, we
2
get
qsend
|Pr[W2 ] − Pr[W3 ]| ≤ . (4)
2 l .|D|
• Ga4 : A modification of Ga3 , in this game, A attempts to obtain the actual session key skij (= ski j ) by getting information
through eavesdropping. As already mentioned in Ga1 , A has no knowledge of the secret keys for computing RIDi =
h(KIDi ) and thus, for computing Ri = h(RIDi So ) is not feasible. Also, considering computational hardness of ECDLP,
retrieving random number m from Mi in the message DIDi , DIDj , Mi , Vi , Ti is impossible. Hence, we get
Note that A has no knowledge of the bit c as the session keys are generated independently and randomly by both SNj
and Ui . This leads to the following:
1
P r[W4 ] = . (6)
2
From Eqs. (1), (2) and (6), we obtain
1 1 1
.AdvAKE
P = |P r[W0 ] − | = |P r[W1 ] − |. (7)
2 2 2
Solving Eqs. (3)–(7), applying Lemma 1 and triangular inequality, we have,
1 q2h qsend
|Pr[W1 ] − | ≤ + + AdvECDLP (t ).
2 2.|Hash| 2 l .|D|
Hence, we have the required result:
q2h qsend
AdvAKE ≤ + + 2AdvECDLP (t ).
P
|Hash| 2l−1 .|D|
546 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
The broadly-accepted BAN logic [23] is used in our scheme to prove that a user Ui and a sensor node SNj mutually
authenticate each other correctly using trustworthy and fresh information. To achieve this, the BAN logic verifies the origin
of the message, the origin’s trustworthiness and its freshness. The notations used in BAN logic are given below.
The logical postulates in the BAN logic are described using the below mentioned rules.
Rule (1). Message meaning rule (MMR): If P believes K to be a shared secret between P and Q, and also P sees a message
X is encrypted with K, P believes Q once said X.
K Y
P |≡P ←→Q,P {X }K P |≡P ←→Q,P X Y
P |≡Q |∼X
; P |≡Q |∼X
.
Rule (2). Nonce verification rule (NVR): If P believes X is fresh, and P believes Q once said X, P believes Q believes X.
P |≡#{X }P |≡Q |∼X
P |≡Q |≡X
.
Rule (3). Jurisdiction rule (JR): If P believes Q has jurisdiction over X and P believes that Q believes X, P believes X.
P |≡Q |≡X,P |≡Q |⇒X
P |≡X
.
Rule (4). Freshness rule (FR): If a part of the formula is believed to be fresh, the entire formula is also believed to be
|≡#{X }
fresh. PP|≡# {X,Y } .
Rule (5). Belief rule (BR): If P believes Q believes a formula, P believes Q believes part of the formula.
P |≡Q |≡(X,Y )
P |≡Q |≡X
.
If P believes X and P also believes Y, P then believes the combined formula (X, Y). PP|≡X,P |≡Y
|≡(X,Y ) .
Generic form of messages: The messages exchanged during the login and authentication phases in our scheme can be
expressed in a generic form as follows:
Idealized form: The above messages when expressed in their ideal forms give the following:
Thus, the goals G1 and G2 clearly show that Ui and SNj mutually authenticate each other with the help of the TA.
In the following subsections, we show that the proposed scheme is secure against various other known attacks through
an informal security analysis.
This section is aimed at proving that the proposed scheme is secure against man-in-the-middle and replay attacks with
the help of the widely-used AVISPA tool [24]. AVISPA is a popularly used tool to determine if an authentication scheme is
safe or unsafe [22,25–28].
AVISPA consists of four backends: On-the-fly Model-Checker (OFMC), Constraint Logic based Attack Searcher (CL-AtSe),
SAT-based Model-Checker (SATMC) and Tree Automata based on Automatic Approximations for the Analysis of Security
Protocols (TA4SP). The steps involved in the simulation using AVISPA tool are the following:
Step 1. Implementing the protocol in the role-oriented HLPSL (High Level Protocols Specification Language) [24], which
is then translated by the HLPSL2IF translator to the intermediate format (IF).
Step 2. Provide IF to any one of the four backends, which produces the output format (OF) to determine if the protocol
is safe.
Detailed information regarding the AVISPA tool, and its aspects of implementation and various variables used in HLPSL
are described in [24].
There are three participants, such as the TA, a user Ui and a sensor node SNj in the HLPSL implementation of the reg-
istration, login, and authentication and key agreement phases along with the mandatory roles for the session and goal-
environment (shown in Fig. 6b). The roles of user (shown in Fig. 5a), trusted authority (shown in Fig. 5b) and sensor node
(shown in Fig. 6a) represent Ui , TA and SNj , respectively.
Ui first changes its state maintained by the variable State from 0 to 1 after receiving the begin signal to initiate the
communication. The registration request message RIDi is sent from Ui to TA over a secure channel in the registration phase
with the help of TX( ) operation. The TA responds by sending a smart card with {Ri } securely to Ui , which then changes the
state from 1 to 2. Ui initiates login phase by sending a login message DIDi , DIDj , Mi , Vi , Ti to TA over a public channel. The
TA changes state from 2 to 3 and forwards message with WTA , TTA , Ti to SNj via an open channel to start the authentication
and session key establishment phase. After changing the state from 0 to 3, SNj also sends authentication reply message with
Wj , VSN j , Tj to Ui via open channel.
The declaration for witness(Ui, T A, ui_ta_m, M ) in the user role indicates that Ui has chosen m ∈ Z ∗p freshly for the TA. Ui ’s
acceptance of the value Tj generated for Ui by SNj is indicated by the declaration request (SN j, Ui, sn j_ui_t j, T j ). To indicate
that the value So is being kept secret by the TA, the declaration secret({S0}, sk1, {TA}) is used, where sk1 is the protocol
id that characterizes it. All required secret, request and witness declarations in the three roles have similar formats. Our
implementation requires four secrecy goals and also four authentication goals.
Finally, the environment, goal and session roles of the proposed scheme are summarized in Fig. 6b. The HLPSL specifica-
tion always has the top-level role (environment). The protocol execution also shows the intruder (i) can take a legitimate
role in the protocol execution as a concrete session.
The simulation results from the widely-used OFMC and CL-AtSe backends are shown in Fig. 7. The sections in the output
format (OF) are as follows:
• SUMMARY: This section indicates if the scheme is secure (safe or unsafe) or if the analysis was inconclusive.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 549
role user (Ui, TA, SNj: agent, role ta (Ui, TA, SNj: agent,
SKuita: symmetric_key, SKuita: symmetric_key,
H : hash_func, H : hash_func,
TX, RX: channel(dy)) TX, RX: channel(dy))
played_by Ui played_by TA
def= def=
local State: nat, local State: nat,
PWi, Bioi, IDi, K, RIDi, M, Mi, K, IDi, S0, PWi, Bioi, M, P, IDj: text,
Ni, DIDi, DIDj: text, Ti, Tta, Wta, Sj, MKj : text,
Vi, Ti, P, IDj, Tj, MKj, S0 : text, F: hash_func
F : hash_func const sk1, sk2, sk3, sk4, ta_snj_tta,
const sk1, sk2, sk3, sk4, ui_ta_m, ui_ta_m, ui_ta_ti: protocol_id
ui_ta_ti, snj_ui_tj: protocol_id % Initialize state State to 0
% Initialize state State to 0 init State := 0
init State := 0 transition
transition % User registration phase
% User registration phase % Receive registration request from user Ui securely
1. State = 0 /\ RX(start) =|> 1. State = 0 /\ RX({H(K’.IDi)}_SKuita) =|>
% Send registration request to TA securely State’ := 2 /\ secret({S0}, sk1, {TA})
State’ := 1 /\ secret({S0}, sk1, {TA}) /\ secret({PWi,Bioi}, sk2, {Ui})
/\ secret({PWi,Bioi}, sk2, {Ui}) /\ secret({IDi}, sk3, {Ui})
/\ secret({IDi}, sk3, {Ui}) /\ secret({MKj}, sk4, {SNj})
/\ secret({MKj}, sk4, {SNj}) % Send smart card to Ui securely
/\ K’ := new() /\ TX({H(H(K’.IDi).S0)}_SKuita)
/\ RIDi’ := H(K’.IDi) % Login and authentication phase
/\ TX({RIDi}_SKuita) % Receive login message from Ui via open channel
% Receive smart card from TA securely 2. State = 2 /\ RX(xor(H(K’.IDi),F(M’.F(S0.P))).
2. State = 1 /\ RX({H(H(K’.IDi).S0)}_SKuita) =|> xor(IDj, F(M’.F(S0.P))).F(M’.P).
% Login and authentication phase H(xor(H(K’.IDi),F(M’.F(S0.P))).
State’ := 2 /\ M’ := new() /\ Ti’ := new() xor(IDj, F(M’.F(S0.P))).Ti’.F(M’.P).
/\ Mi’ := F(M’.P) H(H(K’.IDi).S0)).Ti’) =|>
/\ Ni’ := F(M’.F(S0.P)) State’ := 4 /\ Tta’ := new()
/\ DIDi’ := xor(H(K’.IDi),Ni’) /\ Sj’ := H(IDj.MKj)
/\ DIDj’ := xor(IDj, Ni’) /\ Wta’ := xor(H(H(H(K’.IDi).S0)),
/\ Vi’ := H(DIDi’. DIDj’.Ti’.Mi’.H(H(K’.IDi).S0)) H(Sj’.Tta’.Ti’))
% Send the login message to the TA via open channel % Send the authentication message to SNj via open channel
/\ TX(DIDi’.DIDj’.Mi’.Vi’.Ti’) /\ TX(Wta’.Tta’.Ti’)
% Ui has freshly generated the values m and Ti for TA % TA has freshly generated the value Tta for SNj
/\ witness (Ui, TA, ui_ta_m, M’) /\ witness (TA, SNj, ta_snj_tta, Tta’)
/\ witness (Ui, TA, ui_ta_ti, Ti’) % TA’s acceptance of the values m and Ti generated for TA by Ui
% Ui’s acceptance of the value Tj generated for Ui by SNj /\ request(Ui, TA, ui_ta_m, M’)
/\ request(SNj, Ui, snj_ui_tj, Tj’) /\ request(Ui, TA, ui_ta_ti, Ti’)
end role end role
(a) Role specification for a user Ui (b) Role specification for the T A
Fig. 5. Role specification for Ui and the TA.
• DETAILS: This section provides information on the conditions in which the scheme is safe or the attack determining
conditions or finally, why the analysis was inconclusive.
• GOAL, PROTOCOL and BACK-END are the names of the analysis’s goal, the protocol’s name and the back-end being used
for analysis, respectively.
• The standard Alice-bob format prints the trace of an attack (if found) along with few comments and statistics.
The proposed is simulated for formal security verification using the OFMC and CL-AtSe backends under the SPAN, the
Security Protocol ANimator for AVISPA [24]. From Fig. 7, it is clear that our scheme is secure against replay and man-in-the-
middle attacks, which are proved using three verifications, such as replay attack checking, Dolev-Yao model checking and
executability checking on non-trivial HLPSL specifications as specified in [22].
7. Performance comparison
In this section, we have done a comparison of our scheme with some recently proposed schemes, such as Liu-Chung’s
scheme [16], Wu et al.’s scheme [10] and Arshad-Nikooghadam’s scheme [12], using the communication and computation
overheads, and functionality features as parameters to show that our scheme is significantly better.
550 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
role sensor (Ui, TA, SNj: agent, role session (Ui, TA, SNj: agent,
H : hash_func, SKuita: symmetric_key,
TX, RX: channel(dy)) H : hash_func)
played_by SNj def=
def= local T1, R1, T2, R2, T3, R3: channel (dy)
local State: nat, composition
K, IDi, S0, PWi, Bioi, M, P, IDj: text, user(Ui, TA, SNj, SKuita, H, T1, R1)
Ti, Tta, Wta, Sj, MKj, Tj, SKij, Vsnj, Wj : text, /\ ta (Ui, TA, SNj, SKuita, H, T2, R2)
F: hash_func /\ sensor (Ui, TA, SNj, H, T3, R3)
const sk1, sk2, sk3, sk4, ta_snj_tta, snj_ui_tj: protocol_id end role
% Initialize state State to 0
init State := 0 role environment()
transition def=
% Login and authentication phase const ui, ta, snj : agent,
% Receive authentication request from TA via open channel skuita: symmetric_key,
1. State = 0 /\ RX(xor(H(H(H(K’.IDi).S0)),H(H(IDj.MKj).
h, f : hash_func, ti, tj, tta, p : text,
Tta’.Ti’)).Tta’.Ti’) =|>
sk1, sk2, sk3, sk4, ui_ta_m,
State’ := 3 /\ secret({S0}, sk1, {TA})
ui_ta_ti, snj_ui_tj, ta_snj_tta: protocol_id
/\ secret({PWi,Bioi}, sk2, {Ui})
intruder_knowledge = {h, f, p, ti, tta, tj}
/\ secret({IDi}, sk3, {Ui})
composition
/\ secret({MKj}, sk4, {SNj})
% Send authentication reply to Ui via open channel session(ui, ta, snj, skuita, h)
/\ Tj’ := new() /\ session(i, ta, snj, skuita, h)
/\ SKij’ := H(IDj.H(H(H(K’.IDi).S0)). /\ session(ui, i, snj, skuita, h)
H(H(IDj.MKj)).Ti’.Tj’) /\ session(ui, ta, i, skuita, h)
/\ Vsnj’ := H(SKij’.IDj.Tj’) end role
/\ Wj’ := xor(H(IDj.H(H(H(K’.IDi).S0))),H(H(IDj.MKj)))
/\ TX(Wj’.Vsnj’.Tj’) goal
% SNj has freshly generated the value Tj for Ui secrecy_of sk1, sk2, sk3, sk4
/\ witness (SNj, Ui, snj_ui_tj, Tj’) authentication_on ui_ta_m, ui_ta_ti
% SNj’s acceptance of the value Tta generated for SNj by TA authentication_on ta_snj_tta, snj_ui_tj
/\ request(TA, SNj, ta_snj_tta, Tta’) end goal
end role environment()
(a) Role specification for a sensor node SNj (b) Role specification of session, goal and
environment
Fig. 6. Role specification for SNj , and session, goal and environment.
% OFMC SUMMARY
% Version of 2006/02/13 SAFE
SUMMARY DETAILS
SAFE BOUNDED_NUMBER_OF_SESSIONS
DETAILS TYPED_MODEL
BOUNDED_NUMBER_OF_SESSIONS PROTOCOL
PROTOCOL C:\progra~1\SPAN\testsuite
C:\progra~1\SPAN\testsuite \results\auth.if
\results\auth.if GOAL
GOAL As Specified
as_specified BACKEND
BACKEND CL−AtSe
OFMC
COMMENTS STATISTICS
STATISTICS
parseTime: 0.00s Analysed : 3 states
searchTime: 0.04s Reachable : 0 states
visitedNodes: 8 nodes Translation: 0.09 seconds
depth: 3 plies Computation: 0.00 seconds
Fig. 7. Simulation results using OFMC and CL-AtSe backends of our scheme.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 551
Table 2
Approximate time required for various operations [29].
Table 3
Comparison of computation overhead during the login and authentication phases.
Protocol User side TA/Server side Sensor node side Total overhead
Liu–Chung [16] 3Th + 1Tbp +2Tecm 1Th + 2Tbp 3Th + 1Tbp 2Tecm + 7Th + 4Tbp
≈ 0.00546 s ≈ 0.5444 s
Wu et al. [10] 2Tecm + 2Tsym 2Tecm + 2Tsym – 4Tecm + 4Tsym +11Th
+5Th + 1T f e +6Th +1T f e ≈ 0.11142 s
Arshad–Nikooghadam [12] 2Tecm + 1Tm 2Tecm + 1Tm + – 4Tecm + 2Tm +
+8Th 1Tinv + 7Th 1Tinv + 15Th
≈ 0.07327 s
Our 2Tecm + 10Th + 1T f e 1Tecm +4Th 5Th 3Tecm + 19Th + 1T f e
≈ 0.0016 s ≈ 0.07448 s
Table 4
Comparison of communication overhead during the login and authentica-
tion phases.
The approximate time needed for each cryptographic operation and it’s notation are mentioned in Table 2. As discussed
in [19], computation time required for one ECC point multiplication operation is equal to that required for 1200 modular
multiplication operations or for 400 modular inverse operations. Therefore, Tm ≈ Tecm /1200 and Tinv ≈ Tecm /400. In addition,
we assume that the time taken for the fuzzy extractor Gen( · ) or Rep( · ) function is same as that for Tecm , that is, Tfe ≈ Tecm =
0.0171s [29]. In Table 3, we have compared the proposed scheme with some related schemes during login and authentication
phase. As can be observed, the computation time required by our scheme is less among all existing schemes except Arshad-
Nikooghadam’s scheme [12], which has almost same cost as our scheme. In addition, our scheme needs the computation
cost for a sensor node of 5Th ≈ 0.0016 s, whereas Liu-Chung’s scheme requires the cost for a sensor node of 3Th + 1Tbp
≈ 0.00546 s. Table 3 clearly shows that our scheme provides a significant improvement over other schemes, especially in the
computation overhead at the resource-constrained sensor nodes.
Table 4 shows the communication overhead comparison of our scheme with some related schemes. For communication
cost comparison, we assume that the user identity, sensor node identity, random number, timestamp, hash digest (if we
apply the Secure Hash Standard (SHA-1) hash algorithm) and ECC point P = (Px , Py ) are 128 bits, 16 bits, 128 bits, 32 bits, 160
bits and (160 + 160 ) = 320 bits, respectively. We have considered the security level of 1024-bit RSA public key cryptosystem
is equivalent to that for 160-bit ECC. Under these considerations, the messages DIDi , DIDj , Mi , Ti , Vi , WTA , TTA , Ti and
Wj , VSN j , Tj need 832 bits, 244 bits and 352 bits, respectively. Summing all these costs, the total communication cost in
our scheme during the login and authentication phases becomes 1428 bits which is better than all schemes except Liu–
Chung’s where the cost is 1408 bits. Though our scheme requires little more communication cost as compared to Liu–
Chung’s scheme, it is justified as our scheme is computationally efficient and it provides better security and functionality
features as compared to other schemes as listed in Table 5.
552 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
Table 5
Comparison of functionality features.
Liu–Chung [16] × × × × × × × × × × × × × ×
Wu et al. [10] × × × × × × × ×
Arshad–Nikooghadam [12] × × × ×
Our
Note: I1 : user anonymity property; I2 : privileged-insider attack; I3 : off-line password guessing attack; I4 : stolen smart card attack; I5 :
denial-of-service attack; I6 : known session key attack; I7 : impersonation attacks; I8 : man-in-the middle attack; I9 : replay attack; I10 :
mutual authentication; I11 : session key agreement; I12 : stolen/lost smart card revocation; I13 : TA independent password update phase; I14 :
support biometric update phase; I15 : support dynamic sensor node addition phase; I16 : provide formal security analysis under standard
model and BAN logic; I17 : provide formal security verification using AVISPA tool. × : insecure against a particular attack or does not
support a particular feature; : secure against a particular attack or supports a particular feature.
Finally, we have shown the functionality features comparison of our scheme with some related schemes in Table 5. It is
clear from this table that our scheme provides better security and extra functionality features, such as stolen/lost smart card
revocation, efficient password and biometrics update phase and dynamic sensor node addition phase.
8. Conclusion
In this paper, a new secure authentication scheme for wireless healthcare sensor networks has been designed. By point-
ing out the pitfalls in the existing Liu–Chung’s scheme, a three factor authentication scheme using ECC is designed having
low communication and computation costs. The proposed scheme allows a legal user to modify/update password and bio-
metrics without contacting the trusted authority. In addition, it also allows a revocation mechanism for misbehaving nodes
in the network. A formal security analysis of the proposed scheme is done using BAN logic as well as random oracle model
under the widely-accepted Real-Or-Random model. Moreover, the proposed scheme is secure against man-in-the-middle
and replay attacks with the help of the widely-used AVISPA tool. The low computation and communication costs along with
high security make the proposed scheme suitable for a wide range of healthcare applications.
Acknowledgments
We thank the anonymous reviewers for their valuable feedback on the paper which helped us to improve its quality and
presentation. The authors extend their appreciation to the Deanship of Scientific Research at King Saud University for fund-
ing this work through Research Group Number (RG-288). This work was also supported by the Information Security Educa-
tion & Awareness (ISEA) Phase II Project, Department of Electronics and Information Technology (DeitY), India. Saru Kumari
is sponsored by the University Grants Commission, India through UGC-BSR Start-up grant under Grant no. 3(A)(60)31.
References
[1] He D, Kumar N, Wang H, Wang L, Choo KKR, Vinel A. A provably-secure cross-domain handshake scheme with symptoms-matching for mobile health-
care social network. IEEE Trans Dependable Secure Comput 2016. doi:10.1109/TDSC.2016.2596286.
[2] Malasri K, Wang L. Design and implementation of a secure wireless mote-based medical sensor network. In: Proceedings of the 10th international
conference on ubiquitous computing (UbiComp ’08); 2008. p. 172–81. Seoul, South Korea.
[3] Hu F, Jiang M, Wagner M, Dong DC. Privacy-preserving telecardiology sensor networks: toward a low-cost portable wireless hardware/software code-
sign. IEEE Trans Inf Technol Biomed 2007;11(6):619–27.
[4] Huang YM, Hsieh MY, Chao HC, Hung SH, Park JH. Pervasive, secure access to a hierarchical sensor-based healthcare monitoring architecture in wireless
heterogeneous networks. IEEE J Sel Areas Commun 20 09;27(4):40 0–11.
[5] Le XH, Khalid M, Sankar R. An efficient mutual authentication and access control scheme for wireless sensor networks in healthcare. J Netw
2011;6(3):355–64.
[6] Das ML. Two-factor user authentication in wireless sensor networks. IEEE Trans Wireless Commun 2009;8(3):1086–90.
[7] Khan MK, Alghathbar K. Cryptanalysis and security improvement of two-factor user authentication in wireless sensor networks. Sensors
2010;10(3):2450–9.
[8] He D, Gao Y, Chan S, Chen C, Bu J. An enhanced two-factor user authentication scheme in wireless sensor networks. Ad Hoc Sensor Wireless Netw
2010;10(4):361–71.
[9] Kumar P, Lee HJ. Cryptanalysis on two user authentication protocols using smart card for wireless sensor networks. In: Wireless advanced (WiAd),
2011; 2011. p. 241–5. London, United Kingdom.
[10] Wu F, Xu L, Kumari S, Li X. A novel and provably secure biometrics-based three-factor remote authentication scheme for mobile client-server networks.
Comput Electr Eng 2015;45:274–85.
[11] Xie Q, Tang Z, Chen K. Cryptanalysis and improvement on anonymous three-factor authentication scheme for mobile networks. Comput Electr Eng
2017;59:218–30.
[12] Arshad H, Nikooghadam M. Three-factor anonymous authentication and key agreement scheme for telecare medicine information systems. J Med Syst
2014;38(12):136.
[13] Nam J, Kim M, Paik J, Lee Y, Won D. A provably-secure ECC-based authentication scheme for wireless sensor networks. Sensors 2014;14(11):21023–44.
[14] Turkanovic M, Brumen B, Holbl M. A novel user authentication and key agreement scheme for heterogeneous ad hoc wireless sensor networks, based
on the internet of things notion. Ad Hoc Netw 2014;20:96–112.
S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554 553
[15] Farash MS, Turkanovic M, Kumari S, Holbl M. An efficient user authentication and key agreement scheme for heterogeneous wireless sensor network
tailored for the internet of things environment. Ad Hoc Netw 2016;36:152–76.
[16] Liu CH, Chung YF. Secure user authentication scheme for wireless healthcare sensor networks. Comput Electr Eng 2017;59:250–61.
[17] Dolev D, Yao A. On the security of public key protocols. IEEE Trans Inf Theory 1983;29(2):198–208.
[18] Messerges TS, Dabbish EA, Sloan RH. Examining smart-card security under the threat of power analysis attacks. IEEE Trans Comput 2002;51(5):541–52.
[19] Koblitz N, Menezes A, Vanstone S. The state of elliptic curve cryptography. Des Codes Cryptogr 20 0 0;19(2):173–93.
[20] Abdalla M, Fouque PA, Pointcheval D. Password-based authenticated key exchange in the three-party setting. In: 8th International workshop on theory
and practice in public key cryptography (PKC’05). Switzerland: Les Diablerets; 2005. p. 65–84.
[21] Lee TF. Provably secure anonymous single-sign-on authentication mechanisms using extended Chebyshev chaotic maps for distributed computer net-
works. IEEE Syst J 2015. doi:10.1109/JSYST.2015.2471095.
[22] Odelu V, Das AK, Goswami A. A secure biometrics-based multi-server authentication protocol using smart cards. IEEE Trans Inf Forensic Secur
2015;10(9):1953–66.
[23] Burrows M, Abadi M, Needham R. A logic of authentication. ACM Trans Comput Syst 1990;8(1):18–36.
[24] AVISPA. Automated validation of internet security protocols and applications; 2016. http://www.avispa-project.org/. Accessed on April.
[25] Das AK. A secure and robust temporal credential-based three-factor user authentication scheme for wireless sensor networks. Peer-to-Peer Netw Appl
2016;9(1):223–44.
[26] Odelu V, Das AK, Goswami A. SEAP: Secure and efficient authentication protocol for NFC applications using pseudonyms. IEEE Trans Consum Electron
2016;62(1):30–8.
[27] Chatterjee S, Roy S, Das AK, Chattopadhyay S, Kumar N, Vasilakos AV. Secure biometric-based authentication scheme using chebyshev chaotic map for
multi-server environment. IEEE Trans Dependable Secure Comput 2016. doi:10.1109/TDSC.2016.2616876.
[28] Challa S, Wazid M, Das AK, Kumar N, Reddy AG, Yoon EJ, et al. Secure signature-based authenticated key establishment scheme for future iot applica-
tions. IEEE Access 2017;5:3028–43.
[29] He D, Kumar N, Lee JH, Sherratt RS. Enhanced three-factor security protocol for consumer USB mass storage devices. IEEE Trans Consum Electron
2014;60(1):30–7.
554 S. Challa et al. / Computers and Electrical Engineering 69 (2018) 534–554
Sravani Challa received the M.Sc. (Tech) degree in information systems from the Birla Institute of Technology & Science (BITS), Pilani, India. She is currently
pursuing the M.S. degree in computer science and engineering with IIIT, Hyderabad, India. Her research interests include cryptography and network security.
She has published three journal papers in the above areas.
Ashok Kumar Das received Ph.D. degree in computer science and engineering, M.Tech. degree in computer science, and M.Sc. degree in mathematics from
IIT Kharagpur, India. He is currently an Assistant Professor with IIIT Hyderabad, India. He has published more than 140 papers in interenational journals
and conferences in the field of cryptography and network security.
Vanga Odelu received his Ph.D. degree and M.Tech. degree in computer science and data processing from IIT Kharagpur, India. He is currently an assistant
professor with the Department of Computer Science and Engineering, IIIT, Sri City, India. His research interests include cryptography and network security.
He has authored over 40 papers in international journals and conferences.
Neeraj Kumar received the Ph.D. degree in computer science and engineering from Shri Mata Vaishno Devi University, Katra (J&K), India, in 2009. He was
a Post-Doctoral Research Fellow at Coventry University, Coventry, U.K. He is currently an Associate Professor with the Thapar University, Patiala, India. He
has authored more than 160 research papers.
Saru Kumari is currently an assistant professor with the Department of Mathematics, C.C.S. University, Meerut, U.P, India. She received Ph.D. degree in
Mathematics in 2012 from C.C.S. University, Meerut, Uttar Pradesh, India. She has published more than 45 papers in international journals and conferences.
Muhammad Khurram Khan is currently working as a full professor at the Center of Excellence in Information Assurance, King Saud University, Saudi
Arabia. His current research interests include Cybersecurity, biometrics, multimedia security, and digital authentication. He has published about 300 papers
in international journals and conferences and he is an inventor of several U.S./PCT patents.
Athanasios V. Vasilakos is currently professor with the Lulea University of Technology, Sweden. He has served or is serving as an Editor for many technical
journals, such as IEEE Transactions on Cloud Computing, IEEE Transactions on Information Forensics and Security, IEEE Transactions on Cybernetics, IEEE
Transactions on NanoBioscience, and IEEE Journal on Selected Areas in Communications.