Research Article

A Lightweight Secure User Authentication and Key Agreement Protocol for Wireless Sensor Networks

Table 2

Login and authentication phase of the proposed scheme.

UiGWNSj

Inputs IDi, PWi,
 = Rep (Bio, τi)  = Bi ⊕ h (IDi ||  || PWi)
 = h (h (PWi ||  || ) mod t)
If ( ≠ fi), abort
else chooses , ei, SIDj, ai, T1
 = h (IDi ||  || ) m1 = Ai ⊕ fi ⊕ ei
m2 = aiP, m3 =  ⊕ h (ei)
m4 = (IDi || SIDj) ⊕ h (PIDi || ei)
m5 = h (IDi || PIDi ||  || m2 || SIDj || T1)
M1 = {m1, m2, m3, m4, m5, PIDi, T1} ⟶
Checks T1
ei = m1 ⊕ h (PIDi || )
 = m3 ⊕ h (ei)
( || ) = m4 ⊕ h (PIDi || ei)
 = h ( || PIDi ||  || m2 ||  || T1)
If ( ≠ m5), abort
else Kj = h (SIDj || XGWN)
ek = h ( || Kj)

m7 = h (Kj ||  ||  || m2 || T2)
M2 = {m2, m6, m7, T2}  ⟶
Checks T2
ek′ = h (SIDj || Kj)
Decrypts m6 to obtain (ei, )
 = h (Kj ||  || SIDj || m2 || T2)
If ( ≠ m7), abort
else chooses bj, T3
m8 = bjP,
SKS-U = h (bjm2 ||  || SIDj || ei) m9 = h (SKS-U ||  || SIDj || m8 || T3) < m10 = h(Kj ||  || m8 || T3)
⟵ M3 = {m8, m9, m10, T3}
Checks T3
 = h (Kj ||  || m8 || T3)
If ( ≠ m10), abort
else chooses T4
m11 = h ( || )
m12 = h ( || ei || m8 || T4)
⟵ M4 = {m8, m9, m11, m12, T3, T4}
Checks T4
 = h ( || ei || m8 || T4)
If ( ≠ m12), abort
SKU-S = h (aim8 ||  || SIDj || ei)  = h (SKU-S ||  || SIDj || m8 || T3)
If ( ≠ m9), abort
else accepts SKU-S
 = h (h (PWi ||  || ) mod t)
 = m11 ⊕ 
 = h (IDi ||  || PWi) ⊕ 
(Ai, Bi, fi) ⟵ (, , )