Skip to main content
. 2019 Mar 6;19(5):1146. doi: 10.3390/s19051146
Step 1: The Ui inserts his/her own smartcard into card reader and inputs IDi, PWi and also imprints Fi on a sensor device. Now, the card reader computes Rep(Fi, PF) = XF*, RPWi* = h(PWi‖XF*), Ai* = Bi ⊕ h(RPWi* ‖ IDi), Di* = h(Ai* ‖ RPWi* ‖ IDi), [h(Bi‖X)]* = Ci ⊕ Ai* and verifies if Di* equals Di. If this verification holds then the system continues the process. Otherwise, the session is terminated.
Step 2: Now, Ui generates a random nonce RU and enumerates DIDi=IDi⊕h(Bi‖ X), M1=EAi(RU‖IDSNj‖IDGWNj‖T1), M2=h(RU‖IDi‖T1‖ h(Bi‖X)) and sends {Bi, DIDi, M1, M2} to BS via public channel.