A Certificateless Authenticated Key Agreement Scheme for the Power IoT

: Power Internet of Things (IoT) is the application of IoT technology in the field of power grid, which can better control all kinds of power equipment, power personnel and operating envi ‐ ronment. However, access to mass terminals brings higher requirements for terminal authentication and key management for the power IoT. And the traditional public key infrastructure (PKI) and identity ‐ based public key cryptography (IB ‐ PKC) exist the problems of certificate management and key escrow. Therefore, the paper proposes a novel authenticated key agreement scheme based on the certificateless public key cryptography (CL ‐ PKC) mechanism. In addition, the proposed scheme is proven with the improved extended Canetti ‐ Krawczyk (eCK) security model. Finally, the imple ‐ mentation of the authenticated key agreement protocol is given based on the actual application re ‐ quirement of the power IoT, and the analysis and comparison of the simulation demonstrates that the proposed scheme has higher efficiency and would be suitable for the power IoT.


Introduction
Power IoT is the specific application, implementation and evolution direction of the IoT technology in the power grid [1]. The power IoT can dynamically adjust the whole power grid in an all-round way according to the state data of the equipment which locates in all areas of power grid. For example, the traditional power plants can transform into smart power plants by combing with IoT, artificial intelligence and some other technologies to achieve interconnection and information sharing between equipment and equipment, person and equipment [2].
By the end of 2018, State Grid Corporation of China had accessed 540 million power terminals and basically realized the comprehensive information collection of control operation and electricity metering in the grid [3,4]. With the advancement of the construction of the power IoT, A large number of the IoT terminals would be deployed in the whole areas in power plants, transmission line, power substation, distribution station and consumers to realize the real-time monitoring of the grids. Therefore, the process of designing an efficient authenticated key agreement protocol, achieve identity authentication and develop a key agreement that includes the privacy, integrality and undeniability of communication data with massive power IoT terminals has become a focus in current research.
The authenticated key agreement scheme could be implemented by three cipher systems: PKI, IB-PKC and CL-PKC. In the PKI system, the users or the terminals could implement identity authentication by the digital certificate, which contained the public key, and was issued by the certificate authority (CA). However, with the increase of the users or terminals will bring a heavy burden of management certificate such as certificate generation, issuance, savings, verification, and revocation to the PKI system. The IBC system uses a device's own unique identifier, such as a CPU or disk code, to replace the digital certificate and solve the PKI system's complicated certificate management problem [5]. However, in the IB-PKC system, the user's private key is fully generated by one authoritative private key generator (PKG). Since the PKG has the master key of the system, the entire system is insecure if an attacker obtains the master key of the PKG or the PKG itself is an attacker. The problem of the key escrow existing in the IB-PKC system could be solved in the CL-PKC system. In the CL-PKC system as the users' keys are co generated by the users and the master key of the trusted key generating center (KGC). Therefore, even if the master key of the system is obtained by an attacker, the attacker cannot obtain the user's private key.
Compared with the PKI and IB-PKC, the CL-PKC system has critical advantages in certificate management and key escrow. Therefore, this paper proposes a novel authenticated key agreement scheme that could be suitable for the power IoT, which can effectively improve the security of the power IoT and the grids.
In this paper, our main contributions are as follows: (1) An efficient authenticated key agreement scheme based on CL-PKC has been proposed, which uses simple point multiplication of elliptic curves to replace complex bilinear pairing to make it simpler and more practical for the terminals with limited computing resources in power IoT. (2) The security of the proposed authenticated key agreement scheme has been proved by the the e 2 CK security model where e 2 CK security model is more secure and it have defined the authenticated key agreement protocol is secure as long as any secret value of both parities is not disclosed. (3) We program and implement the proposed scheme and protocol and make it more applicable for the power IoT, while the performance of other protocols is compared.
In this paper, the introduction and background of the power IoT and CL-PKC are describled in Section 1 and some related works has been summarized in Section 2. Section 3 presents some basic knowledge that would need in the paper as the preliminaries. The detailed design and principle of our proposed scheme based on CL-PKC are introduced in Section 4. The analysis and comparison of the simulation are given in Section 5 and our current and upcoming work have been concluded in Section 6.

Related Work
Since Al-Riyami et al., put forward the first concept of CL-PKC [6], many works and researches have been raised to enhance the key agreement scheme based on their work. Mandt et al., pointed out that it is unable to resist temporary key leakage attacks and proposed a new scheme. However, the new scheme was at risk of key compromise impersonation (KCI) [7]. Zhang et al., proposed a modified Bellare-Rogaway (mBR) model applicable to certificateless systems and two-party key agreement protocols based on the IB-PKC and proved it under mBR model [8]. He et al., also presented a novel authenticated key agreement protocol with point multiplication and proved it under the mBR model [9]. Sun et al., proved that the two above schemes were vulnerable, meaning that the session key could be calculated by the adversary who could acquire the ephemeral secret keys in the communication between the two parties [10]. Wu et al., proposed a scheme based on the eCK model, but it was also at risk of a KCI attack [11]. Kim et al., Also bring a two-party CLAKA scheme with pairing-free and proved the secure with the eCK model [12]. Bala et al., reminded that the scheme [12] was vulnerable to KCI attacks [13]. Tu et al., proposed a very reliable and secure authenticated key agreement protocol with pairing-free based on CL-PKC. It is suitable for smart media and mobile environment, while proving its security using the eCK model [14]. Sun et al., also proposed a secure pairing-free authenticated key agreement protocol based on CL-PKC, and the strengthened eCK model was used to prove it, but the scheme had heavy communication and calculation costs because the lengths of the users' public and private keys were twice as long as those of other schemes [15]. Collen et al., improved the eCK model and presented a one-way two-party authenticated key agreement scheme [16]. Lippold et al., enhanced the eCK model to the e 2 CK model and proposed an authenticated key agreement scheme under the model to formally prove its security [17]. All of the schemes mentioned above used bilinear pairings; hence, the cost of the calculations was reasonable. Yang et al., proposed a new certificateless model and proposed a two-party agreement scheme under the model [18]. Huang et al., designed a security model of a one-way two-party authentication key agreement that was suitable for the CL-PKC system, and they formally proved its security with the eCK security model. However, the scheme only ensured one-way identity security and exhibited temporary secret value leakage attacks [19].
In terms of the state grid, there has also been much research focused on an authenticated key agreement. For example, State Grid issued a set of standard security access specifications that stipulated that the grid terminals need to use the PKI system and the SM2 digital certificate to complete identity authentication and key agreement in 2014 [20]. Lin et al., proposed an improved safety communication scheme based on [20], which enhanced the security of network communication by adding time stamps and digital signatures to the messages [21]. Tsai et al., proposed a novel authentication protocol which could be applied in the smart grid, but employed bilinear pairing that had a heavy computational cost [22]. Fouda et al., presented a lightweight authentication way for the smart meters in the distributed network with the Diffie-Hellman exchange protocol [23]. However, the scheme leads to high computational complexity. Mahmood et al., pointed out that the scheme is computational expensive and presented one authentication scheme based on the elliptic curve cryptography (ECC) that could implement the mutual identity authentication [24]. Li et al., presented one two-way authentication scheme based on SM2 for the radio frequency identification system and proved it with BAN logic [25]. Li et al., proposed an improved SM2-based key agreement and a mutual identify authentication scheme for smart grid [26]. However, the security schemes above were all achieved by PKI systems, which have complicated certificate management and were not suitable for the power IoT with a large number of terminals. Deng et al., presented a two parties' authenticated key agreement protocol for smart grids based on CL-PCK [27], and Batamuliza et al., introduced a certificateless "signcryption" for a key distribution scheme in a state grid, but he did not give detailed proofs of the scheme's security [28].
According to the above analysis, most of the papers used PKI system to achieve the mutual authenticated key agreement in the state grid, but these schemes were not suited for the power IoT with massive terminals and also some certificateless schemes had heavy communication and calculation costs as they used bilinear pairing and exponential operations. So before introducing the proposed scheme, some basic knowledge will be presented in the following section.

Preliminaries
In this section, the basis knowledge of ECC and the computational Diffie-Hellman (CDH) assumption will be described as the preliminaries.

Elliptic Curve
The elliptic curve on the finite field is the set of points. The equation of elliptic curve E on FG p can be expressed as below and p is one prime greater than 3 and a, b ∈ FG p . y x ax b mod p and 4a 27b 0.
Based on the elliptic curve, ECC was proposed to implement the asymmetric encryption and decryption as it can use smaller secret keys while ensuring the same security level. And the security of the ECC is defined by the elliptic curve discrete logarithms (ECDLP) which is a hard number theoretic problem. In the ECDLP, it is difficult to assign one integer r ∈ 0, n 1 to make Q r P, where n is the order of the elliptic curve, P is one point in the elliptic curve and Q belongs to the cyclic group generated by point P [29].

CDH Assumption
An algorithm that can solve the CDH problem in polynomial time is a probabilistic Turing machine. The algorithm can be presented as below, with the input of a tuple (G, aG, bG) and output the abG according to the input, where G is the generator of the cyclic group P and a, b belongs to Z and r is the order of P. The algorithm should be with nonnegligible probability. And CDH assumption means that there is no such a probabilistic polynomial time Turing machine to solve the CDH problem [29].

Proposed Scheme
In this section, we will introduce the security model and propose a novel authenticated key agreement scheme that can support the two-way authenticated key agreement between the power terminals and management system based on CL-PKC. To prove the security of our proposed scheme under CDH, we now provide the e 2 CK security model of our proposed scheme based on Lippold [17] before describing the scheme.

Security Model
The security model defines a security game between adversary and simulator ℬ. We assume that the set U U , U , … , U contains the users participating in the authenticated key agreement. Each user has its own private key and public key. The adversary controls the whole channel, and the simulator generates the public parameters and user information, while simulating the operation of the proposed scheme. Session Π , indicates the n'th time of an authenticated key agreement between i and j, and the ID of session Π , refers to the set of messages transmitted in the connection and the public keys of both parties.
Define 1: Matched session: Sessions Π , and Π , are matched sessions if their session IDs are the same.
The model will be divided into two stages. Stage 1: In the first stage, the adversary can query the following oracle in any order: Create (IDi): ℬ generates the public key and private key for the user IDi after receiving the oracle; Reveal_SessionKey (Π , ): ℬ returns the session key of Π , or ⊥ if the session key does not exist and ⊥ means null; Reveal_Partial_PrivateKey (IDi): ℬ returns the user's partial private key of the user IDi after receiving the oracle; Reveal_SecretValue (IDi): ℬ returns the secret value of the user IDi after receiving the oracle; Replace_PublicKey (IDi, X'): The public key of the user IDi will be replaced with X' by ℬ; Reveal_EphemeralKey ( Π , ): ℬ returns the ephemeral key of session Π , after receiving the oracle; Send (Π , , M): The adversary sends M message to session Π , and obtains the response message according to the proposed scheme.
Stage 2: In the second stage, the adversary will choose one fresh session Π , and query the oracle of Test (Π , ) while the first stage is over.
Define 2: Freshness of the session: The session Π , is fresh if (1) Π , already has the session key; (2) The adversary does not query the oracle of Reveal_SessionKey in session Π , and matched session Π , of Π , ; (3) Neither of the two parties involved in session Π , is fully exposed.
Test (Π , ): The oracle chooses β ∈ 0,1 randomly and computes the session key of Π , if β 0 or one random value as the session key if β 1.
The adversary can repeat the above queries, but the session must be kept fresh. After finishing the game, the adversary must submit a guess value β′ ∈ 0,1 . The adversary wins the game if β β, with the advantage is defined as Adv k Pr β β .
The authenticated key agreement model could be secure if the advantage Adv (k) is negligible.

Proposed Scheme
Our proposed scheme consists of five parts as below: initialization, private key generation, public key generation and key agreement. The detailed description of the scheme is as follows.

Initialization
This function is mainly responsible for generating some public parameters for the scheme by KGC; KGC chooses one elliptic curve E which has been defined in above and selects one random value s ∈ Z as the master secret key to generate the master public key P s * G and two hash function H1 and H2 are chosen for the public parameters where H : 0,1 * → Z * could map the users' identity to the elements in Z , and hash function H : 0,1 → 0,1 is chosen to compute the session key. The public parameter is PP GF q , G, E, P , H , H , and the KGC exposes the PP to all users in the system.

Partial Private Key Generation
The KGC computes the partial private key d sH ID , while user i sends its IDi to the KGC and returns the key to the user through the secret channel.

Private Key Generation
User i selects one random value x ∈ Z and composes the private key s x , d where the partial private key d is from the KGC.

Public Key Generation
The user i takes X x G as its public key.

Key Agreement
User A with identity IDA and user B with identity IDB can establish the connection and obtain the same session key after finishing the following steps: (1) User A chooses one random ephemeral key t ∈ Z and sends (IDA, XA, TA) to B, where T t G and XA is the public key described above.
(2) After receiving the message (IDA, XA, TA) from A, user B also chooses one random ephemeral key t ∈ Z and sends (IDB, XB, TB) to A.   SKAB and SKBA can be calculated as follows to prove the correctness of the proposed scheme if SK SK : t T t t G t T K Thus, the two parities can transmit data with the same session key for the subsequent communication.

Security Analysis
We will demonstrate the proposed scheme is secure under the CDH assumption and random oracle, with a security game where the simulator can query the value that cannot be calculated through the CDH assumption and the adversary's interaction with the random oracles in this section. For example, the simulator cannot obtain xATB without xA, tB. At this point, the simulator can judge CDH X , T , x T 1 in K 1 AB by the H2 oracle queried by the adversary.

Theorem 1.
In the case of benign adversaries and random oracles, the two matched oracles will always obtain the same session key, and the key is evenly distributed in {0,1}.
Proof of Theorem 1. A and B can obtain the same session key as the proposed scheme defined in Section 4.2. K 1 and K 2 are randomly generated as the ephemeral keys, while tA and tB are random values. Therefore, the session key SK is evenly distributed in {0,1} based on the random H2 oracle.

Theorem 2. If the adversary has the advantage Adv (k) to win the game, then we can find a simulator that can solve the CDH problem with the advantage at least. m is the number of sessions and p is the number of users.
Proof of Theorem 2. The simulator is constructed to solve abG under the CDH problem with the input (aG, bG). Before the game, the simulator needs to choose the two parties A and B, where A and B are the users that query the H1 oracle for the i'th and j'th times and i, j ∈ 1, ⋯ , m when i j. Then, ℬ generates the public parameters PP and sends them to the adversary . We complete the security proof by classifying the information that was not disclosed in the game. Thus, the following four cases should be considered:  Otherwise, ℬ chooses a random hi and returns it to ϑ. Test (Π , ): If Π , Π , , ℬ outputs a random β ∈ 0,1 . If ϑ wins the game, the H2 oracle must have been issued; thus, ℬ can find the corresponding tuple with the correct elements of K 1 in LH2 with a probability of at least 1/4. Then, ℬ computes abG K t s T X H B P t s X with X aG and X bG; therefore, the CDH problem can be solved by ℬ with the non-negligible advantage Adv k , which contradicts the CDH assumption.
Case 2: The adversary cann not obtain the ephemeral key tA and the private key xB.
In this case, the simulator ℬ sets the ephemeral public key T aG and public key of B X bG to guess the test session Π , with an advantage of more than 1/mp 2 . According to the security model, the simulator will answer the queries of the following oracles: therefore, the CDH problem can be solved by ℬ with the non-negligible advantage Adv k , which contradicts the CDH assumption.
Case 3: The adversary can not obtain the private key xA and the ephemeral key tB. Case 3 is symmetric to case 2, and we will not give the details here to save space. Case 4: The adversary can not obtain the ephemeral key tA and tB. In this case, the simulator ℬ sets the ephemeral public key T aG and T bG to guess the test session Π , with an advantage of more than 1/mp 2 . According to the security model, the simulator will answer the queries of the following oracles. Test (Π , ): If Π , Π , , ℬ outputs a random β ∈ 0,1 . If ϑ wins the game, the H2 oracle must have been issued; thus, ℬ can find the corresponding tuple with the correct elements of K 2 in LH2 with a probability of at least 1/4. Then, ℬ computes abG K t T with T aG and T bG; therefore, the CDH problem can be solved by ℬ with the non-negligible advantage Adv k , which contradicts the CDH assumption. From the above theories, we can conclude that the proposed scheme is a secure authenticated key agreement model based on CL-PKC.

Performance Analysis
The terminals of power IoT need to carry a lot of data acquisition and business computing and most of them are embedded systems with limited CPU and memory resource.
The performance of the proposed scheme should be considered according to the actual application scenarios. So in this section, the comparison and analysis of the security model and computation and communication cost with the previous schemes and the proposed scheme will be presented in a detailed account in Table 1.
As the both parties of the schemes need to communicate and exchange data, the communication cost should consider the length of the necessary messages and the integrity of the communication. In the above schemes, we summarize the message as IDs, public keys and ephemeral keys. The other schemes choose a 1024 bits Group G with order r, where r is 512 bits and we use |G| to identify the size of Group G. Consequently, the size of the point is 2|G| and |ID| has 16 bits. However, the elliptic curve used in the proposed schemes is 256 bits, and the size of the point is 2|G′| (512 bits) where |G′| is the size of the group in our elliptic curve.
In addition, in order to meet the application requirements of the power IoT, we use three gateways with Intel Xeon E3 CPU at 3.4 GHz and 8 GB memory to build the test network topology that depicted in Figure 2. The terminal simulator server and security gateway are the two parities of the communication and we program the test routines with C programming language and Openssl libraries which have implemented the algorithms of point multiplication. The power IoT management system is designed to be responsible for the interaction of business data with the terminals that have completed the authentication. As a comparison, we also implement the key agreement protocol used in the voltage monitoring device of the state grid, as well as some of the other improved versions based on it. To ensure the integrity and the confidentiality of the proposed scheme and the communications, we encrypt and sign the messages with the standard SM2 algorithm [31,32]. A confirmation step is added to ensure the reliability of the session key. In addition, we add the time stamps in the message to keep the freshness of the session, thus resisting replay attacks and making protocols more robust with some other flags. The pseudo codes are below: Terminal simulator server Security gateway Power IoT management system (1) Terminal A sends the request of a key agreement to a security gateway B; //Encrypt data Create_EcPoint (PP, tA, TA); Get_CurrentTime (TimeA); Sm2_Encrypt (IDB, IDA + XA + TA + TimeA, Buffer + 40); //Pack data Buffer [TYPE] = 0x01; Buffer[SUBTYPE] = 0x01; * ((u16 *) (Buffer + LENGTH)) = Change_Int (Length); * ((u16 *) (Buffer + VER)) = Change_Int (0x0100); * ((u16 *) (Buffer + SN_REQ)) = Change_Int (8000); memcpy (Buffer + IDX_SIM_CARD_ID, SIM_ID, 16); memcpy (Buffer + IDX_DEVICE_ID, CHIP_ID, 16); TempBuffer = Buffer + Length-64; //Signature data Hash (Buffer, Length-64, TempBuffer); Sm2_Sign (PriA,TempBuffer, Buffer + 165); (2) The gateway decrypts and verifies the received message, and then sends the response message to A, while the gateway computes the session key using the proposed model. (4) The gateway compares the received hash value and the hash of its own session. The session key will be established if the results are consistent, else the gateway will close the connection. Figure 3 shows the comparison of the execution time in the proposed scheme and schemes [20,21,26]. We calculate the processing time of security gateway by increasing the number of the simulated concurrency from 1 to 10,000. As the authenticated key agreement protocols used in the other three schemes are implemented by the traditional digital certificates, their execution time and computation cost are much greater than our proposed scheme. Conversely, it also shows that the proposed authenticated key agreement has higher efficiency. In contrast, the proposed scheme only needs approximately 500 bytes to implement the whole authenticated key agreement, while the other three schemes need at least 1500 bytes for communication. This scheme consumes fewer communication and computing resources, which makes the execution time relatively low, the efficiency higher, and it becomes more suitable for the secure access of mass power IoT terminals.

Conclusions
In order to protect the security of the communication in power IoT, this paper proposes a novel authenticated key agreement model based on CL-PKC and simplify the communications to improve the performance of the key agreement protocol according the requirement of power IoT and by uses simple point multiplication of elliptic curves to replace complex bilinear pairing make it is simpler and more practical for the terminals with limited computing resources in power IoT. The proposed scheme has provable security with the e 2 CK security model under the CDH assumption with detailed proof thereof. Finally, the authenticated key agreement protocol based on the proposed scheme has been programmed and implemented, then the analysis and comparison of the simulation proves that our scheme has higher efficiency.
However, there is also some work that needs to be improved in our scheme. We use the standard SM2 algorithm to perform asymmetric encryption and signature in the key agreement protocol of the test routine. In the future, we could design a certificateless public key encryption and digital signature algorithm based on SM2 and a certificateless key agreement based on SM2, which will be our upcoming research.
Author Contributions: Methodology, R.C. and W.C.; project administration, K.W.; writing-original draft, Y.S.; writing-review and editing, R.C. and W.C.; funding acquisition, Y.L. All authors have read and agreed to the published version of the manuscript.
Funding: This research was funded by the National Key R&D Program of China, grant number 2020YFB0905900.