Next Article in Journal
Optimal Design of Hierarchical Cloud-Fog&Edge Computing Networks with Caching
Next Article in Special Issue
Spectral Analysis of Electricity Demand Using Hilbert–Huang Transform
Previous Article in Journal
Estimating Urban Road GPS Environment Friendliness with Bus Trajectories: A City-Scale Approach
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Multi-User, Single-Authentication Protocol for Smart Grid Architectures

by
Ahmed S. Alfakeeh
1,
Sarmadullah Khan
2,* and
Ali Hilal Al-Bayatti
2
1
Faculty of Computing and Information Technology, King Abdulaziz University, Jeddah 21589, Saudi Arabia
2
School of Computer Science and Informatics, De Montfort University, Leicester LE1 9BH, UK
*
Author to whom correspondence should be addressed.
Sensors 2020, 20(6), 1581; https://doi.org/10.3390/s20061581
Submission received: 22 January 2020 / Revised: 5 March 2020 / Accepted: 9 March 2020 / Published: 12 March 2020
(This article belongs to the Special Issue Sensors and Data Analytic Applications for Smart Grid)

Abstract

:
In a smart grid system, the utility server collects data from various smart grid devices. These data play an important role in the energy distribution and balancing between the energy providers and energy consumers. However, these data are prone to tampering attacks by an attacker, while traversing from the smart grid devices to the utility servers, which may result in energy disruption or imbalance. Thus, an authentication is mandatory to efficiently authenticate the devices and the utility servers and avoid tampering attacks. To this end, a group authentication algorithm is proposed for preserving demand–response security in a smart grid. The proposed mechanism also provides a fine-grained access control feature where the utility server can only access a limited number of smart grid devices. The initial authentication between the utility server and smart grid device in a group involves a single public key operation, while the subsequent authentications with the same device or other devices in the same group do not need a public key operation. This reduces the overall computation and communication overheads and takes less time to successfully establish a secret session key, which is used to exchange sensitive information over an unsecured wireless channel. The resilience of the proposed algorithm is tested against various attacks using formal and informal security analysis.

1. Introduction

Electricity is one of the major stakeholders in the development of the global economy. However, traditional electricity systems fail to reliably react to the current electricity demands due to their one-way communication, centralised generation and electromechanical structure [1]. A new centralised gird technology, the smart grid, has been introduced to overcome the traditional electrical system issues. A smart grid is based on the modern and advanced communication infrastructure that supports a bidirectional communication and energy exchange among the end users (i.e., consumer and providers). For example, a smart meter collects information about electricity usage of the consumer and sends this information to the utility servers. In return, smart meters receive some commands from the utility servers to execute proper actions. In a smart grid, the flow of information is divided into different levels. The first level of information exchange is between the smart devices and smart meters using small-range communication technologies, such as Bluetooth, Zigbee and 6LoWPAN. The second level of information flow is between the smart meter and utility provider and data centres using medium- and long-range communication technologies, such as public telephony networks, the internet and mobile networks [2]. This bidirectional communication plays an important role in balancing the demand and response by controlling power generation based on its utilisation.
It is revealed by the U.S. energy department that, since 1988, there is currently an overall increase of 30% in electricity demand while the peak demand will grow to 20% in the near future. However, there is only a 15% increase in the production and operational efficiency. According to the National Institute of Standards and Technology framework for smart grids, the main tasks are to efficiently handle and process data to ensure better service availability to the end users [3]. Various smart devices are being developed for the demand–response management in smart grids, in which important information is exchanged among the devices and the utility servers for control and operation. This information is prone to numerous cyber attacks, such as replay, impersonation and man-in-the-middle attacks, which can compromise the users’ privacy and modify information [4]. Therefore, communication security is the most critical issue in smart grids, and special attention is needed to protect the channels from these well-known attacks.
A symmetric key-based cryptographic algorithms, like the advance encryption standard, can be used to secure the communication between smart grid and service providers. In these approaches, a unique secret key is shared between each pair of communicating parties. Each secret key is valid only for secure communication between each pair of devices, and it cannot be used for secure communication with other devices of the network. In the last decade, several key management protocols have been proposed to manage those symmetric keys in the context of smart grids. Fouda et al. [5] presented a Diffie–Hellman (DH)-based key establishment protocol, while Zhou [6] presented an elliptic curve based key establishment protocol leveraged on public key infrastructure (PKI) for smart grids in 2011. However, Xia and Wang [7] showed that Zhou’s scheme is vulnerable to the man-in-the-middle attack and needs high maintenance. Furthermore, they proposed a trusted party-based lightweight directory access protocol to reduce the overhead introduced by the PKI. In 2013, Park et al. [8] showed that Xia’s protocol suffers from the unknown key share and impersonation attacks. In 2015, Tsai et al. [9] presented a key distribution protocol that strongly preserves anonymity in the smart grid scenario, but Odelu et al. [10] recently showed that Tsai’s protocol suffers from the ephemeral secret key leakage attack. Finally, He et al. [11] and Mohammadali et al. [12] presented a cost efficient key establishment protocols that have better communication and computational overheads compared with the previous approaches.
A detailed and careful analysis of the existing approaches reveal that three approaches [9,10,11] provide anonymity in smart grid architecture. However, these approaches suffer from the key escrow problem. The main reason for the key escrow problem is the trusted anchor, which is responsible for generating the private key for the smart grid devices and service servers. The key establishment approach, presented in [11], also suffers from private key leakage as is vulnerable to the known session-specific information attacks. These issues motivated us to develop an authentication and key establishment mechanism that can cope with the existing challenges.

1.1. Main Contributions

The key contributions of the proposed approach are as follows:
  • Developing a lightweight and fast group-based authentication mechanism that executes a full authentication process during the first handshake, while the subsequent handshakes are performed using the authentication token;
  • Reducing the energy consumption by reducing the communication overhead; and
  • Security validation of the proposed algorithm using a formal and informal security analysis. An Automated Validation of Internet Security Protocol and Applications (AVISPA) tool is used to test the resilience of the proposed algorithm.

1.2. Paper Organization

The rest of the paper is organised as follows: A literature survey is provided in Section 2. The preliminaries, including the threat model, solution overview, and system model are discussed in Section 3. Section 4 discusses the proposed group-based authentication and session key establishment mechanism while its formal and informal security validation is discussed in Section 5. The performance evaluation of the proposed approach is presented in Section 6. Finally, Section 7 concludes the paper.

2. Literature

Recently, many authentication mechanisms have been proposed for smart grid architectures. Tsai et al. [9] have presented an identity-based key distribution, encryption and signature mechanism for smart grid communication between the smart meter and service provider. Both end devices establish a mutual secret key for the authentication and secure communication. However, Odelu et al. [10] found and proved that this approach is vulnerable to the ephemeral key leakage attacks and the privacy of the smart meters can be compromised. To overcome the aforementioned challenges, Odelu proposed a new authentication mechanism for a smart grid environment.
Doh et al. [13] and Saxena et al. [14] proposed an authentication mechanism among the end users in smart grid architecture that verify their authenticity to prevent any insider and outsider attacks. He et al. [11] presented an elliptic curve cryptography (ECC)-based key distribution mechanism for the smart grid that has less computation cost and lower communication overhead as compared to the Tsai’s scheme [9].
Yan [15] conducted a detailed survey on cyber security in the smart grid. In this survey, IEC 62,351 was presented, which addressed many security features for real-time communication in smart grids. More specifically, it was designed to provide data integrity and authentication using digital signatures and hash functions. An access control mechanism is used to stop unauthorised access to network devices and data while the malicious activities are monitored by the intrusion detection system. Standard hashing algorithms, such as Secure Hash Algorithms (SHA) and Message Digest-5 (MD5), are used to generate a hash from the data and then digitally sign it. The digital signature and its verification are done by the private key and the public key of the sender, respectively. In the verification process, the receiver decrypts the received hash by the sender’s public key and generates a new hash from the received data with the same hashing algorithm used at the sender side. It then compares the decrypted hash with the newly generated hash. The receiver accepts the data if both hashes are equal; otherwise, it discards the data. This verification process is expensive in terms of time and energy consumption, and it is not highly suitable for time-critical applications/processes in the industries.
Tsang [16] presented a fast and secure mechanism for Supervisory Control and Data Acquisition (SCADA) systems. His approach has utilised the concept of a bump in a wire along with the Hash-based Message Authentication Code (HMAC) and Advance Encryption Standard (AES) in the SCADA network. AES is a symmetric key based security algorithm in which each device shares a unique common secret key with every device of the network for secure communication. This approach is suitable for ad hoc and controlled networks as compromising one device can put the whole network security at risk. In a smart grid scenario where each controlling device can be controlled locally and remotely, this approach is highly vulnerable to man-in-the-middle attacks, key compromission attacks, and forgery attacks.
Perrig [17] and Ciarns [18] presented Rivest Shamir Adleman (RSA) based security mechanism for smart grid applications. They utilised the concepts of Message Authentication Code (MAC) and one-time signature (OTS) for data integrity and authentication purposes. Timed Efficient Stream Loss-Tolerant Authentication (TESLA) is a time-slot-based MAC approach where time is divided into slots of fixed duration. For each slot, the sender uses a different key to sign a message. The sender makes the key available to the public as the slot duration expires. Nobody will be able to sign a message with that key for that specific slot as the slot duration has already expired, and the key will be invalid for signing. However, the key will be used to verify the signatures of all the messages signed during that time slot. After the sender makes the key public, it uses another key to sign messages in the next time slot. This approach is not suitable for time-critical applications of the smart grid as it suffers from significant latency in verifying the messages. This is because the first receiver needs to buffer all the received messages before it receives the key. In addition, it is a memory-expensive approach and it is not suitable for resource-constrained devices, especially if the duration of the time slot is large or many messages are generated in each time slot. One time signature approach can solve the issue of replay attacks, but it also suffers from the large computational and communication overhead as HMAC.

3. Preliminaries

Here, a brief overview of the adopted threat model and the proposed algorithm is described. Table 1 shows the notations used in this paper.

3.1. Threat Model

A well-known threat model, the Dolev Yao (DY) model [19], is considered in this paper to evaluate the performance of the proposed algorithm. In this model, end devices communicate with each other over a public and insecure communication channel, and an adversary A has the capabilities to intercept all the messages over this insecure public channel. We are considering the following key features of an adversary:
  • Concurrent execution—the adversary has the capabilities to start multiple sessions with several devices in parallel so that he/she can act as a man in the middle;
  • Access to public information—the adversary has full access to all the available public parameters of each device in the network;
  • Message tampering—the adversary has the capabilities to capture all the messages, tamper them without knowing the actual content and replay them.
The purpose of this threat model is to evaluate the performance of the proposed algorithm and show that an adversary cannot successfully recover information from the captured messages, even if he/she actively participates during the communication. This helps to ensure the security of communication from the man in the middle attacks, replay attacks and forgery attacks.

3.2. Algorithm Overview

The proposed algorithm for the authentication and session establishment is divided into five different phases, which are as follows: (1) setup, (2) registration, (3) creation of access policy, (4) authentication mechanism, and (5) session key establishment. During the setup phase, the T T P selects and assigns an elliptic curve to the end devices along with a one-time-secret-token (OTST) and its signed hash. The T T P also defines an access policy for each utility server that (1) limits their access to the smart grid devices and (2) speeds up the authentication process of smart grid devices. During the authentication phase, both the smart grid device and the utility server mutually authenticate each other, followed by session key establishment. A symmetric session key is established to secure messages over insecure public channels. The T T P and utility server use their pre-shared secret key for secure communication with each other. In the proposed algorithm, all mathematical operations are based on the elliptic curve’s mathematics.

3.3. System Model

The proposed system model for smart grid consists of utility server ( U S ) and smart grid devices ( S G D s ; i.e., smart meter and other smart devices). As shown in Figure 1, smart grid devices are used for controlling and monitoring various factors and plays an important role in the demand–response management by communicating with the utility server. These devices are grouped together to form a group, S G i . The devices within a group (i.e., S G D 1 , S G D 2 , S G D 3 , …) can further be grouped together into various small groups (i.e., known as Z i ) of different sizes such that Z 1 Z 2 = . These devices are connected to the internet through a border gateway router (6LBR). The T T P registers devices and utility servers by validating their OTST and signs certificate for their public keys using its own private key. It also defines an access policy for the utility servers. Each utility server accesses these devices based on pre-defined access policy. For example, it can easily be imagined by considering a large building automation process where different areas are leased to different companies. Each company is given some access rights to control various appliances (i.e., lights, heating, ventilation, etc) in its leased own area and not in other parts of the building. Depending on the employee’s role, the company can also restrict employee’s access to a specific unit(s), for example, devices belonging to Z i .
In this paper, a multicast communication architecture is considered where the utility server ( U S ) establishes a communication link with multiple smart grid devices ( S G D i ). For each communication session, U S and S G D i authenticate each other.

3.4. Elliptic Curve Description and Notations

An elliptic curve (EC) E p ( a , b ) : y 2 = x 3 + a x + b (mod p) is defined over a finite field p, where p is a large prime number. The domain parameters of the elliptic curve are represented by ( p , a , b , G , n ), where n is a large prime number and G is a base point generator. Each end device ( U S or S G D ) generates its public key (K) and private key ( P K ) using the EC Diffie–Hellman (ECDH) approach, where K = P K × G . These devices receive a certificate ( C e r t ) for their public keys from the T T P . The  C e r t issuance is discussed in the following section.

4. Proposed Algorithm

In this section, various steps of the proposed algorithm are described in detail.

4.1. Setup

During the setup phase, the network devices are configured as follows:
Step-1: 
Each device of the network is equipped with a non-singular EC E P ( a , b ) : y 2 = x 3 + a x + b (mod p) over a finite field Z P , where a and b are constants and satisfy the condition 4 a 3 + 27 b 2 0 and Z P = { 0 , 1 , 2 , , P - 1 } ;
Step-2: 
A device is given a non collision hash function H ( . ) ;
Step-3: 
A device selects G (group generator). The order of G is set to n and satisfies the condition n . G = , where represents the point at infinity or zero; and
Step-4: 
The T T P selects a private key P K T T P Z P on elliptic curve and calculates its private key K T T P = P K T T P · G ; and
Step-5: 
The T T P makes K T T P , H ( . ) and E P ( a , b ) public.

4.2. Registration

During the registration phase, S G D and U S register themselves with the T T P and get all the necessary secret information from the T T P which are utilised during the authentication and key establishment phases.

4.2.1. Smart Grid Device Registration

  • The T T P randomly selects a unique identity ( I D S G D ) for the smart grid device and calculates s g I D = H ( P K T T P | | I D S G D ) ;
  • The T T P calculates a timestamps T S S G D = H ( P K T T P | | T r e g ) , where T r e g represents the registration time of the S G D with the T T P . This T S S G D is used to generate a new timestamps for the S G D communication with the U S and T T P after the registration phase;
  • The T T P generates a O T S T = H ( P K T T P | | T r e g | | I D S G D ) ; and
  • The T T P gives s g I D , T S S G D , O T S T offline to the S G D .
  • The T T P pre-load the u s I D j onto the S G D memory, where j = { 1 , 2 , 3 , } .

4.2.2. Utility Server Registration

  • The T T P randomly selects a unique identity ( I D U S ) for the utility server and calculates u s I D = H ( P K T T P | | I D U S ) ;
  • The T T P calculates a timestamps T S U S = H ( P K T T P | | T r e g ) , where T r e g represents the registration time of the U S with the T T P . This T S U S is used to generate a new timestamps for the U S communication with the S G D and T T P after the registration phase;
  • The T T P generates a O T S T = H ( P K T T P | | T r e g | | I D U S ) ;
  • The T T P gives u s I D , T S U S , O T S T offline to the U S ; and
  • The T T P pre-load the s g I D i onto the U S memory where i = { 1 , 2 , 3 , } .

4.2.3. C e r t Generation

The S G D uses its certificate to incorporate the certificate mechanism for the verification of its public key, while the public key is embedded in the access policy ID ( a p I D ). After the deployment of S G D , it requests a certificate from the T T P . To this aim, the following steps are executed by the S G D and U S :
  • The S G D selects a random number r S G D [ 1 , n - 1 ] and current timestamps T;
  • The S G D calculates R S G D = r G D × G and a verification hash V H S G D = H ( T S S G D | | T | | O T S T ) H ( s g I D | | R S G D | | T ) ;
  • The S G D sends R S G D , V H S G D , T , H ( O T S T ) to the T T P ;
  • The T T P verifies the received H ( O T S T ) by comparing it with H ( H ( P K T T P | | T r e g | | I D S G D ) ) ;
  • The successful verification of O T S T and V H S G D allows the T T P to generate a certificate C e r t S G D = H ( R S G D + r T T P × G ) = H ( R S G D + R T T P ) and a signature s = H ( P K T T P + r T T P ) ; and
  • Finally, the T T P sends C e r t S G D , s , V H T T P , T , where V H T T P = H ( C e r t S G D | | T | | O T S T ) H ( s | | T S S G D | | T ) .
The U S also requests T T P in a similar way for its certificate as described above for the S G D .

4.2.4. Public/Private Key Generation

After receiving the C e r t S G D , the S G D generates a private and public keys pair as follows:
P K S G D = s + r S G D × H ( C e r t S G D | | s g I D )
K S G D = P K S G D × G
Similarly, the U S generates its private and public key pair as
P K U S = s + r U S × H ( C e r t U S | | u s I D )
K U S = P K U S × G
The utility server ( U S ) can compute the public key of S G D using the C e r t S G D and the public key ( K T T P ) of the T T P as
K S G D = K T T P + C e r t S G D × H ( C e r t S G D | | s g I D )
The utility server ( U S ) receives C e r t U S for its public key K U S from the T T P and embeds it along with its K U S in a p I D . The U S uses the a p I D for the authentication of its public key ( K U S ) to the S G D . The pubic keys are used for the ECDH key exchange. Both the S G D and the U S compute authentication key A K after exchanging their C e r t and K with each other as follows:
A K = P K S G D / U S × K U S / S G D

4.3. Access Policy

To access smart grid devices ( S G D s ), after generating its public/private key pair, each U S requests the T T P to issue an access policy ( A P ) along with its ID ( a p I D ) and an authentication code ( A C ). Figure 2 shows the pictorial representation of the said request–response messages exchanged between the U S and T T P .
This request contains utility server ID ( U S ), list of the S G D s and utility server’s public key ( K U S ). For example, U S wants access to S G D 1 , S G D 2 , S G D 3 and S G D 4 . The T T P follows the following steps to generate A P and A C :
  • All intended S G D s are grouped together to form a group (i.e., S G as shown in Figure 1) such that i = 2 l , where i is total number of S G D s in a smart grid and l 1 ;
  • The access policy is defined as a tree structure, where the leaf nodes are the hashes of S G D s and the root hash is the authentication code ( A C ), as shown in Figure 3;
  • The hashes of S G D 1 , S G D 2 , S G D 3 , S G D 4 are represented by h ( l o g 2 i ) 0 , h ( l o g 2 i ) 1 , , h ( l o g 2 i ) ( i - 1 ) ; and
  • The authentication code is A C = h 00 = H ( h 10 | | h 11 ) , where h j k = H ( h ( j + 1 ) ( 2 k ) | | h ( j + 1 ) ( 2 k + 1 ) ) for j = 0 , 1 , , ( l o g 2 i ) - 1 and k = 0 , 1 , 2 , , i - 1 .
It is clear from Figure 3 that h 10 and h 11 are the child hashes of the root hash ( h 00 , considered as A C ) and the leaf hashes are the child hashes of h 10 and h 11 . Therefore, A C can be easily calculated using the leaf hashes and subsidiary hashes. For example, A C can be calculated from h 21 and h 11 if h 20 is given. This is because, h 10 = h 20 | | h 21 and A C = h 00 = h 10 | | h 11 This approach generates the A C more quickly and consumes fewer computational resources.
Once the A P is defined and constructed by the T T P , a p I D = H ( S K S G D | | K U S | | A C ) is issued by the T T P to the utility server, where S K S G D is the symmetric key that T T P pre-shares with the S G D . This response includes a p I D , the set of S G D s (e.g., S G 1 ), and the public key of the T T P ( a p I D , S G 1 , K T T P ). Algorithm 1 shows the summary of all steps involved in obtaining the a p I D and A C values.
Algorithm 1 Generation and issuance of access policy, a p I D and authentication code by the KMS to the utility server
1:
T T P u t i l i t y s e r v e r : U S , S G D , K U S
2:
Construction of A P
3:
A C H 00 = H ( h 10 | | h 11 )
4:
T T P U S : U S , S G D , K U S
5:
a p I D H ( S K S G D | | K U S | | A C )
6:
u t i l i t y s e r v e r T T P : a p I D , S G 1 , K T T P

4.4. Authentication and Session Key Establishment

The proposed authentication approach consists of the two following phases: (1) initial handshake and (2) subsequent handshake. The initial handshake mechanism uses the certificate and public/private key pair to authenticate end devices and to generate A K . This A K serves as the pre-shared secret key ( P S K ) and helps in calculating the T K , which is generated at the end of the initial handshake. The subsequent handshakes use the A K for authentication and verification purposes. The utility server uses A K for the authentication of other S G D s within the same group (e.g., S G 1 ). Thus, U S does not need a public key after the initial handshake.
During the authentication phase, the following steps are employed:
  • The U S selects a random number w Z P and generates a current time stamp T 1 ;
  • The U S calculates a nonce N U S = w · G , X B = H ( T S U S | | T 1 ) and T S 1 = H ( T S U S | | T 1 ) H ( s g I D | | N U S | | T 1 ) . The s g I D is pre-shared with the utility server by the T T P during the registration phase;
  • The U S sends N U S , T S 1 , X B , T 1 to the S G D ;
  • The S G D validates the timestamp T 1 after receiving N U S , T S 1 , T 1 by checking | T 1 - T 1 * | T , where T is the maximum propagation time of a message over a channel. It also checks the validity of T S 1 ;
  • If T 1 and T S 1 are valid, the S G D selects a random number v Z P and generates a current time stamp T 2 ;
  • The S G D calculates a nonce N S G D = v · G and T S 2 = H ( T S S G D | | T 2 ) H ( s g I D | | N S G D | | T 2 ) H ( C e r t S G D | | T 2 ) ;
  • The S G D calculates T X = v · N u s = v w G , B = H ( s g I D | | N U S | | T 2 ) and X T = T S 1 H ( s g I D | | N U S | | T 1 ) = H ( T S U S | | T 1 ) ;
  • The S G D calculates the corresponding S S K using the key-generation function ( K F ) as S S K = K F ( A K , H ( T X | | X T | | B ) ) ;
  • The S G D further calculates Q = H ( S S K | | u s I D | | T 2 ) and R = B H ( u s I D | | N S G D | | N u s | | T 2 ) ;
  • The S G D sends N S G D , T S 2 , C e r t S G D , Q , R , T 2 to the U S ;
  • The U S validates the timestamp T 2 after receiving N S G D , T S 2 , C e r t S G D , Q , R , T 2 by checking | T 2 - T 2 * | T , where T is the maximum propagation time of a message over a channel;
  • The successful validation of T 2 allows the U S to compute the public key of S G D 1 using Equation (5);
  • The U S then computes the A K using Equation (6), A K = P K U S × K S G D = P K U S P K S G D G ;
  • To calculate the S S K , the U S first computes E = R H ( u s I D | | N S G D | | N u s | | T 2 ) and T X * = w · N S G D ;
  • The U S then computes S S K * = K F ( A K , H ( T X * | | E | | H ( T S u s | | T 1 ) ) ) ;
  • The successful verification of R and Q allows the U S to send the a p I D and subsidiaries of S G D to S G D and a hash of S S K * (i.e., H ( S S K * ) );
  • The S G D then computes A K using Equation (6) and verifies the received hash ( H ( S S K * ) ) by comparing it with its computed hash from the S S K ;
  • Successful verification of the received hash allows S G D to compute the A C , deriving the a p I D as H ( S K S G D | | K U S | | A C ) and comparing it with the received a p I D . Successful verification allows the utility server to establish a secure link with S G D 1 ; and
  • Finally, S G D 1 calculates the T K = [ U S , A K , A C ] C K 1 and sends it to the utility server where C K 1 is a common key shared among the S G 1 devices.
The utility server uses the T K along with the A K with any S G D in S G 1 in the subsequent handshakes for authentication. If the utility server wants to authenticate another S G D of the same S G 1 , they first exchange the nonce with each other. The utility server then shares the T K with S G D 2 . S G D 2 computes the A K using Equation (6) and A C from the A P . Then, it obtains the A C from the received T K as it has the C K 1 and compares it with the calculated A C . Successful verification allows the utility server to access S G D 2 and both derive S S K . Finally, both verify the hash of the S S K .

5. Security Analysis

In this section, we show the capabilities of the proposed algorithm to resist some of the well-known attacks by providing formal and informal security analysis.

5.1. Formal Security Analysis Using AVISPA

We validate the reliability of the proposed algorithm using AVISPA tool [20,21]. AVISPA is a standard tool use to analyse the security strength of the security algorithm. A security algorithm is modelled within the AVISPA tool using a human readable High Level Protocol Specification Language (HLPSL), which is then automatically translated into intermediate Format (IF) for formal security analysis by using four attack models (SAT-based Model-Checker (SATMC), TA4SP, On-the-Fly Model-Checker (OFMC) and CL-based Model-Checker (CL-AtSe)).
Figure 4 shows the screen shot of algorithm testing using the AVISPA-SPAN tool. The proposed algorithm is implemented as follows:
  • First, all the public and private parameters and the communication links among the smart grid devices are defined;
  • All the messages are scheduled in sequence and properly labelled. For example, U S sends a message to S G D . It is labelled as 1 while the response from the S G D is labelled as 2. The next message from the U S is labelled as 3 and so on;
  • The total number of messages per device and the content of each message are defined;
  • Then, the role and capabilities of an attacker are defined as man-in-the-middle where it has full access to all the messages being exchanged among the devices in the smart grid;
  • Finally, all the security sensitive parameters are defined; and
  • The AVISPA attack models are run to check the security strength of the proposed algorithm.
Figure 5 represents the outcomes of the AVISPA test and the strength of the proposed algorithm.

5.2. Informal Security Analysis

In this section, we informally analyse the proposed algorithm to show that its effectiveness against the following attacks.

5.2.1. Man-In-The-Middle Attack (MMA)

A man-in-the-middle attack is implemented by introducing a fake device between the U S and S G D . Such attacks are difficult to detect because the attacker impersonates an authentic S G D / U S . This attack allows the attacker to easily manipulate the captured packets or send fake data if the implemented algorithm is not secure against this attack. In the proposed algorithm, this attack is possible during the certificate extraction phase and during the authentication and session key establishment phase.
During the certificate generation phase as described in Section 4.2, the S G D sends R S G D , V H S G D , T , H ( O T S T ) to the T T P . If the attacker in the middles changes R S G D to R S G D * , the attacker will not be able to change V H S G D = H ( T S S G D | | T | | O T S T ) H ( s g I D | | R S G D | | T ) , which is dependent on R S G D . This is because the attacker does not have any information about the T S S G D and O T S T and while the T T P knows the values of T S S G D and O T S T . If the T T P receives a modified message R S G D * , V H S G D , T , H ( O T S T ) from the attacker, it would not be able to verify V H S G D with the new R S G D * . The unsuccessful verification will alert the T T P about the possible man-in-the-middle attack. Similarly, the S G D receives a certificate from the T T P as C e r t S G D , s , V H T T P , T . If the attacker changes the certificate to C e r t S G D * , it will not be able to change the V H T T P = H ( C e r t S G D | | T | | O T S T ) H ( s | | T S S G D | | T ) . This is because the attacker does not know the exact values of actual R S G D , O T S T and T S S G D . If the S G D device receives a modified message C e r t S G D * , s * , V H T T P , T from the attacker, it will not be able to verify V H T T P which will alert the S G D about the possible man-in-the-middle attack.
During the authentication phase, the U S sends N U S , T S 1 , X B , T to the S G D . If the attacker changes the nonce to N U S * , the attacker will not be able to change the T S 1 = H ( T S U S | | T 1 ) H ( s g I D | | N U S | | T 1 ) as these changes need T S U S and s g I D which are not known to the attacker. Thus, upon receiving N U S * , T S 1 , X B , T by the S G D , it will not be able to verify the T S 1 . This is because T S 1 X B = H ( s g I D | | N U S | | T 1 ) H ( s g I D | | N U S * | | T 1 ) . This will alert the S G D about the possible man-in-the-middle attack. Similarly, the S G D sends N S G D , T S 2 , C e r t S G D , Q , R , T 2 to the U S after receiving and verification of the authentication request from the U S . If the attacker changes N S G D to N S G D * and C e r t S G D to C e r t S G D * , the U S will receive a modified message N S G D * , T S 2 , C e r t S G D * , Q , R , T 2 . The U S will verify Q and R which are dependent on N S G D , N U S , S S K and u s I D . Only the authentic S G D knows these values and the attacker does not have any information about them. To verify R, the U S validates E = H ( s g I D | | N U S | | T 2 ) . To do so, E = R H ( u s I D | | N S G D * | | N U S | | T 2 ) H ( s g I D | | N U S | | T 2 ) because N S G D N S G D * . This will alert the U S about the possible man-in-the-middle attack and it will result in the wrong S S K generation and invalidate the value of Q, which is dependent on S S K . Thus, if the attacker makes some changes within the message, it is immediately detected by the end devices. The reason is that the attacker only knows the public information of both U S and S G D and does not have any information about their private information.
In the case of the public/private key encryption/decryption mechanism, the attacker can only decrypt a message using the sender’s public key if and only if it is encrypted with the sender’s private key. After decryption, it is not possible for the attacker to re-encrypt the message using the sender’s private key as the attacker does not know the sender’s private key. If the message (i.e., secret information) is encrypted with the public key of the receiver, then the attacker is not able to decrypt it as it does not know the private key of the receiver. In conclusion, the proposed algorithm is secure against the man-in-the-middle attacks.

5.2.2. Replay Attacks

Sometimes, the attacker does not modify the content of the messages, but it delays or replays the messages to disturb the normal functionality of the smart grid. In the proposed approach, we use the timestamps in the messages as shown in the general representation of communication between the end devices in Figure 6. During the registration phase, the S G D sends R S G D , V H S G D , T , H ( O T S T ) to the T T P which includes the timestamp T. The T T P checks T - T * T , where T = t m a x represents the maximum delay that a message can encounter during its transmission between the end devices. If the time check condition is valid, the message is accepted as a new and fresh message. The attacker cannot modify the timestamp in the message as T is also involved in calculating V H S G D . Similarly, the T T P sends C e r t S G D , s , V H T T P , T to the S G D which also includes T to verify the freshness of the message.
During the authentication phase, the U S sends N U S , T S 1 , T 1 to the S G D and the S G D sends N S G D , T S 2 , C e r t S G D , Q , R , T 2 to the U S which also includes T 1 and T 2 to verify the freshness of the messages, where T S 1 and T S 2 are dependent on T 1 and T 2 , respectively.
These timestamps play an important role in verifying the packet creation time and its validity. If the timestamp is not expired (i.e., less than T = t m a x ), the receiving device will accept the packet; otherwise, it will reject the packet. In this way, the proposed security approach works well against the replay attacks.

5.2.3. Forgery of the apID

As described above, the utility server can access only a limited number of S G D s that are defined by its access policy (e.g., [ S G D 1 , S G D 2 , S G D 3 , S G D 4 ] or [ S G D 2 , S G D 3 ]). The generated S S K can only be used with a device with which it is in communication. This key cannot be used with any other device in the same group or in a subset of a group. This is because it is dependent on each individual N S G D , N U S , s g I D , T S 1 , and T S 2 , which are unique for each individual S G D and U S . The forgery of the utility server’s a p I D means that an adversary (adv) can compute the ECDH public/private key pair (i.e., K , P K ) such that
H ( S K S G D | | K U S | | A C ) = H ( S K S G D | | K a d v + | | A C )
where a p I D = H ( S K S G D | | K U S | | A C ) is the actual utility server’s a p I D . Given the a p I D = H ( S K S G D | | K U S | | A C ) , it not computationally feasible to find a p I D = H ( S K S G D | | K a d v | | A C ) . This is because H ( . ) is the preimage resistance hash function, where the output can easily be calculated using the inputs, but it is very difficult to calculate or predict the input values based on the given output. Therefore, it is not possible to find this private key by knowing only the public key.
Similarly, as described above, the forgery attack is also not possible during the certificate generation phase and authentication and session key establishment phase. This is because the attacker does not know the private parameter assigned to the U S and S G D , which play an important role in authenticating and verifying the messages exchange during the certificate generation and authentication process.

5.2.4. End-to-End Security

If both the utility server and S G D have already shared their public keys with each other, then there is no need for the certificate. This is because, during the first handshake/session establishment, both end users use their certificate to verify their public keys to each other. In the subsequent sessions, they do not need to verify their public keys again. However, this is not always true. In most cases, S G D s are replaced or upgraded with new S G D s or S G D changes the U S , and they need to re-authenticate themselves with the utility servers, even if they belong to the same group or subgroup. Therefore, there is always a need for a certificate to verify and authenticate a public key of the end user. Thus, the certificate plays an important role in maintaining the end-to-end security.

6. Simulation Setup and Results

The performance of the proposed approach is evaluated using MATLAB and OMNeT++. MATLAB is used to simulate the power system [22], while OMNeT++ is used to evaluate the communication performance. The UDP is used instead of TCP to avoid any retransmission delay and 100-Mbps links are used for connections. An adaptive scheduler is used to integrate MATLAB and OMNeT++ because all operations of smart grids depend on the actions and decisions of the controllers, while the scheduler synchronises the operation of both simulators.

6.1. Communication Cost

To calculate the communication cost during the authentication phase, we consider the length of random number (i.e., nonce), certificate and a p I D as 160, 320 and 832 bits, respectively. The selection of 160 bits for ECC-based calculations was made according to the NIST recommendations, which state that the security of a 160-bit EEC-based system is equivalent to a 2048-bit RSA system [23]. During the initial handshake for authentication, U S and S G D exchange three messages in total (i.e., request (nonce), c e r t and a p I D ) requiring 160 bits, 320 bits and 832 bits and results in 1312 bits communication overhead. The subsequent authentication with the same S G D or other S G D s with the same group needs to exchange A K and T K with a valid time-stamp requiring 160 bits, 160 bits and 32 bits, respectively. This results in 352-bit communication overhead during the subsequent handshakes. Table 2 shows the comparison of proposed algorithm with other schemes. The schemes of Fouda [5], Wu and Zhou [6], Xia [7], Tsai-Lo [9], Odelu et al. [10], and He [11] require 6804, 4248, 2768, 3520, 3840 and 1760 bits, respectively. It is clear that our scheme requires minimum communication cost compared with those schemes.

6.2. Cost of Cryptographic Operations

Time is one of the critical factors in smart grid communication, playing an important role in the system’s stability and synchronisation. The performance of the proposed algorithm in terms of time consumption during the cryptographic operations are observed using a MICAZ device (as SGD) and with a 3-GHz Pentium IV system as a utility server. The processing time of various cryptographic operations is shown in Table 3.
The overall computational costs of the proposed algorithm and various existing algorithms are shown in Table 4. The following notations are used to represent various computational costs:
  • T K F : computational time of key generation function;
  • T P M : computational time of point multiplication;
  • T E S : computational time of symmetric encryption;
  • T E P : computational time of public key encryption;
  • T H : computational time of hash function;
  • T s i g : computational time of signature;
  • T v e r : computational time of signature verification; and
  • T a d d : computational time of ECC point addition.
Based on the computational cost presented in Table 4 and the cost of each cryptographic operation shown in Table 3, the comparative analysis of the total time consumed by the proposed algorithm during the authentication and session key with other existing schemes is shown in Table 5.
The cryptographic operations in the proposed algorithm are based on elliptic curve mathematics, and the key length is fixed to 160-bits according to the NIST recommendations. Each cryptographic mechanism needs a key specific length to achieve a certain level of security. For example, for a security level set by the NIST that an RSA-based approach can achieve with a key of 2048 bits in length, the same security can be achieved by a 160-bit key in the elliptic curve-based approach, which is much shorter than the RSA based approach. Similarly, a 256-bit key is needed for DSA. Using short keys improves the performance of security algorithms as they consume less time during the verification and encryption process.

6.3. Memory Cost

Table 6 shows the total memory occupied by the secret keys use in the authentication and secure channel establishment process. It is clearly evident from the results that the proposed mechanism needs fewer keys for both authentication and secure channel establishment and occupies less memory if compared with [24] and RSA mechanism. Although there is little difference in the memory requirements if compared with [25] and DSA, but there is a big difference in the end-to-end delay as discussed in the previous section. The memory requirement of the TV-HORS mechanism is extremely high as it needs more than 500 KB of memory to store secret keys for the authentication and secure channel establishment.

6.4. Security Comparison

Table 7 shows the security comparison of the proposed algorithm against some of the existing algorithms in terms of the man in the middle attack, impersonation attack, forward secrecy, replay attacks, mutual authentication feature, formal and informal security validation. It is clear from the comparative analysis that the proposed algorithm successfully addresses all the described features, and it is suitable for the smart grid applications.

7. Conclusions

This paper presented a policy-based group authentication approach for smart grid architectures where multiple SGDs are authenticated by the utility server in a fast, reliable, and secure manner. Section 4 described the proposed algorithm step-by-step and explained the importance/utilization of all the important parameters during the registration phase, authentication and key establishment phases. It also described how to use the access policy during the authenticate process and how to limit the access of a utility server to the smart grid devices. The formal and information security validation of the proposed algorithm is carried out with a well-known security validation tool AVISPA and with a mathematical proof, respectively. Both the security validation approaches verified the soundness of the proposed algorithm against well known replay attacks, man-in-the-middle attack and forgery attack. The performance evaluation of the proposed algorithm in Section 6 showed that it generates less communication overhead, consumes less memory to store the secret parameters and consumes less computation resources, which makes it a better choice for the resource constrained devices of a smart grid. This is because the first authentication requires all the steps to be followed, while the subsequent authentications with the same and other S G D s are done using the authentication token. This approach has made the proposed mechanism lightweight due to fewer computational requirements and made it more robust against forgery, man-in-the-middle and replay attacks. The comparison of the security features of the proposed algorithm with the state of the art showed that the proposed algorithm is robust to more attacks than the state-of-the-art approaches.
In the future, we will try to further optimise and enhance the standard security protocols for smart grid communication, where an internet utility server is used to access any internet connected devices and has the ability to control different functionality of the smart grid devices.

Author Contributions

Conceptualization, S.K. and A.H.A.-B.; Data curation, S.K.; Formal analysis, S.K. and A.H.A.-B.; Funding acquisition, A.S.A. and A.H.A.-B.; Investigation, A.S.A. and S.K.; Methodology, S.K. and A.H.A.-.B.; Project administration, A.S.A.; Resources, S.K.; Software, S.K.; Validation, S.K.; Writing—original draft, S.K.; Writing—review and editing, A.S.A., S.K. and A.H.A.-B. All authors have read and agreed to the published version of the manuscript.

Funding

This project was funded by the Deanship of Scientific Research (DSR) at King Abdulaziz University, Jeddah, under Grant No. DF-317-611-1441.

Acknowledgments

The authors gratefully acknowledge DSR technical and financial support.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Colak, I.; Sagiroglu, S.; Fulli, G.; Yesilbudak, M.; Covrig, C.F. A survey on the critical issues in smart grid technologies. Renew. Sustain. Energy Rev. 2016, 54, 396–405. [Google Scholar] [CrossRef]
  2. Gungor, V.C.; Sahin, D.; Kocak, T.; Ergut, S.; Buccella, C.; Cecati, C.; Hancke, G.P. Smart Grid Technologies: Communication Technologies and Standards. IEEE Trans. Ind. Inf. 2011, 7, 529–539. [Google Scholar] [CrossRef] [Green Version]
  3. Alahakoon, D.; Yu, X. Smart Electricity Meter Data Intelligence for Future Energy Systems: A Survey. IEEE Trans. Ind. Inf. 2016, 12, 425–436. [Google Scholar] [CrossRef]
  4. Fan, C.; Huang, S.; Lai, Y. Privacy-Enhanced Data Aggregation Scheme Against Internal Attackers in Smart Grid. IEEE Trans. Ind. Inf. 2014, 10, 666–675. [Google Scholar] [CrossRef]
  5. Fouda, M.M.; Fadlullah, Z.M.; Kato, N.; Lu, R.; Shen, X.S. A Lightweight Message Authentication Scheme for Smart Grid Communications. IEEE Trans. Smart Grid 2011, 2, 675–685. [Google Scholar] [CrossRef] [Green Version]
  6. Wu, D.; Zhou, C. Fault-Tolerant and Scalable Key Management for Smart Grid. IEEE Trans. Smart Grid 2011, 2, 375–381. [Google Scholar] [CrossRef]
  7. Xia, J.; Wang, Y. Secure Key Distribution for the Smart Grid. IEEE Trans. Smart Grid 2012, 3, 1437–1443. [Google Scholar] [CrossRef]
  8. Park, J.H.; Kim, M.; Kwon, D. Security Weakness in the Smart Grid Key Distribution Scheme Proposed by Xia and Wang. IEEE Trans. Smart Grid 2013, 4, 1613–1614. [Google Scholar] [CrossRef]
  9. Tsai, J.; Lo, N. Secure Anonymous Key Distribution Scheme for Smart Grid. IEEE Trans. Smart Grid 2016, 7, 906–914. [Google Scholar] [CrossRef]
  10. Odelu, V.; Das, A.K.; Wazid, M.; Conti, M. Provably Secure Authenticated Key Agreement Scheme for Smart Grid. IEEE Trans. Smart Grid 2018, 9, 1900–1910. [Google Scholar] [CrossRef]
  11. 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]
  12. Mohammadali, A.; Sayad Haghighi, M.; Tadayon, M.H.; Mohammadi-Nodooshan, A. A Novel Identity-Based Key Establishment Method for Advanced Metering Infrastructure in Smart Grid. IEEE Trans. Smart Grid 2018, 9, 2834–2842. [Google Scholar] [CrossRef]
  13. Doh, I.; Lim, J.; Chae, K. Secure Authentication for Structured Smart Grid System. In Proceedings of the 2015 9th International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, Santa Cantarina, Brazil, 8–10 July 2015; pp. 200–204. [Google Scholar] [CrossRef]
  14. Saxena, N.; Choi, B.J.; Lu, R. Authentication and Authorization Scheme for Various User Roles and Devices in Smart Grid. IEEE Trans. Inf. Forensics Secur. 2016, 11, 907–921. [Google Scholar] [CrossRef] [Green Version]
  15. Yan, Y.; Qian, Y.; Sharif, H.; Tipper, D. A Survey on Cyber Security for Smart Grid Communications. IEEE Commun. Surv. Tutor. 2012, 14, 998–1010. [Google Scholar] [CrossRef] [Green Version]
  16. Tsang, P.P.; Smith, S.W. YASIR: A Low-Latency, High-Integrity Security Retrofit for Legacy SCADA Systems. In Proceedings of the Ifip Tc 11 23rd International Information Security Conference, Milano, Italy, 7–10 September 2008; pp. 445–459. [Google Scholar]
  17. Perrig, A.; Canetti, R.; Tygar, J.D.; Song, D. Efficient authentication and signing of multicast streams over lossy channels. In Proceeding of the 2000 IEEE Symposium on Security and Privacy, Berkeley, CA, USA, 14–17 May 2000; pp. 56–73. [Google Scholar] [CrossRef] [Green Version]
  18. Cairns, K.; Hauser, C.; Gamage, T. Flexible data authentication evaluated for the smart grid. In Proceedings of the 2013 IEEE International Conference on Smart Grid Communications (SmartGridComm), Vancouver, BC, Canada, 21–24 October 2013; pp. 492–497. [Google Scholar] [CrossRef]
  19. Dolev, D.; Yao, A.C. On the security of public key protocols. In Proceedings of the 22nd Annual Symposium on Foundations of Computer Science, Nashville, TN, USA, 28–30 October 1981; pp. 350–357. [Google Scholar] [CrossRef] [Green Version]
  20. Viganò, L. Automated Security Protocol Analysis With the AVISPA Tool. Electron. Notes Theor. Comput. Sci. 2006, 155, 61–86. [Google Scholar] [CrossRef] [Green Version]
  21. Automated Validation of Internet Security Protocols and Applications (AVISPA). Artificial Intelligence Laboratory, DIST, University of Genova: Genoa, Italy. Available online: http://www.avispa-project.org/ (accessed on 26 September 2019).
  22. Grainger, B.M.; Reed, G.F.; McDermott, T.E.; Mao, Z.H.; Kounev, V.; Tipper, D. Analysis of an offshore medium voltage DC microgrid environment Part I: Power sharing controller design. In Proceedings of the 2014 IEEE PES T D Conference and Exposition, Chicago, IL, USA, 14–17 April 2014; pp. 1–5. [Google Scholar] [CrossRef]
  23. Rivest, R.L.; Hellman, M.E.; Anderson, J.C.; Lyons, J.W. Responses to NIST’s Proposal. Commun. ACM 1992, 35, 41–54. [Google Scholar] [CrossRef]
  24. Kounev, V.; Tipper, D.; Yavuz, A.A.; Grainger, B.M.; Reed, G.F. A Secure Communication Architecture for Distributed Microgrid Control. IEEE Trans. Smart Grid 2015, 6, 2484–2492. [Google Scholar] [CrossRef]
  25. Khan, S.; Khan, R. Elgamal Elliptic Curve Based Secure Communication Architecture for Microgrids. Energies 2018, 11, 759. [Google Scholar] [CrossRef] [Green Version]
Figure 1. System model.
Figure 1. System model.
Sensors 20 01581 g001
Figure 2. A utility server request to the trusted third party to get access policy, its ID, and authentication code.
Figure 2. A utility server request to the trusted third party to get access policy, its ID, and authentication code.
Sensors 20 01581 g002
Figure 3. Access policy for S G 1 = { S G D 1 , S G D 2 , S G D 3 , S G D 4 }.
Figure 3. Access policy for S G 1 = { S G D 1 , S G D 2 , S G D 3 , S G D 4 }.
Sensors 20 01581 g003
Figure 4. Screen shot of the simulation tool.
Figure 4. Screen shot of the simulation tool.
Sensors 20 01581 g004
Figure 5. Output of the SPAN-AVISPA analysis.
Figure 5. Output of the SPAN-AVISPA analysis.
Sensors 20 01581 g005
Figure 6. Time consumed in various stages.
Figure 6. Time consumed in various stages.
Sensors 20 01581 g006
Table 1. Notation table.
Table 1. Notation table.
ParametersDefinition
t d Message delivery time
t S Time spent in cryptographic operations at the sender side
t R Time spent in the verification operation at the receiver side
d m s g Size of message in bits
t m a x Maximum acceptable communication delay
NNonce
U S , S G D Utility server and smart grid device
T T P Trusted third party
K, P K EC public key and EC private key
S K Symmetric key shared between T T P and S G D
C e r t Public key certificate
K F ( . ) Key generation function
H ( . ) Second preimage resistant hash function
A P , a p I D Access policy and access policy ID
A C , A K Authentication code and authentication key
S S K Session secret key
T K Token key
C K Common key among all devices of the S G
Table 2. Comparison of communication costs.
Table 2. Comparison of communication costs.
AlgorithmCost (bits)No. of Messages
[5]68044
 [6]42486
[7]27685
 [9]35203
[10]38403
 [11]17603
Ours (initial)13123
Ours (subsequent)3522
Table 3. Computational time of various cryptographic operations.
Table 3. Computational time of various cryptographic operations.
OperationMICAZ3-GHz Pentium IV PC
Key generation5.32 s3.88 ms
Point multiplication2.45 s1.82 ms
AES en/decryption0.023 ms∼0 ms
Hash function0.023 ms∼0 ms
Public encryption0.79 s0.57 ms
Public decryption21.5 s16 ms
Signature21.5s16 ms
Signature verification0.79 s0.57 ms
ECC point addition0.44 ms∼0 ms
Table 4. Computational operations of various algorithms.
Table 4. Computational operations of various algorithms.
AlgorithmCryptographic Operations
[6] 8 T P M + 1 T E S + 1 T s i g + 1 T v e r + 5 T H
 [9] 7 T P M + 2 T a d d + 2 T K F + 2 T E P + 10 T H
[10] 5 T P M + 2 T a d d + 2 T K F + 2 T E P + 12 T H
 [11] 10 T P M + 3 T a d d + 11 T H
Proposed (initial) 4 T P M + 3 T H + 3 T K F + 1 T v e r
Proposed (subsequent) 2 T P M + 1 T K F + 1 T v e r
Table 5. Computational times of various algorithms.
Table 5. Computational times of various algorithms.
AlgorithmMICAZ (s)Pentium IV PC (ms)
[6]41.9131.1
 [9]29.3721.6
[10]24.4718.0
 [11]24.5018.2
Proposed (initial)26.5519.5
Proposed (subsequent)11.108.1
Table 6. Memory occupied by the security parameters.
Table 6. Memory occupied by the security parameters.
AlgorithmSecurity Parameters (bits)
[5]3392
 [6]3232
[7]2208
 [9]3072
[10]5120
 [11]1632
Proposed960
Table 7. Security comparison of various algorithms.
Table 7. Security comparison of various algorithms.
AlgorithmS1S2S3S4S5S6S7
 [5] χ
[6] χ χ χ χ χ
 [7] χ χ χ χ χ
[9] χ
 [10] χ
[11] χ
 [12] χ
Ours
Note: S1.MMA resistance. S2. Resistance against Impersonation attack. S3. Forward secrecy feature. S4. Resistance against replay attack. S5. Mutual authentication. S6. Informal security validation. S7. AVISPA security validation.

Share and Cite

MDPI and ACS Style

Alfakeeh, A.S.; Khan, S.; Al-Bayatti, A.H. A Multi-User, Single-Authentication Protocol for Smart Grid Architectures. Sensors 2020, 20, 1581. https://doi.org/10.3390/s20061581

AMA Style

Alfakeeh AS, Khan S, Al-Bayatti AH. A Multi-User, Single-Authentication Protocol for Smart Grid Architectures. Sensors. 2020; 20(6):1581. https://doi.org/10.3390/s20061581

Chicago/Turabian Style

Alfakeeh, Ahmed S., Sarmadullah Khan, and Ali Hilal Al-Bayatti. 2020. "A Multi-User, Single-Authentication Protocol for Smart Grid Architectures" Sensors 20, no. 6: 1581. https://doi.org/10.3390/s20061581

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