Next Article in Journal
Synthesis and Characterization of Polyaniline-Based Composites for Electromagnetic Compatibility of Electronic Devices
Next Article in Special Issue
Intelligent Image Synthesis for Accurate Retinal Diagnosis
Previous Article in Journal
Enabling ISO 26262 Compliance with Accelerated Diagnostic Coverage Assessment
Previous Article in Special Issue
An Energy Efficient Enhanced Dual-Fuzzy Logic Routing Protocol for Monitoring Activities of the Elderly Using Body Sensor Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Review

Revisit of Password-Authenticated Key Exchange Protocol for Healthcare Support Wireless Communication

1
Department of Computer Engineering, Sungkyunkwan University, Gyeonggi-do 16419, Korea
2
Department of Computer Education, Teachers College, Jeju National University, 61 Iljudong-ro, Jeju-si 690-781, JejuSpecial Self-Governing Province, Korea
*
Author to whom correspondence should be addressed.
Electronics 2020, 9(5), 733; https://doi.org/10.3390/electronics9050733
Submission received: 5 April 2020 / Revised: 24 April 2020 / Accepted: 28 April 2020 / Published: 29 April 2020
(This article belongs to the Special Issue Electronic Solutions for Artificial Intelligence Healthcare)

Abstract

:
Wireless communication is essential for the infrastructure of a healthcare system. This bidirectional communication is used for data collection and to control message delivery. Wireless communication is applied in industries as well as in our daily lives, e.g., smart cities; however, highly reliable communication may be more difficult in environments with low power consumption, many interferences, or IoT wireless network issues due to resource limitations. In order to solve these problems, we investigated the existing three-party password-authenticated key exchange (3PAKE) and developed an enhanced protocol. Currently, Lu et al. presented a 3PAKE protocol to improve the security flaws found in Farash and Attari’s protocol. This work revisits the protocol proposed by Lu et al. and demonstrates that, in addition to other security weaknesses, the protocol does not provide user anonymity which is an important issue for healthcare environment, and is not secure against insider attacks that may cause impersonation attacks. We propose a secure biometric-based efficient password-authenticated key exchange (SBAKE) protocol in order to remove the incidences of these threats, and present an analysis regarding the security and efficiency of the SBAKE protocol for practical deployment.

1. Introduction

Healthcare systems have emerged as exchangers of information that utilize the internet to discern health issues. The implementation of this system has magnified privacy and security issues. Innovative technologies like artificial intelligence (AI) and internet of things (IoT) enable internet-connected “things” to analyze information via platforms for various services that are accessible to users. As various devices communicate using the existing network infrastructure, we must evaluate whether they are not compromised or connected with malicious adversaries, and permission must be obtained to access each device while establishing a connection. Moreover, protecting anonymity and privacy requires the employment of effective authentication and key management schemes. The password-authenticated key exchange (PAKE) protocol ensures that information transmitted among communication entities is available to the authorized party. The initial works, i.e., Bellovin-Merritt’s two-party PAKE (2PAKE) [1] protocol proposals [2,3,4,5] are widely applied to establish session keys between two communicating parties in various communication environments. It is known that 2PAKE protocols strain storage capacity in large-scale peer-to-peer architectures. In order to effectively overcome this problem, researchers developed three-party password-authenticated key exchange (3PAKE) protocols [6,7,8,9,10,11], which enable two users to generate a shared cryptographically-strong key with the support of an authentication server over an insecure open network. Potential security risks, privacy issues, and efficiency are still challenging tasks that must be achieved in order to enhance protection in IoT support 3PAKE. Many proposed PAKE protocols involve the use of a server’s public key or a smart card [8,12,13,14,15], or both, to protect the user’s password. Constructing a server’s public key through key generation and key management constrains the capacity for greater complexity and increases the computational costs of the protocol, while using a smart card can weaken security due to the resultant exposure to side-channel attacks [16] that can disclose sensitive information stored on a smart card.
In [17], Huang proposed a simple 3PAKE protocol that does not involve a smart card. Following its publication, Yoon and Yoo figured out that Huang’s protocol could not withstand an undetectable online password guessing attack [18]. Then, using the undetectable online password guessing attack, Tallapally demonstrated an unknown key-share attack on Huang’s protocol and proposed a more secure and efficient scheme [19] to eliminate the security flaws. However, Farash and Attari indicated that Tallapally’s scheme was vulnerable to an undetectable online password guessing attack and insecure against an offline password guessing attack, and proposed an enhanced protocol [11]. In [9], Lu et al. observed that Farash and Attari’s protocol was still insecure against an offline password guessing attack, which causes an impersonation attack, and proposed a modified 3PAKE protocol for wireless communication (3WPAKE for short) without using smart cards. In [20], Chen et al. launched an offline password guessing attack on Lu et al.’s protocol, and proposed an enhanced version not preserving anonymity.
The contribution of this work is as follows. First, we point out the following weaknesses in the 3WPAKE protocol that are less feasible for healthcare support practical application: (1) 3WPAKE protocol does not achieve user anonymity or untraceability, and it is vulnerable to a privileged insider attack that causes impersonation attack. (2) As users in the 3WPAKE calculate exponentiation operations, it is inefficient for resource-constrained healthcare environments. Second, we develop a new secure biometric-based efficient password-authenticated key exchange (SBAKE) protocol and present the healthcare support wireless communication environment that is aimed to deploy the SBAKE protocol. To manage authorization and access to the server, we employ chaotic map and biometric verification, along with password verification. When chaos properties such as unpredictability are applied, there is an understanding of parameter sensitivity, e.g., of initial conditions, such that these properties satisfy the goal of efficiency, specifically, of being more computationally efficient than modular exponential computation and multiplication operations of an elliptic curve [21,22] and the essential properties of cryptography. Researchers have proposed security enhanced protocols [21,23,24,25,26,27,28,29] that use biological characteristics such as fingerprints or irises. A practical implementation is a fuzzy extractor for biometric key extraction. Fuzzy extractors have the advantage of protecting the biometric template by rendering its storage useless [30,31]. Their performance in terms of key entropy and key stability is consistently improved. Third, we prove that the proposed mechanism satisfies various security properties and provide formal security proofs using random oracle model and automated validation of internet security protocols and applications (AVISPA). Finally, we analyze that the SBAKE protocol performs better computational complexity and time consumption than other existing protocols. The high security and significantly low computation and communication costs of our protocol make it suitable for healthcare support PAKE protocols.

2. Materials and Methods

This section introduces the cryptographic one-way hash function [29], Chebyshev chaotic map [32,33], fuzzy extractor [24,25,34], notations used in this paper, threat model, and security properties.
Collision-Resistant one-way Hash Function
Definition 1.
A collision-resistant one-way hash function h : { 0 , 1 } * { 0 , 1 } n takes a random length binary string x { 0 , 1 } * as an input and outputs a fixed n-bit binary string h ( x ) = { 0 , 1 } n . The probability of an adversary A finding a collision is defined as
A d v A H A S H ( t ) = Pr [ A ( x , x ) : x x , h ( x ) = h ( x ) ] ,
where Pr[E] refers to the probability an event E occurring, and A(x, x′) means that the pair (x, x′) is chosen by A. In this case, the probability in the advantage is computed over that of the random choices made by A with execution time t. The hash function h(·) is collision-resistant, if A d v A H A S H ( t ) ε for sufficiently small ε > 0 .
Chebyshev Chaotic Map and its Properties
Let n be an integer and x be a real number within the interval [−1, 1]. The Chebyshev polynomial of degree n is defined as Tn(x) = cos(n·arccos(x)). With this equation, the recurrence relation Tn(x) is defined as Tn(x) = 2xTn−1(x) − Tn−2(x), where n ≥ 2, T 0 ( x ) = 1 ,   T 1 ( x ) = x , and satisfies the semigroup property: Tr(Ts(x)) = Trs(x) = Ts(Tr(x)). In order to improve security, Zhang [35] proved that the semigroup property holds for Chebyshev polynomials defined over the interval ( , + ) . In this work, the enhanced Chebyshev polynomials are used: T n ( x ) = 2 x T n 1 ( x ) T n 2 ( x ) ( m o d   p ) , where n ≥ 2, x ( , + ) , and p is a large prime. They are subject to the following two problems.
Definition 2.
Given x and y, the Chaotic Maps Discrete Logarithm Problem (CMDLP) is that finding an integer r such that y = Tr(x) is computationally infeasible. The probability of an adversary A being able to solve the CMDLP is defined as
A d v A C M D L P ( t ) = Pr [ A ( x , y ) = r : r Z p * , y = T r ( x ) ( m o d   p ) ] .
Definition 3.
Given x, Tr(x), and Ts(x), the Chaotic Map Diffie-Hellman Problem (CMDHP) is that calculating Trs(x) is computationally infeasible.
Fuzzy Extractor
A fuzzy extractor extracts a string σ from its biometric input Bioi in an error-tolerant way. This method was used in order to avoid the problem of bio-hash [30] and utilization of noisy biometrics. The fuzzy extractor method involves the following two operations:
Gen: This procedure is defined as Gen(Bioi) = (σi, τi), where the biometric data Bioi is the input of Gen, and it outputs an “extracted” secret key string σi { 0 , 1 } l of length l and an auxiliary public reproduction string τi.
Rep: This procedure takes a noisy biometric Bioi’ and its corresponding string τi as input, and if the Hamming distance between Bioi and Bioi’ is less than the threshold th, the Rep procedure recovers the biometric key data σi: Rep(Bioi’, τi) = σi if d(Bioi, Bioi’) < th.
If the input changes but remains close, the extracted σi remains the same. To assist in recovering σi from Bioi’, a fuzzy extractor outputs a public string τi. The extracted key σi from Bioi by a fuzzy extractor can be used as a key in any cryptographic application, but, unlike traditional keys, need not be stored because it can be recovered from any Bioi’ close to Bioi.
Notations
The notations used throughout this paper are listed in Table 1.
Threat Model
We introduce the following security assumptions [16] regarding the capabilities of the probabilistic polynomial-time adversary A to achieve the security properties of the 3PAKE protocols for wireless communications.
  • A can eavesdrop, insert, intercept, alter, and delete messages exchanged among the protocol, user UA, user UB, and the server S.
  • A may be a legitimate protocol participant (an insider), an external party (an outsider), or some combination of the two.
Security Requirements
A secure 3PAKE protocol with mutual anonymity in wireless communication should satisfy the following requirements [36,37]:
  • User anonymity: Even if an adversary eavesdrops on the messages transmitted in the communication parties, the user’s identity should be protected.
  • Mutual authentication: Two partnering users and the server can authenticate one another.
  • Session key security: No one except for those who are partnered can establish the session key.
  • Known-key security: When a particular session key is lost, it does not reveal the other session keys.
  • Forward secrecy: Even if a user’s password is compromised, it does not reveal past session keys or the new password.
  • Robustness: The protocol should withstand various types of attacks, such as offline password guessing, replay, insider, and impersonation.

3. Results

In this section, we analyze why the 3WPAKE does not achieve anonymity or untraceability, and why it is vulnerable to privileged insider attack that causes impersonation attacks. Moreover, as users in and the 3WPAKE protocol calculate exponentiation operations, it is inefficient for resource-constrained healthcare mobile environments. The details are as follows.

3.1. Revisit of 3WPAKE Protocol

Before we explain the issue of failure to achieve privacy and other security properties, this section revisits the 3WPAKE protocol.
Step 1. UA randomly selects x, rAZp*, computes HA = h(pwA) ⊕ rA, VA = h(pwA   r A IDA), RA = gxVA (mod q), and sends MA1 = {HA, VA, RA, IDA} to S. Similarly, UB sends MB1 = {HB, VB, RB, IDB} to S.
Step 2. With the received messages MA1 and MB1, S computes rA, rBZp* using the known passwords pwA and pwB, and checks whether or not the received VA and VB are equal to h(pwA rA IDA) and h(pwB rB IDB), respectively. Then, S computes RA’ = RAh(pwA rA IDA) and RB’ = RBh(pwB rB IDB), chooses a random number zZp* and computes NS = gz (mod q), Ksa = (RA’)z (mod q), KSB = (RB’)z (mod q), TA = h(pwA     rA KSA IDA), TB = h(pwB rB KSB IDB). After that, S sends the messages MSA1 = {TA, IDB, NS} to UA and MSB1 = {TB, IDA, NS} to UB.
Step 3. With the received message MSA1, UA computes KAS = (NS)x (mod q), checks whether or not the received TA is equal to h(pwA rA KAS IDA), then computes WA = h(IDA IDB KAS   pwA rA), sends MA2 = {IDA, WA} to S. Simultaneously, with the received message MSB1, UB sends MB2 = {IDB, WB} to S.
Step 4. With the received messages MA2 and MB2, S checks whether or not WA = h(IDA IDB KSA pwA rA) and WB = h(IDA IDB KSB pwB rB), computes QA = KSBh(IDA IDB KSA pwA rA) and QB = KSAh(IDA IDB KSB pwB rB). Then, S sends QA to UA and QB to UB.
Step 5. With the received message QA, UA computes KSB = QAh(UA UB KSA     pwA   rA), sk = (KSB)x (mod q), AuthA = h(sk     IDA IDB), sends AuthA to UB. With the received message QB, UB sends AuthB to UA.
Step 6. With the received AuthA and AuthB, UA and UB evaluate the correctness of AuthA and AuthB, then agree on the session key sk = gxyz.

3.2. Security Analysis of 3WPAKE Protocol

Violating anonymity: An authentication protocol could provide user anonymity if no adversary can compromise the user’s identity by launching active or passive attacks in any phase [21]. In the 3WPAKE protocol, messages MA1, MB1, MSA1, MSB1, MA2, and MB2 include plain text information about the UA and UB, so an adversary can easily acquire communication entities for sending and receiving messages through eavesdropping on the communication channel. This violates the preservation of user anonymity (privacy), which is a basic property of the authentication protocol.
Violating untraceability: User untraceability means that an adversary cannot identify any previous sessions involving the same user. In the 3WPAKE protocol, messages MA1, MB1, MSA1, MSB1, MA2, and MB2 include plain text information about the UA and UB so that an adversary can easily acquire communication entities for sending and receiving messages through eavesdropping on the communication channel. This violates the preservation of user untraceability, which is a basic property of an authentication protocol.
Vulnerability to privileged insider attack: Authenticated principals acting maliciously form the basis of a powerful attacking model. This model has been used by other researchers such as Bellare and Rogaway [38], who assumed that the adversary can corrupt any principal at any time. It was pointed out by Gollmann [39] that this corresponds to the most realistic situation in commercial applications, where most real-world attacks come from insiders. A privileged insider attack occurs when an administrator can access a user’s password so as to impersonate that user. In Step 2 of the 3WPAKE protocol, S knows UA and UB’s identities and passwords; so as malicious S can easily conduct a privileged insider attack as follows.
1. Malicious S selects x, rAZp* imitating UA, computes RA = gxh(pwA rA IDA), KSA = (RA)z, QB = KSAh(IDA IDB KSB pwB rB), and sends QB to UB in Step 4 of the 3WPAKE protocol.
2. Malicious S can compute the session key sk = (KSB)x, AuthA = h(sk IDA IDB), then sends AuthA and IDA to UB.
Therefore, malicious S easily impersonates UA, and shares a session key sk with UB, without any authentication problem. The session key should be computed only by the intended parties like UA and UB, and not by S. A secure authenticated key exchange protocol should block the malicious S impersonating any legal user. This vulnerability may cause security risks in a real situation, like the IoT environment. We must modify the 3WPAKE protocol such that no malicious inside attacker can impersonate any legal user.
Vulnerability to replay attack: Suppose an adversary A records the login request message MA1 and resends it to S, then S computes rA, VA, RA’, NS, KSA, TA, and sends a response message MSA1 to UA without recognizing that the login request message was old and had been sent again. In the 3WPAKE protocol, S cannot distinguish between old login request messages and fresh login request messages. Even if A cannot compute the session key, this vulnerability may be exploited by an adversary, leading to a waste of system resources that can threaten the entire system.
Inefficient authentication phase: Lu et al. [9] assume open access to wireless services for wireless communications using various portable devices (mobile phones, laptops, USB thumb drives, and PDAs). Efficiency is crucial for resource-constrained portable devices. In the 3WPAKE protocol, UA and UB compute exponentiation operations in Step 1, 3, and 5 in the previous section, which exhausts resource-constrained devices. We need to improve efficiency in order to satisfy the need for secure/private access to services via wireless communication networks.

3.3. The SBAKE Protocol

This section demonstrates our SBAKE protocol, which fixes the vulnerabilities of the 3WPAKE protocol by applying biometric data and adopting a chaotic map that is much more efficient than performing point multiplication operations of the elliptic curve [21]. Figure 1 presents the healthcare support wireless communication environment that is aimed to deploy the SBAKE protocol, where users can be patients and staff can be doctors, pharmacists, or the medical billing center. Users and staff register to the server, then perform the login and authentication phase. The data of user is collected using IoTs and transferred to the server, which is able to store and process a huge amount of data. The data is accessible to the staff of the healthcare organization, then the staff can provide health services to the users. We assume that the following information has been pre-established in the registration phase. In order to compute message size, based on [16], we set both the block size of one-way hash function h1(.), h2(.), and Chebyshev chaotic map to a length of 20 bytes; identities IDA, IDB, and passwords pwA, pwB to 8 bytes, and the random numbers d and k to 16 bytes in length.
Registration phase: By performing the following steps (Figure 2a), a new UA registers to S.
Step 1. UA selects IDA, pwA, and inputs biometric BioA in UA’s mobile device. UA extracts σA and τA as Gen(BioA) = (σA, τA) by applying a Fuzzy extractor on BioA, computes h1(pwA σA), and sends {IDA, h1(pwA σA)} to S via a secure channel.
Step 2. With the received information from UA, S randomly selects yA, computes VA = h1(yA s) ⊕ h1(s), SA = h1(IDA s)h1(pwA σA), IA = IDAh1(yA s), stores {SA, IA, h1(yA s)} in its database, and sends {SA, VA} to UA via a secure channel.
UA computes fA = h1(IDA ⊕pwAσA), and stores {fA, τA, SA, VA, Gen, Rep} in UA’s mobile device.
Login and authentication phase: By performing the following steps (Figure 2c), UA and UB login to S, authenticate each other, and securely share a session key.
Step 1. UA inputs IDA, pwA, BioA, and computes σA* = Rep(BioA, τA), fA* = h1(IDApwAσA*). If fA* ≠ fA, then the process aborts, otherwise (UA, pwA, and σA are approved) UA randomly generates dZp* and computes CA = IDATd(x), WA = SAh1(pwA σA) = h1(IDA s), YA = WACAIDB, αA = h1(IDA CA WA). Then UA sends MA1 = {CA, YA, αA, VA} to S. Similarly, UB inputs IDB, pwB, BioB, and computes σB*= Rep(BioB, τB), fB* = h1(IDBpwBσB*). If fB* ≠ fB, then the process aborts, otherwise UB randomly generates kZp* and computes CB = IDBTk(x), WB = SBh1( pwB σB) = h1(IDB s), YB = WBCBIDA, αB = h1(IDB CB WB). Then UB sends MB1 = {CB, YB, αB, VB} to S.
Step 2. When receiving messages MA1 and MB1, S computes h1(yA s) = VAh1(s) using its secret master key s, derives IDA = IAh1(yA s), Td(x) = CAIDA, and WA = h1(IDAs), similarly, h1(yB s) = VBh1(s), Tk(x) = CBIDB, and WB = h1(IDB     s). Then, S checks whether or not the received αA and αB are equal to h1(IDA CA WA) and h1(IDB CB WB), respectively. Then, S derives YAWACA = IDB, YBWBCB = IDA, so S acquires communication partners, then computes PA = h1(h1(pwA σA) Td(x) IDA IDB), QA = Tk(x) ⊕ IDA, similarly, PB = h1(h1(pwB σB) ∥ Tk(x) IDB IDA), QB = Td(x) ⊕ IDB, and sends MA2 = {PA, QA} to UA and MB2 = {PB, QB} to UB.
Step 3. With the received MA2, UA checks whether or not PA is equal to h1(h1(pwA σA ) Td(x) IDA IDB), and derives Tk(x) = QAIDA, computes sk = h2(Td(x), Tk(x), Tdk(x)) and AuthA = h1(sk Tk(x)). Then, UA sends AuthA to UB. Similarly, with the received MB2, UB checks whether or not PB is equal to h1(h1(pwB σB) Tk(x) IDB IDA), and derives Td(x) = QBIDB, computes sk = h2(Td(x), Tk(x), Tdk(x)) and AuthB = h1(sk Td(x)). Then, UB sends AuthB to UA. Finally, UA and UB agree on the session key sk = h2(Td(x), Tk(x), Tdk(x)).
Based on the above descriptions, in the login and authentication phase, the message size of the {CA, YA, αA, VA}, {CB, YB, αB, VB}, {PA, QA}, {PB, QB}, AuthA, and AuthB can be computed as (20 + 20 + 20 + 20) = 80 bytes, (20 + 20 + 20 + 20) = 80 bytes, (20 + 20) = 40 bytes, (20 + 20) = 40 bytes, 20 bytes, and 20 bytes, respectively. Adding all of these together, the communication overhead becomes (80 + 40 + 20) * 2 = 280 bytes.
Password and biometric update: If UA intends to update his/her password and biometric data, UA inputs old information {IDA, pwAold, BioAold} in the UA’s mobile device, and computes σAold = Rep(BioAold, τAold), fAold = h1(IDApwAold ⊕ σAold). If fAold ≠ fA, then terminates the connection. Otherwise, UA inputs new password pwAnew and new biometric data BioAnew in the UAs mobile device, and computes Gen(BioAnew) = (σAnew, τAnew), fAnew = h1(IDApwAnewσAnew), SAnew = SAoldh1(pwAold   σAold)h1(pwAnew σAnew) then replaces {fAold, τAold, SAold} with {fAnew, τAnew, SAnew} into the UAs mobile device (Figure 2b).

3.4. Security Analysis and Proof of SBAKE Protocol

This section presents the security analysis of the SBAKE protocol.

3.4.1. Simulation using AVISPA

We simulate the SBAKE protocol for formal analysis using the widely accepted simulation tool named AVISPA. The main contribution of this simulation is verifying whether the SBAKE protocol is secure of two attacks, i.e., man-in-the-middle attack and replay attack. This simulation tool is composed of four back-ends: (1) On-the-fly Model-Checker; (2) Constraint-Logic-based Attack Searcher; (3) SAT-based Model Checker; and (4) Tree Automata based on Automatic Approximations or the Analysis of Security Protocols [40].
The SBAKE protocol is implemented in High Level Protocol Specification Language (HLPSL) [41] in AVISPA. The role of UA is shown in Table 2a. UA first receives the start signal, then renews its state value from 0 to 1. This value is retained by the variable state. In a similar way, the roles of UB and S of the SBAKE protocol are described in Table 2b,c, respectively. The roles of the session, goal, and environment are described in Table 2d. The simulation result of the SBAKE protocol using CL-AtSe is shown in Table 3. The result shows that the SBAKE protocol is secure of two attacks: replay and man-in-the-middle attacks.

3.4.2. Formal Security Proof

This subsection describes the formal security analysis of the SBAKE using the random oracle model and demonstrates that the protocol is secure. First, we recall Definition 1 of collision resistant one-way hash function in the preliminaries section.
Theorem 1.
Under the assumption that the collision-resistant one-way hash function h(∙) closely behaves like an oracle, then the SBAKE is provably secure against an adversary A for the protection of a user UA’s personal information including the identity IDA, password pwA and biometric key σA of the user UA, secret master key s that is selected by S, a shared secret key SA between the UA and S, and the session key sk between users UA and UB.
Proof. 
The formal proof of the SBAKE protocol is similar to those shown in [41,42,43]. Using the following oracle model to construct an A that will have the ability to derive UA’s identity IDA, password pwA, biometric key σA, the secret master key s that is selected by S, the shared session key sk between UA and UB, and the shared secret key SA between UA and S.
Reveal: This random oracle will unconditionally output the input x from given hash result y = h(x).
Now, an adversary A runs the experimental algorithm shown in Algorithm 1, E X P H A S H , A S B A K E for the SBAKE protocol. We define the success probability for E X P H A S H , A S B A K E as S u c c e s s H A S H , A S B A K E = | Pr [ E X P H A S H , A S B A K E = 1 ] 1 | . The advantage function for this experiment becomes A d v H A S H , A S B A K E ( t , q R ) = m a x A { S u c c e s s H A S H , A S B A K E } , where the maximum is taken over all of A with execution time t and the number of queries qR made to the Reveal oracle. Considering the experiment presented in Algorithm 1, we acquire that if there exists a Reveal oracle that can invert h1(.) and h2(.), then A could directly derive UA’s identity IDA, password pwA, biometric key σA, the secret master key s selected by S, shared session key sk, and the shared secret key SA between the UA and S. In this case, A will discover the complete connections between UA and S; however, it is computationally infeasible to invert a one-way hash function h(∙), i.e., A d v H A S H , A S B A K E ( t ) ε ,   ε > 0 . Then, we have A d v H A S H , A S B A K E ( t , q R ) ε since A d v H A S H , A S B A K E ( t , q R ) depends on A d v H A S H , A S B A K E ( t ) . Therefore, the SBAKE protocol is provably secure against adversaries for deriving {IDA, pwA, BioA, s, SA, sk}. Deriving {IDB, pwB, BioB, SB} shows a similar phenomenon, so we omit the description here. Hence, the theorem is proven. □
Algorithm 1: Algorithm E X P H A S H , A S B A K E
Eavesdrop login request message {CA,YA,αA,VA}
Call the Reveal oracle. Let (IDA′,CA′,WA) ← Reveal (αA)
Call the Reveal oracle. Let (IDA″, s) ← Reveal (WA)
if (CA′ = CA) and (IDA′ = IDA″) then
  Accept IDA as the correct IDA of user UA and s’ as the correct private key of S
  Compute Td(x) = CAIDA
  Eavesdrop login response message {PA,QA}
  Call the Reveal oracle.
  Let (h1(pwA   σA′),Td(x)’,IDA‴,IDB‴) ← Reveal (PA)
  Call the Reveal oracle.
  Let (pwA″,σA) ← Reveal (h1(pwA σA′))
  if (Td(x)’ = Td(x)) and (IDA = IDA) then
    Accept pwA and σA of the correct password and biometric key of user UA
    Compute SA=h1(pwA     σA) ⊕ h1(IDA     s)
    Compute Tk(x) = QAIDA
    Evesdrop authentication message {AuthA}
    Call the Reveal oracle.
    Let (sk’,Tk(x)’) ← Reveal (AuthA)
    if (Tk(x)’ = Tk(x)) then
      Accept SA as the correct shared secret key between UA and S, sk’ as the session key sk shared
      between UA and UB
      return 1
     else
      reutrn 0
    end if
   else
    return 0
  end if
else
  return 0
end if

3.4.3. Informal Security Proof

This subsection examines that the SBAKE protocol is resistant against various known attacks and achieves the basic security properties described in the preliminaries section. Figure 3a compares the security attributes among the SBAKE and other existing protocols.
SA1. Anonymity: Assume that an adversary A intercepts communication messages MA1, MB1, MSA1, MSB1, AuthA, AuthB during the login and authentication phase, then IDA and IDB cannot be derived from {CA, QA} and {CB, QB} without knowing the random numbers d and k selected by communicating users UA and UB, respectively. Moreover, because of the one-way hash function, IDA and IDB cannot be derived from {αA, PA}, and {αB, PB}. Therefore, the SBAKE protocol provides user anonymity.
SA2. Untraceability: The messages {CA YA, αA} and {PA, QA, AuthA} sent during the login and authentication phase are changed dynamically in each session. Since UA generates a random number d and computes Td(x) in each session, messages {CA YA, αA} and {PA, Qi, AuthA} differ from the messages in the previous sessions. Therefore, the SBAKE protocol provides user untraceability.
SA3. Mutual authentication: In the SBAKE protocol, when the message MA1 = {CA, YA, αA, VA} is received from UA, S computes h1(yA s) = VAh1(s) using its secret master key s and derives IDA = IAh1(yA s). S computes WA = h1(IDA s) and αA’ = h1(IDA CA WA), then checks whether or not the received αA is equal to αA. If this is indeed the case, UA is authenticated. UA authenticates S by checking the verification of PA. Finally, the authentication between UA and UB is completed through the correctness of AuthB and AuthA, which are only available to themselves.
SA4. Privileged insider attack: In the registration phase of the SBAKE protocol, UA sends a registration message {IDA, h1(pwA σA)} to S via a secure channel. The pwA is protected under the one-way hash function h1(∙) and the biometric key σA. Thus, guessing a password pwA from h1(pwA σA) is computationally infeasible. Therefore, the SBAKE protocol is secure against privileged insider attacks.
SA5. Session key security: Suppose that adversary A intercepts all of the messages {CA, YA, αA, VA, PA, QA, AuthA} and {CB, YB, αB, VB, PB, QB, AuthB} that are transmitted via public channel among UA, UB, and S, steals the mobile devices of UA and UB, then extracts all information {fA, fB, τA, τB, SA, SB, VA, VB, Gen, Rep}; however, A cannot compute the session key sk = h2(Td(x), Tk(x), Tdk(x)). Even if A obtains Td(x) and Tk(x), A is required to solve the CMDLP for computing the sk = h2(Td(x), Tk(x), Tdk(x)). In order to compute Td(x) and Tk(x) from {CA, QA} and {CB, QB}, IDA and IDB are needed, respectively. In order to retrieve IDA and IDB from {CA, QA} and {CB, QB}, A needs to know Td(x) and Tk(x), respectively. Without knowing d and k, which are selected randomly by communicating with users UA and UB, respectively, A cannot obtain Td(x) and Tk(x). Moreover, computing Tdk(x) from Td(x) and Tk(x) is required if one wants to obtain the session key, then one will be required to solve the CMDHP. Therefore, the SBAKE protocol provides session key security.
SA6. Offline password guessing attack: Assume that adversary A steals the mobile device of UA and extracts all of the information stored in the device. This information includes {fA, τA, SA, VA, Gen, Rep} that fA = h(IDApwAσA), SA = h(IDA s)h(pwA σA). The IDA and pwA are protected by one-way hash function h1() by the secret parameter including the server‘s secret master key s and secret biometric σA, so guessing the IDA and pwA is computationally infeasible without knowing the biometric BioA of UA and the server’s master secret key s. Moreover, UA’s IDA and pwA are not sent during the communication; so the SBAKE protocol is resistant against offline password guessing attacks.
SA7. Perfect forward secrecy: In the SBAKE protocol, even if adversary A obtains UA and UB ’s {pwA, pwB} or S’s secret master key s, he/she cannot compute the previous session keys. In order to compute previous session key sk, A has to know the random numbers d and k generated by UA and UB. First, A cannot obtain the user’s identity from the login and authentication information {CA, YA, αA, VA, PA, QA, AuthA} and {CB, YB, αB, VB, PB, QB, AuthB}, and even if A obtains Td(x) and Tk(x), A is required to solve the CMDHP in order to compute the sk = h2(Td(x), Tk(x), Tdk(x)). Because of CMDLP, it is infeasible to find d or k from Td(x) and Tk(x), and the random numbers {d, k} are different for each session. Therefore, the SBAKE protocol provides perfect forward secrecy.

4. Discussion

This section presents a comparison made between the SBAKE protocol and the other existing protocols [9,11,19,20,44,45,46] for the computation and communication complexities that express the superiority of the SBAKE efficiency. In Table 4, the performance comparison is made for the total computation cost measured by each operation’s computation complexity, and the communication cost is measured by numbers and the length of a message exchange among entities. For the computation complexity comparison, the definitions of TH, TECC, TEXP, TCCM, and TFE are the time complexity of a one-way cryptographic hash function, an elliptic curve point multiplication, a modular exponentiation, a Chebyshev chaotic map, and a fuzzy extractor operation used in biometric verification, respectively.
As shown in Table 4, we observed that SBAKE, 3WPAKE, Chen et al. [20], Xie et al. [44], Farash and Attari [11], Tallapally [19], Wu et al. [45], Chang et al. [46] protocols require the computation complexities of 21TH + 4TCCM + 2TFE, 20TH + 9TEXP, 16TH + 10TEXP, 12TH + 10TCCM, 18TH + 9TEXP, 15TH + 6TEXP, 12TH + 10TECC, and 14TH + 10TEXP, respectively. According to Chatterjee et al. [28] and Wazid et al. [29], the running times of different cryptographic operations are as follows, on average TH is 0.0005 s, TECC is 0.063075 s, TCCM is 0.02102 s, and TFE is nearly 0.063075 s. In addition, TEXP approximates 240TH [33]. Hence, the result of computation complexity indicates that the SBAKE protocol is more efficient in contrast to 3WPAKE, Chen et al., Xie et al., Farash and Attari, Tallapally, Wu et al., Chang et al.’s protocols.
For the communication complexity comparison, we set the block size of one-way hash function h1(.), h2(.), Chebyshev chaotic map, and elliptic curve point are 20 bytes long, and the modular exponentiation to be 128 bytes long. As shown in Figure 3b, the SBAKE protocol exchanged the least number of messages and had a lower communication load than 3WPAKE, Chen et al. [20], Farash and Attari [11], Tallapally [19], Wu et al. [45], Chang et al. [46]’s protocol, but a slightly increased communication load compared to Xie et al.’s protocol [44] that might be acceptable for security purposes. In short, the SBAKE protocol outperforms when considering computation and communication complexity, as illustrated in Table 4 and Figure 3b.

5. Conclusions

The role of innovative technologies like AI and blockchain in the healthcare system is expected in the future, the system has to be uncompromised and complete. In this work, we analyzed the security of the 3WPAKE protocol and determined the protocol to be vulnerable to privileged insider attacks, to not preserve privacy, and to have inefficient authentication verification. Furthermore, we proposed a SBAKE that fixes the security flaws of 3WPAKE and substantially improves efficiency. Our security and performance comparison implies that the SBAKE protocol achieves both better security and higher efficiency for healthcare support deployment. This is a meaningful conclusion, proposing a SBAKE protocol that is more lightweight and secure than the former protocol.

Author Contributions

Conceptualization, M.K.; validation, D.W.; formal analysis, M.K. and J.M.; writing-original draft, review and editing, M.K.; supervision, N.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by Institute for Information & communications Technology Promotion (IITP), grant funded by the Korea government (MSIT) [2019-0-00203, The Development of Predictive Visual Security Technology for Preemptive Threat Response]. This work was supported by the Ministry of Education of the Republic of Korea and the National Research Foundation of Korea (NRF-2019S1A5C2A04083374).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Bellovin, S.M.; Merritt, M. Encrypted key exchange: Password-based protocols secure against dictionary attacks. In Proceedings of the IEEE Symposium on Research in Security and Privacy, Oakland, CA, USA, 4–6 May 1992; pp. 72–84. [Google Scholar] [CrossRef] [Green Version]
  2. Khan, M.K.; Zhang, J. Improving the security of ‘a flexible biometrics remote user authentication scheme’. Comput. Standards Interfaces 2007, 29, 82–85. [Google Scholar] [CrossRef]
  3. Tseng, Y.M.; Yu, C.H.; Wu, T.Y. Towards scalable key management for secure multicast communication. Inf. Technol. Control 2012, 41, 173–182. [Google Scholar] [CrossRef] [Green Version]
  4. Sun, H.; Wen, Q.; Zhang, H.; Jin, Z. A strongly secure pairing-free certificateless authenticated key agreement protocol for low-power devices. Inf. Technol. Control 2013, 42, 113–123. [Google Scholar] [CrossRef]
  5. Jiang, Q.; Ma, J.; Li, G.; Ma, Z. An improved password-based remote user authentication protocol without smart cards. Inf. Technol. Control 2013, 42, 150–158. [Google Scholar] [CrossRef]
  6. Roy, S.; Chatterjee, S.; Das, A.K.; Chattopadhyay, S.; Kumari, S.; Jo, M. Chaotic map-based anonymous user authentication scheme with user biometrics and fuzzy extractor for crowdsourcing Internet of Things. IEEE Internet Things J. 2018, 5, 2884–2895. [Google Scholar] [CrossRef]
  7. Al-Zubaidie, M.; Zhang, Z.; Zhang, J. LAMHU: A new lightweight robust scheme for mutual users authentication in healthcare applications. Secur. Commun Netw. 2019. [Google Scholar] [CrossRef]
  8. Lee, T.F.; Liu, J.L.; Sung, M.J.; Yang, S.B.; Chen, C.M. Communication-efficient three-party protocols for authentication and key agreement. Comput. Math. Appl. 2009, 58, 641–648. [Google Scholar] [CrossRef] [Green Version]
  9. Lu, Y.; Li, L.; Peng, H.; Yang, Y. A three-party password-based authenticated key exchange protocol for wireless communications. Inf. Technol. Control 2015, 44, 404–409. [Google Scholar] [CrossRef] [Green Version]
  10. Jeon, W.; Kim, J.; Nam, J.; Lee, Y.; Won, D. An enhanced secure authentication scheme with anonymity for wireless environments. IEICE Trans. Commun. 2012, 95, 2505–2508. [Google Scholar] [CrossRef]
  11. Farash, M.S.; Attari, M.A. An enhanced and secure three-party password-based authenticated key exchange protocol without using server’s public-keys and symmetric cryptosystems. Inf. Technol. Control 2014, 43, 143–150. [Google Scholar] [CrossRef]
  12. Liu, T.; Pu, Q.; Zhao, Y.; Wu, S. ECC-based password-authenticated key exchange in the three-party setting. Arab. J. Sci. Eng. 2013, 38, 2069–2077. [Google Scholar] [CrossRef]
  13. Chien, H.Y.; Wu, T.C. Provably secure password-based three-party key exchange with optimal message steps. Comput. J. 2009, 52, 646–655. [Google Scholar] [CrossRef]
  14. Guo, C.; Chang, C.C. Chaotic maps-based password-authenticated key agreement using smart cards. Commun. Nonlinear Sci. Numer. Simul. 2013, 18, 1433–1440. [Google Scholar] [CrossRef]
  15. Yau, W.; Phan, R. Cryptanalysis of a chaotic map-based password-authenticated key agreement protocol using smart cards. Nonlinear Dyn. 2015, 79, 809–821. [Google Scholar] [CrossRef]
  16. Stallings, W. Cryptography and Network Security: Principles and Practices, 4th ed.; Prentice Hall: Upper Saddle River, NJ, USA, 2006. [Google Scholar]
  17. Huang, H.F. A simple three-party password-based key exchange protocol. Int. J. Commun. Syst. 2009, 22, 857–862. [Google Scholar] [CrossRef]
  18. Yoon, E.J.; Yoo, K.Y. Cryptanalysis of a simple three-party password-based key exchange protocol. Int. J. Commun. Syst. 2011, 24, 532–542. [Google Scholar] [CrossRef]
  19. Tallapally, S. Security enhancement on simple three party PAKE protocol. Inf. Technol. Control 2012, 41, 15–22. [Google Scholar] [CrossRef]
  20. Chen, C.M.; Wang, K.H.; Yeh, K.H.; Xiang, B.; Wu, T.Y. Attacks and solutions on a three-party password-based authenticated key exchange protocol for wireless communications. J. Ambient Intell. Hum. Comput. 2019, 10, 3133–3142. [Google Scholar] [CrossRef]
  21. Zhang, L.P.; Zhu, S.H.; Tang, S. Privacy protection for telecare medicine information system using a chaotic map-based three-factor authenticated key agreement scheme. IEEE J. Biomed. Health Inform. 2015, 2168–2194. [Google Scholar] [CrossRef]
  22. Lee, T.F. Efficient and secure temporal credential-based authenticated key agreement using extended chaotic maps for wireless sensor networks. Sensors 2015, 15, 14960–14980. [Google Scholar] [CrossRef] [Green Version]
  23. Renuka, K.; Kumar, S.; Kumari, S.; Chen, C.M. Cryptanalysis and improvement of a privacy-preserving three-factor authentication protocol for wireless sensor networks. Sensors 2019, 19, 4625. [Google Scholar] [CrossRef] [Green Version]
  24. He, D.; Kumar, N.; Lee, J.H.; Sherratt, R. Enhanced three-factor security protocol for consumer USB mass storage devices. IEEE Trans. Consum. Electron. 2014, 60, 30–37. [Google Scholar] [CrossRef]
  25. Ravanbakhsh, N.; Nazari, M. An efficient improvement remote user mutual authentication and session key agreement scheme for E-health care system. Multimed. Tools Appl. 2016, 1–34. [Google Scholar] [CrossRef]
  26. Lee, C.C.; Hsu, C.W. A secure biometric-based remote user authentication with key agreement scheme using extended chaotic maps. Nonlinear Dyn. 2013, 71, 201–211. [Google Scholar] [CrossRef]
  27. Mishra, D.; Das, A.K.; Mukhopadhyay, S. A secure user anonymity-preserving biometric-based multi-server authenticated key agreement scheme using smart cards. Expert Syst. Appl. 2014, 41, 8129–8143. [Google Scholar] [CrossRef]
  28. Chatterjee, S.; Roy, S.; Das, A.K.; Chattopadhyay, S.; Kumar, N. Secure biometric-based authentication scheme using Chebyshev chaotic map for multi-server environment. IEEE Trans. Dependable Secur. Comput. 2016. [Google Scholar] [CrossRef]
  29. Wazid, M.; Das, A.K.; Kumari, S.; Li, X.; Wu, F. Design of an efficient and provably secure anonymity preserving three-factor user authentication and key agreement scheme for TMIS. Secur. Commun. Netw. 2016, 9, 1983–2001. [Google Scholar] [CrossRef] [Green Version]
  30. Wei, F.; Ma, J.; Jiang, Q.; Shen, J.; Ma, C. Cryptanalysis and improvement of an enhanced two-factor user authentication scheme in wireless sensor networks. Inf. Technol. Control 2016, 45, 62–70. [Google Scholar] [CrossRef] [Green Version]
  31. Dodis, Y.; Kanukurthi, B.; Katz, J.; Rezin, L.; Smith, A. Robust fuzzy extractors and Authenticated key agreement from close secrets. IEEE Trans. Dependable Secur. Comput. 2012, 58, 6207–6222. [Google Scholar] [CrossRef] [Green Version]
  32. Kuo, W.; Lin, C.; Chuang, C.; Kao, M. Simultaneous and anonymous mobile network authentication scheme based on chaotic maps. Inf. Technol. Control 2016, 45, 208–213. [Google Scholar] [CrossRef]
  33. Wang, W.; Cheng, Q.A. Multi-party secret handshake scheme based on chaotic maps. Inf. Technol. Control 2017, 46, 138–149. [Google Scholar] [CrossRef] [Green Version]
  34. Dodis, Y.; Reyzin, L.; Smith, A. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. Adv. Cryptol. (Eurocrypt) 2004, LNCS 3027, 523–540. [Google Scholar]
  35. Zhang, L. Cryptanalysis of the public key encryption based on multiple chaotic systems. Chaos Solitons Fractals 2008, 37, 669–674. [Google Scholar] [CrossRef]
  36. Xu, D.; He, D.; Choo, K.K.R.; Chen, J. Provably secure three-party password authenticated key exchange protocol based on ring learning with error. In Cryptographers’ Track at the RSA Conference; Springer: Cham, Switzerland, 2017; p. 360. [Google Scholar]
  37. Chen, C.; Fang, W.; Liu, S.; Wu, T.; Pan, J.; Wang, K. Improvement on a chaotic map-based mutual anonymous authentication protocol. J. Inf. Sci. Eng. 2016, 34, 371–390. [Google Scholar]
  38. Bellare, M.; Rogaway, P. Entity authentication and key distribution. In Advances in Cryptology—CRYPTO’93; Lecture Notes in Computer Science; Stinson, D.R., Ed.; Springer: Berlin/Heidelberg, Germany, 1993; Volume 773, pp. 232–249. [Google Scholar]
  39. Gollman, D. Insider Fraud. Security Protocols-6th International Workshop; Springer Science & Business Media: Cambridge, UK, 1998; Volume 1550, pp. 220–226. [Google Scholar]
  40. Moon, J.; Lee, Y.; Kim, J.; Won, D. Improving an anonymous and provably secure authentication protocol for a mobile user. Secur. Commun. Netw. 2017. [Google Scholar] [CrossRef]
  41. Das, A.K. A secure and effective user authentication and privacy preserving protocol with smart cards for wireless communications. Netw. Sci. 2013, 2, 12–27. [Google Scholar] [CrossRef]
  42. Das, A.K.; Paul, L.N.; Tripathy, R. Cryptanalysis and improvement of an access control in user hierarchy based on elliptic curve cryptosystem. Inf. Sci. 2012, 209, 80–92. [Google Scholar] [CrossRef]
  43. Jung, J.; Moon, J.; Lee, D.; Won, D. Efficient and security enhanced anonymous authentication with key agreement scheme in wireless sensor networks. Sensors 2017, 17, 644. [Google Scholar] [CrossRef]
  44. Xie, Q.; Hu, B.; Wu, T. Improvement of a chaotic maps-based three-party password-authenticated key exchange protocol without using servers public key and smart card. Nonlinear Dyn. 2015. [Google Scholar] [CrossRef]
  45. Wu, S.; Pu, Q.; Wang, S.; He, D. Cryptanalysis of a communication-efficient three-party password authenticated key exchange protocol. Inf. Sci. 2012, 215, 83–96. [Google Scholar] [CrossRef]
  46. Chang, T.Y.; Hwang, M.S.; Yang, W.P. A Communication-Efficient Three-Party Password Authenticated Key Exchange Protocol. Inf. Sci. 2011, 181, 217–226. [Google Scholar] [CrossRef]
Figure 1. Healthcare support wireless communication environment in the SBAKE protocol.
Figure 1. Healthcare support wireless communication environment in the SBAKE protocol.
Electronics 09 00733 g001
Figure 2. (a) Registration phase; (b) Password and biometric update; (c) Login and authentication phase of SBAKE protocol.
Figure 2. (a) Registration phase; (b) Password and biometric update; (c) Login and authentication phase of SBAKE protocol.
Electronics 09 00733 g002
Figure 3. (a) SA1: provide anonymity, SA2: provide untraceability, SA3: provide mutual authentication, SA4: resist privileged insider attack, SA5: provide session key secrecy, SA6: resist offline password guessing attack, SA7: provide perfect forward secrecy, √: yes, x: no; (b) performance comparison between SBAKE and existing other protocols.
Figure 3. (a) SA1: provide anonymity, SA2: provide untraceability, SA3: provide mutual authentication, SA4: resist privileged insider attack, SA5: provide session key secrecy, SA6: resist offline password guessing attack, SA7: provide perfect forward secrecy, √: yes, x: no; (b) performance comparison between SBAKE and existing other protocols.
Electronics 09 00733 g003
Table 1. Notations used in this paper and 3WPAKE.
Table 1. Notations used in this paper and 3WPAKE.
NotationDescription
3WPAKESBAKE
UA, UBUA, UBCommunication parties user A and user B
SSServer
IDA, IDBIDA, IDBIDs of user A and user B
pwA, pwBpwA, pwBPasswords of user A and user B
p, qpLarge prime numbers
ZpZpRing of integer modulo p
Zp*Zp*The multiplicative group of non-zero integers modulo p
g-A generator of G (⊆ Zp*)
h(∙)h1()One-way hash function h1:{0,1}*→{0,1}l
-h2()One-way hash function h2:[−1, 1]→{0,1}l
-yA, yBRandom numbers selected by server S
rA,dRandom numbers selected by user A
rB,kRandom numbers selected by user B
x, y, z-Random exponents selected by user A, user B, and server S, respectively
-sSecret master key selected by server S
HA, VA, WA, RAfA, CA,WA, YA,αAAuthentication parameters of user A
HB, VB, WB, RBfB, CB, WB, YB,αBAuthentication parameters of user B
Ns, TA, TBPA, PB, QA, QBAuthentication parameters of server S
KSA, KSBSA, SBServer S’s keys used to authenticate user A and user B
KAS, KBS-User’s keys used to authenticate the server S
AuthA, AuthBAuthA, AuthBComputed user’s parameters used to authenticate user A and user B
QA, QBVA, VB, IA, IB,Computed server’s parameters for user A and user B
skskSession key shared with user A and user B
⊕, ⊕, Exclusive-or and concatenation operation
-BioA, BioBBiometric data of user A and user B
-Gen, RepFuzzy generator and reproduction procedure, respectively
-σA, σBBiometric secret key of user A and user B
-τA, τBBiometric public reproduction parameter of user A and user B
-thError tolerance threshold used by fuzzy extractor
-Tn(.)Chebyshev polynomial of degree n
Abbreviations: SBAKE, secure biometric-based efficient password-authenticated key exchange; 3WPAKE, three-party password-authenticated key exchange for wireless communication.
Table 2. Role specification for (a) user U A , (b) user U B , (c) user S, (d) session, goal, and environment.
Table 2. Role specification for (a) user U A , (b) user U B , (c) user S, (d) session, goal, and environment.
(a)(b)
role usera(Ua, AS, Ub: agent,role userb(Ua, AS, Ub: agent,
SKas: symmetric_key,SKbs: symmetric_key,
H, F: hash_func,H, F: hash_func,
SND, RCV: channel(dy))SND, RCV: channel (dy))
played_by Ua def=played_by Ub def=
local State: nat,local State: nat,
IDa, IDb, PWa, BIOa, Oa, Ga, RPWa: text,IDa, IDb, PWb, BIOb, Ob, Gb, RPWb: text,
Ya, Va, Wa, Sa, La, S: text,Yb, Vb, Wb, Sb, Lb, S: text,
Aa, Ca, Pa, Pb, Qa, Qb, D, K, X, Y1, Y2, SKab: textAb, Cb, Pa, Pb, Qa, Qb, D, K, X, Y1, Y2,
SKba: text
init State:= 0
init State:= 0
transition
transition
1. State = 0 /\ RCV(start) =|>
State’:= 1 /\ RPWa’:= H(PWa.Oa)1. State = 0 /\ RCV(start) =|>
/\ secret({PWa,Oa}, sc1, Ua)State’:= 1 /\ RPWb’:= H(PWb.Ob)
/\ secret(IDa, sc2, {Ua, Ub, AS})/\ secret({PWb,Ob}, sc3, Ub)
/\ SND({IDa.RPWa’}_SKas)/\ secret(IDb, sc4, {Ua, Ub, AS})
/\ SND({IDb.RPWb’}_SKbs)
2. State = 2
/\ RCV({xor(H(IDa.S),H(PWa.Oa)).xor(H(Y1’.S),H(2. State = 3
S)).X}_SKas) =|>/\ RCV({xor(H(IDb.S),H(PWb.Ob)).xor(H(Y
State’:= 4 /\ D’:= new()2’.S),H(S)).X}_SKbs) =|>
/\ Ca’:= xor(IDa,F(D’.X))State’:= 5 /\ K’:= new()
/\ Wa’:=/\ Cb’:= xor(IDb,F(K’.X))
xor(xor(H(IDa.S),H(PWa.Oa)),H(PWa.Oa))/\ Wb’:=
/\ Ya’:= xor(Wa’,Ca’,IDb)xor(xor(H(IDb.S),H(PWb.Ob)),H(PWb.Ob))
/\ Aa’:= H(IDa.Ca’.Wa’)/\ Yb’:= xor(Wb’,Cb’,IDa)
/\ SND(Ca’.xor(H(Y1’.S),H(S)).Ya’.Aa’)/\ Ab’:= H(IDb.Cb’.Wb’)
/\ SND(Cb’.xor(H(Y2’.S),H(S)).Yb’.Ab’)
3. State = 6
/\ RCV(H(H(PWa.Oa).F(D’.X).IDa.IDb).xor(F(K’.X)3. State = 6
,IDa)) =|>/\ RCV(H(H(PWb.Ob).F(K’.X).IDb.IDa).xor
State’:= 7 /\ SKab’:=(F(D’.X),IDb)) =|>
H(F(D’.X).xor(xor(F(K’.X),IDa),IDa).F(D’.xor(xor(F(State’:= 8 /\ SKba’:=
K’.X),IDa),IDa)))H(F(K’.X).xor(xor(F(D’.X),IDb),IDb).F(K’.xo
r(xor(F(D’.X),IDb),IDb)))
end role
end role
(c)(d)
role applicationserver(Ua, AS, Ub: agent,role session(Ua, Ub, AS: agent,
SKas, SKbs: symmetric_key,SKas, SKbs: symmetric_key,
H, F: hash_func,H, F: hash_func)
SND, RCV: channel (dy))
def=
played_by AS def=local Z1, Z2, Z3, S1, S2, S3: channel (dy)
local State: nat,composition
IDa, IDb, PWa, PWb, BIOa, BIOb, Oa, Ga, Ob, Gb,
RPWa, RPWb: text,usera(Ua, AS, Ub, SKas, H, F, Z1, S1)
Ya, Yb, Va, Vb, Sa, Sb, La, Lb, S, Y1, Y2: text,/\ userb(Ua, AS, Ub, SKbs, H, F, Z2, S2)
Aa, Ab, Ca, Cb, Fa, Fb, Pa, Pb, Qa, Qb, D, K, X: text/\ applicationserver(Ua, AS, Ub, SKas,
SKbs, H, F, Z3, S3)
init State:= 1
end role
transition
role environment() def=
1. State = 1 /\ RCV(IDa.H(PWa.Oa)) =|>
State’:= 2 /\ Y1’:= new()const ua, as, ub: agent,
/\ Va’:= xor(H(Y1’.S),H(S))skas, skbs, skab, skba: symmetric_key,
/\ Sa’:= xor(H(IDa.S),H(PWa.Oa))h, f: hash_func,
/\ La’:= xor(IDa,H(Y1’.S))ca, va, ya, aa: text,
/\ secret(S, sc5, AS)cb, vb, yb, ab: text,
/\ secret(H(Y1’.S), sc6, AS)pa, qa, pb, qb: text,
/\ SND({Sa’.Va’.X}_SKas)sc1, sc2, sc3, sc4, sc5, sc6, sc7, sc8:
protocol_id
2. State = 3 /\ RCV(IDb.H(PWb.Ob)) =|>
State’:= 4 /\ Y2’:= new()intruder_knowledge = {ua, as, ub, h, f, ca,
/\ Vb’:= xor(H(Y2’.S),H(S))va, ya, aa, cb, vb, yb, ab, pa, qa, pb, qb}
/\ Sb’:= xor(H(IDb.S),H(PWb.Ob))
/\ Lb’:= xor(IDb,H(Y2’.S))composition
/\ secret(H(Y2’.S), sc7, AS)
/\ SND({Sb’.Vb’.X}_SKbs)session(ua, as, ub, skas, skbs, h, f)
3. State = 5end role
/\ RCV(xor(IDa,F(D’.X)).xor(H(Y1’.S),H(S)).xor(H(I
Da.S),xor(IDa,F(D’.X)),goal
IDb).H(IDa.xor(IDa,F(D’.X)).H(IDa.S)))
/\ RCV(xor(IDb,F(K’.X)).xor(H(Y2’.S),H(S)).xor(H(Isecrecy_of sc1
Db.S),xor(IDb,F(K’.X)),IDa).secrecy_of sc2
H(IDb.xor(IDb,F(K’.X)).H(IDb.S))) =|>secrecy_of sc3
State’:= 6 /\ Pa’:=secrecy_of sc4
H(xor(H(IDa.S),xor(H(IDa.S),H(PWa.Oa))).F(D’.X).secrecy_of sc5
IDa.IDb)secrecy_of sc6
/\ Qa’:= xor(F(K’.X),IDa)secrecy_of sc7
/\ Pb’:=
H(xor(H(IDb.S),xor(H(IDb.S),H(PWb.Ob))).F(K’.X).end goal
IDb.IDa)
/\ Qb’:= xor(F(D’.X),IDb)environment()
/\ SND(Pb’.Qb’)
/\ SND(Pa’.Qa’)
end role
Table 3. The result of simulation CL-AtSe backends.
Table 3. The result of simulation CL-AtSe backends.
SUMMARY
 SAFE
DETAILS
 BOUNDED_NUMBER_OF_SESSIONS
 TYPED_MODEL
PROTOCOL
 /home/span/span/testsute/results/test.if
GOAL
 As Specified
BACKEND
 CL-AtSe
STATISTICS
 Analysed: 0 states
 Reachable: 0 states
 Translation: 0.02 seconds
 Computation: 0.00seconds
Table 4. Performance comparison for the login and authentication phase.
Table 4. Performance comparison for the login and authentication phase.
ProtocolComputation CostTotal CostMessage Exchange (Number/Byte)
UAUBSUA-SUB-SUA-UBTotal
SBAKE7TH + 2TCCM + 1TFE7TH + 2TCCM + 1TFE7TH21TH + 4TCCM + 2TFE2/1202/1202/406/280
3WPAKE [9]5TH + 3TEXP5TH + 3TEXP10TH + 3TEXP20TH + 9TEXP4/4884/4882/5610/1032
Chen et al. [20]5TH + 3TEXP5TH + 3TEXP6TH + 4TEXP16TH + 10TEXP4/3724/3720/010/744
Xie et al. [44]3TH + 3TCCM3TH + 3TCCM6TH + 4TCCM12TH + 10TCCM4/1243/1080/07/232
Farash and Attari [11]6TH + 3TEXP6TH + 3TEXP6TH + 3TEXP18TH + 9TEXP4/4404/4402/4010/920
Tallapally [19]5TH + 2TEXP5TH + 2TEXP5TH + 2TEXP15TH + 6TEXP2/2842/2842/406/608
Wu et al. [45]4TH + 3TECC4TH + 3TECC4TH + 4TECC12TH + 10TECC3/1361/1002/1086/344
Chang et al. [46]5TH + 3TEXP5TH + 3TEXP4TH + 4TEXP14TH + 10TEXP3/3121/202/3246/656

Share and Cite

MDPI and ACS Style

Kim, M.; Moon, J.; Won, D.; Park, N. Revisit of Password-Authenticated Key Exchange Protocol for Healthcare Support Wireless Communication. Electronics 2020, 9, 733. https://doi.org/10.3390/electronics9050733

AMA Style

Kim M, Moon J, Won D, Park N. Revisit of Password-Authenticated Key Exchange Protocol for Healthcare Support Wireless Communication. Electronics. 2020; 9(5):733. https://doi.org/10.3390/electronics9050733

Chicago/Turabian Style

Kim, Mijin, Jongho Moon, Dongho Won, and Namje Park. 2020. "Revisit of Password-Authenticated Key Exchange Protocol for Healthcare Support Wireless Communication" Electronics 9, no. 5: 733. https://doi.org/10.3390/electronics9050733

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop