You are currently viewing a new version of our website. To view the old version click .
Energies
  • Article
  • Open Access

7 September 2017

An Anonymous Authentication and Key Establish Scheme for Smart Grid: FAuth

,
,
and
Departamento de Ingeniería Telemática y Electrónica (DTE), Escuela Técnica Superior de Ingeniería y Sistemas de Telecomunicación (ETSIST), Universidad Politécnica de Madrid (UPM), C/Nikola Tesla, s/n, 28031 Madrid, Spain
*
Author to whom correspondence should be addressed.

Abstract

The smart meters in electricity grids enable fine-grained consumption monitoring. Thus, suppliers could adjust their tariffs. However, as smart meters are deployed within the smart grid field, authentication and key establishment between smart grid parties (smart meters, aggregators, and servers) become an urgency. Besides, as privacy is becoming a big concern for smart meters, smart grid parties are reluctant to leak their real identities during the authentication phase. In this paper, we analyze the recent authentication schemes in smart grids and other applied fields, and propose an anonymous authentication and key establishment scheme between smart grid parties: FAuth. The proposed scheme is based on bilinear maps and the computational Diffie–Hellman problem. We changed the way the smart meter parties registered at Key Generation Center, making the proposed scheme robust against various potential attacks that could be launched by the Key Generation Center, as the scheme could avoid the private key of the smart meter parties from leaking to the Key Generation Center. Besides, the proposed scheme reduced the computational load, both at the smart meter side and at the aggregator side, which make it perfectly suitable for computation-constrained devices. Security proof results show the proposed scheme is secure under the BAN logic and random oracle model.

1. Introduction

The internet of things is now applied into many parts of our daily life. Smart meters are one of these. The European Commission has formulated the goal to provide 80% of all households with smart electricity meters by the year 2020 []. As a smart meter can report its measurements periodically to the utility supplier instantaneously, the utility supplier can dynamically change the supplement according to the reported data. With more and more smart meters applied, authentication and key establishment have become an important issue in the smart grid area. According to Sanjab et al. (2016) [], “a robust authentication protocol is needed while communicating between smart grid parties.” According to the Report on Workshop on Security & Privacy in IoT of Europe (2016) [], “identification and authentication of end-devices, gateways and servers as very first requirement.” is considered to help manage scalability, evolutivity and risk assessment of the overall IoT system. Authentication enables the parties in the smart grid to authenticate each other and establish a shared key. But as privacy becomes a concern, people start trying to find ways that smart grid parties could authenticate each other without leaking their identity to adversaries.
First, as a smart meter is installed beside the house of inhabitants, as stated in [], “this malicious attacker might be able to forge sensed data such as the amount of electricity usage at this house before sending these forged data back to the corresponding service server.” Passive attacks are easily launched by an attacker, such as eavesdrop attack, and some other attacks launched by the attackers. Authentication and encryption methods should be applied in this scenario.
Second, electricity usage naturally includes personal information of the inhabitants, according to the electricity consumption, it is easy to judge if inhabitants are at home or not, and with fine-grained electricity consumption reporting instantly, privacy-sensitive information, regarding which appliances are active, can be obtained. Also, by data mining or static methods, according to the electricity consumption, the status and income of the inhabitants may be revealed, so anonymous authentication is needed; in FAuth, the identity of the smart meter is encrypted before sending.
Third, as smart meters have constrained computability compared to aggregators, it is necessary to try to lower the computation cost at the smart meter side; in FAuth, the computation cost at the smart meter side is the lowest compared to other schemes.
So, in this paper, we proposed an anonymous authentication scheme based on bilinear maps and the computational Diffie–Hellman problem: FAuth, which totally meets the above three requirements as stated. The contributions of this paper include the following three points:
  • We changed the way smart meter parties register at the Key Generation Center, detailed in Section 6.3, and prevent the Key Generation Center from knowing the private key of the smart grid parties. Thus, some security problems are prevented, detailed in Section 8.
  • Based on the methods of Tsai-Lo [] and Odelu [], we proposed FAuth, and the comparison results show that the proposed scheme greatly reduced the computation costs of smart grid parties at the authentication phase.
  • Security analyses of BAN logic and random oracle model are conducted to show that the proposed scheme is safe.
This paper is organized as follows: We discuss the related works in Section 2. Some preliminary knowledge is described in Section 3. A review of Odelu’s scheme is presented in Section 4. The security limitations of Odelu’s scheme are discussed at Section 5. The scheme: FAuth is proposed in Section 6. We conduct two separate security analyses using BAN logic and random oracle model in Section 7 and Section 8. We provide a comparison with the related schemes in Section 9. A brief introduction of the I3RES Project is given in Section 10. We conclude the paper with a summary of the contributions in Section 11.

3. Preliminary

In this section, an introduction to basic knowledge bilinear maps and the computational Diffie–Hellman problem is introduced.

3.1. Bilinear Map

Central to pairing-based cryptosystems is a bilinear nondegenerate map, originally given as e : G 1 × G 1 G 2 , where G 1 , G 2 are both cyclic groups of prime order q , and the discrete log problem is hard in G 1 . G 1 is a cyclic additive group, and G 2 is a cyclic multiplicative group. Bilinear maps have the following properties:
  • Bilinearity: e ( a P , b Q ) = e ( a P , b Q ) a b for   P ,   Q G 1 , for   a ,   b Z q .
  • Computability: there is an efficient algorithm to compute P ,   Q , for   P ,   Q G 1 .
  • Non-degeneracy:   P ,   Q G 1 with e ( P , Q ) 1 , where 1 is the multiplicative identity of G 2 .

3.2. Computational Diffie-Hellman Problem

Given P ,   x P , y P G 1 , for   x ,   y Z q . It is infeasible to compute x y P .

4. Review of Odelu’s Scheme

In this section, the authentication scheme proposed by Vanga Odelu, Ashok Kumar Das, Mohammad Wazid, and Mauro Conti for smart grids is evaluated. Some notions used in their scheme are listed in Table 1.
Table 1. Symbols used in Odelu’s scheme.

4.1. Setup Phase of Odelu’s Scheme

In this phase, K G C , which is a trust key generation center, sets up the parameters using the following steps:
Step 1
K G C chooses bilinear map groups ( G 1 , G 2 ) with a prime order, q , and generators P G 1 , and g = e ( P , P ) G 2 , where e : G 1 × G 1 G 2 is the bilinear map.
Step 2
K G C chooses the cryptographic one way hash functions H 1 : { 0 , 1 } Z q , H 2 : G 2 × { 0 , 1 } { 0 , 1 } m ,   H 3 : { 0 , 1 } { 0 , 1 } n , H 4 : G 2 Z q , a n d   H 5 : { 0 , 1 } × G 2 Z q , where m = n + w , and w is a constant and it is also fixed during the setup phase as in [], which is based on the input length of an encryption algorithm used in our authentication and key agreement phase. Note that in their proposed scheme, w is calculated such that n + w = 2 | q | + | G 1 | bits, where | X | denotes the bit length of string X .
Step 3
K G C then chooses its master private key k x   X R   q and computes the corresponding public key R x =   k x · P G 1 .
Step 4
finally, K G C declares the public parameter { G 1 , G 1 , q , e , P , P p u b , g , H 1 , H 2 , H 3 , H 4 , H 5 } .

4.2. Smart Meter Registration of Their Scheme

First, we have to make it clear that the registration phase is under a secure channel. Suppose a smart meter M i wants to register with the K G C . M i sends its identity, I d i , to K G C via secure channel. After receiving the identity I d i , K G C conducts the following steps:
  • Selects a random number r m   X R   q , R m =   r m · P
  • Computes k i = H 5 ( I d i   , R m ) k x + r m   ( m o d   q ) (El-Gamal type signature on I d i )
  • Sends ( k i , R m ) to M i
When smart meter M i receives ( k i , R m ) , it stores them in the tamper-proof module. The whole process is depicted in Table 2.
Table 2. Registration phase of smart meter in Odelu’s scheme.

4.3. Service Provider Registration of Their Scheme

When a service provider S j wants to join the system, it has to first register at K G C . S j sends its identity, I d j , to K G C . After receiving the identity I d j , K G C calculates the private key K j = 1 k x +   H 1 (   I d j ) · P , and sends K j   to S j . When smart meter S j receives K j , it computes k j = H 5 ( I d j , K j ) , and stores ( k j , K j ) into the tamper-proof module. The whole process is depicted in Table 3.
Table 3. Registration phase of service provider in Odelu’s scheme.

4.4. Authentication and Key Establishment Phase of Their Scheme

In the authentication phase of their scheme, smart meter M i and service provider S j could authenticate each other without the help of K G C .
  • M i chooses two random numbers x 1 , n 1   Z R   q , and then computes T 1 = ( x 1 + k i ) ( H 1 ( I d j ) P + R x ) ) , g 1 = g x 1 + k i , C 1 = H 2 ( g 1 , I d j )     ( I d i , R m , n 1 ) and A 1 = H 3 ( T 1 | | I d i | | R m | | n 1 | | g 1 ) . M i sends request message M e s s a g e 1 = { T 1 , C 1 , A 1 } to S j .
  • Upon receiving the message { T 1 , C 1 , A 1 } from M i , S j derives g 1 = e ( T 1 , K j ) , using its own private key K j . Then, it computes ( I d i , R m , n 1 ) = C 1   H 2 ( g 1 , I d j )   . S j then checks if A 1 = H 3 ( T 1 | | I d i | | R m | | n 1 | | g 1 ) ; if it does not hold, S j terminates the session, otherwise, S j chooses a random number x 2   X R   q and computes g 2 = e ( ( x 2 + k j ) P , H 5 ( I d i , R m ) R x + R m ) = g ( x 2 + k j ) k i , the session key s k = H 4 ( g 1 x 2 + k j ) and A 2 = H 3 ( s k | | g 2 | | I d j | | I d i | | n 1 | | g 1 ) , and S j then sends M e s s a g e 2 = { g 2 , A 2 } to M i .
  • After receiving { g 2 , A 2 } from S j , M i computes the session key s k = H 4 ( g 2 ( x 1 + k i ) / k i ) . Next M i checks if A 2 = H 3 ( s k | | g 2 | | I d j | | I d i | | n 1 | | g 1 ) . If it does not hold, M i terminates the session. Otherwise, M i authenticates S j as a valid target server, and sets s k as the session key. M i   then computes A 3 = H 3 ( s k | | I d i | | n 1 | | g 1 | | g 2 | | I d j ) and sends M e s s a g e 3 = { A 3 } to S j .
  • Upon receiving { A 3 } , S j checks if A 3 = H 3 ( s k | | I d i | | n 1 | | g 1 | | g 2 | | I d j ) . It this does not hold, S j terminates the session. Otherwise, S j confirms that M i is a legitimate registered smart meter, and agrees with the session key s k .
Now both S j and M i agree on the shared key, s k , and the information flow is depicted in the following Table 4.
Table 4. Authentication phase of Odelu’s scheme.

5. Security Limitations of Odelu’s Scheme

In the registration phase of Odelu’s scheme, the private key of the smart meter M i is k i = H 5 ( I d i , R m ) k x + r m , which is generated by K G C , so K G C knows this private key of the smart meter M i . It is the same with the private key of the service provider S j . So as K G C knows the private keys of the smart meter parties, although K G C is trust worthy, a curious K G C can launch various attacks.

5.1. Impersonate Attack by K G C

It is obviously that with the private key of smart meters or service provider S j , K G C could easily impersonate as a smart meter M i or a service provider S j .

5.2. Tracked by K G C

Besides, the private key of the smart meter M i and the service provider S j are all known by K G C . This means in the authentication phase, the smart meter M i could be tracked by K G C . For a smart meter, it would send { T 1 , C 1 , A 1 } to a service provider S j , and K G C has the private key of S j , so K G C could decrypt C 1 to get the identity of M i , which is I d i . In this way, smart meter M i could tracked by K G C .

6. The Proposed Authentication Protocol for Smart Grid

In this section, an introduction of the structure of the system was given, and then we propose FAuth. A detailed description of the registration phase and the authentication phase is given in this section.

6.1. Structure of the Scheme

The model is depicted in Figure 1. The structure is divided into three layers, the first layer is the server layer, the second layer is the aggregator layer, and the third layer is the smart meter layer, the smart meters report their reading to the aggregator, the aggregator adds all the smart meters’ reading in its range and reports that to the server.
Figure 1. The structure of the model.
In order for the smart meters and aggregators to authenticate each other, we introduce a Key Generation Center, which works like the Trusted Anchor in [], which is in charge of the registration of the smart meter and the aggregators.
The abstract structure is depicted in Figure 2. The Key Generation Center is in charge of the key generation for the smart meter parties, the smart meters, and the aggregators, and the server has to register to the KGC before they enter the network.
Figure 2. The abstract structure of the model.
  • All the members of the scheme, i.e., server, smart meter, and aggregator, have to register at KGC to get their public key pairs.
  • The aggregator and smart meters have to authenticate each other and build a shared key for the smart meters to report their reading to the aggregator. The same process happens between the aggregator and the server. In this paper, we only analyze the first part, because the mutual authentication process between the aggregator and the server is the same.
The proposed scheme is an anonymous mutual authentication scheme between the smart meter and the aggregator, or the aggregator and the server, and by the proposed scheme, the two parties could build a shared key for farther communication.

6.2. Setup of the Scheme

The setup phase in the proposed scheme is the same as that in [], as we have discussed in 4.1. K G C generates its public key pair ( k x ,   R x ) and sends these parameters to all the members of the scheme. The symbols we will use in the next section are summarized in Table 5.
Table 5. Symbols used in the proposed scheme.

6.3. Registration Phase of Smart Meter

The registration phase of M i in the proposed scheme is similar to that of the scheme [], as depicts in Table 6. When a smart meter wants to join, it has to register first. A smart meter with identity I d i first generates a random number k u   X R   q ,   R u =   k u · P . Then, M i sends the registration request { I d i , R u } to K G C , and K G C generates a random number, k n   X R   q , and calculates R n =   k n · P , R i n = ( R u + R n ) , e i = H ( R i n | | I d i ) , s i =   e i · k n + k x . Then, K G C sends { e i , s i , R n } back to the smart meter. The smart meter calculates its own private k i =   s i + e i · k u = e i · k n + e i · k u + k x , and public key R i =   e i · R i n + R x =   e i · R u + e i · R n + R x . Now the registration phase of the smart meter is finished, and the private key of the smart meter is only known by the smart meter itself.
Table 6. Registration phase of the smart meter.

6.4. Registration Phase of Aggregator

The registration phase of an aggregator, A G j , is the same as with the smart meter M i , the process is depicts in Table 7. Finally, an aggregator will get a public key pair: private key k j =   s j + e j · k c = e j · k m + e j · k c + k x , and public key R j =   e j · R j m + R x .
Table 7. Registration phase of the aggregator.

6.5. Request and Authentication Phase

Smart meter, M i , with identity, I d i , first has to perform the following steps to be anonymously authenticated by an aggregator. Only after mutual authentication, can the smart meter then report its reading to the aggregator.
  • Smart meter, M i , with identity, I d i , chooses a random number x 1   X R q , and calculates T 1 = ( x 1 + k i ) · R j ,   g 1 = g ( x 1 + k i ) .
  • Using the hashed value of g 1 to encrypt its identity, I d i , and R i n : C 1 = H 2 ( g 1 )     ( I d i , R i n ) .
  • Gets the timestamp T S 1 .
  • Calculates the hashed value: A 1 = H 3 ( T 1 | | I d i | | R i n | | T S 1 ) .
  • Sends Message 1 = {   T 1 , C 1 , A 1 , T S 1 } to the aggregator.
When aggregator A G j receives the data { T 1 , C 1 , A 1 , T S 1 } from a smart meter, M i , A G j will conduct the following steps to authenticate the meter M i :
  • Checks the freshness of the T S 1 , if T S 1 is not fresh, A G j abandons the message.
  • Calculates g 1 = e ( T 1 ,   P ) 1 / k j using its private key k j .
  • Decrypts C 1 to get ( I d i , R i n ) = C 1   H 2 ( g 1 ) .
  • Checks if A 1 = H 3 ( T 1 | | I d i | | R i n | | T S 1 ) ; if they are not equal, aborts here.
  • Calculates the public key of M i   : R i = H 5 ( I d i ,   R i n ) · R i n + R x .
  • Chooses a random number x 2   X R   q .
  • Calculates T 2 = ( x 2 + k j ) · k j 1 · T 1 .
  • Calculates T 3 = ( x 2 + k j )   · R i .
  • Calculates s k = H 4 ( T 2 ) = H 4 ( ( x 2 + k j ) · k j 1 · T 1 ) = H 4 ( k i 1 ( x 1 + k i ) · T 3 ) .
  • Calculates A 2 = H 3 ( s k | | T 3 | | I d j | | I d i | | T S 1 | | g 1 ) .
  • Sends Message 2 = { T 3 , A 2 } to the client M i .
When smart meter M i gets the data { T 3 , A 2 }, M i will do the following steps to authenticate this message.
6.
M i computes the shared key using its private key k i : s k =   H 4 ( k i 1 · ( x 1 + k i ) · T 3 )   = H 4 ( ( x 2 + k j ) · k j 1 · T 1 ) .
7.
M i checks if A 2 = H 3 ( s k | | T 3 | | I d j | | I d i | | T S 1 | | g 1 ) ; if they are not equal, aborts here, otherwise calculates A 3 = H 3 ( s k | | I d i | | g 1 | | T 3 | | I d j ) ; now M i has accepted the shared key s k .
8.
Sends Message 3 = { A 3 } to A G j .
When aggregator A G j gets the data { A 3 }, A G j will check if A 3 = H 3 ( s k | | I d i | | g 1 | | T 3 | | I d j ) ; if they are equal, A G j , accepts the key s k . Now the smart meter M i , and aggregator A G j , have authenticated each other and build a shared key. The whole process is depicted in Table 8.
Table 8. Request and authentication phase of the proposed scheme.

7. Security Analysis Using BAN Logic

A security analysis of the proposed scheme by using Burrows–Abadi–Needham logic (BAN logic) [] was conducted. With the help of BAN logic, we can determine whether the exchanged information is trustworthy, and secured against eavesdropping. Now we are going to give a brief overview of the BAN logic. First some symbols used in the BAN logic are described in the Table 9, and some primary BAN logic postulates are given in Table 10. We suppose there are only two entities, smart meter M i , and aggregator A G j , in the scheme.
Table 9. Symbols of BAN logic.
Table 10. Some primary BAN logic postulates.

7.1. The Goal of the Proposed Scheme

The goals of the proposed scheme in BAN logic are depicted in the following, and these goals could ensure M i and A G j agree on the shared key, s k , between them.
1.  M i   |   M i   s k   A G j
2.  A G j   |   M i   s k   A G j
3.  M i   |   A G j   |   M i   s k   A G j
4.  A G j   |   M i   |   M i   s k   A G j

7.2. Idealization of the Message

The messages of the proposed scheme, in idealized form in terms of the messages exchanged, is given in Table 11.
Table 11. The idealized form of the messages.

7.3. The Initial State Assumptions

In order to prove the proposed scheme, we first have to make the following initial state assumptions:
A1
M i   | # ( T S 1 )
A2
A G j   | # ( T S 1 )
A3
M i   | M i   g 1   A G j
A4
A G j   | M i   g 1   A G j
A5
M i   | A G j T 1
A6
A G j   |   M i T 3

7.4. The Proof of the Proposed Scheme

7.4.1. Analysis of Message 1

1. According to Message 1, we get:
A G j     { T 1 ,   { T 1 , I d i , R i n , T S 1 } g 1   ,   T S 1 }
2. According to the “Elimination of multipart messages” rule and (1), we get:
A G j     { T 1 , I d i , R i n , T S 1 } g 1  
3. According to the “   | ~ introduction rule”, (2), and A4, we get:
A G j   |   M i |   { T 1 , I d i , R i n , T S 1 }
4. According to the “Freshness rule”, (3), and A2, we get:
A G j   | #   ( T 1 , I d i , R i n , T S 1 )
5. According to the “Elimination of multipart messages rule”, and (4), we get:
A G j   |   #   ( T 1 )
6. According to the “ | elimination rule”, (4), and (3), we get:
A G j   |   M i |   ( T 1 , I d i , R i n , T S 1 )
7. According to the “Elimination of multipart messages rule”, and (6), we get:
A G j   |   M i |   T 1
8. According to the “Jurisdiction rule”, (7), and A6, we get:
A G j   | T 1
9. As “ x 2 ” is a random number generated by A G j , we get:
A G j   | #   ( x 2 )
10. According to “#()- promotion rule”, (5), and (9), we get:
A G j   |   # ( s k ) ,   s k = h ( ( x 2 + k j ) · k j 1 · T 1 )
11. According to the “   k   introduction rule”, (10) and (7), we get:
A G j   |   A G j     s k   M i

7.4.2. Analysis of Message 2

12. According to Message 2, we get:
M i     { T 3 ,   { s k , I d i , T 3 , I d j , T S 1 } g 1   }
13. According to the “Elimination of multipart messages rule”, and (12), we get:
M i     { s k , I d i , T 3 , I d j , T S 1 } g 1  
14. According to the “ | ~ introduction rule”, (13), and A3, we get:
M i   |   A G j |   { s k , I d i , T 3 , I d j , T S 1 }
15. According to “Freshness rule”, (14), and A1, we get:
M i   | #   ( s k , I d i , T 3 , I d j , T S 1 )
16. According to the “ Elimination   of   multipart   messages rule”, (15), we get:
M i   |   #   ( T 3 )
17. According to the “ | elimination rule”, (15), and (14), we get:
M i   |   A G j |   ( s k , I d i , T 3 , I d j , T S 1 )
18. According to the “Elimination of multipart messages rule”, and (17), we get:
M i   |   A G j |   T 3
19. According to the “Jurisdiction rule”, (18), and A5, we get:
M i   | T 3
20. As “ x 1 ” is a random number generated by M i , we get:
M i   | #   ( x 1 )
21. According to the “#()- promotion rule”, (16), and (20), we get:
M i   |   # ( s k ) ,   s k = h ( k i 1 · ( x 1 + k i ) · T 3 )
22. According to the “   k   introduction rule”, (21) and (18) we get:
M i   |   A G j     s k   M i
23. According to the “Elimination of multipart messages rule”, and (17), we get:
M i   |   A G j |   s k

7.4.3. Analysis of Message 3

24. According to Message 3 we get:
A G j     { { s k , I d i , T 3 , I d j } g 1 }
25. According to the “ | ~ introduction rule”, (24), and A4, we get:
A G j   |   M i |   { s k , I d i , T 3 , I d j }
26. According to “Freshness rule”, (10), and (25) we get:
A G j   | #   ( s k , I d i , T 3 , I d j , T S 1 )
27. According to the “ | elimination rule”, (25), and (26), we get:
A G j   |   M i |   ( s k , I d i , T 3 , I d j )
28. According to the “Elimination of multipart messages rule”, and (27), we get:
A G j   |   M i |   s k
Now we have accomplished all the goals of our proof; based on (11), (22), (23), and (28), we can say the proposed scheme is provably safe under BAN logic.

8. Security Analysis Using Random Oracle

In this section, a security proof of random oracle is provided, based on the model of [,]. In order to simplify, it is supposed that only two entities are in FAuth: a smart meter M , and an aggregator A G .
While each entity has many instances, using M i stands for the ith smart meter, and A G j for the jth aggregator. ζ can be used as M i or A G j . An instance is considered as an oracle, and a simulator is used to answer the input message. Under this model, ζ is considered as a participant or an oracle []. To crack the scheme, an adversary could use a simulator to ask for the following queries:
Send ( ζ ,   m ): this oracle ζ receives a message, m , from an entity, and answers this query with the corresponding message.
Execute ( M i ,   A G j ): this query simulates the passive attack, and the adversary, A, can learn the message transmitted between M i ,   A G j .
ReveralSerrsion ( ζ ): the adversary A can learn the session specific information, and the answer of this query doesn’t include the private key of M i or A G j .
ReveralSk ( ζ ): the adversary, A, can learn the session key of the oracle ζ .
Corrupt ( ζ ): the adversary, A, can learn the private key of the entity ζ .
Expire ( ζ ): this query erases the session key of a completed session held by the oracle ζ .
Test ( ζ ): returns a session key or a random key, only before any of the ReveralSerrsion ( ζ ), ReveralSk ( ζ ) and Corrupt ( ζ ) have been asked.
Lemma 1 (Difference Lemma).
Let R 1 , R 2   a n d   R 3 represent the events defined in some probability distribution. If R 1 ¬ R 3 R 2 ¬ R 3 , we have | P r [ R 1 ] P r [ R 2 ] | P r [ R 3 ] .
Theorem 1.
Let A be a t polynomial time adversary against the semantic security, and make no more than q s send queries, q e execute queries, and q h hash queries. The advantage of A in our scheme is given by A d v F A u t h ( A ) O ( ( q s + q e ) 2 ) ( q 1 ) + O ( q h 2 ) 2 l + O ( q s + q h ) 2 l 1 + O ( q h · ( A d v A C D H ( t ) ) ) , where t = O ( t + ( q h + q h ) · T m ) , and T m is the time for multiplication operation in group.
In order to prove Theorem 1, we introduce four games, G i , and the first game represents the real attack, S u c c i is the event that in Game G i the adversary correctly guesses the result of the Test ( ζ ).
Game G 0 : This game simulates the real scheme under random oracle, according to sematic security, and it is clear that:
A d v F A u t h ( A ) = | 2 Pr [ S u c c 0 ] 1 |
Game G 1 : This game simulates all the oracles, L H stores all the answers to hash queries, if the hash query is asked by adersary, then the answer is sotred in L A , and L P stores the transcripts of all the messages, all oracles are demonstrated in in Table 12 and Table 13, and an adversary is unable to distinguish between the two games:
Pr [ S u c c 0 ] = Pr [ S u c c 1 ]
Table 12. Simulation of send queries.
Table 13. Simulation of other queries.
Game G 2 : This game simulates all the oracles in Game G 1 , but two kinds of collisions are trying to be avoided here, and the results are obtained by the birthday paradox:
  • Random numbers of x 1 and x 2 should be different in different sessions, and the probability is bounded by: O ( ( q s + q e ) 2 ) 2 ( q 1 ) .
  • The probability of a hash result collision is bounded by O ( q h 2 ) 2 l + 1 , where l is the length of a result of a hash function.
These two kinds of collisions should be avoided, so the two games differ by:
| Pr [ S u c c 2 ] Pr [ S u c c 1 ] | O ( ( q s + q e ) 2 ) 2 ( q 1 ) + O ( q h 2 ) 2 l + 1
Game G 3 : This game simulates the situation where an adversary may guess the result of a hash function A 1 , A 2 and A 3 without asking the random oracle.
For a Send ( M i , A G j , M 1 ) query, A G j has to check if M 1 belongs to the transcripts, and check if A 1 L A ; if either of them fails, A G j terminates the session, the probability is bounded by O ( q s ) 2 l ; for the checking of if H 2 ( g 1 ) L A , and the probability is bounded by O ( q h ) 2 l , so for a Send ( M i , A G j , M 1 ) query, the probability is bounded by O ( q s + q h ) 2 l . For a Send ( A G j , M i , M 2 ) or Send ( M i , A G j , M 3 ) query, the probability is bounded by O ( q s + q h ) 2 l , too.
This game and the previous one are indistinguishable unless the smart meter and aggregator reject valid authentication information:
| Pr [ S u c c 3 ] Pr [ S u c c 2 ] | O ( q s + q h ) 2 l
Game G 4 : The CDH problem is brought in this game. In order to win the game, A should ask the query H 4 and broke the CDH problem; the adversary’s goal is to compute the session key by asking Execute ( A G j ,   M i ) query and the corresponding hash query, and the adversary can also get the transcripts. The proposed scheme fits the SK-security [] in the following four cases.
Case 1RevealSession ( M i ) and RevealSession ( A G j ):
Adversary can get the session state information { x 1 , g 1 = g ( x 1 + k i ) ,   T 1 = ( x 1 + k i ) · a · P } of M i , and { x 2 , T 3 = ( x 2 + k j ) · b · P } for the matching instance A G j . Where a =   H ( R j m | | I d j ) · ( k m + k c ) + k x and b = H ( R i n | | I d i ) ( k n + k u ) + k x .
Case 2RevealSession ( M i ) and Corrupt ( A G j ):
Adversary can get the session state information { x 1 , g 1 = g ( x 1 + k i ) ,   T 1 = ( x 1 + k i ) · a · P } of M i , the private key { k j } for the matching instance A G j without session information.
Case 3Corrupt ( M i ) and RevealSession ( A G j ):
Adversary can get the private key { k i } of M i , but could not get the session information of M i , and can get { x 2 , T 3 = ( x 2 + k j ) · b · P } for the matching instance A G j .
Case 4Corrupt ( M i ) and Corrupt ( A G j ):
Adversary can get the private key { k i } of M i , but could not get the session information, and can get the private key { k j } for the matching instance A G j without session information, too.
However, in all the above four cases, adversary A is unable to solve the CDH problem given the information it gets in the four cases. The shared key sk can be gotten with the probability 1 q h in the list of L A , t = O ( t + ( q h + q h ) · T m ) be the running time in all, then it is not hard to get:
| Pr [ S u c c 4 ] Pr [ S u c c 3 ] | O ( q h ( A d v A C D H ( t ) ) )
Until now, through the games and using the lemma 1, theorem 1 is proven.

9. Comparison

9.1. Computational Performance Analysis

In this section, we compared the computation cost of the proposed scheme with [,], and the second scheme in [], and we use the following symbols to stand for different time costs. In order for comparison, we use the experimental results from [], the same as in Odelu’s scheme, and the results are shown in Table 14. We also “omit the modular multiplication T m . as it requires very low execution time than that for execution time of a modular exponentiation operation” []. We also ignore the point addition and XOR operations, as the time consumption is marginal, at the same time, we “assume T h T s ”. The final results are shown in Table 15 and Table 16.
Table 14. Time comparison of various cryptographic operations.
Table 15. Computation cost of different types of calculations at the authentication phase.
Table 16. Computation cost at the authentication phase.
  • T e x p the execution time of a modular exponentiation operation in G 2
  • T m u l the execution time of a scalar multiplication operation in G 1
  • T b p the execution time of bilinear map pairing e :   G 1 × G 1 G 2
  • T s the execution time of a symmetric encryption/decryption
  • T H the execution time of map to point
  • T h the execution time of general one-way hash function

9.2. Communication Performance Analysis

In this section, we compared the proposed scheme’s computation cost with Tsai-Lo’s scheme [], Odelu’s scheme [], and Y. Wang et al. []. According to Odelu et al., “the random number/nonce is 128 bits, the identity and hash output of all hash functions H 1 , H 3 , H 4 and H 5 (except the hash function H 2 ) are 160 bits each, the elements in group G 1 and G 2 are 320 bits and 512 bits, respectively, and the timestamp is 32 bits” []. We get the following computation cost in Table 17, and for C 1 , its length is calculated as the length of ( I d i , R i n ) , which is 480 bits.
Table 17. Communication comparison.

9.3. Comparison of the Schemes

In this part, we compare the security features with the other schemes [,,]. As we discussed in Section 5, Odelu’s scheme [] suffers from K G C impersonate attacks and K G C track attacks; in Tsai-Lo’s scheme [], the private key of the smart meter and service provider is also known by K G C , so their scheme suffers from these two attacks, too. Besides, as K G C knows the private key, K G C could find out the shared key, so K G C could launch an eavesdrop attack. The second scheme of [] does not have a K G C , but instead, a card maker, and the card maker knows the private key of the card owner. Besides, according to [], the second scheme of [] “does not support anonymity as it uses (smart meter) identity through its authentication process” and suffers from “unknown key share attack”.
According to [], Tsai-Lo scheme in [] “fails to protect the smart secret credentials when the ephemeral secret is revealed to A (adversary).” We name this attack “session exposure attacks when ephemeral secrets leaked”. We get Table 18 based on the security analysis in Section 5, Table 15 and Table 16.
Table 18. System comparison.

10. I3RES Project

Our work is part of the I3RES project (ICT-based intelligent management of integrated RES for the optimal operation of smart grid), which manages the grid capabilities, supports the deployment of services, and eases the development of user applications. The computational view of the I3RES is defined by the development of an open platform based on standardized and commercial off-the-shelf technologies, supporting the deployment of new services and decision-making mechanisms (1) to support tasks associated to monitoring in the context of the medium and low voltage network; (2) to manage the distribution of RES production in the distribution network associated to the stakeholders; and (3) to manage and control generation–consumption balance from the consumer point of view (DSM).
Our research group proposed a common middleware architecture for smart grids [], which contributed to the standardization of designing and implementation of semantic middle architecture. It has been proven that sematic middleware architecture is a key element to create business models where new actors can join a new scenario, and where energy access and trade are democratized and more distributed than before. The general structure is depicted in Figure 3. The security component is a key part of the middleware, since it provides the required security mechanisms for the different application domains. The proposal presented in this paper was embedded within this security component, offering the security mechanisms needed for a smart grid application in an efficient way. Thus, it was feasible to deploy the security component in the different devices in smart grid.
Figure 3. Components of the common middleware architecture [].

11. Conclusions

In this paper, we introduced an anonymous authentication scheme based on bilinear pairing and the computational Diffie–Hellman problem. First, we improved the registration phase, so that a smart meter’s private key will not be leaked to the Key Generation Center. Thus, the proposed scheme is immune to various potential attacks launched by the Key Generation Center. Besides, we greatly improved the efficiency of the scheme, the computation cost at both the smart meter side and aggregator side is much lower compared to the existing schemes. We also use the BAN logic and random oracle model to prove that the proposed scheme is secure. As data privacy of the smart meter is becoming an urgency, in future, we want to focus on data aggregation methods in smart grids to protect the privacy of the smart meter consumption. Finally, the proposal was fitted into the security component of a common middleware architecture, in order to provide the required security mechanisms for a smart grid application.

Acknowledgments

The work presented in this paper is part of the work made in the I3RES (ICT-based Intelligent management of Integrated RES for the Smart Grid optimal operation) research project, an FP7 initiative (reference number 318184) that targets the seamless integration of Renewable Energy Sources and development of management tools for the Smart Grid. This work has also been supported by the Chinese Scholarship Council (CSC) with File No.: 201507040027.

Author Contributions

Yuwen Chen and José-Fernán Martínez conceived and designed the protocol; Yuwen Chen conducted the security analysis of the protocol, Yuwen Chen, Pedro Castillejo, and Lourdes López analyzed the computation and communication cost of the protocol; Yuwen Chen wrote the paper, Pedro Castillejo and Lourdes López did the proof reading of the paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Concerning Common Rules for the Internal Market in Electricity and Repealing Directive 2003/54/EC. Available online: https://www.mi.government.bg/en/library/directive-2009-72-ec-of-the-european-parliament-and-of-the-council-of-13-july-2009-concerning-common-445-c80-m262-4.html (accessed on 5 September 2017).
  2. Sanjab, A.; Saad, W.; Guvenc, I.; Sarwat, A.; Biswas, S. Smart Grid Security: Threats, Challenges, and Solutions. arXiv 2016, arXiv:1606.06992. [Google Scholar]
  3. Report on Workshop on Security and Privacy in the Hyper Connected World. Available online: https://docbox.etsi.org/SmartM2M/Open/AIOTI/!!20160616AIOTIWorkshopOnSecurity/AIOTI-Workshop-on-Security-and-Privacy-in-the-Hyper-connected-World-Report-20160616_vFinal.pdf (accessed on 5 September 2017).
  4. Tsai, J.L.; Lo, N.W. Secure Anonymous Key Distribution Scheme for Smart Grid. IEEE Trans. Smart Grid 2016, 7, 906–914. [Google Scholar] [CrossRef]
  5. Odelu, V.; Das, A.K.; Wazid, M.; Conti, M. Provably Secure Authenticated Key Agreement Scheme for Smart Grid. IEEE Trans. Smart Grid 2016, PP, 1. [Google Scholar] [CrossRef]
  6. Xia, J.; Wang, Y. Secure Key Distribution for the Smart Grid. IEEE Trans. Smart Grid 2012, 3, 1437–1443. [Google Scholar] [CrossRef]
  7. Jo, H.J.; Kim, I.S.; Lee, D.H. Efficient and Privacy-Preserving Metering Protocols for Smart Grid Systems. IEEE Trans. Smart Grid 2016, 7, 1732–1742. [Google Scholar] [CrossRef]
  8. Zhang, A.; Wang, L.; Ye, X.; Lin, X. Light-Weight and Robust Security-Aware D2D-Assist Data Transmission Protocol for Mobile-Health Systems. IEEE Trans. Inf. Forensics Secur. 2017, 12, 662–675. [Google Scholar] [CrossRef]
  9. Liu, J.; Zhang, Z.; Chen, X.; Kwak, K.S. Certificateless Remote Anonymous Authentication Schemes for WirelessBody Area Networks. IEEE Trans. Parallel Distrib. Syst. 2014, 25, 332–342. [Google Scholar] [CrossRef]
  10. He, D.; Zeadally, S.; Kumar, N.; Lee, J.H. Anonymous Authentication for Wireless Body Area Networks with Provable Security. IEEE Syst. J. 2016, PP, 1–12. [Google Scholar] [CrossRef]
  11. Li, X.; Ma, J.; Wang, W.; Xiong, Y.; Zhang, J. A novel smart card and dynamic ID based remote user authentication scheme for multi-server environments. Math. Comput. Model. 2013, 58, 85–95. [Google Scholar] [CrossRef]
  12. Tsai, J.L.; Lo, N.W. A Privacy-Aware Authentication Scheme for Distributed Mobile Cloud Computing Services. IEEE Syst. J. 2015, 9, 805–815. [Google Scholar] [CrossRef]
  13. Lightweight Data Aggregation Scheme against Internal Attackers in Smart Grid Using Elliptic Curve Cryptography. Available online: https://www.hindawi.com/journals/wcmc/2017/3194845/ (accessed on 30 June 2017).
  14. Xiong, H. Cost-Effective Scalable and Anonymous Certificateless Remote Authentication Protocol. IEEE Trans. Inf. Forensics Secur. 2014, 9, 2327–2339. [Google Scholar] [CrossRef]
  15. Li, F.; Hong, J. Efficient Certificateless Access Control for Wireless Body Area Networks. IEEE Sens. J. 2016, 16, 5389–5396. [Google Scholar] [CrossRef]
  16. Liu, J.; Zhang, L.; Sun, R. 1-RAAP: An Efficient 1-Round Anonymous Authentication Protocol for Wireless Body Area Networks. Sensors 2016, 16, 728. [Google Scholar] [CrossRef] [PubMed]
  17. Islam, S.H.; Khan, M.K. Provably secure and pairing-free identity-based handover authentication protocol for wireless mobile networks. Int. J. Commun. Syst. 2016, 29, 2442–2456. [Google Scholar] [CrossRef]
  18. He, D.; Zeadally, S.; Xu, B.; Huang, X. An Efficient Identity-Based Conditional Privacy-Preserving Authentication Scheme for Vehicular Ad Hoc Networks. IEEE Trans. Inf. Forensics Secur. 2015, 10, 2681–2691. [Google Scholar] [CrossRef]
  19. He, D.; Zeadally, S.; Wu, L. Certificateless Public Auditing Scheme for Cloud-Assisted Wireless Body Area Networks. IEEE Syst. J. 2015, PP, 1–10. [Google Scholar] [CrossRef]
  20. Porambage, P.; Schmitt, C.; Kumar, P.; Gurtov, A.; Ylianttila, M. PAuthKey: A Pervasive Authentication Protocol and Key Establishment Scheme for Wireless Sensor Networks in Distributed IoT Applications. Int. J. Distrib. Sens. Netw. 2014, 10, e357430. [Google Scholar] [CrossRef]
  21. Zhang, L.; Tang, S.; Cai, Z. Efficient and flexible password authenticated key agreement for Voice over Internet Protocol Session Initiation Protocol using smart card. Int. J. Commun. Syst. 2014, 27, 2691–2702. [Google Scholar] [CrossRef]
  22. Tu, H.; Kumar, N.; Chilamkurti, N.; Rho, S. An improved authentication protocol for session initiation protocol using smart card. Peer-to-Peer Netw. Appl. 2015, 8, 903–910. [Google Scholar] [CrossRef]
  23. Odelu, V.; Das, A.K.; Goswami, A. An efficient biometric-based privacy-preserving three-party authentication with key agreement protocol using smart cards. Secur. Commun. Netw. 2015, 8, 4136–4156. [Google Scholar] [CrossRef]
  24. Odelu, V.; Das, A.K.; Goswami, A. SEAP: Secure and efficient authentication protocol for NFC applications using pseudonyms. IEEE Trans. Consum. Electron. 2016, 62, 30–38. [Google Scholar] [CrossRef]
  25. Wang, D.; Wang, N.; Wang, P.; Qing, S. Preserving privacy for free: Efficient and provably secure two-factor authentication scheme with user anonymity. Inf. Sci. 2015, 321, 162–178. [Google Scholar] [CrossRef]
  26. Wang, D.; He, D.; Wang, P.; Chu, C.H. Anonymous Two-Factor Authentication in Distributed Systems: Certain Goals Are Beyond Attainment. IEEE Trans. Dependable Secur. Comput. 2015, 12, 428–442. [Google Scholar] [CrossRef]
  27. Jiang, Q.; Wei, F.; Fu, S.; Ma, J.; Li, G.; Alelaiwi, A. Robust extended chaotic maps-based three-factor authentication scheme preserving biometric template privacy. Nonlinear Dyn. 2016, 83, 2085–2101. [Google Scholar] [CrossRef]
  28. Kumari, S.; Chaudhry, S.A.; Wu, F.; Li, X.; Farash, M.S.; Khan, M.K. An improved smart card based authentication scheme for session initiation protocol. Peer-to-Peer Netw. Appl. 2017, 10, 92–105. [Google Scholar] [CrossRef]
  29. Jiang, Q.; Khan, M.K.; Lu, X.; Ma, J.; He, D. A privacy preserving three-factor authentication protocol for e-Health clouds. J Sup. Comput. 2016, 72, 3826–3849. [Google Scholar]
  30. Wu, F.; Xu, L.; Kumari, S.; Li, X. A novel and provably secure biometrics-based three-factor remote authentication scheme for mobile client–server networks. Comput. Electr. Eng. 2015, 45, 274–285. [Google Scholar] [CrossRef]
  31. Farash, M.S. Security analysis and enhancements of an improved authentication for session initiation protocol with provable security. Peer-to-Peer Netw. Appl. 2016, 9, 82–91. [Google Scholar] [CrossRef]
  32. Farash, M.S.; Attari, M.A. An Enhanced Authenticated Key Agreement for Session Initiation Protocol. Inf. Technol. Control 2013, 42, 333–342. [Google Scholar] [CrossRef]
  33. Huang, B.; Khan, M.K.; Wu, L.; Muhaya, F.T.B.; He, D. An Efficient Remote User Authentication with Key Agreement Scheme Using Elliptic Curve Cryptography. Wirel. Pers. Commun. 2015, 85, 225–240. [Google Scholar] [CrossRef]
  34. Chaudhry, S.A.; Naqvi, H.; Mahmood, K.; Ahmad, H.F.; Khan, M.K. An Improved Remote User Authentication Scheme Using Elliptic Curve Cryptography. Wirel. Pers. Commun. 2016, 1–19. [Google Scholar] [CrossRef]
  35. Li, X.; Niu, J.; Kumari, S.; Liao, J.; Liang, W. An Enhancement of a Smart Card Authentication Scheme for Multi-server Architecture. Wirel. Pers. Commun. 2015, 80, 175–192. [Google Scholar] [CrossRef]
  36. Wang, Y. Password Protected Smart Card and Memory Stick Authentication against Off-line Dictionary Attacks. arXiv 2012, arXiv:1207.5497. [Google Scholar]
  37. Advanced Encryption Standard (AES). Available online: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197.pdf (accessed on 5 September 2017).
  38. Burrows, M.; Abadi, M.; Needham, R.M. A Logic of Authentication. Proc. R. Soc. Lond. A Math. Phys. Eng. Sci. 1989, 426, 233–271. [Google Scholar] [CrossRef]
  39. Shoup, V. Sequences of Games: A Tool for Taming Complexity in Security Proofs. 2005. Available online: http://www.shoup.net/papers/games.pdf (accessed on 5 September 2017).
  40. Lee, T.F. Provably Secure Anonymous Single-Sign-On Authentication Mechanisms Using Extended Chebyshev Chaotic Maps for Distributed Computer Networks. IEEE Syst. J. 2015. [Google Scholar] [CrossRef]
  41. Tseng, Y.M.; Huang, S.S.; Tsai, T.T.; Ke, J.H. List-Free ID-Based Mutual Authentication and Key Agreement Protocol for Multiserver Architectures. IEEE Trans. Emerg. Top. Comput. 2016, 4, 102–112. [Google Scholar] [CrossRef]
  42. Rodríguez-Molina, J.; Martínez, J.-F.; Castillejo, P.; de Diego, R. SMArc: A Proposal for a Smart, Semantic Middleware Architecture Focused on Smart City Energy Management. Int. J. Distrib. Sens. Netw. 2013, 9. [Google Scholar] [CrossRef]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.