Next Article in Journal
An Improved Mask R-CNN Micro-Crack Detection Model for the Surface of Metal Structural Parts
Next Article in Special Issue
End-to-End Encrypted Message Distribution System for the Internet of Things Based on Conditional Proxy Re-Encryption
Previous Article in Journal
Enhanced Practical Byzantine Fault Tolerance via Dynamic Hierarchy Management and Location-Based Clustering
Previous Article in Special Issue
Provably Secure Lightweight Mutual Authentication and Key Agreement Scheme for Cloud-Based IoT Environments
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Cryptanalysis and Improvement of Several Identity-Based Authenticated and Pairing-Free Key Agreement Protocols for IoT Applications

College of Software Engineering, Zhengzhou University of Light Industry, Zhengzhou 450001, China
*
Author to whom correspondence should be addressed.
Sensors 2024, 24(1), 61; https://doi.org/10.3390/s24010061
Submission received: 22 November 2023 / Revised: 19 December 2023 / Accepted: 19 December 2023 / Published: 22 December 2023
(This article belongs to the Special Issue IoT Network Security)

Abstract

:
Internet of Things (IoT) applications have been increasingly developed. Authenticated key agreement (AKA) plays an essential role in secure communication in IoT applications. Without the PKI certificate and high time-complexity bilinear pairing operations, identity-based AKA (ID-AKA) protocols without pairings are more suitable for protecting the keys in IoT applications. In recent years, many pairing-free ID-AKA protocols have been proposed. Moreover, these protocols have some security flaws or relatively extensive computation and communication efficiency. Focusing on these problems, the security analyses of some recently proposed protocols have been provided first. We then proposed a family of eCK secure ID-AKA protocols without pairings to solve these security problems, which can be applied in IoT applications to guarantee communication security. Meanwhile, the security proofs of these proposed ID-AKA protocols are provided, which show they can hold provable eCK security. Some more efficient instantiations have been provided, which show the efficient performance of these proposed ID-AKA protocols. Moreover, comparisons with similar schemes have shown that these protocols have the least computation and communication efficiency at the same time.

1. Introduction

Internet of Things (IoT) applications have been increasingly exploited as information technology, operational technology, communication technology, and electronic technology develop. Examples include Smart Grid, Internet of Vehicles, Industrial IoT, and Agriculture IoT, which have enhanced living conditions greatly. With the development of 5G, secure and efficient communication demands have become huge as massive IoT devices are participating in these IoT applications. In general, IoT end devices and IoT servers play important roles in IoT applications. IoT end devices, mounted with sensors, collect useful information and transmit data to the IoT servers over the open network. When these IoT data are transmitted among different IoT devices, the sensitive information inserted in these IoT data needs more secure cryptographic algorithms to protect IoT user privacy and data security.
To protect the security of data transmission, cryptographic means that require secret keys are presented. For IoT user identity authentication, the shared key, public key certificate, and zero-knowledge proof are some common cryptographic methods [1]. For secure IoT data transmission, the digital signature can help confirm data ownership [2], the key agreement can help establish a secure session key [3], and the public key encryption can guarantee IoT data security with ciphertext in the public Internet environment [4]. For IoT data with fine-grained access control, attribute-based encryption can help establish a secure access control strategy with the attributes of IoT users and data [5], and security policy protocol can solve Internet control message protocol (ICMP) attacks [6]. Many cryptographic algorithms guarantee secure and efficient communication among different IoT applications—there are too many to mention one by one. However, these cryptographic algorithms are public; therefore, the keys are essential for secure data transmission. Moreover, blockchain technology has been applied to IoT applications to solve the centralized management problem [7].
Key agreement (KA) is an important method to protect keys, which supports building a common session key between no less than two different users for subsequent communications. Authenticated key agreement (AKA) not only generates a common session key, but also prevents active attacks and implicitly authenticates the participants simultaneously. In the public-key infrastructure (PKI) setting, the user’s long-term public key is matched with the corresponding identity in a certificate, which is derived by a trusted certificate authority. However, managing and transmitting these certificates results in heavy computation and storage costs. Considering IoT end-devices are usually resource-constrained and have limited memory, computation power, storage, and battery life, PKI-based AKA protocols (e.g., [3,8]) are not suitable for IoT applications. Therefore, to avoid the PKI certificate problem, AKA (ID-AKA) protocols with identity are proposed [9]. In ID-AKA protocols, every user owns a unique identity, the long-term public key is constructed by the user’s personal identity, and the private key is composed of the identity and a master key, which is created by the trusted key generation center (KGC). Since the introduction of the first ID-AKA protocol in [10], many ID-AKA protocols have been introduced based on bilinear pairings [11,12,13,14,15,16,17,18], which is a high time-complexity operation. Because of the resource restriction of IoT end devices, ID-AKA protocols without pairings are more suitable for IoT applications.
Currently, the modified Bellare and Rogaway (mBR) model [12], the Canetti–Krawczyk (CK) model [19], and the extended Canetti–Krawczyk (eCK) model [20] are some famous security models for AKA protocols. In particular, the eCK model can achieve the most security properties [13]. Meanwhile, to satisfy the communication demands of the high speed, low latency, and large connections in IoT applications, a more secure and efficient AKA protocol is needed. Thus, designing efficient ID-AKA protocols without pairings while maintaining eCK security would be more suitable for IoT applications.

Motivation and Our Contribution

Aiming at considering the aforementioned problems, this paper presents some efficient ID-AKA protocols while holding the eCK security for IoT applications.
  • We provide the preliminaries of some Diffie–Hellman assumptions and the forking lemma, provide a detailed description of the eCK-security model for two-party ID-AKA protocols, and draw a figure to show the network model for these protocols.
  • We analyze three recently proposed ID-AKA protocols without pairings [21,22,23], and point out the security flaws against some known attacks.
  • We propose a family of pairing-free ID-AKA protocols in the eCK security model. The security proof also considers the case where the public key materials related to the long-term private key can be altered by an active adversary. Furthermore, events in our security proof are complementary.
  • We provide some more efficient protocols that need four elliptic curve point multiplication operations. Protocol comparison shows that our efficient protocols have the advantage over similar protocols with the items of security, computation, and communication efficiency.
The paper is organized as follows: Section 2 provides some related work, Section 3 presents the cryptanalysis of several ID-AKA protocols, Section 4 proposes a family of pairing-free ID-AKA protocols, Section 5 shows some more efficient instantiations, Section 6 presents the performance and comparison, and Section 7 gives the conclusion.

2. Related Work

Some related works about the cryptographic methods for IoT applications and developments of KA protocols are provided in the following two subsections.

2.1. Cryptographic Methods for IoT Applications

In IoT applications, the IoT data generally contain plenty of sensitive information about the system users, such as their personal identity, location, and production data. When these IoT data are transmitted among different IoT devices and applications, cryptographic technologies play an essential role in the processes of user identity authentication, IoT data transmission, IoT data fine-grained access control, and so on. Jayabalasamy et al. [2] proposed an aggregate signature scheme to solve the nonrepudiation problem in blockchain ecosystems, which could also confirm the data ownership in the untrusted IoT environment. Li et al. [3] designed a KA protocol based on the SM2 algorithm, which could help establish a secure session key between different system users in smart grid communications. Pu et al. [4] introduced a public key authentication encryption scheme, and added the function of keyword search into this scheme to guarantee IoT data security in industrial IoT applications. Rasori et al. [5] provided a survey of the attributed-based encryption protocols in recent years, and figured out the problems and challenges of IoT data fine-grained access control in most current IoT applications. Onyema et al. [6] presented a security policy protocol for the detection and prevention of Internet control message protocol (ICMP) attacks in software-defined networks. For these different cryptographic algorithms, the key is an essential part of secure IoT communication. Therefore, establishing a secure session key is the first issue that should be taken into consideration for secure communication in IoT applications.

2.2. Developments of KA Protocols

Numerous interesting pairing-free ID-AKA protocols have been introduced in recent years. In 2010, Cao et al. [24] provided a one-round ID-AKA protocol without pairing and presented the security proof in the mBR model. Then, two pairing-free ID-AKA protocols were proposed in [25,26], which utilized the CK model to prove its security. In 2016, Ni et al. [27] showed that the security proof of Sun et al.’s protocol neglected the case where the public key materials related to the long-term private key could be altered by an active adversary, and proposed two eCK-secure ID-AKA protocols without pairings. However, events in the security proof of their protocols were not complementary, which resulted in a mismatch in the freshness definition. Moreover, KGC needed to generate one extra long-term private key, which increased the storage, computation, and communication costs with the increase in the number of users. Bala et al. [21] presented an ID-AKA scheme without pairing for wireless sensor networks and claimed it was secure in the eCK security model. But Dang et al. [28] showed that its security proof had the same problem. Furthermore, the eCK security model was not secure as it suffered from an ephemeral key reveal attack.
In 2018, Dang et al. [28] provided a pairing-free ID-AKA protocol that could achieve eCK security in vehicular ad hoc networks. However, in 2021, Deng et al. [29] showed that it was not eCK-secure and put forward a new scheme that required only four scale multiplication operations. However, we found that the security proof had some flaws, for example, it was inappropriate that the challenger grasped the private key of KGC in the proof Cases CA2, CA3, CA4, and CA6. Mohammadali et al. [22] proposed the NIKE protocol, an ID-AKA protocol without pairing. However, there were still some drawbacks to it. Firstly, we found this scheme had a design flaw, i.e., if an individual was to learn about the long-term private keys of two parties (say A ( M e t e r ) and B ( A H E ) ), they could easily obtain KGC’s master key. Secondly, it could not resist a KCI attack. Thirdly, although the NIKE protocol only needed, at most, three elliptic curve point multiplication operations, it needed three hash-to-point operations, which was a more time-consuming operation than the point multiplication operation. In 2019, Zhang et al. [23] gave two pairing-free and unbalanced ID-AKA protocols for disaster scenarios. Their protocols were actually unbalanced versions of the protocol in [24]. Their protocols reduced one elliptic curve point multiplication operation for the limited party. However, Zhang et al.’s protocols did not have ephemeral key reveal resistance. In 2020, Daniel et al. [30] pointed out that Bala et al.’s protocol [21] could not resist an ephemeral key reveal attack. They also provided an ID-AKA protocol and presented its security proof in the eCK model [27]. However, its computational cost was still higher, which needed five-point multiplication operations in the elliptic curve. Furthermore, they pointed out that protocol [27] suffered from key offset attacks; however, key offset attacks could be simply avoided by adding a message authentication code using the same method in [30].
In 2021, Kumar and Chand [31] presented an ID-AKA protocol with cloud for the wireless body area network for anonymous health data authentication. However, Rakeei and Moazami [32] pointed out that this protocol could not resist a man-in-the-middle attack and achieve perfect forward secrecy. In 2022, Pu et al. [33] provided a mutual authentication and KA protocol for data privacy preserving in unmanned aerial vehicles (UAVs). Zhang et al. [34] designed a group key agreement (GKA) protocol for user privacy protection and data resource secure sharing in an intelligent IoT system. In 2023, Zhou et al. [35] presented an AGKA protocol for an AI-based automation system, which utilized a semi-trusted authority to perform precomputation operations. Pan et al. [36] focused on the communication security of UAVs to introduce a heterogeneous AKA protocol. Zhang et al. [37] provided a symmetric-key AKA protocol for edge-cloud IIoT, which could achieve perfect forward secrecy based on both authentication and derivation master keys. Abdussami et al. [38] proposed an AKA protocol for secure patient health-related data sharing in IoMT.
The security comparisons of these ID-AKA protocols are shown in Table 1, and the security items of the KGC’s master key (MSS), weak perfect forward secrecy (wPFS), key compromise impersonation resilience (KCIR), ephemeral secrets reveal resistance (ESRR), and assumption (AS) were compared. Facing these problems and secure IoT communication demands, a secure ID-AKA protocol is needed to strengthen the security of session keys between different IoT users. The next sections will present the cryptanalysis of several ID-AKA protocols [21,22,23] first, and then provide the proposed ID-AKA protocols.

3. Preliminaries

Some basic concepts including complexity assumptions and the eCK security model for two-party ID-AKA protocols are reviewed in this section.

3.1. Complexity Assumptions

Let G be an elliptic curve additive group with a large prime order q, and P is a generator of G . Some Diffie–Hellman assumptions over G are recalled as follows.
  • Computational Diffie–Hellman (CDH) Assumption: Given three points, P , a P , and b P , where a , b Z q * , the advantage A d v M C D H to compute a b P is negligible for any probabilistic polynomial time (PPT) adversary M .
  • Decision Diffie–Hellman (DDH) Assumption: Given four points P , a P , b P , and c P , where a , b , c Z q * , the advantage A d v M D D H to decide whether c a b mod q is negligible for any PPT adversary M .
  • Gap Diffie–Hellman (GDH) Assumption: Given four points P , a P , b P , and c P , where a , b , c Z q * , the advantage A d v M G D H to compute a b P by accessing a DDH oracle is negligible for any PPT adversary M .

3.2. The Forking Lemma

The forking lemma is applied in the security proof of our proposed protocols. Here, we recall it described in [27].
Let Θ S be a generic digital signature scheme. Given an input message m, Θ S produces a triple ( K , h , v ) , where K is a randomly selected value in a large set, h is the hash value of ( m , K ) , and v is only dependent on K, m, and h. Assume that a PPT algorithm M can produce a valid signature ( K , h , v ) on the message m with non-negligible probability. Then, with non-negligible probability, a replay of this algorithm can output two valid signatures ( K , h , v ) and ( K , h ¯ , v ¯ ) on the same message m, such that h h ¯ .

3.3. eCK-Security Model for Two-Party ID-AKA Protocols

We now recall the eCK-security model for two-party ID-AKA protocols in [13,27].
  • Participants. Let U = { I D 1 , , I D L } be a finite set of L honest parties. Each participant I D i U is modeled as a PPT Turing machine. Any two parties can be involved in a protocol execution. Each party may execute multiple instances (sessions) in parallel. Let i , j m denote the mth protocol session, which runs at party I D i (the owner) with intended partner party I D j . Every session i , j m has internal state variables S t a t e i , j m and t r a n i , j m to record the state of i , j m , and the transcript of messages sent and received by i , j m , respectively. If i , j m can compute a session key S K i , j m , S t a t e i , j m = c o m p l e t e d . The messages in t r a n i , j m are ordered according to the protocol specification.
  • Adversary Model. The adversary M is modeled as a PPT Turing machine and has full control of the communication network. Active attacks are formulated by allowing the adversary M to perform the following queries:
    EphemeralKeyReveal ( i , j m ). The adversary M is provided the ephemeral private key of i , j m .
    SessionKeyReveal ( i , j m ). The session key held by a completed session i , j m is returned to M .
    Corrupt ( I D i ). The long-term private key of I D i is returned to the adversary M .
    KGCStaticKeyReveal. The adversary M obtains the master key of KGC. This query is used to model master key forward secrecy.
    RegCT ( I D i ). Via this query, the adversary M is able to register a dishonest party with identity I D i . Meanwhile, M obtains I D i ’s long-term private key and totally controls I D i .
    Send ( i , j m , M ). Via this query, the adversary M can send any message M to party I D i in session i , j m on behalf of party I D j . The adversary M is responded to according to the protocol specification. i , j m can be initiated by I D i when M = λ . In general, for simplicity I D i I D j is required, i.e., two identical participants will not run a session. Internal states of i , j m should be maintained accordingly.
    Test ( i , j m ). The input session i , j m must be fresh. In response to this query, i , j m flips a fair coin b { 0 , 1 } , and returns the real session key if b = 0 , or a random sample from the distribution of the session key if b = 1 .
  • Security Experiment. The security experiment between the adversary M and the challenger CH consists of the following phases.
    Setup. The challenger CH generates the system parameters along with the master private key and valid long-term secret keys for each party. The adversary M is then provided all public data, including the identities of all the honest parties.
    The first phase of the game. Adversary M is allowed to issue a polynomial number of EphemeralKeyReveal, SessionKeyReveal, Corrupt, KGCStaticKeyReveal, RegCT, and Send queries in any order.
    The second phase of the game. At some point, adversary M chooses a fresh session i , j m (see Definition 2) and issues a Test( i , j m ) query at most once. After this, adversary M can keep asking other queries under the condition that the test session must remain fresh.
    The end of the game. M makes a guess b for b.
  • Advantage. M wins the above security experiment if the test session i , j m is still fresh and b = b . The advantage of M in winning the above security experiment is defined as A d v A K E ( M ) = | 2 P r [ M w i n s ] 1 | , where M wins refers to M can distinguish the tested session key from a random string.
In the following, we introduce definitions for Matching Session, Freshness, and eCK Security.
Definition 1
(Matching Session). If two completed sessions i , j m and j , i n have the same message transcript, they are said to be matching.
Definition 2
(Freshness). Let i , j m be a completed session between honest party I D i and I D j , i , j m is said to be fresh if none of the following three conditions hold:
(1) 
The adversary M knows the session key of i , j m or its matching session j , i n (if j , i n exists);
(2) 
i , j m has a matching session j , i n , and the adversary M knows both the long-term private key of participant I D i and the ephemeral private key of i , j m , or both the long-term private key of participant I D j and the ephemeral private key of j , i n .
(3) 
i , j m has no matching session, and the adversary M knows both the long-term private key of participant I D i and the ephemeral private key of i , j m , or the long-term private key of participant I D j .
Remark 1.
The first condition in Definition 2 is to exclude the trivial attack that M obtains the session key directly. The second and third conditions in Definition 2 are to exclude the trivial attack that M obtains the long-term private key and the ephemeral private key of one party simultaneously. If i , j m has no matching session, it means that M has obtained the ephemeral private key of participant I D j ; therefore, M cannot obtain the long-term private key of I D j .
Definition 3
(eCK Security). We say that an ID-AKA protocol is secure in the eCK model if the following conditions hold:
(1) 
If two honest parties successfully complete matching sessions, they both compute the same session key.
(2) 
For any PPT adversary, M , A d v A K E ( M ) is negligible in security parameter k.
Remark 2.
If a protocol is secure under Definition 3, then it achieves implicit mutual key authentication and the basic security properties, including weak perfect forward secrecy (wPFS), key compromise impersonation resilience (KCIR), ephemeral secrets reveal resistance (ESRR), known key security, no key control, resistance to basic impersonation attack, replay attack resilience, resistance to man-in-the-middle attack, and unknown key share resilience.

4. Cryptanalysis of Several ID-AKA Protocols

Figure 1 shows the network model for ID-AKA protocols considered in our paper. Here, user A, user B, and trusted authority (acts as KGC) are the three main parties of an ID-AKA protocol. A and B obtain their long-term private keys in the extract phase and use them to reach AKA each other. Next, this section provides the cryptanalysis of several ID-AKA protocols.

4.1. The PF-ID-2PAKA Protocol

PF-ID-2PAKA [21] is also composed of three stages, i.e., setup, extract, and key agreement. The former two stages are the same as those of the DXCLCZF-18 protocol [28]. Here, we only describe the key agreement stage in Figure 2.

4.1.1. Ephemeral Key Reveal Attack

Suppose that A’s ephemeral key e A is compromised by an adversary. Next, we show that the PF-ID-2PAKA protocol suffers from an ephemeral key reveal attack.
(1)
The adversary M initializes a session A , B through the query Send( A , B , ), and then obtains the message M 1 = { I D A , R A , T A } , where T A = e A P with a random element e A Z q * .
(2)
Upon receiving the message, M 1 , M randomly picks an ephemeral private key e B M Z q * , calculates T B M = e B M P R B H 1 ( I D B , R B ) P p u b , and returns M 2 = { I D B , R B , T B M } to A , B impersonating B via the query Send( A , B , M 2 ). Note that B’s identity I D B and correct public key material R B can be obtained from the response of the query Send( B , U t , ).
(3)
Upon the receipt of M 2 , A calculates the shared session key and completes this session. Specifically, A calculates s k = H 2 ( I D A | | I D B | | T A | | T B M | | K A B 1 | | K A B 2 ) , where K A B 1 = ( s A + e A ) ( R B + H 1 ( I D B , R B ) P p u b + T B M ) and K A B 2 = e A T B M .
(4)
Now, M performs the query EphemeralKeyReveal( A , B ) to reveal an ephemeral private key e A . With the knowledge of e B M and e A , M computes K B A 1 M = e B M ( R A + H 1 ( I D A , R A ) P p u b + T A ) , K B A 2 M = e A T B M , and s k = H 2 ( I D A | | I D B | | T A | | T B M | | K B A 1 M | | K B A 2 M ) .
Correctness. The following provides the correctness of the attack process.
As a result of T B M = e B M P R B H 1 ( I D B , R B ) P p u b , we can obtain
K A B 1 = ( s A + e A ) ( R B + H 1 ( I D B , R B ) P p u b + T B M ) = ( s A + e A ) e B M P = e B M ( s A P + e A P ) = e B M ( R A + H 1 ( I D A , R A ) P p u b + T A ) = K B A 1 M .
Thus, A and M receive the same session key, which means that the PF-ID-2PAKA protocol suffers from an ephemeral key reveal attack. Note that our construction cannot suffer from the above attack as both of the two shared secrets not only depend on the ephemeral private key, but also depend on the long-term private key, and they are linearly independent. Therefore, it is impossible to remove the long-term private key from the two shared secrets simultaneously.

4.1.2. Flaws in the Security Proof

The PF-ID-2PAKA protocol can not be proved secure under the hardness of the GDH problem in Case 3 (i.e., M can neither obtain the long-term private key of I D A nor that of I D B ). Meanwhile, the ephemeral key t B of I D B may be created by M , then CH cannot know t B . In ignorance of t B , CH does not calculate CDH ( U , V ) = K 1 t A ( T B + V ) t B U . Therefore, the challenger CH cannot solve the GDH instance.

4.2. The ZHWY-19 Protocol

Here, we only describe the key agreement stage of the ZHWY-19-I protocol [23] in Figure 3. For more details, one can refer to [23]. Note that Cheng et al. [39] pointed out that the ZHWY-19-I protocol [23] cannot achieve forward security and resist the key compromise impersonation attack. Here, we point out that this protocol is weak against the ephemeral key reveal attack and flaws in the security proof.

4.2.1. Ephemeral Key Reveal Attack

If e A and e B in a past session have been compromised by the adversary M , M can compute the session key s k .
(1)
M accesses to M 1 = { R A , V A , u A } and M 2 = { R B , V B , T B , T A , m a c B } of the session.
(2)
Given { I D A , e A , R A } and { I D B , e B , R B }, M calculates the keys of P K A = R A + H 1 ( I D A | | R A ) P p u b , P K B = R B + H 1 ( I D B | | R B ) P p u b , K 1 = e A P K B + e B P K A , K 2 = e A e B P , and s k = H 2 ( I D A | | I D B | | T A | | T B | | K 1 | | K 2 ) as the shared session key.
Thus, the ZHWY-19-I protocol is weak against the ephemeral secret key leakage. Note that they did not claim their protocol holds ephemeral key reveal resistance.

4.2.2. Flaws in the Security Proof

In the ZHWY-19-I protocol, the answer to oracle Corrupt( I D i ) is improper. Actually, Corrupt( I D i ) should return the long-term private key ( s i , R i , v i , V i ) rather than s i to the adversary.

4.3. Mohammadali et al.’s Protocols

Mohammadali et al. [22] proposed two protocols, the NIKE protocol and the NIKE + protocol. These two protocols contain three stages, namely setup, extract, and key agreement. The NIKE protocol is briefly shown in Figure 4. Note that, here, we did not analyze the flaws in the security proof as there was no security proof in [22].

4.3.1. The Insecurity of the KGC’s Master Key

If the user A ( M e t e r ) and the user B ( A H E ) launch collusion attacks, they can know the KGC’s master key s. As y A = H 2 ( I D B , Y B ) s , they can obtain s = H 2 ( I D B , Y B ) 1 y A with the knowledge of y A and Y B .

4.3.2. Key Compromise Impersonation (KCI) Attack

The NIKE protocol suffers from a key compromise impersonation (KCI) attack, i.e., if the user B ( A H E ) ’s long-term private key Y B is compromised by M , M can impersonate any user (say A ( M e t e r ) ) with B ( A H E ) ’s long-term private key Y B to communicate with B ( A H E ) . The details are as follows. Note that they did not claim their protocol held KCI resistance.
(1)
M obtains I D A , R A by eavesdropping on a connection between A ( M e t e r ) and any user. Then, M picks e A M Z q * at random, calculates T A M = e A M P H 2 ( I D B , Y B ) P p u b R A , and sends { I D A , T A M , R A } to B ( A H E ) .
(2)
Upon the receipt of { I D A , T A M , R A } , B ( A H E ) generates t B , T B , K B A , m B according to the protocol.
(3)
Upon receiving { I D B , T B , m B } , M calculates K A B M = e A M T B , m A M = H 1 ( 1 , K A B M ) and S K = H 1 ( I D A | | I D B | | , K A B M ) , and finally sends m A M to B ( A H E ) .
(4)
Upon receiving m A M , B ( A H E ) verifies m A M is correct and computes the session key according to the protocol.
Correctness. The following provides the correctness of the attack process.
As T A M = e A M P H 2 ( I D B , y B ) P p u b R A and T B = t B P , we can obtain
K B A = t B ( R A + H 2 ( I D A , Y B ) P p u b + T A M ) = t B ( R A + H 2 ( I D A , Y B ) P p u b + e A M P H 2 ( I D B , Y B ) P p u b R A ) = t B e A M P = e A M T B = K A B M .
Thus, A and M obtain the same session key, which means that the NIKE protocol suffers from a KCI attack. The KCI attack on the NIKE + protocol is the same as above.

5. Our General Construction

This section firstly provides the construction C 1 , C 2 , C 3 , C 4 , secondly show the construction C 1 , C 2 , C 3 , C 4 is correct, and thirdly provides the security proof.

5.1. Construction Description

The C 1 , C 2 , C 3 , C 4 is composed of three stages, i.e., setup, extract, and key agreement.
  • Setup: Select security parameter k, KGC performs as follows:
    (1)
    Pick an elliptic curve E / F p , where F p is a finite filed, and p is a prime number with k bits.
    (2)
    Create a cyclic additive group G with the order q, which is generated by a base point P over E / F p .
    (3)
    Choose s Z q * randomly, and then set the master private key s and the system public key P p u b = s P .
    (4)
    Pick H 1 : { 0 , 1 } * Z q * and H 2 : { 0 , 1 } * { 0 , 1 } k .
    (5)
    Expose E / F p , G , q , P , P p u b , H 1 , H 2 , and meanwhile retain s unrevealed.
  • Extract: KGC derives the long-term private key for user I D i { 0 , 1 } * as below.
    (1)
    KGC randomly selects r i Z q * , and calculates R i = r i P and h i = H 1 ( I D i | | R i ) .
    (2)
    KGC computes s i = r i + h i s mod q and derives ( s i , R i ) as the user’s long-term private key.
    (3)
    KGC sends ( s i , R i ) to the user securely.
    Upon receiving ( s i , R i ) , the user can verify s i P = ? R i + H 1 ( I D i | | R i ) P p u b . If this verification succeeds, the key pair ( s i , R i ) is correct and valid. s i P serves as the real public key in relation to I D i .
  • Key Agreement: Assume that user A with identity I D A hopes to compute a key with user B with identity I D B .
    (1)
    A randomly picks an ephemeral secret key e A Z q * , calculates T A = e A P , and returns M 1 = { I D A , R A , T A } to B. The agreement process in Figure 5.
    (2)
    When { I D A , R A , T A } is received, B picks an ephemeral secret key e B Z q * , calculates T B = e B P , and returns { I D B , R B , T B } to A. Next, B calculates s k B A = H 2 ( I D A | | I D B | | R A | | R B | | T A | | T B | | K B A 1 | | K B A 2 ) as the shared session key, where K B A 1 = ( s B + C 2 e B ) ( P K A + C 1 T A ) , K B A 2 = ( s B + C 4 e B ) ( P K A + C 3 T A ) , P K A = R A + H 1 ( I D A | | R A ) P p u b , C i ( i = 1 , 2 , 3 , 4 ) Z q * and C 1 C 3 , C 2 C 4 . Finally, B sends M 2 = { I D B , R B , T B } to A.
    (3)
    When M 2 = { I D B , R B , T B } is received, A calculates P K B = R B + H 1 ( I D B | | R B ) P p u b , and two shared secrets K A B 1 = ( s A + C 1 e A ) ( P K B + C 2 T B ) and K A B 2 = ( s A + C 3 e A ) ( P K B + C 4 T B ) , where C i ( i = 1 , 2 , 3 , 4 ) Z q * and C 1 C 3 , C 2 C 4 . Finally, A calculates the shared session key s k A B = H 2 ( I D A | | I D B | | R A | | R B | | T A | | T B | | K A B 1 | | K A B 2 ) .
Note that our construction provides a method to construct eCK secure ID-AKA protocols; however, parameters C 1 , C 2 , C 3 , and C 4 should be fixed in the real execution environment. One can choose a concrete and efficient protocol derived from our construction to execute in the real environment, e.g., protocol 1 , 1 , 1 , 1 , protocol 1 , 1 , 1 , 1 and protocol 1 , 1 , 2 , 2 described in Section 6.

5.2. Construction Correctness

The following provides the correctness of our construction. As P K B = R B + H 1 ( I D B | | R B ) P p u b = s B P , P K A = R A + H 1 ( I D A | | R A ) P p u b = s A P , T A = e A P and T B = e B P , we can obtain:
K A B 1 = ( s A + C 1 e A ) ( P K B + C 2 T B ) = ( s A + C 1 e A ) ( s B P + C 2 e B P ) = ( s A + C 1 e A ) ( s B + C 2 e B ) P = ( s B + C 2 e B ) ( s A + C 1 e A ) P = ( s B + C 2 e B ) ( P K A + C 1 T A ) = K B A 1 = K 1 ;
K A B 2 = ( s A + C 3 e A ) ( P K B + C 4 T B ) = ( s A + C 3 e A ) ( s B P + C 4 e B P ) = ( s A + C 3 e A ) ( s B + C 4 e B ) P = ( s B + C 4 e B ) ( s A + C 3 e A ) P = ( s B + C 4 e B ) ( P K A + C 3 T A ) = K B A 2 = K 2 .
Thus both A and B compute s k A B = s k B A = s k = H 2 ( I D A | | I D B | | R A | | R B | | T A | | T B | | K 1 | | K 2 ) as their session key. Hence the correctness holds.

5.3. Security Proof

Here, the events in our security proof are complementary, while they are not complementary in [27], and the security proof can be reduced to the following theorems.
Theorem 1.
Provide two random oracles, H 1 and H 2 , the proposed ID-AKA protocol is secure in the eCK model based on the GDH assumption over the elliptic curve group.
Proof. 
This theorem is under the condition that the two conditions shown in Definition 3 hold. The correctness analysis shows that the first condition stands. The second condition would be proven by contradiction, i.e., there is an adversary who can execute a PPT algorithm to win the game with non-negligible probability, we can use M to create a GDH solver CH who can find a solution for the GDH instance. □
Assume M is a polynomially (in security parameter k) bounded adversary whose advantage is A d v M ( k ) . Suppose that M activates no more than n p ( k ) different honest parties, and each party can take part in no more than n s ( k ) sessions. Suppose that M chooses a , b n , the nth protocol session which executes between party I D a (the owner) and the target party I D b (the peer) as the test session. Assume that M performs, at most, n h ( k ) H 2 queries.
According to A d v A K E ( M ) = | 2 P r [ M w i n s ] 1 | , we can derive that P r [ M w i n s ] is non-negligible as A d v A K E ( M ) is non-negligible. As H 2 is modeled as a random oracle, M can make a clear distinction between a random string and the tested session key in the following three ways:
A1.
Guessing attack: M directly guesses the correct session key.
A2.
Key replication attack: M successfully creates a session that cannot match the test session while holding the same session key. Here, M can obtain the test session key by querying the non-matching session key.
A3.
Forging attack: Sometimes, M makes H 2 queries on ( I D a , I D b , R a , R b , T a , T b , K 1 , K 2 ) in the test session. Here, M calculates K 1 and K 2 itself.
The guessing of H 2 ’s output is with the negligible probability O ( 1 / 2 k ) . If two sessions are different, H 2 has the same input by probability O ( n s ( k ) 2 / 2 k ) , which is also negligible. Then, M can provide the difference between a random string and the tested session key only by forging attack.
Next, a reduction approach is applied to analyze the forging attack. This approach reduces the protocol security to the hardness of mathematical problems in the GDH assumption. By making assumptions about the adversary, a challenger can solve a GDH instance with the queried data and forged session key derived by a query-respond game between them. As the GDH instance cannot be solved with the current computation ability in polynomial time, the assumptions about the adversary are invalid, and the proposed ID-AKA protocols are secure.
Now, the detailed descriptions of the reduction proofs are as follows.
If M can successfully execute forging attack with non-negligible probability A d v M F ( k ) , we will use M to create a GDH solver CH to find a solution for the GDH instance with A d v S G D H ( k ) . Here, GDH instance is ( U = u P , V = v P ) , and u , v Z q * , P G , CH plans to calculate GDH ( U , V ) = u v P performing the DDH oracle. CH acts as a challenger that performs the eCK game with M and makes response for M ’s queries.
Before the game starts, CH guesses the test session that M ’s choices is a , b n with a correct probability at least 1 / n p ( k ) 2 n s ( k ) . Next, CH needs to guess the strategy that M adopts. Then, according to Definition 2, test session a , b n has the matching session b , a l , then M can only passively forward messages between participant I D a and participant I D b , i.e., messages including public key materials and ephemeral keys of a , b n and b , a l are selected by CH . Test session a , b n has no matching session, then M alters some messages at its own will, i.e., messages including the public key material and the ephemeral key of a , b n are chosen by CH , and another one of I D b is chosen by M , and, thus, for I D b , CH can only consider the long-term private key of I D b . With the former analysis and the freeness definition, CH guesses the operation that M selects one of the following six complementary choices. Note that, strictly speaking, the ephemeral private key of I D a refers to a , b n ’s ephemeral private key, and the ephemeral private key of I D b refers to the matching session b , a l ’s ephemeral private key.
S1:
a , b n has b , a l , and M obtains neither the long-term private key of I D a nor the ephemeral private key of I D b .
S2:
a , b n has b , a l , and M cannot obtain any information about the ephemeral private keys of I D a and I D b .
S3:
a , b n has b , a l , and M knows neither the ephemeral private key of I D a nor the long-term private key of I D b .
S4:
a , b n has b , a l , and M cannot obtain any information about the long-term private keys of I D a and I D b .
S5:
a , b n does not have a matching session, and M knows neither the ephemeral private key of I D a nor the long-term private key of I D b .
S6:
a , b n does not have a matching session, and M does not know any information about the long-term private keys of I D a and I D b .
One of the former operation successes is if M succeeds in a forging attack with non-negligible probability. Therefore, the assumption about adversary M is invalid, and the proposed ID-AKA protocol is secure in the eCK model.

5.3.1. The Analysis of Strategy S1

In this subsection, we analyze strategy S1.
  • Setup:  CH initializes a list S e t u p l i s t with entries of ( I D i , ( d i , R i ) , P K i ) . CH creates the system parameters and long-term private keys of all parties as follows.
    CH picks P p u b G at random, and exposes E / F p , G , q , P , P p u b , H 1 , H 2 . Thus, CH cannot obtain any information about KGC’s master key.
    For I D a , CH sets the long-term private key ( , R a ) , where h a R Z q * , R a = U h a P p u b . Thus, P K a = R a + h a P p u b = U .
    For I D i ( i a ) , CH sets the long-term private key ( s i , R i ) , where h i , s i R Z q * , R i = s i P h i P p u b . Thus, P K i = R i + h i P p u b = s i P .
    For every participant, CH transfers ( I D i , R i ) to M , and stores the tuple ( I D i , ( d i , R i ) , P K i ) and ( I D i , R i , h i ) in S e t u p l i s t and H 1 l i s t (described later), respectively.
  • Queries:  CH maintains four lists, H 1 l i s t , H 2 l i s t , S e n d l i s t , and R l i s t , which are initially empty and used to record H 1 , H 2 , Send, and SessionKeyReveal oracles, respectively. CH starts M by answering M ’s queries, as follows.
    H 1 ( I D i , R i ) : If an entry ( I D i , R i , h i ) is recorded in H 1 l i s t , CH responds with h i . Then, CH randomly selects h i Z q * , appends ( I D i , R i , h i ) to H 1 l i s t , and sends h i back to M .
    H 2 ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 ) : List H 2 l i s t is with ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 , h 2 ) .
    *
    If a matching entry ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 , h 2 ) is stored in H 2 l i s t , CH replies with h 2 .
    *
    Else, CH seeks ( * , I D i , I D j , R i , R j , T i , T j , * ) in R l i s t . Then, if such an entry exists, CH sees if K 1 and K 2 are produced correctly by validating DDH( P K i + C 1 T i , P K j + C 2 T j , K 1 ) = ? 1 and DDH( P K i + C 3 T i , P K j + C 4 T j , K 2 ) = ? 1 , respectively, where P K i = R i + H 1 ( I D i , R i ) P p u b and P K j = R j + H 1 ( I D j , R j ) P p u b . If both verifications pass, CH receives the corresponding S K i , j m and sets h 2 S K i , j m . Otherwise (at least one verification fails or none), CH picks h 2 { 0 , 1 } k at random. Finally, CH inserts the tuple ( I D i , I D j , T i , T j , K 1 , K 2 , h 2 ) into H 2 l i s t and provides h 2 as the answer.
    Corrupt( I D i ): If I D i = I D a , CH discontinues. Otherwise, CH responds with s i .
    KGCStaticKeyReveal: CH discontinues.
    EphemeralKeyReveal( i , j m ): If i , j m = b , a l , CH discontinues. Otherwise, CH provides the stored ephemeral key r i , j m as the answer.
    Send( i , j m ,M): List S e n d l i s t is with ( i , j m , t r a n i , j m , r i , j m , S t a t e i , j m ) , where t r a n i , j m , r i , j m and S t a t e i , j m are the transcript by now, the ephemeral secret key, and the state by now, respectively.
    *
    If M is the second message on the transcript, CH sets S t a t e i , j m = c o m p l e t e d and updates S e n d l i s t .
    *
    Else CH executes as follows.
    ·
    If i , j m = b , a l , CH sets r i , j m = , gets R b from S e t u p l i s t and replies with { I D b , R b , V } .
    ·
    Else CH randomly chooses r i , j m Z q * , obtains R i from S e t u p l i s t and replies with { I D i , R i , r i , j m P } .
    ·
    Finally, CH updates S e n d l i s t , and updates S t a t e i , j m to c o m p l e t e d if the newly generated message is the second message on the transcript.
    SessionKeyReveal( i , j m ): List R l i s t is of the form ( i , j m , I D i n i , I D r e s p , R i n i , R r e s p , T i n i , T r e s p , S K i , j m ) , where i n i { i , j } and r e s p { i , j } denote the initiator and the responder of i , j m , respectively.
    *
    CH receives S t a t e i , j m from S e n d l i s t . If S t a t e i , j m c o m p l e t e d , CH returns .
    *
    Else if i , j m = a , b n or i , j m = b , a l , CH aborts.
    *
    Else if the session key S K i , j m already exists, CH responds with S K i , j m .
    *
    Else CH obtains { I D i n i , R i n i , T i n i } and { I D r e s p , R r e s p , T r e s p } from S e n d l i s t , and looks up H 2 l i s t to see if there is a tuple ( * , I D i n i , I D r e s p , R i n i , R r e s p , T i n i , T r e s p , * ) . Then, if it exists, CH sees if K 1 and K 2 are produced correctly by validating DDH( P K i n i + C 1 T i n i , P K r e s p + C 3 T r e s p , K 1 ) = ? 1 and DDH( P K i n i + C 3 T i n i , P K r e s p + C 4 T r e s p , K 2 ) = ? 1 , respectively, where P K i n i = R i n i + H 1 ( I D i n i , R i n i ) P p u b and P K r e s p = R r e s p + H 1 ( I D r e s p , R r e s p ) P p u b . If both verifications pass, CH receives the corresponding h 2 and sets S K i , j m h 2 . Otherwise (at least one verification fails or no such a tuple exists), CH picks S K i , j m { 0 , 1 } k at random. Finally, CH inserts the tuple ( i , j m , I D i n i , I D r e s p , R i n i , R r e s p , T i n i , T r e s p , S K i , j m ) into R l i s t and returns S K i , j m .
    Test( i , j m ): If i , j m = a , b n , CH picks ξ { 0 , 1 } k at random and sends ξ back to M . Otherwise, CH aborts.
  • Analysis: If M can successfully execute a forging attack in Strategy S1 with non-negligible probability, the following conditions should be met.
    (1)
    CH continues following the above simulation. If M chooses Strategy S1, with a , b n and b , a l as the test session and its corresponding matching session, respectively, this condition can be met.
    (2)
    For the test session a , b n , adversary M must have conducted H 2 queries on the values { I D a , I D b , R a , R b , T a , V , K 1 , K 2 } , where R a and R b are the public key materials of I D a and I D b picked by the challenger CH , respectively, T a and V are the outgoing messages of I D a and I D b picked by the challenger CH , respectively, and K 1 and K 2 are correctly formed.
    *
    If a , b n is an initiator, the correct input of H 2 should be ( I D a , I D b , R a , R b , T a , V , K 1 , K 2 ) , where K 1 = ( D L O G ( U ) + C 1 r a , b n ) ( R b + h b P p u b + C 2 V ) , K 2 = ( D L O G ( U ) + C 3 r a , b n ) ( R b + h b P p u b + C 4 V ) , and h b = H 1 ( I D b , R b ) .
    *
    If a , b n is a responder, the correct input of H 2 should be ( I D b , I D a , R b , R a , V , T a , K 1 , K 2 ) , where K 1 = ( D L O G ( U ) + C 2 r a , b n ) ( R b + h b P p u b + C 1 V ) , K 2 = ( D L O G ( U ) + C 4 r a , b n ) ( R b + h b P p u b + C 3 V ) , and h b = H 1 ( I D b , R b ) .
    Finally, CH receives the item in H 2 l i s t and outputs GDH ( U , V ) = ( C 2 C 4 ) 1 ( K 1 K 2 + r a , b n ( C 3 C 1 ) ( R b + h b P p u b ) + r a , b n ( C 3 C 4 C 1 C 2 ) V ) if a , b n is an initiator or GDH ( U , V ) = ( C 1 C 3 ) 1 ( K 1 K 2 + r a , b n ( C 4 C 2 ) ( R b + h b P p u b ) + r a , b n ( C 3 C 4 C 1 C 2 ) V ) if a , b n is a responder by the knowledge of r a , b n . Note that since C i ( i = 1 , 2 , 3 , 4 ) Z q * and C 1 C 3 , C 2 C 4 , the solution of GDH ( U , V ) is correct. The CH success rate is at least
    A d v S G D H ( k ) > = A d v M F ( k ) 6 n h ( k ) n p ( k ) 2 n s ( k ) 2 .
    As A d v M F ( k ) is non-negligible, A d v S G D H ( k ) can also be seen as non-negligible. Now, it derives the contradiction of the GDH assumption.

5.3.2. The Analysis of Strategy S2

In this subsection, we analyze strategy S2.
  • Setup:  S e t u p l i s t is an initially empty list with ( I D i , ( d i , R i ) , P K i ) . CH creates the system parameters and all parties’ long-term private keys as follows.
    CH picks s Z q * at random, computes P p u b = s P , and exposes system parameters E / F p , G , q , P , P p u b , H 1 , H 2 . Thus, CH cannot obtain any information about KGC’s master key.
    For I D i , CH sets the long-term private key ( s i , R i ) , where h i , s i R Z q * , R i = s i P h i P p u b . Thus, P K i = R i + h i P p u b = s i P .
    For every participant, CH transfers ( I D i , R i ) to M , and stores the tuple ( I D i , ( d i , R i ) , P K i ) and ( I D i , R i , h i ) in S e t u p l i s t and H 1 l i s t (described later), respectively.
  • Queries:  CH maintains four lists H 1 l i s t , H 2 l i s t , S e n d l i s t , and R l i s t to store H 1 , H 2 , Send, and SessionKeyReveal oracles, respectively. CH performs the queries game with M as follows:
    H 1 ( I D i , R i ) , SessionKeyReveal( i , j m ), Test( i , j m ), and H 2 ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 ) : These four queries are described in the same as those in Strategy S1.
    Corrupt( I D i ): CH responds with ( s i , R i ) .
    KGCStaticKeyReveal: CH responds with s to M .
    EphemeralKeyReveal( i , j m ): If i , j m = a , b n or i , j m = b , a l , CH discontinues. Otherwise, CH provides the stored ephemeral key r i , j m as the answer.
    Send( i , j m ,M): List S e n d l i s t has ( i , j m , t r a n i , j m , r i , j m , S t a t e i , j m ) , where t r a n i , j m , r i , j m and S t a t e i , j m are the transcript by now, the ephemeral secret key, and the state by now, respectively.
    *
    If M is the second message on the transcript, CH sets S t a t e i , j m = c o m p l e t e d and updates S e n d l i s t .
    *
    Else CH performs the following steps.
    ·
    If i , j m = a , b n , CH sets r i , j m = , receives R a from S e t u p l i s t , and replies with { I D a , R a , U } .
    ·
    Else If i , j m = b , a l , CH sets r i , j m = , receives R b from S e t u p l i s t , and replies with { I D b , R b , V } .
    ·
    Else CH randomly chooses r i , j m Z q * , obtains R i from S e t u p l i s t , and replies with { I D i , R i , r i , j m P } .
    ·
    Finally, CH updates S e n d l i s t , and updates S t a t e i , j m to c o m p l e t e d if the newly generated message is the second message on the transcript.
  • Analysis: Here, we assume that a , b n is an initiator here. If M indeed chooses Strategy S2, a , b n and b , a l as the test session and its matching session, respectively, then CH continues this simulation. If M successfully executes the forging attack, it must have queried oracle H 2 ( I D a , I D b , R a , R b , U , V , K 1 , K 2 ) , where R a , R b , U , and V are all picked by the challenger CH , K 1 = ( s a + C 1 D L O G ( U ) ) ( R b + h b P p u b + C 2 V ) , K 2 = ( s a + C 3 D L O G ( U ) ) ( R b + h b P p u b + C 4 V ) , and h b = H 1 ( I D b , R b ) .
    Finally, CH receives the item in H 2 l i s t , and outputs GDH ( U , V ) = ( C 1 C 3 ( C 2 C 4 ) ) 1 ( C 3 K 1 C 1 K 2 + s a ( C 1 C 3 ) ( R b + h b P p u b ) + s a ( C 1 C 4 C 2 C 3 ) V ) by the knowledge of s a . Note that as C i ( i = 1 , 2 , 3 , 4 ) Z q * and C 1 C 3 , C 2 C 4 , the solution of GDH ( U , V ) is correct. CH ’s success probability is at least
    A d v S G D H ( k ) > = A d v M F ( k ) 6 n h ( k ) n p ( k ) 2 n s ( k ) 2 .
    As A d v M F ( k ) is non-negligible, A d v S G D H ( k ) can also be seen as also non-negligible. Now, it derives the contradiction of the GDH assumption.

5.3.3. The Analysis of Strategy S3

Here, we omit the detailed analysis of Strategy S3 as the analysis is almost the same as that for Strategy S1.

5.3.4. The Analysis of Strategy S4

In this subsection, we analyze strategy S4.
  • Setup:  CH initializes a list S e t u p l i s t with ( I D i , ( d i , R i ) , P K i ) . CH creates the system parameters and all parties’ long-term private keys.
    CH picks P p u b G at random, and exposes E / F p , G , q , P , P p u b , H 1 , H 2 . Thus, CH does not obtain any information about KGC’s master key.
    For I D a , CH sets the long-term private key ( , R a ) , where h a R Z q * , R a = U h a P p u b . Thus, P K a = R a + h a P p u b = U .
    For I D b , CH sets the long-term private key ( , R b ) , where h b R Z q * , R b = V h b P p u b . Thus, P K b = R b + h b P p u b = V .
    For I D i ( i a , i b ) , CH sets the long-term private key ( s i , R i ) , where h i , s i R Z q * , R i = s i P h i P p u b . Thus, P K i = R i + h i P p u b = s i P .
    For every participant, CH transfers ( I D i , R i ) to M , and stores ( I D i , ( d i , R i ) , P K i ) and ( I D i , R i , h i ) in S e t u p l i s t and H 1 l i s t (described later), respectively.
  • Queries:  CH maintains four lists H 1 l i s t , H 2 l i s t , S e n d l i s t , and R l i s t , which are initially empty and used for recording H 1 , H 2 , Send, and SessionKeyReveal oracles, respectively. CH performs the queries game with M as follows:
    H 1 ( I D i , R i ) , SessionKeyReveal( i , j m ), Test( i , j m ), H 2 ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 ) , and KGCStaticKeyReveal: These five queries are described in the same way as those in Strategy S1.
    Corrupt( I D i ): If I D i = I D a or I D i = I D b , CH discontinues. Otherwise, CH responds with ( s i , R i ) .
    EphemeralKeyReveal( i , j m ): CH responses with r i , j m .
    Send( i , j m ,M): List S e n d l i s t is of the form ( i , j m , t r a n i , j m , r i , j m , S t a t e i , j m ) , where t r a n i , j m , r i , j m , and S t a t e i , j m are the transcript by now, the ephemeral secret key, and the state by now, respectively.
    *
    If M is the second message on the transcript, CH sets S t a t e i , j m = c o m p l e t e d and updates S e n d l i s t .
    *
    Else CH randomly chooses r i , j m Z q * , obtains R i from S e t u p l i s t , and replies with { I D i , R i , r i , j m P } . Then, CH updates S e n d l i s t , and updates S t a t e i , j m to c o m p l e t e d if the newly generated message is the second message on the transcript.
  • Analysis: Here, we assume that a , b n is an initiator. If M selects Strategy S4, a , b n and b , a l as the test session and its matching session, then CH does not abort in the simulation. If M successfully performs the forging attack, it must have queried oracle H 2 ( I D a , I D b , U h a P p u b , V h b P p u b , T a , T b , K 1 , K 2 ) , where T a , T b , U , and V are all picked by the challenger CH , K 1 = ( D L O G ( U ) + C 1 r a , b n ) ( V + C 2 T b ) , K 2 = ( D L O G ( U ) + C 3 r a , b n ) ( V + C 4 T b ) , h a = H 1 ( I D a , R a ) , and h b = H 1 ( I D b , R b ) .
    Finally, CH receives the item in H 2 l i s t , and outputs GDH ( U , V ) = ( C 4 C 2 ) 1 ( C 4 K 1 C 2 K 2 + r a , b n ( C 2 C 3 C 1 C 4 ) V + r a , b n C 2 C 4 ( C 3 C 1 ) T b ) by the knowledge of r a , b n . Note that as C i ( i = 1 , 2 , 3 , 4 ) Z q * and C 1 C 3 , C 2 C 4 , the solution of GDH ( U , V ) is correct. CH ’s success probability is at least
    A d v S G D H ( k ) > = A d v M F ( k ) 6 n h ( k ) n p ( k ) 2 n s ( k ) 2 .
    As A d v M F ( k ) is non-negligible, A d v S G D H ( k ) can also be seen as non-negligible. Now, it derives the contradiction of the GDH assumption.

5.3.5. The Analysis of Strategy S5

a , b n has no matching session in strategy S5, thus at least one of I D b ’s public key material R b and I D b ’s ephemeral private key is chosen by M . If the adversary selects R b themselves, then the change in R b means the change in the I D b ’s long-term private key s b . Hence, a GDH instance cannot be embedded in the long-term private key in strategy S5.
  • Setup:  S e t u p l i s t is an initially empty list and ( I D i , ( d i , R i ) , P K i ) is needed in this phase. CH creates the system parameters and all parties’ long-term private keys.
    CH sets V as the system public key P p u b and exposes the system parameters E / F p , G , q , P , P p u b , H 1 , H 2 . Thus CH cannot know KGC’s master key.
    For I D i , CH sets the long-term private key ( s i , R i ) , where h i , s i R Z q * , R i = s i P h i P p u b . Thus, P K i = R i + h i P p u b = s i P .
    For every participant, CH transfers ( I D i , R i ) to M , and stores ( I D i , ( d i , R i ) , P K i ) and ( I D i , R i , h i ) in S e t u p l i s t and H 1 l i s t (described later), respectively.
  • Queries:  CH maintains four lists, H 1 l i s t , H 2 l i s t , S e n d l i s t , and R l i s t to store H 1 , H 2 , Send, and SessionKeyReveal oracles, respectively. CH performs the queries game with M as follows:
    H 1 ( I D i , R i ) , KGCStaticKeyReveal, Test( i , j m ), and H 2 ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 ) are described the same as those in Strategy S1.
    Corrupt( I D i ): If I D i = I D b , CH discontinues. Otherwise, CH responds with ( s i , R i ) .
    EphemeralKeyReveal( i , j m ): If i , j m = a , b n , CH discontinues. Otherwise, CH provides the stored ephemeral key r i , j m as the answer.
    Send( i , j m ,M): List S e n d l i s t is with ( i , j m , t r a n i , j m , r i , j m , S t a t e i , j m ) , where t r a n i , j m , r i , j m , and S t a t e i , j m are the transcript by now, the ephemeral secret key, and the state by now, respectively.
    *
    If M is the second message on the transcript, CH sets S t a t e i , j m = c o m p l e t e d and updates S e n d l i s t .
    *
    Else CH performs the following steps.
    ·
    If i , j m = a , b n , CH sets r i , j m = , receives R a from S e t u p l i s t , and replies with { I D a , R a , U } .
    ·
    Else CH randomly chooses r i , j m Z q * , obtains R i from S e t u p l i s t , and replies with { I D i , R i , r i , j m P } .
    ·
    Finally, CH updates S e n d l i s t , and updates S t a t e i , j m to c o m p l e t e d if the newly generated message is the second message on the transcript.
    SessionKeyReveal( i , j m ): This query is the same as that in Strategy S1, except that “Else if i , j m = a , b n or i , j m = b , a l ” is modified to “Else if i , j m = a , b n ”. This is because the matching session b , a l certainly exists in Strategy S1, while b , a l does not exist in Strategy S5.
  • Analysis: Here, we assume that a , b n is an initiator. If M selects Strategy S5 and a , b n as the test session, then CH continues using the above simulation. If M successfully performs the forging attack with non-negligible probability, it should execute the H 2 query on ( I D a , I D b , R a , R b , U , T b , K 1 , K 2 ) , where K 1 = ( s a + C 1 D L O G ( U ) ) ( R b + h b V + C 2 T b ) , K 2 = ( s a + C 3 D L O G ( U ) ) ( R b + h b V + C 4 T b ) , and h b = H 1 ( I D b , R b ) . Note that I D a ’s public key material R a and outgoing message U are both picked by the challenger CH , and at least one of I D b ’s public key material R b and outgoing message T b is chosen by M .
    By the forking lemma [27], CH replays M with the same input and tossing coins. Here, CH only changes the query results of H 1 ( I D b , R b ) , i.e., CH sets H 1 ( I D b , R b ) to h b ¯ , where h b ¯ Z q * and h b ¯ h b . Then, if M succeeds, it should perform a query on H 2 with ( I D a , I D b , R a , R b , U , T b , K 1 ¯ , K 2 ¯ ) , where K 1 ¯ = ( s a + C 1 D L O G ( U ) ) ( R b + h b ¯ V + C 2 T b ) , K 2 ¯ = ( s a + C 3 D L O G ( U ) ) ( R b + h b ¯ V + C 4 T b ) .
    Finally, CH receives the item in H 2 l i s t , and outputs GDH ( U , V ) = C 1 1 ( h b h b ¯ ) 1 ( K 1 K 1 ¯ ) s a V using the knowledge of s a . Note that as C 1 Z q * , the solution of GDH ( U , V ) is correct. Let λ be a factor from the forking lemma for Strategy S5. CH ’s success probability is at least
    A d v S G D H ( k ) > = λ A d v M F ( k ) 6 n h ( k ) 2 n p ( k ) 2 n s ( k ) .
    As A d v M F ( k ) is non-negligible, A d v S G D H ( k ) can also be seen as non-negligible. Now, it derives the contradiction of the GDH assumption.

5.3.6. The Analysis of Strategy S6

In this subsection, we will analyze strategy S6. A GDH instance cannot be embedded in the long-term private key in Strategy S6.
  • Setup:  S e t u p l i s t is an initially empty list, and ( I D i , ( d i , R i ) , P K i ) is needed in this phase. CH creates the system parameters and all parties’ long-term private keys.
    CH sets V as the system public key P p u b and exposes E / F p , G , q , P , P p u b , H 1 , H 2 . Thus, CH does not obtain any information about KGC’s master key.
    For I D a , CH sets the long-term private key ( , R a ) , where h a R Z q * , R a = U h a P p u b . Thus, P K a = R a + h a P p u b = U .
    For I D i ( i a ) , CH sets ( s i , R i ) as the long-term private key, where h i , s i R Z q * , R i = s i P h i P p u b . Thus, P K i = R i + h i P p u b = s i P .
    For every participant, CH transfers ( I D i , R i ) to M , and stores ( I D i , ( d i , R i ) , P K i ) and ( I D i , R i , h i ) in S e t u p l i s t and H 1 l i s t (described later), respectively.
  • Queries:  CH maintains four lists, H 1 l i s t , H 2 l i s t , S e n d l i s t , and R l i s t , which are initially empty and used for recording H 1 , H 2 , Send, and SessionKeyReveal oracles, respectively. CH starts M by answering M ’s queries as follows:
    The five queries H 1 ( I D i , R i ) , SessionKeyReveal( i , j m ), Test( i , j m ), KGCStaticKeyRevea, and H 2 ( I D i , I D j , R i , R j , T i , T j , K 1 , K 2 ) are described in the same way as those in Strategy S5.
    Corrupt( I D i ), EphemeralKeyReveal( i , j m ) and Send( i , j m ,M): These three queries are described to be the same as those in Strategy S4.
  • Analysis: Here, we assume that a , b n is an initiator. If M selects Strategy S6 and a , b n as the test session, then CH continues this simulation. If M successfully performs the forging attack, it should execute H 2 query on ( I D a , I D b , R a , R b , T a , T b , K 1 , K 2 ) , where K 1 = ( D L O G ( U ) + C 1 r a , b n ) ( R b + h b V + C 2 T b ) , K 2 = ( D L O G ( U ) + C 3 r a , b n ) ( R b + h b V + C 4 T b ) , and h b = H 1 ( I D b , R b ) . Note that I D a ’s public key material R a and outgoing message T a are both picked by the challenger CH , and at least one of I D b ’s public key material R b and outgoing message T b is chosen by M .
    By the forking lemma [27], CH replays M with the same input and tossing coins. Here, CH only changes the query results of H 1 ( I D b , R b ) , i.e., CH sets H 1 ( I D b , R b ) to h b ¯ , where h b ¯ Z q * and h b ¯ h b . Then, if M succeeds, it should perform a query on H 2 with ( I D a , I D b , R a , R b , T a , T b , K 1 ¯ , K 2 ¯ ) , where K 1 ¯ = ( D L O G ( U ) + C 1 r a , b n ) ( R b + h b ¯ V + C 2 T b ) , K 2 ¯ = ( D L O G ( U ) + C 3 r a , b n ) ( R b + h b ¯ V + C 4 T b ) .
    Here, CH receives the item in H 2 l i s t , and outputs GDH ( U , V ) = ( h b h b ¯ ) 1 ( K 1 K 1 ¯ ) C 1 r a , b n V using the knowledge of r a , b n . Note that as h b ¯ h b , the solution of GDH ( U , V ) is correct. Let λ be a factor from the forking lemma in Strategy S6. CH ’s success probability is at least
    A d v S G D H ( k ) > = λ A d v M F ( k ) 6 n h ( k ) 2 n p ( k ) 2 n s ( k ) .
    As A d v M F ( k ) is non-negligible, A d v S G D H ( k ) can also be seen as non-negligible. Now, it derives the contradiction of the GDH assumption.
The former formal security proof has proven that the proposed ID-AKA protocol C 1 , C 2 , C 3 , C 4 is secure against some comment attacks of guessing attacks, key replication attacks, and forging attacks. Its security can be reduced to the hardness of GDH assumption over the elliptic curve group in the eCK model.

6. More Efficient Instantiations

As C i ( i = 1 , 2 , 3 , 4 ) Z q * , our construction needs six scalar multiplications (here, we ignore less time-consuming point additions and general hash function outputs), which is a bit higher than the NCL-16-II protocol [27] at the same security level. However, the NCL-16-II protocol is only a special protocol, while our construction will result in different special protocols with different C i values, for example, protocol 1 , 1 , 1 , 1 and protocol 1 , 1 , H 1 ( R A | | R B | | T A | | T B ) , H 1 ( R B | | R A | | T B | | T A ) . How should the values of C 1 , C 2 , C 3 , and C 4 be chosen in the real execution environment? It would be better to select values that result in more efficient instantiation as different protocols have different computation costs. The following provides some efficient instantiations of our construction.
Protocol 1
( 1 , 1 , 1 , 1 ). In this protocol, C 1 = C 2 = 1 , C 3 = C 4 = 1 . A computes the shared secrets K A B 1 = ( s A + e A ) ( P K B + T B ) and K A B 2 = ( s A e A ) ( P K B T B ) . B compute the shared secrets K B A 1 = ( s B + e B ) ( P K A + T A ) and K B A 2 = ( s B e B ) ( P K A T A ) . This protocol reduces two scalar multiplications compared with the general construction.
Protocol 2
( 1 , 1 , 1 , 1 ). In this protocol, C 1 = C 4 = 1 , C 2 = C 3 = 1 . A computes the shared secrets K A B 1 = ( s A + e A ) ( P K B T B ) and K A B 2 = ( s A e A ) ( P K B + T B ) . B computes the shared secrets K B A 1 = ( s B e B ) ( P K A + T A ) and K B A 2 = ( s B + e B ) ( P K A T A ) . This protocol has the same efficiency as 1 , 1 , 1 , 1 .
Protocol 3
( 1 , 1 , 2 , 2 ). In this protocol, C 1 = C 2 = 1 , C 3 = C 4 = 2 . A computes the shared secrets K A B 1 = ( s A + e A ) ( P K B + T B ) and K A B 2 = ( s A + 2 e A ) ( P K B + 2 T B ) . B computes the shared secrets K B A 1 = ( s B + e B ) ( P K A + T A ) and K B A 2 = ( s B + 2 e B ) ( P K A + 2 T A ) . This protocol only adds a point addition operation compared with the protocol of 1 , 1 , 1 , 1 .

7. Performance and Comparison

This section presents the efficiency and security comparison between our Protocols 1 and 2 with other competitive ID-AKA protocols. Note that only the HC protocols [13] were pairings-based ID-AKA protocols, the other ID-AKA protocols [21,22,23,24,25,26,27,28] and ours were all pairing-free.

7.1. Comparison of Computation Overheads

To evaluate the computational overhead, Table 2 lists the same execution time of different cryptographic operations, reported in [40]. The execution time was calculated using the MIRACL library on a Samsung Galaxy S5 smartphone, equipped with a 2.5 GHz ARM Krait processor with 2GB RAM memory running the Android 4.4.2 operating system.
Next, the total execution times of these two protocols and the competitive ID-AKA protocols [13,21,22,23,24,25,26,27,28] were computed, which are shown in Table 3. In our Protocols 1 and 2, to agree on a session key, each party needed to compute four ECC-based scalar multiplications, three ECC-based point additions, and two general hash function outputs. Therefore, the total computation time at each party was about 4 T e s m + 3 T e p a + 2 T h 13.454 ms. Similarly, the communication costs of protocols in [13,21,24,25,26,27,28] were computed. In protocols ZHWY-19 [23] and NIKE [22], two parties had unbalanced computation costs, i.e., one party had a lower computation cost than the other party. Here, we adopted the lower computation cost of one party. According to Table 2, our Protocols 1 and 2 were nearly 80% of protocols NCL-16-II [27] and CKD [24], 100% of protocols [25] and [21,23,28], 72% of protocol XW [26], and 8% of the HC protocol [13] with relation to the computation cost. That is to say, our Protocols 1 and 2 almost had the lowest computation cost. The comparison results are shown in Figure 6.
Energy consumption is one essential item for IoT communication, and the energy consumption of ID-AKA protocol decides the energy efficiency of IoT communication as it is executed by the IoT device. As shown in the former comparative computation overheads in Table 3, the computation costs were calculated. To compute the energy consumption of these key agreement algorithms, the IoT devices equipped with 3.0 V and 8.0 mA were selected. This parameter was set according to the power level of MICA 2 [41]. For the proposed ID-AKA protocol, the energy consumption was 3.0 ∗ 8.0 ∗ 13.454 = 322.896 mj, and the comparison results with similar protocols are shown in Figure 7. Therefore, the low computation overheads led to low energy consumption, and the proposed ID-AKA protocol had more advantages than similar protocols in relation to the costs of computation and energy.

7.2. Comparison of Communication Overheads

Let | G 1 | , | G 2 | , | G | , and | Z q * | represent elements sizes of G 1 , G 2 , G , and Z q * , respectively. Furthermore, assume | I D | and | H | represent the length of an identifier and a general hash output, respectively. Considering the Ate pairing and elliptic curves, | G 1 | , | G 2 | , | G | , | Z q * | , and | H | are 1024, 1024, 320, 160, and 160 bits, respectively. We assumed | I D | is 32 bits in length.
Table 4 demonstrates the communication cost comparison of the key agreement phase. Note that in our Protocol 1 (Protocol 2), party A sends { I D A , R A , T A } to party B, where R A , T A G and I D A is the identity of A. Party B symmetrically sends { I D B , R B , T B } to party A, where R B , T B G and I D B is the identity of B. Therefore, the communication cost of our protocol 1 (protocol 2) is 2 ( | I D | +2 | G | ) = 2 ( 32 + 2 320 ) = 1344 bits. The results show that Protocols 1 and 2 have the lowest communication cost.

7.3. Security Comparisons

As shown in Table 1, some related ID-AKA protocols can capture other security attributes, including known key security, no key control, resistance to basic impersonation attacks, replay attack resilience, resistance to man-in-the-middle attacks, and unknown key share resilience. But, for the proposed IA-AKA protocols, we did not consider explicit mutual authentication, as it can be easily achieved for all one-round protocols [13,21,24,25,26,27,28] by adding a key confirmation. Here, the protocol PWCAS-22 [33] is based on physical unclonable function (PUF), and ZHVLH-23 [37] is based on pseudo-random permutation (PRF). The HC protocol [13], the NCL-16-II protocol [27], the DRS-20 protocol [30], and our protocols are provably secure in the eCK security model. But events in the security proof of NCL-16-II [27] are not complementary, which mismatches the freshness definition. Table 3 shows that our Protocols 1 and 2 can reach the best computation efficiency.
Compared with similar ID-AKA protocols, the proposed Protocols 1 and 2 presented the lowest computation and communication overheads, which could improve IoT communication efficiency in IoT applications. Meanwhile, with the increase in the number of devices, these ID-AKA protocols could also maintain high efficiency, as the key agreement process was executed between two different IoT users. The key agreement between the two parties was less affected by the number of devices in IoT applications and only affected by the hardware, software, and communication protocol in the public internet environment. Although the key agreement times will increase more, this can be ignored with the increasing IoT computation ability.

8. Conclusions

This paper first reviews several ID-AKA protocols without pairings in terms of security and efficiency. We carefully studied them and pointed out the security weaknesses against the ephemeral key reveal attack, key compromise impersonation attack, and launch collusion attack. We also proposed a family of ID-AKA protocols without pairings and proven the security in the eCK security model, a widely accepted security model for AKA protocols. Six strategy analyses were provided, and these ID-AKA protocols were proven to be secure in the eCK model based on the GDH assumption over the elliptic curve group. Then, the instantiations, performance and comparison were presented, and the results show that the proposed ID-AKA protocols were more efficient than other protocols in similar literature. In addition, these ID-AKA protocols no only improved communication security and efficiency in IoT applications, but also saved energy consumption for the communication process.
In the future, with the increasing amount of IoT devices, some security issues of identity authentication, data fine-grained access control, and user privacy protection should still be taken into consideration. Especially with the development of quantum computers and quantum computation, the anti-quantum attack security ID-AKA protocol will be a hot research direction. Meanwhile, many customized ID-AKA schemes should be designed to meet the special requirements of future IoT applications.

Author Contributions

Methodology, H.S. and C.L.; Validation, W.H.; Formal analysis, J.Z.; Investigation, S.L. All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by the National Natural Science Foundation of China (62072416), the Key Research and Development Special Project of Henan Province (221111210500), the Science and Technology Program of Henan Province (212102210107, 232102210125), the Doctor Scientific Research Fund of Zhengzhou University of Light Industry (2021BSJJ033) and the Foundation of State Key Laboratory of Public Big Data (No.PBD2023-25).

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Khan, M.A.; Din, I.U.; Majali, T.E.; Kim, B.S. A survey of authentication in Internet of things-enabled healthcare systems. Sensors 2022, 22, 9089. [Google Scholar] [CrossRef]
  2. Jayabalasamy, G.; Koppu, S. High-performance Edwards curve aggregate signature (HECAS) for nonrepudiation in IoT-based applications built on the blockchain ecosystem. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 9677–9687. [Google Scholar] [CrossRef]
  3. Li, W.; Li, R.; Wu, K.; Cheng, R.; Su, L.; Cui, W. Design and implementation of an SM2-based security authentication scheme with the key agreement for smart grid communications. IEEE Access 2018, 6, 71194–71207. [Google Scholar] [CrossRef]
  4. Pu, L.; Lin, C.; Chen, B.; He, D. User-friendly public-key authenticated encryption with keyword search for industrial Internet of things. IEEE Internet Things J. 2023, 10, 13544–13555. [Google Scholar] [CrossRef]
  5. Rasori, M.; La Manna, M.; Perazzo, P.; Dini, G. A survey on attribute-based encryption schemes suitable for the Internet of things. IEEE Internet Things J. 2022, 9, 8269–8290. [Google Scholar] [CrossRef]
  6. Onyema, E.M.; Kumar, M.A.; Balasubaramanian, S.; Bharany, S.; Rehman, A.U.; Eldin, E.T.; Shafiq, M. A security policy protocol for detection and prevention of internet control message protocol attacks in software defined networks. Sustainability 2022, 14, 11950. [Google Scholar] [CrossRef]
  7. Alam, S.; Shuaib, M.; Ahmad, S.; Jayakody, D.N.K.; Muthanna, A.; Bharany, S.; Elgendy, I.A. Blockchain-based solutions supporting reliable healthcare for fog computing and Internet of medical things (IoMT) integration. Sustainability 2022, 14, 15312. [Google Scholar] [CrossRef]
  8. Sun, F.; He, S.; Zhang, X.; Zhang, J.; Li, Q.; He, Y. A fully authenticated Diffie-Hellman protocol and its application in WSNs. IEEE Trans. Inf. Forensics Secur. 2022, 17, 1986–1999. [Google Scholar] [CrossRef]
  9. Shamir, A. Identity-based cryptosystems and signature schemes. In Advances in Cryptology: Proceedings of CRYPTO 84 4; Springer: Berlin/Heidelberg, Germany, 1985; pp. 47–53. [Google Scholar]
  10. Smart, N.P. Identity-based authenticated key agreement protocol based on Weil pairing. Electron. Lett. 2002, 38, 630–632. [Google Scholar] [CrossRef]
  11. Wang, S.; Cao, Z.; Choo, K.K.R.; Wang, L. An improved identity-based key agreement protocol and its security proof. Inf. Sci. 2009, 179, 307–318. [Google Scholar] [CrossRef]
  12. Chen, L.; Cheng, Z.; Smart, N.P. Identity-based key agreement protocols from pairings. Int. J. Inf. Secur. 2007, 6, 213–241. [Google Scholar] [CrossRef]
  13. Huang, H.; Cao, Z. An ID-based authenticated key exchange protocol based on bilinear Diffie-Hellman problem. In Proceedings of the 4th International Symposium on Information, Computer, and Communications Security, Sydney, Australia, 10–12 March 2009; pp. 333–342. [Google Scholar]
  14. Choo, K.K.R.; Nam, J.; Won, D. A mechanical approach to derive identity-based protocols from Diffie-Hellman-based protocols. Inf. Sci. 2014, 281, 182–200. [Google Scholar] [CrossRef]
  15. Wu, L.; Wang, J.; Choo, K.K.R.; Li, Y.; He, D. An efficient provably-secure identity-based authentication scheme using bilinear pairings for Ad hoc network. J. Inf. Secur. Appl. 2017, 37, 112–121. [Google Scholar] [CrossRef]
  16. Odelu, V.; Das, A.K.; Wazid, M.; Conti, M. Provably secure authenticated key agreement scheme for smart grid. IEEE Trans. Smart Grid 2016, 9, 1900–1910. [Google Scholar] [CrossRef]
  17. Gupta, D.S.; Islam, S.H.; Obaidat, M.S.; Vijayakumar, P.; Kumar, N.; Park, Y. A provably secure and lightweight identity-based two-party authenticated key agreement protocol for IIoT environments. IEEE Syst. J. 2020, 15, 1732–1741. [Google Scholar] [CrossRef]
  18. Lian, H.; Pan, T.; Wang, H.; Zhao, Y. Identity-Based Identity-Concealed Authenticated Key Exchange. In Computer Security-ESORICS 2021: 26th European Symposium on Research in Computer Security, Darmstadt, Germany, 4–8 October 2021; Proceedings, Part II 26; Springer International Publishing: Berlin/Heidelberg, Germany, 2021; pp. 651–675. [Google Scholar]
  19. Canetti, R.; Krawczyk, H. Analysis of key-exchange protocols and their use for building secure channels. In Proceedings of the International conference on the theory and applications of cryptographic techniques, Innsbruck, Austria, 6–10 May 2001; Springer: Berlin/Heidelberg, Germany, 2001; pp. 453–474. [Google Scholar]
  20. LaMacchia, B.; Lauter, K.; Mityagin, A. Stronger security of authenticated key exchange. In Proceedings of the International Conference on Provable Security, Wollongong, Australia, 1–2 November 2007; Springer: Berlin/Heidelberg, Germany, 2007; pp. 1–16. [Google Scholar]
  21. Bala, S.; Sharma, G.; Verma, A.K. PF-ID-2PAKA: Pairing free identity-based two-party authenticated key agreement protocol for wireless sensor networks. Wirel. Pers. Commun. 2016, 87, 995–1012. [Google Scholar] [CrossRef]
  22. Mohammadali, A.; Haghighi, M.S.; Tadayon, M.H.; Mohammadi-Nodooshan, A. A novel identity-based key establishment method for advanced metering infrastructure in smart grid. IEEE Trans. Smart Grid 2016, 9, 2834–2842. [Google Scholar] [CrossRef]
  23. Zhang, J.; Huang, X.; Wang, W.; Yue, Y. Unbalancing pairing-free identity-based authenticated key exchange protocols for disaster scenarios. IEEE Internet Things J. 2018, 6, 878–890. [Google Scholar] [CrossRef]
  24. Cao, X.; Kou, W.; Du, X. A pairing-free identity-based authenticated key agreement protocol with minimal message exchanges. Inf. Sci. 2010, 180, 2895–2903. [Google Scholar] [CrossRef]
  25. Fiore, D.; Gennaro, R. Making the Diffie-Hellman protocol identity-based. In Topics in Cryptology-CT-RSA 2010: The Cryptographers’ Track at the RSA Conference 2010, San Francisco, CA, USA, 1–5 March 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 165–178. [Google Scholar]
  26. Xie, M.; Wang, L. One-round identity-based key exchange with perfect forward security. Inf. Process. Lett. 2012, 112, 587–591. [Google Scholar] [CrossRef]
  27. Ni, L.; Chen, G.; Li, J.; Hao, Y. Strongly secure identity-based authenticated key agreement protocols without bilinear pairings. Inf. Sci. 2016, 367, 176–193. [Google Scholar] [CrossRef]
  28. Dang, L.; Xu, J.; Cao, X.; Li, H.; Chen, J.; Zhang, Y.; Fu, X. Efficient identity-based authenticated key agreement protocol with provable security for vehicular ad hoc networks. Int. J. Distrib. Sens. Netw. 2018, 14, 1550147718772545. [Google Scholar] [CrossRef]
  29. Deng, L.; Shao, J.; Hu, Z. Identity based two-party authenticated key agreement scheme for vehicular ad hoc networks. Peer-to-Peer Netw. Appl. 2021, 14, 2236–2247. [Google Scholar] [CrossRef]
  30. Daniel, R.M.; Rajsingh, E.B.; Silas, S. An efficient ECK secure identity based two party authenticated key agreement scheme with security against active adversaries. Inf. Comput. 2020, 275, 104630. [Google Scholar] [CrossRef]
  31. Kumar, M.; Chand, S. A lightweight cloud-assisted identity-based anonymous authentication and key agreement protocol for secure wireless body area network. IEEE Syst. J. 2020, 15, 2779–2786. [Google Scholar] [CrossRef]
  32. Rakeei, M.A.; Moazami, F. Cryptanalysis of an anonymous authentication and key agreement protocol for secure wireless body area network. Cryptol. ePrint Arch. 2020, 1–4. [Google Scholar]
  33. Pu, C.; Wall, A.; Choo, K.K.R.; Ahmed, I.; Lim, S. A lightweight and privacy-preserving mutual authentication and key agreement protocol for Internet of Drones environment. IEEE Internet Things J. 2022, 9, 9918–9933. [Google Scholar] [CrossRef]
  34. Zhang, Q.; Zhu, L.; Li, Y.; Ma, Z.; Yuan, J.; Zheng, J.; Ai, S. A group key agreement protocol for intelligent internet of things system. Int. J. Intell. Syst. 2022, 37, 699–722. [Google Scholar] [CrossRef]
  35. Zhou, T.; Wang, C.; Zheng, W.; Tan, H. Secure and efficient authenticated group key agreement protocol for AI-based automation systems. ISA Trans. 2023, 141, 1–9. [Google Scholar] [CrossRef]
  36. Pan, X.; Jin, Y.; Li, F. An efficient heterogeneous authenticated key agreement scheme for unmanned aerial vehicles. J. Syst. Archit. 2023, 136, 102821. [Google Scholar] [CrossRef]
  37. Zhang, Y.; He, D.; Vijayakumar, P.; Luo, M.; Huang, X. SAPFS: An Efficient Symmetric-Key Authentication Key Agreement Scheme with Perfect Forward Secrecy for Industrial Internet of Things. IEEE Internet Things J. 2023, 10, 9716–9726. [Google Scholar] [CrossRef]
  38. Abdussami, M.; Amin, R.; Vollala, S. Provably secured lightweight authenticated key agreement protocol for modern health industry. Ad Hoc Netw. 2023, 141, 103094. [Google Scholar] [CrossRef]
  39. Cheng, Q.; Li, Y.; Jiang, Q.; Li, X. Security Analysis of Two Unbalancing Pairing-free Identity-based Authenticated Key Exchange Protocols. Int. J. Netw. Secur. 2020, 22, 597–601. [Google Scholar]
  40. He, D.; Wang, H.; Khan, M.K.; Wang, L. Lightweight anonymous key distribution scheme for smart grid using elliptic curve cryptography. IET Commun. 2016, 10, 1795–1802. [Google Scholar] [CrossRef]
  41. Gura, N.; Patel, A.; Wander, A.; Eberle, H.; Shantz, S.C. Comparing elliptic curve cryptography and RSA on 8-bit CPUs. In Cryptographic Hardware and Embedded Systems-CHES 2004: 6th International Workshop Cambridge, MA, USA, 11–13 August 2004; Proceedings 6; Springer: Berlin/Heidelberg, Germany, 2004; pp. 119–132. [Google Scholar]
Figure 1. Network model for ID-AKA protocols.
Figure 1. Network model for ID-AKA protocols.
Sensors 24 00061 g001
Figure 2. The key agreement phrase of the PF-ID-2PAKA protocol [21].
Figure 2. The key agreement phrase of the PF-ID-2PAKA protocol [21].
Sensors 24 00061 g002
Figure 3. The key agreement phrase of the ZHWY-19-I protocol [23].
Figure 3. The key agreement phrase of the ZHWY-19-I protocol [23].
Sensors 24 00061 g003
Figure 4. The NIKE protocol [22].
Figure 4. The NIKE protocol [22].
Sensors 24 00061 g004
Figure 5. The key agreement phrase of our proposed construction C 1 , C 2 , C 3 , C 4 .
Figure 5. The key agreement phrase of our proposed construction C 1 , C 2 , C 3 , C 4 .
Sensors 24 00061 g005
Figure 6. Comparison of computation overheads.
Figure 6. Comparison of computation overheads.
Sensors 24 00061 g006
Figure 7. Comparison of energy consumption.
Figure 7. Comparison of energy consumption.
Sensors 24 00061 g007
Table 1. Security comparisons.
Table 1. Security comparisons.
ProtocolsSecurity ModelwPFSKCIRESRRMSSAS
CKD [24]mBR*YesYesNoYesGDH
FG-I [25]CKYesYesNoYesGDH
XW [26]CKYesYesNoYesGDH
PF-ID-2PAKA [21]eCK* (flawed)YesYesNoYesGDH
DXCLCZF-18 [28]eCK (flawed)YesNoNoYesGDH
ZHWY-19 [23]mBR* (flawed)NoNoNoYesGDH
NIKE [22]– (flawed)YesNoYesNo
NCL-16-II [27]eCK@YesYesYesYesGDH
DRS-20 [30]eCKYesYesYesYesGDH
DSH-21 [29]eCK*YesYesYesYesGDH
PWCAS-22 [33]eCK*YesYesYesYesPUF
ZHVLH-23 [37]eCK*YesYesYesYesPRF
eCK* and mBR* are without the case where an active adversary may alter all public key materials not only the temporary public key. “–” denotes that there is no formal security proof for the protocol. eCK@ denotes that events in the proof are not complementary.
Table 2. Execution time on a Samsung Galaxy S5.
Table 2. Execution time on a Samsung Galaxy S5.
NotationExplanation (The Execution Time of)Time (ms)
T p A bilinear pairing e: G 1 × G 1 G 2 32.713
T p s m A pairing-based scalar multiplication in G 1 13.405
T p p a A pairing-based point addition in G 1 0.056
T p e x p An exponentiation operation in G 2 2.249
T m t p h A hash-to-point in G 1 33.582
T e s m An ECC-based scalar multiplication in G 3.350
T e p a An ECC-based point addition in G 0.014
T e m t p h A hash-to-point in G 8.250
T h A general hash function0.006
Table 3. Comparative computation overheads.
Table 3. Comparative computation overheads.
ProtocolsComputationsComputation Cost (ms)Energy Consumption (mj)
PF-ID-2PAKA [21] 4 T e s m + 2 T e p a + 2 T h 13.44322.56
DXCLCZF-18 [28] 4 T e s m + 2 T e p a + 2 T h 13.44322.56
NIKE [22] 2 T e s m + 3 T e m t p h 31.45754.8
ZHWY-19 [23] 4 T e s m + 3 T e p a + 3 T h 13.46323.04
NCL-16-II [27] 5 T e s m + 4 T e p a + 3 T h 16.824403.776
DRS-20 [30] 5 T e s m + 3 T e p a + 5 T h 16.822403.728
DSH-21 [29] 4 T e s m + 3 T e p a + 3 T h 13.460323.04
PWCAS-22 [33] 4 T e s m + 6 T e p a + 5 T h 13.514324.336
ZHVLH-23 [37] 5 T e s m + T e p a + 16 T h 16.860404.64
Our protocols 4 T e s m + 3 T e p a + 2 T h 13.454322.896
Table 4. Comparative communication overheads.
Table 4. Comparative communication overheads.
ProtocolsMessages No.Communication CostCost (bits)
PF-ID-2PAKA [21]2 2 | I D | + 4 | G | 1344
DXCLCZF-18 [28]2 2 | I D | + 6 | G | 1984
ZHWY-19 [23]3 6 | G | + | Z q * | + 2 | H | 2400
NIKE [22]3 2 | I D | + 5 | G | 1664
NCL-16-II [27]2 2 | I D | + 6 | G | 1984
DRS-20 [30]2 2 | I D | + 4 | G | + | H | 1504
DSH-21 [29]2 2 | I D | + 4 | G | 1344
PWCAS-22 [33]2 2 | I D | + 4 | G | + 2 | H | 1664
ZHVLH-23 [37]2 3 ( 2 | I D | + | G | + | H | ) 1632
Our protocols2 2 | I D | + 4 | G | 1344
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.

Share and Cite

MDPI and ACS Style

Sun, H.; Li, C.; Zhang, J.; Liang, S.; Huang, W. Cryptanalysis and Improvement of Several Identity-Based Authenticated and Pairing-Free Key Agreement Protocols for IoT Applications. Sensors 2024, 24, 61. https://doi.org/10.3390/s24010061

AMA Style

Sun H, Li C, Zhang J, Liang S, Huang W. Cryptanalysis and Improvement of Several Identity-Based Authenticated and Pairing-Free Key Agreement Protocols for IoT Applications. Sensors. 2024; 24(1):61. https://doi.org/10.3390/s24010061

Chicago/Turabian Style

Sun, Haiyan, Chaoyang Li, Jianwei Zhang, Shujun Liang, and Wanwei Huang. 2024. "Cryptanalysis and Improvement of Several Identity-Based Authenticated and Pairing-Free Key Agreement Protocols for IoT Applications" Sensors 24, no. 1: 61. https://doi.org/10.3390/s24010061

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

Article Metrics

Back to TopTop