2016 Elliptic curve cryptography-based authentication with identity protection for smart grids
2016 Elliptic curve cryptography-based authentication with identity protection for smart grids
Abstract
In a smart grid, the power service provider enables the expected power generation
power system. However, the data transmitted over smart grids are not protected, and
then suffer from several types of security threats and attacks. Thus, a robust and
efficient authentication proto- col should be provided to strength the security of smart
grid networks. As the Supervisory Control and Data Acquisition system provides the
security protection between the control center and substations in most smart grid
substations and smart appliances. Existing security approaches fail to address the
between performance and security of smart grids. The proposed protocol provides
some attractive features such as identity protection, mutual authentication and key
Compared with traditional power networks, smart grid networks can avoid excess
real-time requirements. In general, the smart grid network can be divided into three
levels: control center, sub- stations and smart appliances [1]. In a smart grid network,
smart appliances communicate with substations by using smart meters. The smart
meters send user’s requirements to the sub- stations, and then the substations transmit
the requirements to the control center. Next, according to the received requirements,
the control center can allocate adequate power supplies to customers. The Supervisory
Control and Data Acquisition system is used to protect the communications between
the control center and the substations [2], but the security problems between other two
levels remain unsolved. Although the security mechanisms between substations and
smart appliances have been researched in recent years, existing security protocols are
not robust enough to resist several types of attacks. Therefore, a determined effort
should be made to address the security issues associated with the communications
As smart meters are used to transmit the real-time electricity demands from customers,
the data transmission process could easily suffer from several types of security threats
and attacks. To protect the transmitted data, an efficient authentication scheme should
be provided. Compared with the authentication protocols designed for other scenarios
authentication protocol for smart grids due to its complicated architecture and diverse
satisfy the secure requirements of smart grids. For example, the user privacy should
be fully considered especially the user’s identity protection, to prevent the adversary
from obtaining the information about user’s daily patterns, which may not be
Recently, several authentication protocols have been proposed [4–19] to protect the
adversary from obtaining the daily habit of the customer through analyzing the
electricity usage pattern, T.W. Chim et al. [4] designed an authentication protocol by
using a tamper-resistant device at the smart appliance and a pseudo identity for the
smart grid network to protect the privacy of the customer. However the proposed
protocol was suffered from impersonation attacks. Since only substations could
authenticate smart appliances, the adversary could easily impersonate the substations
to cheat the smart appliances. Besides, their protocol failed to provide a key
smart appliances. Furthermore, since a timestamp was used in the signing module of
their protocol, the clock synchronization problem could not be avoided. In order to
reduce the computational cost, Mostafa et al. [5] proposed a message authentication
their protocol, mutual authentication and key agreement were realized by using
hierarchical networks of the smart grid system, and the subsequent messages could be
authenticated by using a shared session key established previously and the hash-based
were still very high due to the usage of expansive exponential operations. In the same
year, Qing et al. [6] designed a multicast authentication protocol for smart grids by
using one- time signature to reduce the storage cost and the signature size. Because
authentication delay and low computation cost, their protocol achieved a good
In order to strengthen the security of smart grid communications, Soohyun Oh et al. [7]
key certificates for smart grid. In their protocol, the data concentration unit’s public
key certificate and pre-shared long-term key were used to realize the mutual
authentication between the data concentration unit and the intelligent devices. But the
problem of distributing the shared long- term key limited this protocol’s scalability
and applicability. Biometric technique such as fingerprint was also adopted to achieve
strong authentication for smart grids [10]. But these protocols are very complex due to
the use of biometrics. In 2013, Binod Vaidya et al. proposed an authentication and
authorization mechanism for smart grid networks [13]. They realized multi-factor
public key certificates, zero-knowledge and access control technologies. But the
heavy computational load could not be avoided since the implement of the public key
certificates management and public key cryptography calculation. In the same year,
Nicanfar et al. presented a password authenticated group key agreement protocol for
smart grid [15]. Although the proposed protocol provided forward and backward
secrecy and enhanced the security of communications among the devices, the usage of
Elliptic Curve Cryptography (ECC) was proposed [17]. Com- pared with previous
studies, this protocol was more efficient due to the usage of ECC, but a primitive
password should be preloaded between an appliance and the Home Area Network
controller, which made this solution hard to scale and might arouse an intractable
grid [19]. Since this work only focused on authentication, key negotiation was not
According to above analysis, protocol [4] was suffered from impersonate attacks and
proto- cols [5, 19] were vulnerable to eavesdropping since these protocols could not
provide key agreement to protect the further communications. Moreover, protocol [17]
faced some attacks associated with password. Although some of these protocols
achieved good performance, they could not provide security at an acceptable level.
Furthermore, other protocols such as [13, 15] were secure against several attacks, but
the use of expansive exponential operations, the signature generation, and the
these protocols are not suitable for smart grid. In general, the existing authentication
protocols for smart grids mentioned above are insecure against some cryptographic
attacks or impractical due to high computational costs. In addition, all the protocols
discussed above could not provide privacy protection which is very important in smart
grids. Based on these motivations, we proposed a robust and efficient authenticate
protocol based on Elliptic Curve Cryptography (ECC) with identity protection for
achieve the same level security with a smaller key size, it offers better performance
compared with other public key cryptosystems such as RSA or D-H. Thus, we
Compared with other security approaches, public key cryptosystems can resist most of
possible attacks and provide more security properties to achieve a good balance
between performance and security. By using ECC, the proposed protocol can achieve
the authenticated key agreement with privacy protection at a lower computational cost.
Furthermore, according to the characteristics of the smart grid, the control center can
the substations that have higher computational power are difficult to be compromised
than smart appliances; the smart appliances with limited power are more vulnerable to
various attacks, and it can be combined with a tamper-resist device to protect the
tamper-resist device was used to store secret information to help providing privacy
protection through the authentication process. In addition, the control center and the
In the proposed protocol, the smart meters are used to transmit the real-time electricity
demands from customers intelligently. In order to protect the transmitted data, mutual
authentication and a shared key should be provide to protect the further
communication between the substation and the smart appliances. In the proposed
protocol, the smart meters could control when the authentication protocol begins and
could be realized by restarting the authentication pro- cess and the smart meter could
also control the period of key updating during the communication. Therefore, the
smart meter could manage the smart devices intelligently during the authentication
process. In this paper, our study focused on the design of the authentication protocol
with privacy protection, so the intelligent management of smart meters is beyond the
Burrows-Abadi-Needham (BAN) Logic [20] is the first belief logic widely used to
limitations [21]. Gong- Needham-Yahalom (GNY) logic [22] is one of the famous
disclosed redundancies or found defects in several protocols. Today, GNY has been
Therefore, we used the GNY logic to evaluate the security of the proposed protocol in
this study.
The rest of this paper is organized as follows. Section 2 briefly describes the Elliptic
In this section we briefly introduce the basic concepts of the elliptic curve
cryptosystem and the corresponding problems associated with it. We also explain the
ECC has been formally applied to public key cryptosystems since 1986. In an elliptic
curve cryptosystem, the elliptic curve equation is defined as the form Ep(a,b): y2 = x3
+ ax + b(mod p) over a prime finite field Fp, where p > 3, a, b Fp and 4a3 +
27b2 0
. (mod p). Given an integer t Fp* and a point P Ep(a,b), the scalar
And the corresponding problems associated with ECC are shown as follows:
Definition 1. Given two points P and Q over Ep(a,b), the elliptic curve discrete
Definition 2. Given three points P, sP and tP over Ep(a,b) for s; t 2 Fp*, the
computational Diffie-Hellman problem (CDHP) is to find the point stP over Ep(a,b).
Definition 3. Given two points P and Q = sP + tP over Ep(a,b) for s; t 2 Fp*, the
elliptic curve factorization problem (ECFP) is to find two points sP and tP over
Ep(a,b).
We assume that the three problems above are intractable. That is, there is no
polynomial time algorithm that can solve these problems with non-negligible
probability.
Next, we explain why we adopted ECC to design the authentication protocol for smart
grid networks.
1) More complex: Since ECC can be implemented in different ways rather than a
single encryption algorithm; it is more complex than RSA. Moreover, the elliptic
curve discrete logarithm problem is more difficult to break than the factorization and
discrete logarithm problem. Although many researchers have tried to attack ECC, it is
still infeasible to break ECC with existing computational resources. Therefore, the
security strength of ECC is much stronger than other public key cryptosystems such
Table 1. Comparison of the key length between RSA and ECC on the same security level.
Key length of ECC (bits) Key length of an RSA (bits) Key length ratio
2) Smaller key size: as shown in Table 1, compared with RSA, ECC offers
equivalent security with smaller key sizes which implies lower power, bandwidth, and
3) Computational efficiency: ECC is much more efficient than RSA and D-H
exponentiations in them.
This section details our newly designed authentication protocol based on elliptic curve
cryptography for smart grids. Considering the efficiency, ECC version for El-Gamal
has been adopted for asymmetric encryption in the proposed protocol where the cycle
group used in El-Gamal is taken from elliptic-curve. For the details, please see [24].
There were two phases in the pro- posed protocol: initialization phase and
Initialization phase
In this phase, several security parameters used for authentication and key agreement
finite field Fp is selected by the control center. Here a, b Fp and 4a3 + 27b2
0(mod p). Next the control center chooses a base point P over Ep(a, b) and writes P
2) The control center allocates an identity IDi for each smart appliance Ui and
preloads IDi into the memory of the corresponding tamper-resistant devices.
Then the identity IDi of smart appliance Ui is written in an ID table by the control
center. Next, the control center submits the identity table to the substation over a
secure channel and assigns an identity SIDj for each sub- station Sj. The
substation Sj stores the identity SIDj in its memory securely. Finally, a one-way
* k
hash function h(·): {0,1} {0,1} is selected by the control center. And the
their memories.
*
3) The substation chooses a random integer s RZp as a secret key for symmetric
key and computes its corresponding public key pk = skP, where n is the order of the
base point P. The computed public/ private key pair (pk, sk) is used for asymmetric
for every smart appliance Ui. The system key s and the public/private key pair (pk,
sk) are kept secret by the substation. Furthermore, the substation writes the public
key pk and the pair secret (C1, C2) into each corresponding tamper-resistant device.
If a new smart appliance Uj wants to incorporate into the smart grid, the control
center and the substation should cooperate to complete the initialization of the
new appliance. First, the control center allocates a new identity IDj for Uj and
records it in the ID table. Then it sends the identity of the new smart appliance to
message, the substation records the identity in its ID table and then computes a
secret (C1, C2) for the new smart appliance. Finally, the substation writes the
point P, the one-way hash function, the identity IDj, the public key pk and the pair
secret (C1, C2) into the tamper-resistant device of Uj to achieve the initialization
Authentication phase
During the authentication process, the substation and the smart appliance Ui
perform the following four steps to realize mutual authentication and key
agreement.
*
1) First, the tamper-resistant device of Ui selects an integer r1 RZp randomly
p to
compute C3 = epk(IDi || C1 || r1), where epk(•) denotes the public key encryption
function using the substation Sj’s public key pk and C1 = Es(IDi) is a secret stored in
the tamper-resistant device of Ui. Then, the smart appliance Ui sends C3 = epk(IDi ||
2) In this step, the substation Sj obtains IDi, C1 and r1 by decrypting the receiving
1
message C3 via its private key sk. Then, it checks whether IDi is valid by
Otherwise, the substation Sj uses the system key s to decrypt C1 and then gets the
IDi. Next, it compares the value of IDi in C3 with that of IDi in decrypted
message C1. If they are not equivalent, the substation terminates the
symmetric encryption algorithm with the secret key r1. Finally, the substation Sj
Here the random integer r3 needs not be encrypted because it is used to check the
freshness of the message only and is not connected with the final session key in any
way. Even if the adversary obtained the random integer r3, the shared key could
this method has been widely used in authentication protocols to check the
3) After receiving the message (C4, r3), the smart appliance Ui adopts r1 to
?
decrypt C4 and then obtains r2 and SIDj. Then it calculates SIDjP and checks
whether the following equation holds C2 = SIDjP. If the equation holds, the smart
appliance Ui calculates the shared session key SK ' = h(r1 || r2) and the
4) Upon receiving the message C5, the substation Sj checks whether the value of the
received C5 equals to the value of the computed h(SK || (r3 + 1)). If true, the
substation Sj sets SK as the shared session key with the smart appliance Ui;
center over a secure channel and then deletes the ID table and the shared keys from
its memory. Next the control center transforms ID table including all identities of
the smart appliance associated with substation Dn and all the session keys
submitted from Dn to the new substation Dl over a secure channel. In addition, the
control center also chooses a secure one-way hash function and transforms it to the
substation Dl. After the substation Dl finishes the initialization procedure, it adopts
the corresponding shared key to encrypt the secret information including the pair
secret (C1, C2), the public key pk and the hash function. Then the substation Dl
information securely. And the new session key between the new substation Dl
and the smart appliance can be achieved by running the proposed key agreement
In the proposed protocol, instead of preloading the shared key, the secret (C1, C2) as
realize mutual authentication and key agreement. The session key is constructed by
two high-entropy random integers chosen by the substation and the smart appliance
freely, and the session key varies in each authentication and key agreement process,
that is, the secret (C1, C2) is not connected with the final computed session key. Thus,
even the secret (C1, C2) stored in the tamper-resistant device was compromised, the
session key would not be leaked and the adversary could not obtain the information
transmitted between the smart appliance and the substation encrypted by the session
key. Under this case, if the secret (C1, C2) was compromised, the message relayed
between the smart appliance and the substation would not be exposed to the
adversary. On the contrary, if the shared key was preloaded into a tamper-resistant
device, the adversary could launch the capture attack to obtain the shared key, and
then could use it to decrypt the message communicated between the smart appliance
and the substation. In addition, the solution of preloading the shared key requires
the substation storing the shared keys for each smart appliance. Once the substation
was compromised by the adversary, all the shared keys would be revealed.
Security Analysis
Burrows-Abadi-Needham Logic [20] is the first belief logic which has been widely
used to formally analyze the completeness of protocols. A great effort has been put
defects in several protocols. Therefore, we adopted the GNY logic to evaluate the
In this section, some formulae and statements used in the GNY logic are introduced
first; then the goals and the assumptions of the proposed protocol are set; finally the
GNY logic is adopted to prove that the proposed protocol is valid and practical.
In the GNY logic, a formula is a name used to refer to a bit string, which has a
particular value in a run [22]. In order to describe the GNY logic, first let symbols
X and Y range over formulae. Then, some formulae used in our authentication
proof are introduced and the complete list of all logical postulates is described in
[22].
2. {X}K and { X }K1 : symmetrically encrypt and decrypt X with the key K.
3. {X}+K and {X}-K: asymmetrically encrypt and decrypt X with the public key +K and
3. {X}+K and {X}-K: asymmetrically encrypt and decrypt X with the public key +K and
1. P X : P is told formula X.
2. P X : P possesses formula X.
6. P P
S
Q : P believes that S is a suitable secret for P and Q.
7. P X : P has jurisdiction over X.
8. P * X : P is told that a formula X which did not convey previously in the current
run.
In this subsection, some notations are changed to fit the GNY logic and the proposed
protocol are transformed into the form of P Q:(X). In addition, the server’s private
2. S U : ({SID j d }c , r )
3. U S : (h(h(c d ) (r 1)))
Next, our goals which consist of three aspects are described in detail.
U ({SID j d }c , r )
S (h(h(c d ) (r 1)))
S U ~ h(h(c d ) (r 1))
U S U
SK
S
U U
SK
S
S U SK
S U U
SK
S
Assumption list
also possesses the private key –K and the public key +K.
S s, S K , S K
S ( IDi )
3. Since U stores V2= SIDjP secretly and holds the base point P. Then U can
U ( SID j )
4. The random integer c is generated by U in the protocol, so U possesses c and
the current run. So, we assume that U believes c is a suitable secret for himself and S.
U U
c
S
S r , S (r ) , S d , S #(d )
S S
SK
U
U S U
SK
S
In this subsection, we adopt the GNY logic to analyze our protocol. A complete list of
all logical postulates and the index in the list is provided [22], such as (T1, P1), to
S ( IDi ), S s
S {IDi }s , S ( IDi {IDi }s c) (R1, R2)
If S believes that IDi is recognizable and S possesses the key s, then S is entitled to
believe that the encryption of IDi with the key s is recognisable and then the formula
If S believes ( IDi {IDi }s c) is recognizable and S possesses a public key +K, then it
believes that the encryption {IDi {IDi }s c} K is recognizable. Therefore, in the proposed
protocol, the server S can recognize the message {IDi {IDi }s c} in the first run. (Goal
K
1)
U ( SID j ),U c
U ( SID j d ),U {SID j d }c (R1, R2)
S {SID j d }c
S ({SID j d }c , r ) (R1)
proposed protocol, U can recognize the message ({SID j d }c , r ) in the second run.
(Goal 2)
U U
c
S ,U ( SID j d ),U #(c)
U < *{SID j d }c , U c, (I1)
U S ~{SID j d }c ,U S c
If the following five conditions hold: 1) U receives the formula ( SID j d ) encrypted
believes that c is a suitable secret for itself and S; 4) U believes that the
believe that 1) S once conveyed ( SID j d ) encrypted with c and 2) U believes that the S
possesses c. (Goal 4)
According to the GNY logic, we assume that U S S * , that is, U believes that S is
honest and competent, and then we can deduce the following statement:
U S S *, U S ~ ({SID j d }c , r )
~ S U
SK
S ),U #({SID j d }c , r )
U S U
SK
S (J2)
U S U
SK
S ,U S U
SK
S
U U
SK
S (J1)
in U
SK
S , then U ought to believe in U
SK
S as well. So, U believes that SK is a
the corresponding private key –K, then it is considered to have been told the
decrypted contents of that encrypted formula. And it has also been told c as the
formula’s components.
S < c, S d , S r
S c, S (c d ), S h(c d ), S (r 1) (P1, P2, P4)
possesses d, it is capable of
If S is told c, it is capable of possessing c. And if S also
possessing (c d ) and h(c d ) . For the same reason, if S possesses r then it possesses
(r+1).
S h(c d ), S (r 1)
S (h(c d ) (r 1)) (P2)
S (r )
S (h(c d ) (r 1)) (R1)
If S believes that (h(c d ) (r 1)) is recognizable and it also possesses (h(c d ) (r 1)) , and
then it is entitled to believe that h(h(c d ) (r 1)) is recognizable. So, we can say that S
believes that the message h(h(c d ) (r 1)) in the third run is recognizable. (Goal 3)
S #(d ), S (c d )
S #(c d ), S #(h(c d )) (F1, F10)
If S believes d is fresh then it is entitled to believe that h(c d ) is fresh. And then if S
If all of the following conditions hold: 1) S receives a formula consisting of a one way
and SK; 3) S believes SK is a suitable secret for itself and U; 4) S believes that SK is
and h(h(c d ) (r 1)) .Therefore, we can say that S believes that the message
h(h(c d ) (r 1)) in the third run of the proposed protocol is conveyed from U. (Goal 5)
S U ~ ((r 1), SK ), S #( SK )
S U ~ SK , S U SK (I6, I7)
If S believes that U once conveyed the formula ((r+1), SK), then it is entitled to
believe that U once conveyed SK. And if S also believes that SK is fresh, then it is
U. (Goal 8)
According to the GNY logic, we assume that U S S * , that is, S believes that U is
honest and competent, and then we can deduce the following statement:
S U U *, S U ~ (h( SK (r 1))
~ U U
SK
S ), S #( SK (r 1))
S U U
SK
S (J2)
identities of the smart appliance and the substation. In the proposed protocol, the
adversary cannot obtain the real identities of the smart appliance and the
adversary compromises the secret (C1, C2) stored in the tamper- resistant device
and intercepts all the messages transmitted between the smart appliance and the
substation, she/he cannot obtain the real identities of the smart appliance and the
and key agreement to protect the communications between the smart appliance
and the substation. Next, we compare the computational cost of the proposed
protocol with other related protocols. Some notations are defined as follows:
2. Te: the time for executing a scalar multiplication operation of elliptic curve.
Our protocol Chim et al.’s protocol [4] Mostafa et al.’s protocol [5]
Es(IDi) through using the system key s. In the authentication phase, the
computational cost at the substation Sj side is Tad +Th +Tsd + Tse, and the
computational cost at the smart appliance Ui side is Tae + Tsd + Te + Th. The smart
appliance Ui takes one asymmetric key encryption operation via the substation Sj’s
decryption operation to get SIDj and r2; takes one scalar multiplication operation to
h(SK’ || (r3 + 1)). The substation Sj takes one asymmetric key decryption operation
to get the smart appliance Ui’s identity IDi, the random integer r1 and the
authentication message C1; takes a one-way hash function operation to obtain h(SK
|| (r3 + 1)); and takes one sym- metric key decryption operation and one symmetric
key encryption operation. So, the total computational cost of the proposed protocol
results [25] show that the modular exponentiation operation Tm and the
that of the symmetric key encryption/decryption operations Tse/Tsd and the scalar
could be ignored. Close analysis of the data in Table 2, shows that our proposed
protocol is more efficient than and Mostafa et al.’s protocol [5], because it
compared with Chim et al.’s protocol [4], our protocol reduces the computational
cost at the smart appliance side. Although Chim et al.’s protocol possesses better
performance at the substation side in comparison with the pro- posed protocol,
their protocol cannot support mutual authentication and fails to provide a key
agreement.
proposed protocol with other protocols. Since Mostafa et al.’s protocol do not
al.’s protocol at the smart appliance side. In our protocol, the smart appliance
needs to store a hash function and the secure information (C1, C2, pk, P), where
C1, C2, and P are 1024 bits, and pk is 128 bits. The total storage overhead needed
protocol, the tamper-resistant needs to store the public key Pubcc, the secret key
Sr, a pair private and public key, the identity of smart appliance RIDi and HMAC
function. Where Pubcc is 1024 bits, Sr is 128 bits, RIDi is 32 bits and a pair key is
2048 bits. Therefore, the total overhead at the tamper-resistant devices side in
Chim et al.’s protocol is larger than 3232 bits. As shown in Table 3, Compared
with Chim et al.’s protocol, our proposed protocol reduced the storage overhead at
Our protocol Chim et al.’s protocol [4] Mostafa et al.’s protocol [5]
Storage overhead 3200 bits 3232 bits -----
(tamper-resistance
devise side)
experiments, the user’s ID was 32 bits, the timestamp was 32 bits, the random
number was 64 bits, the signature was 160 bits, and a modular exponentiation was
512 bits. In addition, the output of a 256-bit AES was based on the input of the
algorithm in protocols [4, 5]. The communication cost comparisons between our
protocol and others are shown in Table 3. In our proposed protocol, the average
communication cost was 608 bits. Compared with the protocols in [4, 5], the
Conclusion
An efficient authentication protocol with identity protection for smart grids has been
proposed in this paper. In the proposed protocol, based on elliptic curve cryptography
the substations and smart appliances realized mutual authentication and key
appliance and the substation are transmitted in ciphertext in the proposed protocol. So
the adversary cannot obtain the real identities of the smart appliance and the
by Gong, Needham, and Yahalom (GNY) logic. And performance analysis shows that
our proposed protocol increases efficiency in comparison with other related proto-
cols. Therefore, the proposed protocol is more suitable for the smart grids.
Acknowledgments
The authors are indebted to the staff at the secure communication institute at China
University of Geosciences.
Author Contributions
Conceived and designed the experiments: LZ ST. Performed the experiments: HL.
References
http://www.arcweb.com/Research/ Studies/Pages/SCADA-Power.aspx.
Authentication Scheme for Smart Grid Network. Proceedings of Cyber and Physical
SmartGridComm.2011.6102316
6. Li QH, Cao GH. Multicast Authentication in the Smart Grid with One-Time
10.1109/TSG.2011.2138172
using DCU certificate in Smart Grid. Applied Mathematics & Information Sciences.
Anonymity with Lightweight Sensor Computation. Plos one, 2015; 10(4): 1–21. doi:
10.1371/journal.pone.0116709
authentication and key agreement scheme with pseudo identity for wireless sensor
10. Gao QH. Biometric Authentication in Smart Grid. Proceedings of Energy and
10.1109/MCOM.2015.7010518
Scheme for V2G Networks in Smart Grid. IEEE Transactions on Smart Grid. 2013;
Protocol Based on Elliptic Curve Cryptography for Smart Grids. 2013 IEEE
Internet of Things and IEEE Cyber, Physical and Social Computing, 201; 2089– 2093.
doi: 10.1109/GreenCom-iThings-CPSCom.2013.392
scheme for the smart grid against internal attackers. Wireless Networks. 2016; 22(2):
21. Nessett DM. A critique of the Burrows, Abadi, and Needham logic. ACM
10.1145/382258.382789
63854
23. Fan CI, Lin YH. Provably Secure Remote Truly Three-Factor Authentication
25. Kilinc HH, Yanik T. A Survey of SIP Authentication and Key Agreement
10.1109/SURV.2013.091513.00050