ES-HAS: ECC-Based Secure Handover Authentication Scheme for Roaming Mobile User in Global Mobility Networks

: The design and implementation of two-factor schemes designed for roaming mobile users for global mobility networks in smart cities requires attention to protect the scheme from various security attacks, such as the replay attack, impersonation attack, man-in-the-middle attack, password-guessing attack and stolen-smart-card attack. In addition to these attacks, the scheme should achieve user anonymity, unlinkability and perfect forward secrecy. In the roaming scenario, as mobile users are connected to the foreign network, mobile users must provide authentication details to the foreign network to which they are connected. The foreign network forwards the authentication messages received from the mobile users to their home network. The home network validates the authenticity of the mobile user. In the roaming scenario, all communication between the three entities is carried over an insecure channel. It is assumed that the adversary has the capabilities to intercept the messages transmitted over an insecure channel. Hence, the authentication scheme designed must be able to resist the above-mentioned security attacks and achieve the security goals. Our proposed scheme ES-HAS (elliptic curve-based secure handover authentication scheme) is a two-factor authentication scheme in which the mobile user possesses the password, and the smart card resists the above-mentioned security attacks. It also achieves the above-mentioned security goals. We also extended our two-factor authentication to a multi-factor authentication scheme using the ﬁngerprint biometric technique. The formal security analysis using BAN logic and the formal security veriﬁcation of the proposed scheme using the widely accepted AVISPA (automated validation of internet security protocols and applications) tool is presented in this article. In comparison with the related schemes, the proposed scheme is more efﬁcient and robust. This makes the proposed scheme suitable for practical implementation.


Introduction
With the widespread usage of the internet, there has been an increased demand for internet services. Users are able to access internet services through mobile devices over wireless networks. Hence, securing the network in order to achieve network security goals, such as confidentiality, integrity and availability, becomes imperative. The global mobility network (GLOMONET) facilitates a roaming service for the mobile user (MU) to access various kind of services provided by the home network (HN) while roaming in a foreign network (FN). Authenticating MU in the roaming network is an important security issue. In order to address this issue, researchers have proposed many two-factor and 1.
Quick wrong password detection: MUs use different network-based applications which provide the credentials for users to access their services. To prove the authenticity of the MU using the services, the MU has to input the pair of identity and password. In the event of wrong input of the password, there must be a mechanism to prompt the user about the wrong input login credentials. The mechanism developed must verify the credentials and reject the request of the MUs with invalid credentials, which saves further computational and communication costs.

2.
Mutual authentication: In the roaming scenario, the MU is away from the HN. Therefore, the MU cannot access the services from the HN. Therefore, the foreign network serves the roaming MU present in the cell area of the FN. To access the services from the FN, the MU has to authenticate HN and FN. The FN forwards the authentication messages sent by the MU to the HN. The HN verifies the authenticity of the MU. After receiving successful verification of the MU credentials, the FN grants access to the services to the MU. In such a roaming environment, where the FN is semi-trusted, the roaming MU is not trusted and the HN is assumed to be fully trusted and thus mutual authentication between all the participating entities in the communication becomes imperative to resist security attacks, such as the man-in-the-middle attack, replay attack, and impersonation attack.

3.
Fairness of session key: The session key is derived between the FN and the roaming MU to establish secure communication over the insecure channel. The session key establishment requires a contribution from both communicating entities, such as the FN and MU. The derived session should not be known to the third party. Even the HN should not have knowledge of the session key agreed between the FN and MU.

4.
Session key update: To avoid security attacks, such as the replay attack, etc., the session is updated for every new session that is initiated between the MU and FN. To achieve the freshness of the random numbers for every session, fresh random values are chosen.

5.
User anonymity: User anonymity is an important security feature that the developed authentication scheme must protect. The identity of the MU should not be disclosed. 6.
Unlinkability: An attacker should not be able to trace the location of the MU by linking the two different sessions of the same MU. 7.
Resistance of well known security attacks: The designed authentication scheme should resist the security attacks, such as the replay attack, impersonation attack, stolen-smart-card attack, password-guessing attack, and the man-in-the-middle attack.

Motivation
The literature survey on the existing authentication schemes for roaming MUs in GLOMONET reveals that the authentication schemes found in the literature survey [6][7][8][9][10] are vulnerable to several security attacks and could not meet the security requirements mentioned in Section 1.2.

2.
The session key update phase is a critical security requirement and hence must be implemented carefully while designing the authentication scheme for roaming MUs. The session key update phase maintains the freshness of the random numbers for every new session established between the MU and FN. The literature survey reveals that the authentication schemes designed for roaming MUs in GLOMONET [5,[10][11][12] Could not provide the session key update phase in their proposed schemes. 3.
The authentication schemes developed for roaming MUs in GLOMONET should satisfy all the security requirements presented in Section 1.2. 4.
The design and development of lightweight secure authentication schemes are essential for resource-constrained mobile devices relative to computing power, memory and battery capacity.

1.
We design an efficient and more secure ECC-enabled authentication scheme for roaming MUs in GLOMONET that can potentially resist various known attacks. In the proposed scheme, a roaming MU and a serving network or FN mutually authenticate among each other during the authentication phase, and they also establish a common session key among them for secure communication.

2.
The BAN logic-based formal security analysis [13] proves the strength of our proposed scheme. Using such a security analysis, it is shown that the proposed scheme provides the session key security. Furthermore, to ensure other existing known attacks, the informal (non-mathematical) security analysis is also presented.

3.
The proposed scheme is simulated with the help of the broadly accepted automated validation of internet security protocols and applications (AVISPA) tool [14]. AVISPA tools perform formal security verification of the proposed scheme. The simulation results prove that the proposed scheme is secure against passive/active attacks, such as replay attacks and man-in-the-middle attacks. 4.
In addition, the proposed scheme is shown to be comparable with other existing schemes in terms of the communication and the computation costs, and it also provides better security and functionality features in comparison to those of other existing schemes. The comparative study shows that the proposed scheme is efficient and more robust for the authentication of roaming MUs as compared to other authentication schemes in GLOMONET.

Organization of the Paper
The literature survey on previous authentication schemes is briefed in Section 2. Mathematical preliminaries are explained in Section 3. The system model is presented in Section 4. The proposed scheme is explained in Section 5. Detailed description of the formal security analysis using BAN logic is described in Section 7. Formal security verification of the proposed scheme using the AVISPA tool is illustrated in Section 8. The performance comparison is described in Section 9. Conclusion is given in Section 10.

Literature Survey
In 1995, Hwang et al. [15] worked on securing communication over teleconference by sharing a common secret key. In 1999, Hwang [16] further worked on the same topic, securing teleconference, and proposed a new scheme. In 2000, L. Buttyan et al. [17] worked on authentication protocols and came up with a new scheme. The proposed scheme explained the various security attacks to which the authentication schemes designed for GLOMONETs are vulnerable. In 2003, Hwang et al. [18] worked on the authentication schemes of Hwang et al. [15] and L. Buttyan et al. [17]. They proposed a new scheme to provide a secure and efficient authentication scheme.
In 2004, Zhu et al. [19] pointed out that most authentication schemes fail to preserve user anonymity.
Later in 2006, Lee et al. [20] worked on the authentication scheme of Zhu et al. [19]. The study revealed that their scheme is susceptible to forgery attacks and mutual authentication. To overcome the security pitfalls of the scheme of Zhu et al., Lee et al. [20] came up with a new scheme. Later, Wei et al. [21] worked on the scheme of Lee et al. [20]. With a thorough understanding of their scheme, Wei et al. found that their scheme failed to preserve user anonymity and untraceability. Further, Wei et al. also stated that their scheme suffered from password-guessing attacks. To improvise the scheme and to enhance performance, Wei et al. [21] came up with a new scheme.
In 2014, Huang et al. [22] cryptanalyzed the scheme of Juang et al. [23] based on passive attacks and active attacks. The cryptanalysis on the scheme of Juang et al. stated that their scheme has limitations over the smart-card attack, password attack and session key extraction.
In 2015, Ding Wang et al. [24] reviewed the scheme of Tsai et al. [25]. The cryptanalysis was based on the well-known attack in two-factor authentication schemes. For the smartcard-loss attack, with the stolen smart card parameters, the adversary could change the password by initiating the password change phase.
In 2018, Xu et al. [26] reviewed Gope and Hwang's protocol [27] and identified some of the limitations of the scheme, such as the storage consumption problem, computational burden and replay attack. The scheme of Xu et al. contributes to overcoming the identified limitations.
In 2019, Ref. [28] proposed a privacy-preserving authentication scheme for roaming consumers in GLOMONET. Their work revealed the cryptanalysis of schemes such as those of Arshad et al. [29], Li et al. [4], and Chen et al. [30,31] based on session-specific information attacks. The proposed scheme of Arezou et al. provided countermeasures to the identified security weaknesses. Their scheme achieved security, such as impersonation attack resistance, modified attack resistance, strong MU anonymity and unlinkability, insider attack resistance, replay attack resistance, password-guessing attack resistance, known session-specific temporary information attack resistance, desynchronization attack resistance, known key attack resistance, denial-of-service attack resistance, and stolen verifier attack resistance, as well as security goals, such as perfect forward secrecy. In 2020, in Ref. [32], Wei et al. proposed two-factor authentication for roaming users in GLOMONET. Their scheme is based on the digital signature algorithm. They attempted to achieve the user anonymity using digital signature algorithms. The scheme of Ding et al. [33] cryptanalysed the scheme of Li et al. [34] and claimed that the scheme security proof of Li et al. to protect user anonymity has some weaknesses. Another proof validation was made on the offline password guessing attack and they claimed that the scheme proof of Li et al. has some limitations. The scheme of Ding et al. provided the claim to overcome these identified weaknesses.
In 2013, Shin et al. [35] proposed a secure authentication scheme with user anonymity for roaming users in ubiquitous networks. Later, Farash et al. [36] cryptanalysed the scheme of Shin et al. The cryptanalysis proved that the scheme of Shin et al. is vulnerable to security attacks, such as user traceability, user and server impersonation attacks and session key disclosure. To countermeasure the security attacks identified in the scheme [35], Farash et al. [36] proposed an enhanced secure authentication protocol for ubiquitous networks. The strengths of their proposed scheme are as follows: • Their scheme provides the mobile node authentication and the FN authentication. • Their scheme also protects user anonymity and achieves untraceability. • Their scheme is resistant to the offline password guessing attack. • No verification table is maintained at the server side for the password. This protects the scheme from such attacks as stolen verifier and modification attacks.
In 2016, Karuppiah et al. [37] reviewed the scheme of Farash et al. [36]. The cryptanalysis on the scheme [36] resulted in the findings of some security weaknesses to the identified attacks: their scheme is vulnerable against replay, forgery, and offline password guessing attacks. In addition, their scheme fails to protect user anonymity, with no local password verification and session key disclosure. Karuppiah et al. [37] proposed a secure lightweight authentication scheme for roaming mobile users. The strengths of their proposed scheme are as follows: user anonymity is protected, user untraceability is achieved, and mutual authentication between the MU, FA and HA are achieved. Their scheme is resistant to such security attacks as the replay attack, offline password guessing attack, forgery attack, stolen verifier and modification attacks, insider attack, man-in-the-middle attack, and known key attack. In addition, forward secrecy and local password verification are achieved.
Gope and Hwang [27] reviewed the scheme of He et al. [38]. The cryptanalysis on the scheme of He et al. revealed their proposed scheme having several security weaknesses, such as vulnerability to forgery attack and unfair key agreement, compromising the untraceability and disclosure of the user identity. Gope and Hwang [27] proposed an efficient mutual authentication and key agreement. Their proposed scheme is resilient to the identified security weaknesses in the scheme of He et al. The security strengths of their proposed scheme are as follows: accomplishment of mutual authentication, fair key agreement, strong user anonymity, resistant to forgery attacks and security assurance in the case of lost smart card.
In 2017, Odelu et al. [39] first reviewed the work proposed by Zhao et al. [40]. The cryptanalysis on the scheme [40] revealed that the scheme is vulnerable to several security attacks, such as known session key attack, and insider attack, with no provision for revocation and reregistration. Odelu et al. [39] proposed a secure anonymity-preserving authentication scheme for roaming mobile users in global mobility networks. The strengths of the proposed scheme are as follows: provides user anonymity; resists impersonation attack, replay attack, man-in-the-middle attack, offline password-guessing attack, and insider attack; provides session key security; provides local password verification; and provides provision for revocation and re-registration.
In 2018, Fan wu et al. [41] proposed a smart healthcare systems under global mobility networks. Their proposed scheme provides security strength against such security attacks as insider attack, offline password guessing attack, forgery attack, de-synchronization attack, replay attack, known key attack, tracking attack and strong forward security.
In 2018, Banerjee et al. [42] proposed an anonymity-preserving group formation-based authentication protocol in global mobility networks. The security strength of the proposed scheme is as follows: protects both user anonymity and untraceability; and the scheme is resilient to security attacks such as impersonation attack, replay attack, man-in-the-middle attack, privileged-insider attack, offline password-guessing attack and stolen-smart-card attack.
In 2018, Madhusudhan and Shashidhara [5] reviewed the scheme of Karuppiah and Saravanan [43]. The cryptanalysis of their scheme [43] demonstrated that it is vulnerable to security attacks such as insider attack, stolen verifier attack, offline password-guessing attack with smart cards, impersonation attack, denial-of-service attack, clock synchronization problem, unfair key agreement and disclosure of user anonymity. Madhusudhan and Shashidhara [5] proposed a secure and lightweight authentication scheme for roaming service in GLOMONETs. The proposed scheme [5] resists the security weaknesses identified in the scheme of [43]. The strengths of the proposed scheme [5] are as follows: user anonymity and untraceability is achieved, mutual authentication is achieved, the proposed scheme is resilient to security attacks such as impersonation attack, replay attack, insider attack, offline dictionary attack, stolen verifier attack and smart-card-loss attack. Their scheme achieves fair key agreement and provides local password verification.
In 2019, Lu et al. [44] reviewed the scheme of Gope and Hwang [45]. The cryptanalysis on the scheme [45] demonstrated that the scheme is vulnerable to security attacks such as known session-specific temporary information attack. To address the identified security weaknesses found in the scheme [45], Lu et al. [44] proposed an elliptic curve cryptography (ECC) based authentication scheme to achieve secure implementation in GLOMONET. The security strengths of the proposed scheme [44] are as follows: mutual authentication is achieved, known session-specific temporary information attack, unlinkability, anonymity and untraceability. The scheme is resilient to security attacks such as forgery attack, insider attack, and stolen-smart-card attack.
In 2019, Aghili et al. [46] proposed authentication and key agreement schemes for IoT environments. The proposed scheme is resilient to security attacks, such as man-inthe-middle attack, impersonation attack, session key security, replay attack, and entity compromised attack, while preserving user anonymity and user untraceability.
In 2020, Wan et al. [47] proposed a roaming authentication protocol based on a heterogeneous fusion mechanism for the IoT environment. Their proposed scheme is resilient to various security attacks, and the experimental results show that their scheme incurs lower packet loss rate and lower energy consumption.
In 2020, Ghahramani et al. [48] reviewed the protocol of Li et al. protocol [4]. The cryptanalysis on the scheme [4] revealed several security weaknesses, such as vulnerability to insider attack, forward and backward security, resistance to offline guess attack, impersonation attack, offline guess attack, and insecure key distributions. Ghahramani et al. [48] proposed a secure biometric authentication scheme for GLOMONETs. The security strength of their proposed scheme is as follows: resilience to offline guess attack, impersonation attack, insider attack, and forward and backward security, and secure key distribution. Table 1 provides the information about various authentication schemes designed to provide security to the roaming users during handover in GLOMONETs. The strengths and the weaknesses of the authentication schemes are presented in Table 1. Table 1. Literature survey on two-factor authentication schemes in GLOMONET.

Authors
Year

Strengths Weaknesses
Jiang et al. [49] 2012 Protects user anonymity, user untraceability and provides two-factor security. Mutual authentication between MU , FN and HN are achieved.
Session key agreement is static and depends on static key agreement.
Kuo et al. [6] 2014 Their scheme protects user anonymity with untraceability. Their scheme is resilient to security attacks such as impersonation attack, replay attack, smart-card-loss attack and man-in-the-middle attack. In addition, their scheme also achieves mutual authentication and secrecy of the session key.
User untraceability is not achieved.

Authors Year Strengths Weaknesses
Guo et al. [7] 2016 Protects user anonymity and untraceability resists impersonation attack, stolen-smart-card attack, server masquerading attack and replay attacks, achieves mutual authentication and perfect forward security.
Their scheme is vulnerable to insider attack and the scheme provides no session key update.
CC Lee et al. [8] 2017 Protects user anonymity, resilient to masquerade attack, man-in-the-middle attack, stolen-smart-card attack, and offline password-guessing attack. In addition, their scheme achieves perfect forward and backward secrecy.
Their scheme cannot resist replay attacks.
Marimuthu et al. [9] 2017 Provides untraceability and secure against security attacks such as known key, insider, offline password-guessing, replay, stolen verifier, forgery and man-in-the-middle attacks. Achieves mutual authentication, user friendliness and local password verification.
Security pitfalls of their scheme are as follows: absence of user anonymity and vulnerable to security attacks, such as offline password guessing and impersonation attacks, has no password change option and no local password verification.
Shashidhara et al. [5] 2018 Protects user anonymity, and their scheme is resilient to forgery and replay attacks.
Scheme does not provide session key update phase.
Xiong Li et al. [4] 2018 Resists security attacks such as session key, replay, forgery, device lost, and denial-of-service attacks and achieves user anonymity, untraceability and mutual authentication.
Their scheme does not provide local password verification, perfect forward secrecy is not achieved, and is vulnerable to denial-of-service attack.

Madhusudhan and Shashidhara [11] 2020
Resists security attacks such as insider, offline password guessing attack, impersonation attack, bit flipping attack, replay, stolen verifier attack. In addition, their scheme achieves user anonymity, local password verification, perfect forward secrecy and mutual authentication.
Their scheme does not protect user untraceability and does not provide session key update.
Bander et al. [10] 2020 Their scheme achieves user anonymity and untraceability, resilient to security attacks, such as stolen verifier attack, insider attack, stolen-smart-card attack, forgery attack, and known session-specific parameter attack. In addition, their scheme achieves user anonymity and protects user untraceability, perfect forward secrecy and mutual authentication.
Their scheme does not protect against password guessing and does not provide session key update.
Kang et al. [12] 2020 Their scheme achieves user anonymity and untraceability, resilient to security attacks such as mobile node impersonation attack, insider attack, foreign bypass attack and session-key-derived attack. In addition, their scheme achieves perfect forward secrecy and mutual authentication.
Their scheme does not provide session key update.

Mathematical Preliminaries
In this, we discuss the mathematical background of the cryptographic primitives used in the design of the proposed scheme.

Basics of Elliptic Curve Cryptography
An elliptic curve defined over finite prime filed F p is a curve given by the equation of the form There is also a condition that Equation (1) must satisfy 4a 3 (1). The elements of Z p are Z p = {0, 1, ......, p − 1}. Let θ be the point at infinity in E p (a, b). So, E is the set of points on the elliptic curve E p (a, b) that satisfy Equation (1) along with the point at infinity. Thus,

Elliptic Curve Discrete Logarithm Problem (ECDLP)
Given an elliptic curve E p (a, b) defined over a finite prime field F p , consider two points P, Q ∈ E p (a, b) where Q = rP where r ∈ Z * p is scalar. Computing k from the point P, Q is computationally infeasible if the prime p is a sufficiently large prime number (for example, 160 bits).

Scalar Multiplication
In ECC, the scalar multiplication of a point P ∈ E p (a, b) is denoted by rP where r is a scalar and rP is achieved using repeated point additions and point doubling operations.

Elliptic Curve Diffie-Hellman Problem (ECDHP)
Given an elliptic curve E p (a, b) defined over a finite prime field F p and points P, αP, βP ∈ E p (a, b), it is difficult to compute αβP, without the knowledge of either {α} or {β} [50].

Elliptic Curve Diffie-Hellman (ECDH)
ECDH is a key exchange protocol. This protocol allows the communicating entities across the networks to establish a common shared secret key by agreeing to use the shared public domain parameters of ECC explained in Section 5.1.
Steps for Algorithm to compute the shared secret key:

1.
End system A selects the private key α ∈ Z * p where 1 ≤ α < n. A computes the public key as PB A = αG, where G is a generator point in the EC domain parameter. Let the private and public key pair of end system A be {α, PB A }, respectively. A computes point P with the co-ordinates P = (x P , y p ) = αG. 2.
End system A transmits P = (x P , y p ) = αG to end system B over an insecure channel. 3.
End system B selects the private key β ∈ Z * p , where 1 ≤ β < n. B computes the public key as PB B = βG, where G is a generator point in the EC domain parameter. Let the private and public key pair of end system A be {β, PB B }, respectively. B computes point Q with co-ordinates Q = (x Q , y Q ) = PB B G. 4.
End system B transmits its public key Q = (x Q , y Q ) = PB B G to end system A over an insecure channel.

5.
The shared secret key is computed as

One-Way Hash Function
Hash functions are used to achieve security goals, such as data integrity and message authentication. Hash takes the input of variable length and produces an output of fixed length. h : {0, 1} * → {0, 1} l A one-way hash function satisfies the following properties [13,51].

1.
Preimage resistance: For the given input x, it is computationally feasible to compute the hash value of x as h(x) = y. However, it is computationally infeasible to compute for the value x with the output value y.

2.
Second preimage resistance: It is computationally infeasible to obtain the second input which results in the same hash value output. Ex: If x is one input and y is the other input where x = y such that h(x) = h(y).

3.
Collision resistance: A collision resistant one-way hash function h : {0, 1} * → {0, 1} takes the variable length input and generates a fixed length output of bits. The pair of inputs (i 1 , i 2 ) ∈ R A indicates that an attacker randomly chooses the pair of inputs i 1 , i 2 . It is computationally infeasible for a pair of inputs i 1 , i 2 where i 1 = i 2 to result in the same hash value such that h(i 1 ) = h(i 2 ).

Pseudo-Random Number Generators
A sequence of pseudo-random numbers is generated by a deterministic algorithm and should simulate a sequence of independent and uniformly distributed random variables on the interval [0, 1]. In order to be acceptable, a sequence of pseudorandom numbers must pass a variety of statistical tests for randomness.
where Q is a finite set of states, µ is the probability distribution on Q for the initial state called seed, f : Q → Q is the transition function, U is the output space and g : Q → U is the output function. The generator P generates the numbers in the following way.

1.
Select the seed q 0 ∈ Q based on µ. The first number is u 0 = g(q 0 ).

2.
At each step i ≥ 1, the state of the PRNG is Q i = f (Q i−1 ) and output is u i = g(q i ). These output u i n of the PRNG are the pseudo-random numbers, where n is some positive integer considered to be the period of the sequence [52].

Properties of Pseudo-Random Function
Here, we list a few of the important properties of the pseudo-random function. A PRNG is called good if it satisfies the below stated properties:

1.
Uniformity: This property states that the elements in the output space U generated by the pseudo-random function are divided into M equal sub-intervals, and the expected number of samples where N is the range of the numbers uniformly distributed over the interval [0, 1].

2.
Independence: The generated numbers in the outspace U should be independent of each other, and there should not exist any correlation between the numbers generated in succession. This implies that, given any length of output sequence u i = g(q i ) where i ≥ 1, one should not be able to predict the next number in the sequence by observing the given numbers.

3.
Large period: The PRNG is considered to be good if its period is large.

4.
Reproducibility: This property ensures that for the same seed s 0 , the same sequence of numbers is generated. 5.
Cryptographically Secure: The generated output sequence by the PRNGs should be cryptographically secure to be used in cryptographic applications.

Fuzzy Extractors
Biometrics information, such as fingerprint and iris scans, are noisy data that cannot be reproduced precisely and cannot be used directly in traditional cryptographic algorithms. Fuzzy extractor [53] is an ideal technique to handle noisy data. Noisy data are received from biometric information such as fingerprinting and iris scanning. A fuzzy extractor is composed of two procedures (Gen, Rep).

1.
Gen (B i ) = (R i , P i ). Gen is a probabilistic algorithm. On the biometric input B i , it extracts string R i and an auxiliary string P i .

2.
Rep (B i , P i ) = R i . Rep is a deterministic algorithm. Rep produces the string R i on the biometric input from any vector B i close to B i along with the auxiliary string P i .

System Model
The proposed system model consists of three communicating entities: home network (HN), foreign network (FN) and mobile user (MU). The system model consists of four major steps:

1.
Registration phase: The mobile user registers to the home network by providing credentials, identity and password. The registration phase is carried out over a secure channel. In the registration phase, the HN, after receiving the mobile user request, computes for the secret parameters. HN agrees to the domain parameters of ECC with the mobile user. These are the public key of HN, symmetric encryption key, one-way hash function. P is the generator point on ECC, a, b, n and p, where p is a large prime number and n is the order of the elliptic curve (EC).

2.
Login or authentication phase: In the roaming scenario, the mobile user moves from their home network to the foreign network. To access services from the foreign network, the mobile user provides their identity to the foreign network. The login messages are transmitted using a wireless network through radio waves. An adversary listening to the communication channel has full control over the channel, that is, he/she can intercept, modify or alter the messages. 3.
The foreign network forwards the request received from the MU to the home network for the verification of the MU's authenticity. The communication between the foreign network and the home network is considered secure.

4.
The home network verifies the authentication request of the mobile user received via the foreign network.

5.
If the MU is authentication is verified and the MU is authenticated, FN accepts the MU's request and allows the roaming user to access the FN services. Otherwise, the FN rejects the login/authentication request sent by the MU.

Trust Model
In the scenario of roaming mobile users in GLOMONET, the communicating entities are the mobile users (MU), foreign network (FN) and home network (HN). MUs are not trusted entities; the FNs are semi-trusted; and the HN is fully trusted.

Adversary Model
In this section, we illustrate the attacker model during a roaming scenario in the GLOMONET under the two-factor authentication schemes for informal analysis.
The DY model provides an insecure channel for the communication between the entities MU, FN and HN. The FN is considered to be semi-trusted, whereas the HN is a fully trusted service provider. An attacker listening to an insecure channel has the capability to intercept the messages. The eavesdropped messages can be altered, modified or deleted.

3.
According to [24], there exist two dictionary spaces for mobile user's identity and password, respectively: |DID| ≤ |DPW| ≤ 10 6 . Since the dictionary space is finite, an adversary can guess a pair of {ID * MU , PW * MU } in polynomial time. However, it is hard for an attacker to summarize the hash results and the random numbers.

4.
According to [55], the adversary has full control over the public channel or insecure channel; an adversary can eavesdrop the messages transmitted over an insecure channel and then modify, alter or delete the messages to breach the security services. However, the adversary does not have any control over the secure channel. 5.
According to [56], the adversary can extract the stored information in the smart card through power consumption. 6.
An adversary can store all previous session keys. However, if the freshness of the random numbers is changed for every session, then it is difficult for an adversary to arrive at the session keys, even with the knowledge of previous session keys. This property is known as strong forward secrecy.

Proposed Scheme
The proposed scheme is divided into four phases: the initialization phase, registration phase that is carried over a secure channel, login and authentication phase, session key update phase that is carried over an insecure channel, and password change phase, which provides local password verification for the MU and is carried over secure channel. The elliptic curve Diffie-Hellman protocol is used to compute the shared secret key between FN and HN to achieve mutual authentication in the proposed scheme. The design goals of our proposed protocol are as follows: • To establish mutual authentication among the communicating entities under the premise of anonymity; • To derive and agree on the session key between the communicating entities fairly; • To resist security attacks, such as stolen-smart-card attack, replay attack attack, offline password-guessing attack and impersonation attack; • To reduce computational cost and communication cost.
The proposed scheme is simulated using the AVISPA tool. Each phase is explained in detail below. Notations and their representation used in this article are defined in Table 2.

Initialization Phase
The domain parameters {E (F p ) , G, a, b, n, p} of the elliptic curve cryptography are shared among the three communicating entities.
HN performs the following steps to initialize the system parameters: S1: The HN considers a non-singular elliptic curve E p (a, b) of the form y 2 = x 3 + ax + b(modp) over a prime (finite) field Z p = {0, 1, ..., p − 1}. P is chosen as a generator point on the elliptic curve (EC). S2: The HN chooses random number x ∈ Z * p as its private key and computes the HN's public key as PK HN = xP. S3: The symmetric encryption key mk of 128 bits is shared with the MU by storing it in the smart card. S4: HN computes the secret key for the foreign network as SK FN = h(ID FN ||PK HN ||mk) S5: HN selects the one-way hash function of the form h : {0, 1} * → {0, 1} . The input can be a variable bit length string but the output should be of a fixed length.

Registration Phase
The registration phase of the proposed scheme is presented in Figure 2.
Step 1: MU → HN: {h(ID i ), PID} In the registration phase, the MU is free to choose his/her identity ID i and password PW i . After choosing ID i , PW i and random number r m , the MU computes the following The MU submits {h(ID i ), PID} to the HN through a secure channel.
The HN receives the request from the MU and the HN chooses its random number r h . HN's server public key PK HN is computed as where x is a random number ∈ Z n , and P is a generator point on the elliptic curve. For every foreign network FN, the HN computes secret key SK, where mk is the server shared symmetric key with 128 bits. The HN stores {h(ID i ), S} in its database for future communication. The HN sends the smart card with the parameters {E p , P, n, a, b, PK HN , S, E mk (.), h(.)} to the MU through a secure channel.
Step 3: MU : {E p , P, n, a, b, PK HN , S, E mk (.), h(.)} With the received message, the MU computes the following The computed value of RPW is stored in the smart card. The smart contains the parameters {E p , P, n, a, b, PK HN , RPW, S, r m , E mk (.), h(.)}.

Login Phase
The login and authentication phase is presented in Figure 3. The detailed description of the steps are stated below. = RPW ⊕ S. If it holds true, the smart card computes The MU sends the message M 1 = {R 1 , AID new , Q m } to FN over insecure channel.
Step 2: FN → HN: After receiving the message M 1 = {R 1 , AID new , Q m } from MU. FN generates random number β ∈ Z * n and computes the following where SK FN is a secret key of FN, computed by HN. ID FN is the identity of the FN. FN sends M 2 = {Q f , R 2 , R 1 , V f , ID FN } to HN.

Authentication Phase
Step 1: HN → FN: The HN computes the following: If verified, the HN computes the following, verified with the stored value S in the HN database and computed value r new and the received value R 1 .
. If true, the HN authenticates the FN.
After the authentication verification is completed between the MU and FN, the HN computes the following: If it holds true, the HN is authenticated. The FN computes the following: The FN sends a message M 4 = {K, ID FN , V H , R 2 } to the MU over an insecure channel.
Step 3: MU: After receiving the message M 4 from the foreign network, the mobile user computes the following: If verification holds true, the MU authenticates the HN.
If verification holds true, the MU mutually authenticates the FN. Both the MU and FN share the shared session key SK.

Session Key Update Phase
The detailed description of the session key update phase steps is stated below.
Step 1: MU → FN: M 5 = {R * 1 = α * P} The roaming mobile user periodically updates the session key to achieve freshness in the random numbers. The session key update phase is presented in Figure 4. The MU chooses a new random number α * ∈ Z * n and computes.
If the verification holds true, message integrity is achieved and message authentication is verified. Therefore, the MU updates the session key as

Password Change Phase
In the password change phase, the terminal allows the MU to change the current password PW i with the new password PW new i . The MU has to insert his/her smart card into the terminal. After insertion, the MU has to provide his/her credentials to the terminal. Once the MU has entered ID i and current password PW i , the terminal processes the information. Then the smart card computes the following: The parameter RPW, which is stored in the smart card, is replaced with RPW .

Proposed Two-Factor Authentication Scheme Extended to Multi-Factor Authentication Scheme
The multi-factor authentication schemes includes biometric input from the MU along with the password and the smart card that a MU possesses. Many devices use biometric authentication, such as fingerprint identification. Fingerprint identification is one of the most commonly used biometric technologies integrated in many mobile devices. In our proposed scheme, we describe how the three-factor authentication scheme is implemented during the registration phase. The three-factor authentication provides more security to the authentication schemes for the roaming MU for GLOMONET in the smart city to conform to the security goals designed for the ideal authentication scheme.

Registration Phase
The registration phase of the proposed multi-factor authentication scheme is as follows.
Step 1: MU → HN: {h(ID i ), PID} In the registration phase, the MU is free to choose his/her identity ID i and password PW i along with the biometric fingerprint. The mobile device extracts the fingerprint information from the fuzzy extractor technique Gen(B MU ) = (R MU , P M ). After choosing ID i , PW i and random number r m , the MU computes the following: The MU submits {h(ID i ), PID, R MU } to the HN through a secure channel.
The HN receives the request from the MU and the HN chooses its random number r h . The HN's server public key PK HN is computed as where x is a random number ∈ Z n , and P is a generator point on the elliptic curve.
The computed value of RPW is stored in the smart card. The smart card contains the parameters {E p , P, n, a, b, PK HN , S, E mk (.), Gen, Rep, P M , RPW, h(.)}.

Informal Security Analysis of the Proposed Scheme (ES-HAS)
In this section, through the informal security methods, we prove that the proposed scheme ES-HAS is resilient to the security attacks briefly explained below.
Informal security methods are demonstrated using the knowledge reasoning of the analysis of the protocol messages exchanged between the communicating entities over an insecure channel. With the informal security methods, we can prove the security of the protocol if it is weak or resilient to the security attacks in question.

Security against User Anonymity
User anonymity is an important security feature in GLOMONETs. The two-factor authentication schemes designed for GLOMONETs should protect user anonymity. In the proposed scheme, during the AESK phase, if an adversary intercepts the message M 1 = {R 1 , AID new , Q m } transmitting on the public channel and gains access to the parameters in M 1 , it is of no use, as the value of ID i is hashed, encrypted with the shared server secret key, and concatenated with the random number r new . To get r new from the computation D mk (E mk (h(ID i )||r new )), an adversary must know the decryption key mk, which is server's secret key shared between the MU through a secure channel. Therefore, the adversary will not be successful in revealing the ID i , the MU's identity. Thus, the scheme protects user anonymity.

Security against Stolen Smart Card Attack
With the stolen smart card parameters {E p , G, n, a, RPW, b, PK HN , S, E mk (.), r m , h(.)} and the intercepted login message M 1 = {R 1 , AID new , Q m }, if an adversary tries to reveal ID i and PW i , it is impossible to compute, due to the fact that the parameter RPW is computed as RPW = S ⊕ h(h(ID i ||PW i ) ⊕ h(r m )). To arrive at the identity and password of the MU, an adversary has to guess both ID i and PW i accurately and in addition to this, it must also guess the parameter S, which is computed as S = PID ⊕ SK HN . Thus, even if an adversary possesses the smart card, he/she will still be unsuccessful in revealing the identity and password of the MU. Therefore, the scheme is resilient to the stolen-smart-card attack.

Security against Offline Password-Guessing Attack
With the interception of the login messages M 1 = {R 1 , AID new , Q m } and M 2 = {Q f , R 2 , R 1 , V f , ID FN } during the AESK phase along with the stolen smart card parameters {E p , G, n, a, RPW, b, PK HN , S, E mk (.), r m , h(.)}, if an adversary makes a trial to reveal PW i by computing S = RPW ⊕ h(h(ID i ||PW i ) ⊕ h(r m )), to arrive at the correct value of S, he/she should guess the accurate values of ID i and PW i . Guessing two parameters at a given time becomes complex, and the hash operations on ID i and PW i makes the guessing more complex. Thus, the scheme is resilient to the password-guessing attack.

Security against Replay Attack
Suppose, by intercepting the login messages during the AESK phase, that an adversary tries to replay the messages = h(Q f ||Q m ||SK FN ||R 1 ||R 2 ). If the parameter V f holds true, then the HN authenticates both the FN and MU. Otherwise, the HN terminates the connection request. It is difficult for an adversary to compute SK FN (the secret key of FN), as SK FN is concealed with PK HN (the public key of the HN) and mk (the secret key of the HN). The random number r new is concealed with S, the secret parameter of the HN. Hence, even if an adversary tries to replay the messages and sends it to the HN which checks for the freshness of the random number r new and also checks for the correctness of the message. If the verification fails, the HN terminates the request. The random number r new is the output sequence generated by the pseudo-random function, satisfying the properties as mentioned in Section 3.7.1. Thus, the proposed scheme is resilient to the replay attack.

Perfect Forward Secrecy
The session key is computed using the elliptic curve Diffie-Hellman Protocol (ECDHP) as SK = h(R 1 ||R 2 ||βR 1 ) by FN. During the AESK phase, if an adversary intercepts the messages M 4 = {V H , ID FN , K, R 2 } and M 1 = {R 1 , , AID new , Q m } and tries to compute SK = K ⊕ h(Q m ||R 1 ||ID FN ||αR 2 ), even with the disclosure of the session key, it is difficult to calculate the value of β ∈ Z * n due to the fact that, given an elliptic curve E defined over a finite prime field F p and points P, αP, βP ∈ E(F p ), it is difficult to compute αβP due to the hardness of the ECDH problem. For every new login request, a session key is computed, which makes it difficult for an adversary to arrive at the session key for every new login session. Thus, the scheme achieves perfect forward secrecy.
6.6. Security against Impersonation Attack
If an adversary intercepts the message M 1 = {R 1 , AID new , Q m } and M 2 = {Q f , R 2 , R 1 , V f , ID FN } transmitting over an insecure channel during the AESK phase and sends the same message M 2 to HN, on receiving M 2 , the HN computes SK FN = h(ID FN || PK HN ||mk). PK FN is a public key and mk is a secret key computed by the HN.
. If it holds true, the HN authenticates the FN based on its secret key computed by the HN. Thus, it is difficult for an adversary to impersonate a legal FN.
With the interception of message M 1 = {R 1 , AID new , Q m } transmitting over an insecure channel, the adversary tries to reveal the identity of the parameters by capturing message M 1 and thus AID new = E mk (h(ID i )||r new ). The HN uses its secret key for encrypting the identity and random number of MU. To perform decryption, an adversary must have the server secret key. Thus, it is difficult to impersonate a valid MU.

Man-in-the-Middle Attack
The man-in-the-middle attack is an active security attack. An attacker has the capability to eavesdrop the online authentication messages transmitted over an insecure channel. The intercepted messages are then replayed by an attacker to establish a session among the entities involved in the communication. The entities believe that the communication is carried between the legitimate entities. The legitimate entities are not aware of the session establishment with an attacker. The entire communication channel is controlled by an attacker.
In the proposed scheme, it is difficult for an attacker to mount such an attack. An attacker can eavesdrop all the messages transmitted over the insecure channel as shown in Figure 5. With the interception of the authentic messages {M 1 , M 4 }, the attacker would not be able to derive the session key without the knowledge of the private key β due to the complexity of the elliptic curve discrete logarithm problem (ECDLP). (The ECDLP is explained in Section 3.2).

Local Password Verification
In the login phase of the proposed scheme, the mobile device validates the MU credentials through prompting the MU to input the {ID MU , PW MU }. After the MU input, the following computations are performed.
After successful verification, further computations are performed and the login request message M 1 is sent to the FN. An attacker cannot compute the correct h(h(ID i ||PW i ) ⊕ h(r m )) without the knowledge of {ID MU , PW MU , r m } to succeed the verification step = RPW ⊕ S. Therefore, the proposed authentication scheme is designed to avoid unauthorized use of mobile devices by verifying the password locally.

Security against User Untraceability
In the proposed scheme, the login message M 1 = {R 1 , AID new , Q m } carries the identity of the MU, which is encrypted with the shared symmetric key between MU and HN. If an attacker attempts to eavesdrop the login message AID new = E mk (h(ID i )||r new ) transmitted over an insecure channel, decryption of the ID MU without the decryption key is not possible. To trace a MU, an adversary keeps track of the authentication sessions between the MU and FN. For every session, the message {AID new } contains the fresh random value. Furthermore, {AID new } varies in each session because it is generated by the random number r new . Hence, the proposed scheme satisfies user anonymity and untraceability.

Formal Security Analysis of the Proposed Scheme (ES-HAS) Using BAN Logic
In this section, the formal security verification of the proposed scheme ES-HAS using BAN Logic [13] is presented.
BAN logic is a formal tool that enables to analyze the correctness of an authentication protocol. It includes mutual authentication and key distribution. The notations P and Q denote principals; X and Y denote statements; and K is the cryptographic key. Table 3 provides the meaning for the BAN logic symbols. Table 3. Notations used in BAN logic.

Notation Definition
P| ≡ X P believes X: P would be entitled to believe X. P X P sees X: P can receive and read X P| ∼ X P said X: P once said X P| ⇒ X P controls X: P has jurisdiction over X #(X) Fresh (X): The formula X is fresh X y X is integrated with y; y should be kept secret We summarize the proposed protocol in the following generic form:

Hypothesis 1.
The following assumptions about the initial states are made to analyze the proposed scheme: The generic form of the proposed scheme is transformed into the idealized form. The following assumptions are made to analyze the proposed scheme. The main proofs are stated as follows.

•
From message M 1 , we have the following: S 1 : FN R 1 . From jurisdiction rule R3 and I 11 , we have

Formal Security Verification of the Proposed Scheme (ES-HAS) Using AVISPA Tool
To provide the results of the formal security verification of the proposed scheme, the automated validation of internet security protocols and applications (AVISPA) tool is used. The proposed scheme is simulated and verified against active and passive security attacks. Firstly, the AVISPA tool is introduced; secondly, the implementation details of the proposed scheme using AVISPA are presented; and finally, the output of the simulation is presented.

Overview of AVISPA
AVISPA is a tool which is widely accepted for the verification of the cryptographic protocols. One of the major advantages of the AVISPA tool is that the same protocol specification can be verified by different verification techniques. The cryptographic protocol is written in HLPSL (high level protocol specification language). HLPSL is an expressive, modular, role-based, formal language. The cryptographic protocol written in HLPSL is first converted into an intermediate format (IF) by the HLPSL2IF translator. Later, this IF is executed by the backend that the AVISPA tool uses. Backend tools supported by AVISPA are 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 AVISPA tool uses the OFMC/CL-AtSe back-end to execute IF, which is then converted to output format (OF) [14]. OF includes the sections which are explained in detail below.

1.
SUMMARY: It summarizes about the executed protocol safe or unsafe property, where safe signifies that the tested protocol is safe and unsafe signifies that the tested protocol is insecure.

2.
DETAILS: This section gives details about the conditions that are used in the test to make the protocol safe or unsafe.

3.
PROTOCOL: This section provides the name of the protocol that is to be tested.

4.
GOAL: The test's goal is specified in this section. 5.
BACKEND: The backend name that is used to execute the test is specified in this section. 6.
COMMENTS and STATISTICS: This section demonstrates the attacker simulation if the test is unsafe.
The HLPSL basic types are listed below: 1. agent: It indicates the principal roles used in the HLPSL language and i denotes the intruder. 2.
public_key: It indicates the public key used by agents in the test. 4.
symmetric_key: It specifies about the symmetric key used by the agents in the test.

5.
text: This can be used for nonces or sometimes for messages. 6.
nat: This signifies the natural numbers that are used in non-message contexts.
In HLPSL, concatenation operation is denoted by the declaration, such as played_by X indicating that X is an agent and knowledge indicating the intruder's knowledge. X =|> Y represents the immediate reaction transitions.

HLPSL Implementation
HLPSL uses three basic roles: mobileuser played_by the MU, foreignagent played_by the FN, and homeagent played_by the HN. The three supporting roles used in the HLPSL implementation are environment, session and role.
The output of the program using back-end OFMC is presented in Figure 6. The output of the program using back-end CL-ATSE is presented in Figure 7.

Performance Analysis and Comparison
This section evaluates performance of the proposed scheme with the other authentication schemes proposed for GLOMONET. These seven authentication schemes are based on the elliptic curve cryptosystem. The proposed authentication scheme is also based on the elliptic curve cryptosystem. These seven schemes are introduced by Mahadi et al. [57], Ghahramani et al. [48], Li et al. [4], Zhao [40], Odelu et al. [39], Banerjee et al. [42] and Li et al. [58], respectively.
The proposed scheme makes the following assumptions to compute the communication overhead during the login phase. The symmetric encryption key length is 128 bits, the one-way hash function output is 160 bits in length, the random number is 128 bits in length, the identity is 32 bits in length, and the elliptic curve point is 256 bits. The proposed scheme establishes four communication rounds with the server. Considering the communication overhead of messages transmission in one authentication session for our proposed scheme, within the login phase, the length of the user's login request message M 1 = {R 1 , AID new , Q m } is 672 bits, the visited network request to the HN to authenticate the MU's login request message M 2 = {Q f , R 2 , R 1 , V f , ID FN } is 704 bits in length. The HN server message M 3 = {V H , R} is 448 bits in length and the response message M 4 = {K, ID FN , V H , R 2 } from the visited network to the MU is 896 bits in length. Table 4 compares the security features of the proposed scheme with the four other authentication schemes. The proposed scheme achieves all the listed security features compared to the other schemes. Our scheme requires no intervention of the server during the password change phase, which otherwise creates hassle and increases the communication cost. The password is verified locally in the proposed scheme. Our scheme is secure and efficient with minimal communication overhead compared to the other four schemes to perform handover procedures in GLOMONET.  Table 5 gives the computational costs performed both at the user side and server side within the three different phases, including the registration phase, login phase and password change phase. In the proposed scheme, the user side computes three one-way hash functions to compute the parameter PID = h(h(ID i ||PW i ) ⊕ h(r m )). At the server side, the proposed scheme executes two hash functions and one multiplication of a number over a point on the elliptic curve to compute the secret values SK FN = h(ID FN ||PK HN ||mk) and S = PID ⊕ h(mk). Similarly, the login phase at the user side requires seven hash functions, two symmetric functions and two multiplications of a number over a point on the elliptic curve. The login phase at the server side requires four hash functions and three multiplication of a number over a point on the elliptic curve. The password phase at the user side requires two hash functions. T v time of signature verification. Table 6 tabulates the communication overhead between the propossed and the other schemes. Based on each round of messages exchange during login and authentication phase, the signal overhead is computed. Figure 8 compares the signal overhead between the proposed scheme and other schemes. Table 5. Comparison on computational cost.

Conclusions
In this article, the proposed ES-HAS scheme provides secure services to roaming mobile users. The proposed ES-HAS scheme is resilient to security attacks, such as MU impersonation, stolen-smart-card, offline password-guessing, man-in-the-middle and replay attacks. The ES-HAS scheme also achieves security goals such as user anonymity, user untraceability, perfect forward secrecy and mutual authentication. The shared secret key is computed using elliptic curve cryptography, and this secret key is exchanged between the two communicating entities, FN and HN, during communication to authenticate each other. The proposed scheme is proved using the formal security tool, BAN logic. Furthermore, the ES-HAS scheme is simulated using the AVISPA tool to formally verify whether the proposed scheme is secure against replay and man-in-the-middle attacks. The security features achieved by the different authentication schemes and the proposed scheme are compared. The comparison results shows that the proposed scheme achieves all the security features mentioned. The informal security analysis of the proposed scheme proves that the ES-HAS scheme achieves all the mentioned security features. In comparison with the computational cost and communication overhead of the proposed scheme with the other related schemes, the proposed scheme operates with minimal communication overhead in order to provide better security. Therefore, the proposed scheme is lightweight and practical to implement.

Data Availability Statement:
The data presented in this study are available in article.