Abstract
The rapid development of mobile computing (e.g., mobile health, mobile payments, and smart homes) has brought great convenience to our lives. It is well-known that the security and privacy of user information from these applications and services is critical. Without the prevention provided by an authentication mechanism, safety vulnerabilities may accumulate, such as illegal intrusion access resulting in data leakage and fraudulent abuse. Luckily, the two-factor authentication (2FA) protocols can secure access and communication for mobile computing. As we understand it, existing 2FA authentication protocols weaken security in the pursuit of high efficiency. How efficiency can be achieved while preserving the protocol’s security remains a challenge. In this study, we designed a robust and effective 2FA protocol based on elliptic curve cryptography (ECC) for authentication of users and service providers. We proved the robustness (respectively, the effectiveness) of the presented protocol with the heuristic analysis and security verification provided by the ProVerif tool (respectively, with a performance comparison based on six schemes). Performance comparisons in terms of message rounds, communication, and computation overheads showed that our scheme was superior to the exiting schemes or comparable as a whole; i.e., only two rounds, 1376 bits, and 1.818 ms were required in our scheme, respectively. The evaluation results showed that the proposed 2FA protocol provides a better balance between security and availability compared to state-of-the-art protocols.
1. Introduction
With the rapid development of mobile application services using mobile computing, a variety of mobile applications (e.g., e-mail, social networks, online shopping, playing videos, and mobile games) are becoming more and more practical, which not only enhances people’s ways of life but also brings them more convenience [1]. It is worth mentioning that data security and privacy in these services are vulnerable to various threats. The Check Point researchers declared in an analysis report that about 100 million users’ private data were leaked due to illegal intrusion from multiple Android applications, which included real-time databases, push notifications, and cloud key storage, and these leaked data may become “fat meat” in the eyes of malicious actors [2,3]. Attention must be given to security and privacy issues as soon as possible.
The two-factor authentication mechanism (i.e., password + smart card) can achieve user identity verification and session key agreement through protocol interaction. Legal users can access data securely via the session key, thus effectively protecting data security and privacy. However, existing two-factor authentication (2FA) protocols have a fly in the ointment. Given that mobile devices may have constrained resources, many 2FA protocols sacrifice security for higher efficiency and availability.
From the perspective of security, the issue is that the network communication entities in 2FA are subject to diverse attacks, such as impersonation attacks and privileged insider attacks. The schemes in [4,5] do not apply advanced technical means, such as multi-factor authentication and the technology of custom dictionaries, and cannot resist key-compromised user impersonation attacks and password-guessing attacks [6,7,8].
From the perspective of efficiency, to enhance computational efficiency and diminish the communication overhead, earlier researchers tried to design a practical authentication and key agreement (AKA) protocol by using the hash function and symmetric cryptography (e.g., [9,10,11]). Gope et al. [9] put forward a lightweight privacy-preserving authentication protocol in which the server does not need to carry out any time-consuming search operations to identify the tag. In addition, it does not need to store a secret key in the tag device. Yang et al. [10] proposed an efficient, perfect forward secrecy-enabled AKA protocol on the basis of a lightweight hash function and XOR operation. Das et al. [11] developed a remote user authentication protocol based on dynamic ID that allows the user to select and update their passwords randomly and does not maintain a verifier table. Nevertheless, it was found that the scheme in [12] could not provide forward secrecy to secure the session key.
Public-key cryptography technology can be used to enhance the security of the AKA protocol [12]. These public-key cryptography technologies (such as ECC [13], RSA [14], and bilinear pairings [15]) are becoming widely used in the design of AKA protocols [7,16,17], making it possible to enhance the safety of the session key and preserve user’s anonymity, etc. However, given the authentication performance, using a large number of public-key cryptography techniques throughout the process often leads to greater communication/storage consumption costs and lacks practicality. Accordingly, designing a 2FA protocol that balances security and availability is a challenge.
1.1. Related Work
Since the first 2FA protocol [18] was presented in 1981, hundreds of research studies on 2FA protocols for mobile computing have been undertaken, such as on client–server (C/S) architecture [16,17,19,20] and multi-server environments [21].
On the one hand, for the design of the technical protocol, Durlanik et al. [16] proposed a 2FA protocol implementing a public key exchange mechanism with ECC for the session initiation protocol (SIP). They stated that the memory requirements and total execution times of the proposed protocol were greatly improved compared to non-elliptic approaches. For multi-server environments, Chatterjee et al. [21] introduced a modified authentication protocol employing symmetric key encryption–decryption, the hash function, and a Chebyshev chaotic map and proved that the user can only use a single identity and password to manage authentication for different servers.
On the other hand, to enhance the security of the 2FA protocol, Wang [22] provided a design philosophy, a corresponding solution, and a stronger attack model for 2FA protocols. Later, Wang et al. [19] investigated the difficulty of designing identity-based privacy protection 2FA protocols. To enable trusted users (such as doctors or clinicians) to access sensor data from patients using wireless body area networks in the healthcare IoT, Fotouhi et al. [20] designed a lightweight 2FA protocol. Additionally, security proof results showed that the presented protocol offered forward secrecy and could resist common attacks, including privileged insider attacks.
Furthermore, on the basis of cloud services, Vivekanandan et al. [23] proposed a three-factor mobile user authentication protocol for distributed multimedia in 2020. They stated that their protocol provides extra characteristics, such as user choice-based service provider registration, initial user identity registration, and user revocation. Although the protocol [23] can resist various known attacks, it has low authentication efficiency due to the high computational overhead.
To effectively achieve remote communication between users of specific medical services and service providers, Hsu et al. [24] designed a three-factor, user-controlled, single-sign-on scheme with privacy protection and fast authentication. The results of the performance comparison indicated that their scheme had more security attributes and the lowest cost. However, unlike other schemes that store credentials on the server side, this scheme stores large quantities of user credentials on the client side, which results in low communication efficiency.
For end-to-end communication in 5G-enabled narrow-band IoT networks, Hsu et al. [25] proposed a privacy-preserving authenticated key exchange protocol for a multi-server architecture that allows mobile users to log on to multiple servers with an easy-to-remember password and then compute a session key. Although they used elliptic curve cryptography with a small key size to improve communication efficiency, the protocol bears the risk of the session key being easily obtained by adversaries.
In 2021, in order to resist offline dictionary guessing attacks and continuous leakage of secrets from identity servers, Zhang et al. [26] put forward a password-based threshold single-sign-on authentication protocol for mobile users. In addition, they designed a hybrid mechanism and mixed it with the proposed protocol to effectively thwart online dictionary guessing attacks. However, their solutions are not satisfactory in terms of performance and are not suitable for large-scale applications.
For distributed mobile cloud environments, Vivekanandan et al. [27] put forward a privacy protection user authentication protocol using blockchain technology. By means of security analysis methods (e.g., BAN logic, informal analysis, the scyther tool, and the Automated Validation of Internet Security Protocols and Applications (AVISPA) tool), they examined the proposed protocol in relation to various common attacks and found that the proposed protocol could resist all known attacks. Similarly to [26], Sastry and Reddy’s scheme also has the problem that its low performance is not conducive to enhancing the authentication phase efficiently.
To preserve user privacy in the IoT healthcare system, Lin et al. [28] designed a smart card-based authentication protocol with a multi-server architecture. However, we found that no timestamp was used, and so the proposed protocol could not resist denial of service (DoS) attacks. On the basis of extended chaotic maps, Meshram et al. [29] presented a 2FA protocol where a new value is stored in the server during the authentication procedure. However, this protocol cannot resist desynchronization attacks. Despite the fact that user anonymity can be ensured with the protocols from [28,29], they cannot offer user un-traceability, since the messages in the proposed protocol contain various continual values with which attackers can guess the identities of users easily. Additionally, as the users’ private credentials are stored directly in the card without being shielded, Lin et al.’s scheme [28] is vulnerable to stolen smart card attacks.
In 2022, in order to lessen the operation costs and hardware overhead caused by card readers, Meher and Amin [30] designed a multi-factor authentication protocol that does not use smart cards and which is user-friendly and robust. Moreover, the proposed protocol addressed the problem of smart card loss/theft. The authors analyzed their authentication protocol in its response to several security threats, and the results showed that their scheme was safe.
For the multiple service providers in a 6G-assisted intelligent medical environment, Le et al. [31] proposed a three-factor (i.e., smart card, password, and biometrics) authentication protocol with time-limited characteristics. In their scheme, service providers and patients can establish healthcare communications effectively and securely. However, user credentials are stored on the server side, which has potential risks. Moreover, the protocol is vulnerable to password-guessing attacks.
Considering the security threats from physical attacks, physically unclonable functions (PUFs) that can resist physical attacks are widely used to design robust authentication protocols [32,33]. These two research works both claimed that the proposed schemes could resist physical attacks, such as cloning attacks and physical tampering attacks.
1.2. Motivations and Contribution
In practical terms, a 2FA protocol (password + smart card as the two authentication factors) is supposed to offer comprehensive security and various desired characteristics. Table 1 shows the four essential security goals [34] that a 2FA protocol must meet.
Table 1.
Goals with related descriptions.
However, current state-of-the-art 2FA protocols do not meet at least one of the four presented security goals. For instance, according to the acknowledged criteria and heuristic analysis of this paper, the protocol in [35] cannot offer user un-traceability, the protocols in [36,37] cannot resist password-guessing attacks or provide session-key security, and the protocol in [38] is vulnerable to counterfeiting attacks. Similarly, using a heuristic analysis with detailed attack steps, Shin et al. [39] found that the static key and the client’s password in the protocols in [40,41] can be obtained by any attacker. To enhance security and maintain high efficiency, we developed a robust 2FA protocol for mobile computing. The key contributions of this paper are as follows:
- 1.
- Design of a 2FA protocol for mobile computing
The “Fuzzy-Verifiers” [42] and “Honeywords” [42] techniques, which can be used to construct a fuzzy password verifier and effectively resist password-guessing attacks, were applied in our protocol. Further, based on the hash function and ECC, we designed a 2FA protocol that supports user registration, mutual authentication, and user password updating.
- 2.
- The semantic security of the 2FA protocol
The semantic security of the session key was proved with a security proof in our protocol. Additionally, through heuristic analysis, we demonstrated that the proposed protocol meets the ten security evaluation criteria. Furthermore, our protocol’s entity authentication, message confidentiality, and session key security were confirmed using the ProVerif [43] tool.
- 3.
- Performance analysis of the 2FA protocol
A comparative analysis of the functionality, communication, and computation cost of the proposed protocol was conducted with six common related protocols; i.e., those of Roy et al. [37] (IEEE IoTJ’18), Islam et al. [5] (IEEE IoTJ’18), and so on. A better balance between security and availability was achieved in the proposed protocol according to the comparison results.
2. Preliminaries
In this section, some indispensable preliminaries are presented to facilitate an easy understanding of the following sections.
2.1. System Model
As shown in Figure 1, the system model for the 2FA protocol consists of two entities: the user and the service provider. Note that the blue line corresponds to the registration phase and the green line to the mutual authentication phase. In the registration phase, the secret key value and the long-term key are generated by the service provider. When a user registers with the service provider, the registration request is sent to the service provider by the user, and then the service provider creates a smart card, which is sent to the user to enable them to complete the registration operation.
Figure 1.
System model of 2FA protocol.
Following the mutual authentication phase, a user with a smart card sends a login request to the service provider, and the service provider then verifies this user according to the received login request. After that, the service provider computes a session key and then conveys the relevant message to the user. Lastly, when receiving the message from the service provider, the user authenticates the identity of the service provider and re-computes the session key.
2.2. Notations
To facilitate understanding among researchers, some notations used in the 2FA protocol are explained in Table 2.
Table 2.
Notations with related descriptions.
2.3. Adversary Model
In the existing adversary models presented in [42,44,45,46,47,48,49,50,51,52], the communication channel between the communicating parties can be controlled by the adversary, who can initiate malicious operations, such as intercepting, eavesdropping on, and modifying transport messages. In terms of the forward secrecy, can also be admitted and corrupt valid parties to obtain long-term keys. In addition, for various reasons (e.g., improper erasure), may attain a previous session key. The capabilities of the adversary in 2FA protocols are described below:
- By means of power analysis or other side-channel techniques, the parameters preserved in the smart card of the user can be obtained by the adversary ;
- can intercept, eavesdrop on, and modify transmitted messages in the public channel;
- can enumerate all pairs in in polynomial time, where and represent the spaces of the identifier and password, respectively;
- can also register as a legal user in cases in which anyone can register;
- may be able to obtain previous session keys (e.g., through digital forensic techniques [42]) due to unsuitable erasure;
- When evaluating the forward secrecy, is assumed to have obtained the long-term private key of the service provider.
3. Proposed Protocol
To meet the security requirements for a 2FA protocol for mobile users and service providers, we employed the following five core approaches in the proposed protocol:
- The user only sends to the service provider and the protocol uses fuzzy verification technology to design password login verifiers in the registration phase to resist attacks from privileged insiders;
- To resist password-guessing attacks where the adversary leverages the verifier to guess the password, we used the “Fuzzy-Verifiers” and “Honeywords” technologies [42] to set the verifiers of the password ; i.e., ;
- In terms of guaranteeing efficiency and forward secrecy [53], we applied lightweight ECC to ensure the 2FA protocol’s efficiency and, in addition to the long-term key, we added a secret value that cannot be obtained by the adversary in the calculation of the session key to ensure forward secrecy;
- To resist key-compromise impersonation attacks, we included a secret parameter that can be stored with the service provider securely (e.g., stored in an auxiliary server, as with [17]). Consequently, is unable to acquire the value of with to forge the login request message ;
- To ensure the user’s un-traceability, a dynamic computed with the dynamic parameters prohibits the adversary from tracing the unchanged identity of the user.
Next, this paper describes the 2FA protocol in detail, including the system setup phase, the registration phase, the following login and authentication phase, and, lastly, the password update phase.
3.1. System Setup Phase
The service provider independently chooses a number , which is a one-way hash function . Then, calculates ( is a generator of the abelian group in the elliptic curve), publicizes the parameter , and reserves a long, private, secret key .
3.2. Registration Phase
To obtain authentication from needs to carry out the following registration steps (R. 1–3) and complete the registration in the terminal of :
R. 1 The user chooses an and, using the secure channel, transmits it to the service provider ;
R. 2 Upon receiving , picks a random number and computes . stores in its database, where the parameter represents the number of login failures allowed for the user, and the smart card is revoked once the user fails more than times. Finally, adds to a fresh smart card and, using the secure channel, transmits to ;
R. 3 When the user obtains the smart card from , selects and randomly generates a number . Then, calculates the following parameters: . Finally, contains the parameters .
The operations are also summarized in Table 3 to provide researchers with a quick understanding of the registration phase.
Table 3.
User registration phase.
3.3. Login and Mutual Authentication Phase
After registers with effectively, runs the login operation (L. 1) and subsequent authentication steps (A. 1–A. 2) with :
L. 1 inputs to . Then, computes and checks whether = . If not, refuses the login request. Otherwise, computes . Subsequently, picks and computes , where is a symmetric encryption algorithm. Finally, sends to ;
A. 1 After obtaining , calculates , where is a symmetric decryption algorithm. Then, searches in its database. If cannot be found, this session is aborted. Otherwise, moves to the next step. extracts stored in the database and checks whether = . If they are unequal, understands that ’s smart card has been broken. Otherwise, moves to the next step. computes and checks whether . will end this session if they are unequal, which means that the integrity of has been corrupted. Otherwise, picks and computes . Lastly, sends the message to openly;
A. 2 On receiving the message , computes and verifies if =. If the verification fails, the integrity of may be corrupted, and ceases this session; otherwise, thinks about a shared session key .
Again, the operations are summarized in Table 4 to provide researchers with a quick understanding of the login and authentication phase.
Table 4.
Login and authentication phase.
3.4. Password Update Phase
Here, the user can change the password; that is, only submits his/her old or frequently used password to the smart card as shown in the login phase. After the smart card recognizes ’s legitimacy by checking if and obtains , can choose a new and then updates parameters: . Lastly, the smart card replaces with new parameters .
4. Security Analysis
In this section, we describe the formal security proof, the heuristic analysis, and the security analysis using the automated verification tool ProVerif employed to assess the security of the protocol. To facilitate the description, the proposed protocol is abbreviated as .
4.1. Formal Security Proof
In this part, we first provide the basics for the security proof and then prove the security of under the following elliptic-curve computational Diffie–Hellman (ECCDH) assumption.
ECCDH: The hardness assumption of the ECCDH problem, as a variant of the Diffie–Hellman power multiplication [53], indicates that, given a random pair in , no probabilistic polynomial time (PPT) adversary can effectively compute with a non-negligible advantage.
4.1.1. Basics for the Security Proof
The security of was assessed using the BPR2000 [54] and Bresson [55] basics, and it was further inspired by the proof work published by Wang et al. [42]. The basics are described below.
Participants. A 2FA involves two participants: and . Each participant has many different instances called oracles. ’s th instance and ’s th instance are denoted as and , respectively. Additionally, any instance can be expressed as if there are no differences.
Queries. The interaction between participants and the adversary only takes place through oracle queries, which simulate the adversary’s abilities in a real attack. The kinds of queries that can use are as follows:
- Execute : This query catches the eavesdropping of a protocol and, correspondingly, all communication records between and are included in its output;
- Send : This query represents the initialization of protocol ;
- Send : This query captures active attacks. More specifically, by intercepting and blocking a message, an imitative message is created by . Subsequently, conveys to and then obtains the feedback from ;
- Reveal : This query models the misapplication of the session key. When recognizes the session and creates an , it returns ’s session key to . Otherwise, it responds with , which means no response;
- Test : The session key’s semantic security is modeled with this query. A coin is flipped when the query is received. If , a random secret key of the same size as is then sent to . If , then is sent to . A “” is sent to if no for is created. This query can be invoked momentarily (but only once) during the simulation of the adversary;
- Corrupt : With this query, the secret data preserved by the user can be acquired by .
Accepted state: When the last prospective protocol message is accepted, an instance will enter the accepted state. Significantly, the orderly series connection of all communicated messages forms the session identifier for for the present session.
Partnering. Two instances and become partners if: (1) and are in the accepted state; (2) the session identifiers of and are the same—i.e., ; (3) ’s partner identifier is and vice versa.
Freshness. An instance is fresh if: (1) an accepted session key has been computed by ; (2) a reveal query is not sent to by or its partner.
4.1.2. Security Proof
In this part, the difference lemma [56] is introduced in Lemma 1 and, with this lemma, the advantage from corrupting the session key’s semantic security is derived by means of a formal theorem.
Lemma 1.
Suppose that are events defined in a probabilistic distribution and further assume that . Then, holds, where denotes the probability that the event occurs.
Theorem 1.
Define as the probability of a PPT adversary corrupting the semantic security of within a limited time . When delivers hash queries, execute queries, and send queries, we obtain:
where represents the password space that coincides with Zipf’s law [44] according to a probability distribution, and refer to the Zipf’s law parameters, denotes the bit length of the hash value, represents a large prime parameter, and , where is the calculation time for the point multiplication operation of the ECC.
Proof.
Assume that the adversary can corrupt the security of . For such circumstances, we put forward an algorithm that is able to solve the ECCDH problem. More precisely, responds with against the instance of the ECCDH. The proof consists of a series of games: . Let denote the valid output of in , where .
Game . This game simulates a real attack. has access to all the oracles; that is, we get:
Game . This game models the random oracle by managing and a hash list . In addition, this game cannot be distinguished from the actual conduction of the protocol—i.e., game —as all oracles are modeled as the real attack. Thus, we have:
Game . All types of queries are modelled in this game, as in game , and it is terminated in the following two situations [34]: (1) a crash from the hash query output and (2) a crash from various records—. According to the birthday paradox, we have:
Game . This game is modeled similarly to the game but the only difference is that the protocol is aborted when guesses the authentication parameters and accurately without initiating the random oracle query. Further, this game is difficult to differentiate from the previous game unless the accurate authentication parameter is rejected by (or ). Hence, we have:
Game . The session key is attained without accordingly initiating the random oracle query in this game. Correspondingly, this game is difficult to differentiate from the previous game unless queries from the random oracle on , where [34]. Therefore, we have:
Game . This game is similar to the previous game , and the only distinction is that the query is additionally executed. When initiates a hash query with , game is aborted. Accordingly, on the one hand, can be obtained from initiating the query with the maximum likelihood of . On the other hand, by means of a smart-card-loss attack and by modeling the corrupt oracle, may expect to obtain the password for and corrupt the session key. Thanks to the “fuzzy verifier + honeywords” technology, the feasibility of correctly guessing a password is not more than [42]. Lastly, from the perspective of breaking the forward security to obtain the session key, the probability of obtained is at most. Therefore, we have:
Factually, in this game, has no advantage from using the same sized session key created by the random value to discriminate the real when does not manage to initiate a query with the correct input; that is, we have .
Finally, according to games and Lemma 1, we have
□
4.2. Heuristic Analysis
Here, we employed heuristic analysis to evaluate the protocol’s security since the heuristic method, with its effective, simple, and direct procedure [7], can show that the proposed protocol not only offers desirable properties but is also resistant to various known attacks.
4.2.1. Timely Password Typo Detection
The proposed protocol decreases the computation and communication overhead in cases of input errors or illegal user-initiated attacks. More precisely, in the login phase, the smart card verifies the password’s validity by checking whether ? = after the user inputs . If = , then the request message is transmitted to the service provider by . Otherwise, this session is terminated. Therefore, the 2FA provides timely password typo detection.
4.2.2. User Anonymity and Un-Traceability
User anonymity refers to hiding part of the user’s information during communication, and un-traceability means that the user’s identity cannot be tracked. Practically, in order to obtain the user’s identity during the communication session, needs to extract all parameters stored in and obtain from and , but no identity information is preserved in the user’s smart card or conveyed over the open channel in the proposed protocol. For user traceability, and are variable. The user’s real identity cannot be traced by . Thus, user anonymity and un-traceability can be achieved.
4.2.3. Privileged Insider Attack
A privilege insider attack refers to insiders using legitimate access to steal confidential information in the system. In the registration phase of our protocol, sends to without any password-related information. Afterwards, an updated smart card is transmitted to by . activates by providing , which is only known to , when receiving . Finally, obtains the new . It can be seen that is unavailable in plaintext by examining the parameters preserved in . Thus, the proposed protocol can resist privileged insider attacks.
4.2.4. Key-Compromise User Impersonation Attack
In order to launch a key-compromise user impersonation attack, must attain the value of , which can be calculated in two ways: (1) the legal user can compute it with known and (2) the service provider can calculate it because of the known and . However, computational difficulties arise if attempts to acquire these critical parameters; that is, cannot impersonate the legitimate user for . Therefore, the proposed protocol is resilient against this attack.
4.2.5. Server Impersonation Attack
In the proposed protocol, needs to calculate correct to impersonate the service provider . Since is computed by and preserved by a secure hash function, has to grasp these critical parameters or estimate the valid values in polynomial time. Next, must grasp the secret values . In any case, it is computationally challenging for to estimate these private parameters in polynomial time. As a result, the messages cannot be calculated by correctly, and the proposed protocol is resistant against server impersonation attacks.
4.2.6. Password-Guessing Attack
In the 2FA protocol, can eavesdrop on all information through the open channel and extract all parameters from the smart card of the user. Then, analyses of the password-guessing attack can be conducted from two angles: (i) On the one hand, with an unknown user’s identity , guesses within the dictionary space. Then, will be capable of calculating the relevant parameters , and . Afterwards, verifies whether ? = . Finally, the above procedures are repeated until the password and identity are guessed by accurately. Obviously from the perspective of theory, the relevant and that meet ? = can be estimated by in polynomial time. Factually, the guessing size for the password and identity space can be represented as , where , and and represent the guessing spaces of the password and identity, respectively. Thus, the valid password and identity cannot be guessed by effectively because is larger than the finite that denotes the time allowed by the smart card for an attacker until login failure, when and [41]. (ii) On the other hand, the identity of the user is likely to be leaked by . Nevertheless, is unable to estimate the password correctly since there are still a large number of password candidates that meet the formula . Therefore, no matter whether or , the authentic prize cannot be attained by the adversary using a guessing attack.
4.2.7. De-Synchronization Attack
The de-synchronization attack interferes with the parameter updates. Although the initial message stream can be blocked by the attacker, the service provider does not have to change any critical parameters in the database. Therefore, the consistency of the following communications will not be affected by this procedure. Furthermore, even if the attacker can block the second message stream, the consistency of communications between the service provider and user will not be influenced by it either, as the smart card will change its data only if ? = holds. As a result, the proposed protocol is resilient against de-synchronization attacks.
4.2.8. Replay Attack
Suppose that the login request information for the previous session has been acquired by over an open channel. When replays to , verifies . Since is updated in every successive session, is also changed to each time. Therefore, cannot check the previous in the present session. In addition, if replays to , the previous message cannot be checked by in the present session. Accordingly, the proposed protocol is resistant against replay attacks.
4.2.9. Man-in-the-Middle Attack
Assume that manages to block and intercept the login request information and the challenge message and extracts all parameters for in the proposed protocol. To initiate an effective man-in-the-middle attack, has to falsify the new message stream or replay the previous message stream. As mentioned above, the presented protocol is resilient against replay and impersonation attacks. Neither the service provider nor the user can authenticate successfully. Thus, the presented protocol can resist man-in-the-middle attacks.
4.2.10. Mutual Authentication
In the presented protocol, verifies by checking whether , while checks by verifying if . After mutual authentication, a common session key is negotiated by and ; that is, mutual authentication can be achieved safely with the proposed protocol.
4.2.11. Forward Secrecy of the Session Key
The forward secrecy of the session key indicates that, although the long-term key of is leaked to , all previous session keys remain safe. Assume that eavesdrops further: . To calculate the prior session key , needs to know and . Further, computational difficulties arise for when they try to obtain the stochastic parameters or . Thus, is unable to calculate . Forward secrecy can be achieved successfully with the presented 2FA protocol.
4.3. Formal Verification Analysis Using ProVerif
ProVerif is the latest popular automated verification tool [43]. By running the process in an infinite message space and session simulation, it can verify whether the authentication protocol can: (1) ensure the confidentiality of a specially defined string, (2) ensure the authentication of all entities, and (3) prevent an attacker from tracking the secret string (i.e., the session key).
4.3.1. Definition of Parameters in ProVerif
In Figure 2, we provide the definitions of the parameters in ProVerif, where the public channel (ch) and secure channel (sch) are used for communication between the user and service provider. Further, SKusecret is a session key for the user. All functions, as well as related equations, are also illustrated. Two queries (i.e., lines 24 and 25) were run to test whether the session key was secure and whether the user could obtain authentication from the service provider.
Figure 2.
Definition of parameters in ProVerif.
4.3.2. Code for Process in ProVerif
In Figure 3, lines 26–53 of the code (respectively, lines 55–77 of the code) are dedicated to the registration and authentication of the user (respectively, the registration and authentication of the service provider). Then, through the code process ((!User(Idi,PWi))|(!GWN(x,X,P))) that is used to run two entities’ processes in parallel, we can obtain running results for the program codes (see lines 85–89 in Figure 3; i.e., the verification summary). The result in line 87 indicates that the attacker cannot calculate or track the session key SKusecret, and the last line (i.e., line 88) denotes that the event UserKey(UK) is correctly executed after the event ServerKey(SK) and shows that the user has obtained authentication from the service provider.
Figure 3.
Code for process in ProVerif.
5. Summary Comparison: Functionality and Performance
To show the better balance of availability and security in the presented 2FA protocol, this section provides a comparative evaluation focusing on the functionality analyses, communication, and calculation overhead in the schemes developed by Tsai et al. [36], Zhu et al. [38], Liu et al. [35], Roy et al. [37], and Islam et al. [5] and in the presented 2FA protocol.
5.1. Security Evaluation Criteria
The hinge that can be used to assess the goodness of the functionality of an authentication protocol is whether the protocol design conforms to the fundamental principles. Wang et al. [42] and Wang et al. [57] provided conclusions regarding the security criteria in terms of AKA protocols. On the basis of our security analysis demonstrated above, Table 5 presents the safety criteria designed in [42,57] and then ten evaluation criteria () are described.
Table 5.
Security evaluation criteria for AKA protocols.
5.2. Functionality Comparison
In the following, a comprehensive functionality comparison between the 2FA protocol and the five most advanced protocols [5,35,36,37,38] is presented using the evaluation indicators mentioned in Section 5.1.
The comparison results are depicted in Table 6, where the notation means that the protocol demonstrates the property, and denotes that the protocol does not demonstrate the property. As shown in Table 6, the protocol from [5] cannot fulfill and , since the smart card in [5] stores an explicit password validation parameter and is not resistant against password-guessing attacks and key-compromise user impersonation attacks. Furthermore, smart card revocation of function is not provided in [5].
Table 6.
Functionality comparison of relevant AKA protocols.
The protocol in [35] cannot provide user anonymity given the transmission of plaintext identities over an open channel, and clock synchronization attacks cannot be resisted; that is, the protocol in [35] does not demonstrate , and . Further, Tsai et al.’s protocol [34] does not demonstrate and , and Roy et al.’s protocol [37] does not demonstrate , and . Specifically, the protocol in [36] cannot achieve forward secrecy due to the storage of secret key values in the corresponding device [36]. Although only three chaotic-map operations are performed in the protocol in [37], it is still incapable of maintaining forward secrecy once the long-term key is compromised. In addition, the password validation parameter is stored explicitly in the smart card and the plaintext identity is transmitted over the open channel in Roy et al.’s protocol [37], which makes it easy for the attacker to intercept, resulting in the information from the communicator not being synchronized. Similarly, Zhu et al.’s protocol [38] is vulnerable to password-guessing attacks and smart-card-loss attacks due to the smart card storing an explicit password validation parameter. Accordingly, [38] does not demonstrate and .
In general, by observing the Table 6, it can be deduced that the proposed 2FA protocol is the only one that meets the expected security and usability goals and is immune to various known attacks. The proposed 2FA protocol is the only protocol that is resistant against diverse known attacks and can meet the ideal safety and availability goals.
5.3. Communication and Computation Cost Comparison
To provide a fair presentation of the computation and communication cost comparison, drawing on previous research work [58,59], notations with the corresponding running time and running platform are shown in Table 7. For the evaluation of the communication overhead in the login and authentication phase, the length of the safety parameters is defined in Table 8.
Table 7.
Notations with related abbreviations.
Table 8.
Lengths of the safety parameters.
As shown in Table 9, the total computation cost for the 2FA protocol is 1.818 ms. Compared with other protocols, the 2FA protocol has slightly higher computing costs (and is closest to the cost of the scheme from [35]), allowing it to obtain higher robustness in terms of safety. The total communication cost of the 2FA protocol is 1376 bits. It can be seen that the communication costs of the relevant protocols are slightly lower than that of the 2FA protocol. It can be seen that only two communication message streams are required in the 2FA protocol, while three message streams are required in the protocols from [5,35,36].
Table 9.
Communication and computation costs in the login and authentication phase.
In conclusion, it can be seen that the proposed 2FA protocol is the most suitable for two-factor authentication and key agreement and balances security and availability in mobile computing.
6. Conclusions
The authentication mechanism has always been an effective way of guaranteeing secure communication in mobile computing. However, existing authentication protocols weaken security in the pursuit of high efficiency. In this study, we designed a robust and effective 2FA protocol and then fully proved the protocol’s security and good performance. The safety analysis results using the ProVerif tool demonstrated that the proposed 2FA protocol was able to achieve semantic security, satisfy all ten evaluation criteria (), and provide mutual authentication for and preserve the security of the session key. By comparing the performance of six state-of-the-art protocols and the presented 2FA protocol, we showed that the designed 2FA protocol is more practical. Its design ideas presented in our paper are generic and may be used as guidelines to design AKA protocols. As our ongoing research work, we will focus on a more secure authentication protocol that also considers physical attacks for various situations in mobile computing with IPv6 over low-power wireless personal area networks (6LoWPAN) [60].
Author Contributions
Validation, methodology, writing—original draft, K.L. and Z.Z.; writing—review and editing, Q.C., G.X. (Guosheng Xu), C.W. and G.X. (Guoai Xu); validation, Y.G. and W.Z. All authors have read and agreed to the published version of the manuscript.
Funding
This work was supported by the National Natural Science Foundation of China under grant no. 62102042 and the National Key Research and Development Program of China under grant no. 2021YFB3101500.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
References
- O’Dea, S. Forecast Number of Mobile Users Worldwide 2020–2025. Available online: https://www.statista.com/statistics/218984/number-of-globalmobile-users-since-2010 (accessed on 2 April 2021).
- Available online: http://px.tcnet.com.cn/news/industry/2568.html (accessed on 10 February 2023).
- Available online: http://www.360doc.com/content/20/0901/16/71368091_933437844.shtml (accessed on 2 September 2020).
- Wazid, M.; Das, A.K.; Kumar, N.; Rodrigues, J.J. Secure three-factor user authentication scheme for renewable-energy-based smart grid environment. IEEE Trans. Ind. Inform. 2017, 13, 3144–3153. [Google Scholar] [CrossRef] [Scilit]
- Islam, S.H.; Vijayakumar, P.; Bhuiyan, M.Z.A.; Amin, R.; Balusamy, B. A provably secure three-factor session initiation protocol for multimedia big data communications. IEEE Internet Things J. 2017, 5, 3408–3418. [Google Scholar] [CrossRef] [Scilit]
- Wang, C.; Wang, D.; Tu, Y.; Xu, G.; Wang, H. Understanding node capture attacks in user authentication schemes for wireless sensor networks. IEEE Trans. Dependable Secur. Comput. 2020, 19, 507–523. [Google Scholar] [CrossRef] [Scilit]
- Zou, S.; Cao, Q.; Wang, C.; Huang, Z.; Xu, G. A robust two-factor user authentication scheme-based ecc for smart home in iot. IEEE Syst. J. 2022, 16, 4938–4949. [Google Scholar] [CrossRef] [Scilit]
- Wang, Q.; Wang, D. Understanding Failures in Security Proofs of Multi-Factor Authentication for Mobile Devices. IEEE Trans. Inf. Forensics Secur. 2022, 18, 597–612. [Google Scholar] [CrossRef] [Scilit]
- Gope, P.; Lee, J.; Quek, T.Q. Lightweight and practical anonymous authentication protocol for RFID systems using physically unclonable functions. IEEE Trans. Inf. Forensics Secur. 2018, 13, 2831–2843. [Google Scholar] [CrossRef] [Scilit]
- Yang, Z.; He, J.; Tian, Y.; Zhou, J. Faster authenticated key agreement with perfect forward secrecy for industrial internet-of-things. IEEE Trans. Ind. Inform. 2019, 16, 6584–6596. [Google Scholar] [CrossRef] [Scilit]
- Das, M.L.; Saxena, A.; Gulati, V.P. A dynamic ID-based remote user authentication scheme. IEEE Trans. Consum. Electron. 2004, 50, 629–631. [Google Scholar] [CrossRef] [Scilit]
- Ma, C.G.; Wang, D.; Zhao, S.D. Security flaws in two improved remote user authentication schemes using smart cards. Int. J. Commun. Syst. 2014, 27, 2215–2227. [Google Scholar] [CrossRef] [Scilit]
- Hankerson, D.; Menezes, A.; Vanstone, S. Guide to Elliptic Curve Cryptography; Springer Science & Business Media: New York, NY, USA, 2006. [Google Scholar]
- Rivest, R.L.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef] [Scilit]
- Zhang, F.; Safavi-Naini, R.; Susilo, W. An efficient signature scheme from bilinear pairings and its applications. In Proceedings of the Public Key Cryptography—PKC 2004: 7th International Workshop on Theory and Practice in Public Key Cryptography, Singapore, 1–4 March 2004; pp. 277–290. [Google Scholar]
- Durlanik, A.; Sogukpinar, I. SIP authentication scheme using ECDH. Proc. Work. Acad. Sci. Eng. Technol. 2005, 8, 350–353. [Google Scholar]
- Wang, D.; Cheng, H.; He, D.; Wang, P. On the challenges in designing identity-based privacy-preserving authentication schemes for mobile devices. IEEE Syst. J. 2016, 12, 916–925. [Google Scholar] [CrossRef] [Scilit]
- Lamport, L. Password authentication with insecure communication. Commun. ACM 1981, 24, 770–772. [Google Scholar] [CrossRef] [Scilit]
- Arkko, J.; Torvinen, V.; Camarillo, G.; Niemi, A.; Haukka, T. Security mechanism agreement for SIP sessions. Doc. RFC 2003, 3329, 1–24. [Google Scholar]
- Fotouhi, M.; Bayat, M.; Das, A.K.; Far, H.A.N.; Pournaghi, S.M.; Doostari, M.A. A lightweight and secure two-factor authentication scheme for wireless body area networks in health-care IoT. Comput. Netw. 2020, 177, 107333. [Google Scholar] [CrossRef] [Scilit]
- Chatterjee, S.; Roy, S.; Das, A.K.; Chattopadhyay, S.; Kumar, N.; Vasilakos, A.V. Secure biometric-based authentication scheme using Chebyshev chaotic map for multi-server environment. IEEE Trans. Dependable Secur. Comput. 2016, 15, 824–839. [Google Scholar] [CrossRef] [Scilit]
- Wang, D.; Wang, P. On the anonymity of two-factor authentication schemes for wireless sensor networks: Attacks, principle and solutions. Comput. Netw. 2014, 73, 41–57. [Google Scholar] [CrossRef] [Scilit]
- Vivekanandan, M.; Sastry, V.N.; Srinivasulu Reddy, U. Efficient user authentication protocol for distributed multimedia mobile cloud environment. J. Ambient Intell. Hum. Comput. 2020, 11, 1933–1956. [Google Scholar] [CrossRef] [Scilit]
- Hsu, C.L.; Le, T.V.; Hsieh, M.C.; Tsai, K.Y.; Lu, C.F.; Lin, T.W. Three-factor UCSSO scheme with fast authentication and privacy protection for telecare medicine information systems. IEEE Access 2020, 8, 196553–196566. [Google Scholar] [CrossRef] [Scilit]
- Hsu, C.L.; Le, T.V.; Lu, C.F.; Lin, T.W.; Chuang, T.H. A privacy-preserved E2E authenticated key exchange protocol for multi-server architecture in edge computing networks. IEEE Access 2020, 8, 40791–40808. [Google Scholar] [CrossRef] [Scilit]
- Zhang, Y.; Xu, C.; Li, H.; Yang, K.; Cheng, N.; Shen, X. PROTECT: Efficient password-based threshold single-sign-on authentication for mobile users against perpetual leakage. IEEE. Trans. Mob. Comput. 2020, 20, 2297–2312. [Google Scholar] [CrossRef] [Scilit]
- Vivekanandan, M.; U, S.R. Blockchain based privacy preserving user authentication protocol for distributed mobile cloud environment. Peer-to-Peer Netw. Appl. 2021, 14, 1572–1595. [Google Scholar] [CrossRef] [Scilit]
- Lin, T.W.; Hsu, C.L.; Le, T.V.; Lu, C.F.; Huang, B.Y. A smartcard-based user-controlled single sign-on for privacy preservation in 5G-IoT telemedicine systems. Sensors 2021, 21, 2880. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Meshram, C.; Ibrahim, R.W.; Deng, L.; Shende, S.W.; Meshram, S.G.; Barve, S.K. A robust smart card and remote user password-based authentication protocol using extended chaotic maps under smart cities environment. Soft Comput. 2021, 25, 10037–10051. [Google Scholar] [CrossRef] [Scilit]
- Meher, B.K.; Amin, R. A location-based multi-factor authentication scheme for mobile devices. Int. J. Ad Hoc Ubiquitous Comput. 2022, 41, 181–190. [Google Scholar] [CrossRef] [Scilit]
- Le, T.V.; Lu, C.F.; Hsu, C.L.; Do, T.K.; Chou, Y.F.; Wei, W.C. A novel three-factor authentication protocol for multiple service providers in 6G-aided intelligent healthcare systems. IEEE Access 2022, 10, 28975–28990. [Google Scholar] [CrossRef] [Scilit]
- Gope, P.; Sikdar, B. Lightweight and privacy-preserving two-factor authentication scheme for IoT devices. IEEE Internet Things J. 2018, 6, 580–589. [Google Scholar] [CrossRef] [Scilit]
- Kaveh, M.; Mosavi, M.R. A lightweight mutual authentication for smart grid neighborhood area network communications based on physically unclonable function. IEEE Syst. J. 2020, 14, 4535–4544. [Google Scholar] [CrossRef] [Scilit]
- Qiu, S.; Wang, D.; Xu, G.; Kumari, S. Practical and provably secure three-factor authentication protocol based on extended chaotic-maps for mobile lightweight devices. IEEE Trans. Dependable Secur. Comput. 2020, 19, 1338–1351. [Google Scholar] [CrossRef] [Scilit]
- Liu, Y.; Xue, K. An improved secure and efficient password and chaos-based two-party key agreement protocol. Nonlinear Dyn. 2016, 84, 549–557. [Google Scholar] [CrossRef] [Scilit]
- Tsai, J.L.; Lo, N.W.; Wu, T.C. Novel anonymous authentication scheme using smart cards. IEEE Trans. Ind. Inform. 2012, 9, 2004–2013. [Google Scholar] [CrossRef] [Scilit]
- 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. 2017, 5, 2884–2895. [Google Scholar] [CrossRef] [Scilit]
- Zhu, H.; Hao, X. A provable authenticated key agreement protocol with privacy protection using smart card based on chaotic maps. Nonlinear Dyn. 2015, 81, 311–321. [Google Scholar] [CrossRef] [Scilit]
- Shin, S.; Kobara, K. Security analysis of password-authenticated key retrieval. IEEE Trans. Dependable Secur. Comput. 2015, 14, 573–576. [Google Scholar]
- IEEE P1363.2/D11; Standard Specifications for Password-Based Public-Key Cryptographic Techniques. IEEE P1363 Working Group: New York, NY, USA, 2003.
- Jablon, D.P. Password authentication using multiple servers. In Proceedings of the Topics in Cryptology—CT-RSA 2001: The Cryptographers’ Track at RSA Conference 2001, San Francisco, CA, USA, 8–12 April 2001; pp. 344–360. [Google Scholar]
- Wang, D.; Wang, P. Two birds with one stone: Two-factor authentication with security beyond conventional bound. IEEE Trans. Dependable Secur. Comput. 2016, 15, 708–722. [Google Scholar] [CrossRef] [Scilit]
- Blanchet, B.; Smyth, B.; Cheval, V.; Sylvestre, M. Proverif 2.02 pl1: Automatic Cryptographic Protocol Verifier, User Manual and Tutorial; Technical Report. 2020. Available online: https://opam.ocaml.org/packages/proverif/proverif.2.02pl1/ (accessed on 5 September 2020).
- Wang, D.; Wang, P. On the implications of Zipf’s law in passwords. In Computer Security—ESORICS, Proceedings of the 21st European Symposium on Research in Computer Security, Heraklion, Greece, 26–30 September 2016; Askoxylakis, I., Ioannidis, S., Katsikas, S., Meadows, C., Eds.; Springer: Cham, Switzerland, 2016; pp. 111–131. [Google Scholar]
- Wang, D.; He, D.; Wang, P.; Chu, C.H. Anonymous two-factor authentication in distributed systems: Certain goals are beyond attainment. IEEE Trans. Dependable Secur. Comput. 2014, 12, 428–442. [Google Scholar] [CrossRef] [Scilit]
- Eisenbarth, T.; Kasper, T.; Moradi, A.; Paar, C.; Salmasizadeh, M.; Shalmani, M.T.M. On the power of power analysis in the real world: A complete break of the KeeLoq code hopping scheme. In Advances in Cryptology—CRYPTO, Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 17–21 August 2008; Wagner, D., Ed.; Springer: Berlin/Heidelberg, Germany, 2008; pp. 203–220. [Google Scholar]
- Kocher, P.; Jaffe, J.; Jun, B. Differential power analysis. In Advances in Cryptology—CRYPTO’ 99, Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 15–19 August 1999; Wiener, M., Ed.; Springer: Berlin/Heidelberg, Germany, 1999; pp. 388–397. [Google Scholar]
- Messerges, T.S.; Dabbish, E.A.; Sloan, R.H. Examining smart-card security under the threat of power analysis attacks. IEEE Trans. Comput. 2002, 51, 541–552. [Google Scholar] [CrossRef] [Scilit]
- Wang, D.; Zhang, Z.; Wang, P.; Yan, J.; Huang, X. Targeted online password guessing: An underestimated threat. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016; pp. 1242–1254. [Google Scholar]
- Wang, D.; Cheng, H.; Wang, P.; Huang, X.; Jian, G. Zipf’s law in passwords. IEEE Trans. Inf. Forensic Secur. 2017, 12, 2776–2791. [Google Scholar] [CrossRef] [Scilit]
- Agrawal, S.; Das, M.L.; Lopez, J. Detection of node capture attack in wireless sensor networks. IEEE Syst. J. 2018, 13, 238–247. [Google Scholar] [CrossRef] [Scilit]
- He, D.; Wang, D. Robust biometrics-based authentication scheme for multiserver environment. IEEE Syst. J. 2014, 9, 816–823. [Google Scholar] [CrossRef] [Scilit]
- Wang, D.; Wang, N.; Wang, P.; Qing, S. Preserving privacy for free: Efficient and provably secure two-factor authentication scheme with user anonymity. Inf. Sci. 2015, 321, 162–178. [Google Scholar] [CrossRef] [Scilit]
- Bellare, M.; Pointcheval, D.; Rogaway, P. Authenticated key exchange secure against dictionary attacks. In Proceedings of the Eurocrypt 2000, Bruges, Belgium, 14–18 May 2000; pp. 139–155. [Google Scholar]
- Bresson, E.; Chevassut, O.; Pointcheval, D. Security proofs for an efficient password-based key exchange. In Proceedings of the 10th ACM Conference on Computer and Communications Security, Washington, DC, USA, 27–30 October 2003; pp. 241–250. [Google Scholar]
- Shoup, V. Sequences of games: A tool for taming complexity in security proofs. IACR Cryptol. Eprint Arch. 2004, 332. Available online: https://eprint.iacr.org/2004/332 (accessed on 18 January 2006).
- Wang, D.; Gu, Q.; Cheng, H.; Wang, P. The request for better measurement: A comparative evaluation of two-factor authentication schemes. In Proceedings of the 11th ACM on Asia Conference on Computer and Communications Security, ASIA CCS ’16, Xi’an, China, 30 May–3 June 2016; pp. 475–486. [Google Scholar]
- Wu, F.; Li, X.; Xu, L.; Vijayakumar, P.; Kumar, N. A novel three-factor authentication protocol for wireless sensor networks with IoT notion. IEEE Syst. J. 2020, 15, 1120–1129. [Google Scholar] [CrossRef] [Scilit]
- Srinivas, J.; Das, A.K.; Wazid, M.; Kumar, N. Anonymous lightweight chaotic map-based authenticated key agreement protocol for industrial Internet of Things. IEEE Trans. Dependable Secur. Comput. 2018, 17, 1133–1146. [Google Scholar] [CrossRef] [Scilit]
- Abbas, G.; Tanveer, M.; Abbas, Z.H.; Waqas, M.; Baker, T.; Al-Jumeily OBE, D. A secure remote user authentication scheme for 6LoWPAN-based Internet of Things. PLoS ONE 2021, 16, e0258279. [Google Scholar] [CrossRef] [Scilit]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).


