Skip to main content

A Secure Group-Based AKA Protocol for Machine-Type Communications

  • Conference paper
  • First Online:
Information Security and Cryptology – ICISC 2016 (ICISC 2016)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 10157))

Included in the following conference series:

  • 1191 Accesses

Abstract

The fifth generation wireless system (5G) is expected to handle with an unpredictable number of heterogeneous connected devices while guaranteeing a high level of security. This paper advances a group-based Authentication and Key Agreement (AKA) protocol that contributes to reduce latency and bandwidth consumption, and scales up to a very large number of devices. A central feature of the proposed protocol is that it provides a way to dynamically customize the trade-off between security and efficiency. The protocol is lightweight as it resorts on symmetric key encryption only, hence it supports low-end devices and can be already adopted in current standards with little effort. Using ProVerif, we prove that the protocol meets mutual authentication, key confidentiality, and device privacy also in presence of corrupted devices, a threat model not being addressed in the state-of-the-art group-based AKA proposals. We evaluate the protocol performances in terms of latency and bandwidth consumption, and obtain promising results.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. 3GPP: Formal analysis of the 3G authentication protocol. Technical report 33.902 (2001)

    Google Scholar 

  2. 3GPP: Specification of the MILENAGE algorithm set. Technical specification 35.205 (2001)

    Google Scholar 

  3. 3GPP: 3GPP System Architecture Evolution (SAE); Security architecture. Technical specification 33.401 (2008)

    Google Scholar 

  4. 3GPP: MME related interfaces based on diameter protocol. Technical specification 29.272 (2008)

    Google Scholar 

  5. 3GPP: Service requirements for Machine-Type Communications (MTC); Stage 1. Technical report 22.368 (2011)

    Google Scholar 

  6. Abadi, M., Fournet, C.: Mobile values, new names, and secure communication. In: POPL2001, pp. 104–115. ACM, New York (2001)

    Google Scholar 

  7. Alliance, O.S.: Openairinterface. http://www.openairinterface.org/

  8. Alt, S., Fouque, P.-A., Macario-rat, G., Onete, C., Richard, B.: A cryptographic analysis of UMTS/LTE AKA. In: Manulis, M., Sadeghi, A.-R., Schneider, S. (eds.) ACNS 2016. LNCS, vol. 9696, pp. 18–35. Springer, Heidelberg (2016). doi:10.1007/978-3-319-39555-5_2

    Chapter  Google Scholar 

  9. Blanchet, B.: An efficient cryptographic protocol verifier based on prolog rules. In: CSFW, pp. 82–96. IEEE Computer Society, Cape Breton, Canada (2001)

    Google Scholar 

  10. van den Broek, F., Verdult, R., de Ruiter, J.: Defeating IMSI catchers. In: 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2015, pp. 340–351. ACM (2015)

    Google Scholar 

  11. Broustis, I., Sundaram, G.S., Viswanathan, H.: Group authentication: a new paradigm for emerging applications. Bell Labs Tech. J. 17(3), 157–173 (2012)

    Article  Google Scholar 

  12. Cao, J., Ma, M., Li, H.: GBAAM: group-based access authentication for MTC in LTE networks. Secur. Commun. Netw. 8(17), 3282–3299 (2015)

    Article  Google Scholar 

  13. Choi, D., Choi, H.K., Lee, S.Y.: A group-based security protocol for machine-type communications in LTE-advanced. Wirel. Netw. 21(2), 405–419 (2014)

    Article  Google Scholar 

  14. Dolev, D., Yao, A.C.: On the security of public key protocols. IEEE Trans. Inf. Theor. 29(2), 198–208 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  15. Emura, K., Hayashi, T.: A light-weight group signature scheme with time-token dependent linking. In: Güneysu, T., Leander, G., Moradi, A. (eds.) LightSec 2015. LNCS, vol. 9542, pp. 37–57. Springer, Heidelberg (2016). doi:10.1007/978-3-319-29078-2_3

    Chapter  Google Scholar 

  16. Ericsson: Ericsson mobility report. Technical report (2015)

    Google Scholar 

  17. Fouque, P.A., Onete, C., Richard, B.: Achieving better privacy for the 3GPP AKA protocol. IACR Cryptology ePrint Archive 2016, p. 480 (2016)

    Google Scholar 

  18. Giustolisi, R., Gehrmann, C.: Threats to 5G group-based authentication. In: SECRYPT 2016 - Proceedings of the 13th International Conference on Security and Cryptography. SciTePress (2016)

    Google Scholar 

  19. Hwang, J.Y., Eom, S., Chang, K.Y., Lee, P.J., Nyang, D.: Anonymity-based authenticated key agreement with full binding property. J. Commun. Netw. 18(2), 190–200 (2016)

    Google Scholar 

  20. Hwang, J.Y., Lee, S., Chung, B.H., Cho, H.S., Nyang, D.: Group signatures with controllable linkability for dynamic membership. Inf. Sci. 222, 761–778 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  21. Lai, C., Li, H., Lu, R., Shen, X.S.: SE-AKA: a secure and efficient group authentication and key agreement protocol for LTE networks. Comput. Netw. 57, 17 (2013)

    Article  Google Scholar 

  22. Nokia Siemens Networks: Signaling is growing 50% faster than data traffic. Technical Report (2012)

    Google Scholar 

  23. Oracle: Oracle communications LTE diameter signaling index, 4th edn. White Paper (2015)

    Google Scholar 

  24. Ryan, M.D., Smyth, B.: Applied pi calculus. In: Formal Models and Techniques for Analyzing Security Protocols, chap. 6. IOS Press (2011)

    Google Scholar 

  25. Sun, H.M., He, B.Z., Chen, C.M., Wu, T.Y., Lin, C.H., Wang, H.: A provable authenticated group key agreement protocol for mobile environment. Inf. Sci. 321, 224–237 (2015)

    Article  MathSciNet  Google Scholar 

  26. Tang, C., Naumann, D.A., Wetzel, S.: Analysis of authentication and key establishment in inter-generational mobile telephony. In: IEEE 10th International Conference on Embedded and Ubiquitous Computing (HPCC_EUC). pp. 1605–1614 (2013)

    Google Scholar 

  27. WonderNetwork: Wonderproxy servers. https://wonderproxy.com/servers (August 2016)

  28. Woo, T.Y., Lam, S.S.: A semantic model for authentication protocols. In: 1993 IEEE Computer Society Symposium on Research in Security and Privacy, Proceedings, pp. 178–194 (1993)

    Google Scholar 

  29. Yang, X., Huang, X., Liu, J.K.: Efficient handover authentication with user anonymity and untraceability for mobile cloud computing. Future Gener. Comput. Syst. 62, 190–195 (2016)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rosario Giustolisi .

Editor information

Editors and Affiliations

Appendices

A Formal Specification of Security Requirements

ProVerif allows for syntactical extension of the applied pi-calculus, such as events and choices, to ease the specification of security requirements. Confidentiality can be modelled as a reachability property. The secrecy of a term m is preserved if an attacker, defined as an arbitrary process, cannot construct m from any run of the protocol. More precisely, the definition of reachability-based secrecy says that an attacker cannot build a process A that can output the secret term m.

Authentication can be defined using correspondence assertions. An event e is a message emitted into a special channel that is not under the control of the attacker. To model correspondence assertions, we annotate processes with events such as \(\mathtt {e}\langle M_1,...M_n \rangle \) and reason about the relationships (\(\leadsto \)) between events and their arguments in the form “if an event \(\mathtt {e}\langle M_1,...M_n \rangle \) has been executed, then an event \(\mathtt {e'}\langle N_1,...N_n \rangle \) has been previously executed”.

The applied pi-calculus supports the notion of observation equivalence. Informally, two processes are observational equivalent if an observer cannot distinguish the processes even if they handle different data or perform different computations. The indistinguishability characterization of the definition of observation equivalence allows us to capture privacy requirements.

Confidentiality. We check confidentiality of the session master key by proving that a fresh secret, which is encrypted with the key and sent in form of ciphertext on the public channel, cannot be obtained by the attacker. As soon as MTC and MME derive the session master key, each of them generates a ciphertext that encrypts the secret. They send the ciphertexts at the very end of the protocol run, accordingly the case. We specify the session master key confidentiality in ProVerif with the following query:

$$ \mathbf{query }\, {\text {attacker}}\, {\textit{(secret)}.} $$

ProVerif is suitable to prove confidentiality as it attempts to prove that a state in which the attacker knows the secret is unreachable. It follows that the secret is known only to MTC and MME.

Authentication. We specify MTC and serving network authentication requirements as correspondence assertions. Each assertion consists of a number of events. Events normally need to agree with some arguments to capture authentication. Thus, we introduce the terms that serve as arguments in our events as follows.

  • \(\textsc {imsi}\) refers to the permanent subscribe identity of the MTC;

  • \(\textsc {gid}\) refers to the group identifiers of the MME;

  • \(\textsc {sn}\) denotes the identifiers of the MME;

  • \({\textsc {k}_{\textsc {asme}}}\) denotes the session master key;

  • \(\textsc {path\_mtc}\) denotes the path assigned to the MTC;

  • \(\textsc {Hgk\_mtc}\) refers to the session individual key derived from the GK tree and associated to the MTC;

  • \(\textsc {rand}\) refers to the random value generated by the HSS;

  • \(\textsc {Hch\_mtc}\) refers to the session challenge key derived from the CH tree and associated to the MTC;

Having seen the arguments, we can define the list of events needed to specify mutual group authentication between MTC and MME. The events reflect the two cases defined in the group-based AKA protocol.

  • \({ \texttt {begin\_mtc\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MME with identity \(\textsc {sn}\) begins the authentication of the MTC with identity \(\textsc {imsi}\) and group \(\textsc {gid}\), and associates it with the key \({\textsc {k}_{\textsc {asme}}}\). The event regards the case A and is emitted by the MME after the authentication data response message.

  • \({ \texttt {begin\_mtc\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hgk\_mtc} \rangle }\) means that the MME with identity \(\textsc {sn}\) begins the authentication of the MTC with path \(\textsc {path\_mtc}\) and group \(\textsc {gid}\), and associates it with the key \(\textsc {Hgk\_mtc}\). The event regards the case B and is emitted by the MME after the attach request.

  • \({ \texttt {begin\_mme\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, \textsc {rand}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MTC with identity \(\textsc {imsi}\) and group \(\textsc {gid}\) begins the authentication of the MME with identity \(\textsc {sn}\), and associates it with the random value \(\textsc {rand}\) and key \({\textsc {k}_{\textsc {asme}}}\). The event regards the case A and is emitted by the MTC after the authentication request.

  • \({ \texttt {begin\_mme\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hch\_mtc}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MTC with path \(\textsc {path\_mtc}\) and group \(\textsc {gid}\) begins the authentication of the MME with identity \(\textsc {sn}\), and associate it with the keys \(\textsc {Hch\_mtc}\) and \({\textsc {k}_{\textsc {asme}}}\). The event regards the case B and is emitted by the MTC after the authentication request derivable message.

  • \({ \texttt {end\_mtc\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MTC with identity \(\textsc {imsi}\) and group \(\textsc {gid}\) concluded the authentication of the MME with identity \(\textsc {sn}\), and computed the key \({\textsc {k}_{\textsc {asme}}}\). The event regards the case A and is emitted by the MTC after the authentication response.

  • \({ \texttt {end\_mtc\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hgk\_mtc} \rangle }\) means that the MTC with path \(\textsc {path\_mtc}\) and group \(\textsc {gid}\) concluded the authentication of the MME with identity \(\textsc {sn}\), and computed the key \(\textsc {Hgk\_mtc}\). The event regards the case B and is emitted by the MTC after the authentication response derivable message.

  • \({ \texttt {end\_mme\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, \textsc {rand}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MME with identity \(\textsc {sn}\) concluded the authentication of the MTC with identity \(\textsc {imsi}\) and group \(\textsc {gid}\), and associates it with the random value \(\textsc {rand}\) and key \({\textsc {k}_{\textsc {asme}}}\). The event regards the case A and is emitted by the MME after the successful verification of res.

  • \({ \texttt {end\_mme\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hch\_mtc}, {\textsc {k}_{\textsc {asme}}} \rangle }\) means that the MME with identity \(\textsc {sn}\) concluded the authentication of the MTC with path \(\textsc {path\_mtc}\) and group \(\textsc {gid}\), and associates it with keys \(\textsc {Hch\_mtc}\) and \({\textsc {k}_{\textsc {asme}}}\). The event regards the case B and is emitted by the MME after the successfully verification of res \(_{\textsc {d}}\).

To formalize mutual authentication we need to distinguish the authentication of the MME to MTC and the authentication of the MTC to the MME. Moreover, we need to distinguish the two cases. We formalize the authentication of the MME to MTC in Case A and Case B as follows.

Definition 1

(Serving network authentication (Case A)). The protocol ensures serving network authentication for Case A if the correspondence assertion

$$\begin{aligned}&\mathtt {end\_mtc\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, {\textsc {k}_{\textsc {asme}}} \rangle ~\leadsto \\ {}&\mathtt {begin\_mtc\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, {\textsc {k}_{\textsc {asme}}} \rangle \end{aligned}$$

is true on every execution trace.

Definition 2

(Serving network authentication (Case B)). The protocol ensures serving network authentication for Case B if the correspondence assertion

$$\begin{aligned}&\mathtt {end\_mtc\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hgk\_mtc} \rangle ~\leadsto ~\\ {}&\mathtt {begin\_mtc\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hgk\_mtc} \rangle \end{aligned}$$

is true on every execution trace.

In a similar way, we can formalize the authentication of the MTC to the MME in Case A and Case B.

Definition 3

(MTC authentication (Case A)). The protocol ensures the authentication of MTC for Case A if the correspondence assertion

$$\begin{aligned}&\mathtt {end\_mme\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, \textsc {rand}, {\textsc {k}_{\textsc {asme}}} \rangle ~\leadsto \\ {}&\mathtt {begin\_mme\_A} \langle \textsc {imsi}, \textsc {gid}, \textsc {sn}, \textsc {rand}, {\textsc {k}_{\textsc {asme}}} \rangle \end{aligned}$$

is true on every execution trace.

Definition 4

(MTC authentication (Case B)). The protocol ensures the authentication of MTC for Case B if the correspondence assertion

$$\begin{aligned}&\mathtt {end\_mme\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hch\_mtc}, {\textsc {k}_{\textsc {asme}}} \rangle ~\leadsto \\ {}&\mathtt {begin\_mme\_B} \langle \textsc {path\_mtc}, \textsc {gid}, \textsc {sn}, \textsc {Hch\_mtc}, {\textsc {k}_{\textsc {asme}}} \rangle \end{aligned}$$

is true on every execution trace.

Privacy. To model MTC identity privacy as equivalence property, we use the definition of labelled bisimilarity (\(\approx _l\)) as defined by Abadi and Fournet. We reason about the processes of MTC, MME, and HSS, which map to the corresponding roles. Each device playing the role of MTC execute the same process MTC but are instantiated with different variable values (e.g. imsi, k). The requirement of MTC identity privacy can be conveniently specified as follows:

Definition 5

(MTC identity privacy).

$$ MTC\{^{\textsc {imsi}_A}/_{id}\}|MME|HSS\approx _lMTC\{^{\textsc {imsi}_B}/_{id}\}|MME|HSS $$

The definition above states that two processes instantiated with two different IMSI values have to be observationally equivalent. Such equivalence means that an attacker cannot distinguish whether the MTC participating in the protocol run is the one associated with \(\textsc {imsi}_A\) or \(\textsc {imsi}_B\), hence the privacy of the MTC identity is guaranteed. Note that the formulation of MTC identity privacy based on observational equivalence is more stringent than any formulation based on reachability. The latter formulation would need to assume that the attacker does not know any imsivalue in advance, an assumption that can be lifted up using observational equivalence.

The ProVerif code that describes the processes for MTC, MME, and HSS are respectively in Figs. 6, 7, and 8.

Fig. 6.
figure 6

The process of MTC in ProVerif

Fig. 7.
figure 7

The process of MME in ProVerif

Fig. 8.
figure 8

The process of HSS in ProVerif

B Implementation and Analysis in OAI

The configuration used by our patched version of OAI is depicted in Fig. 9. It includes three virtual machines running Linux inside a single host Intel Core i7 processor with 4GB RAM. In particular, one machine (VM1) runs the Openairinterface5G module that simulate an MTCdevice and the eNodeB base station. The other two machines (VM2 and VM3) run the OPENAIR-CN module. Note that OAI does not currently support multiple MTC device, namely the Openairinterface5G module include only a device. However, we can run multiple runs of Openairinterface5G module in different machines to instantiate several MTC devices at cost of instantiating the same number of base stations.

Fig. 9.
figure 9

Minimal network configuration needed for our patched version of OAI.

The communication between MTC device, MME, and HSS are performed through Ethernet interfaces. The communication between MTC device and eNodeB is done within VM1 and represents the S1-U interface in the 3GPP standard. The channel between VM1 and VM2 represent the S1-MME interface according the standard. VM3 is dedicated to the HSS, which uses a MySQL server for the storage of subscriber data.

1.1 B.1 Parameters

Some terms have no similar counterpart in the existing standards so we design them from scratch. This is the case of the two auxiliary parameters tree height and node depth. The first gives the height \(\mathcal {H}\) of the inverted hash trees. It is used as an indicator of how many bits of the path should be used. This parameter is needed because the path is communicated in full bytes even though the size of the actual path might not be divisible by eight. We thus specify that the size of tree height is one byte. The parameter node depth gives the level on which the sub-root nodes \(\textsc {gk}_{\text {ij}}\) and \(\textsc {ch}_{\text {ij}}\) are placed in the inverted hash trees. The knowledge of path, tree height, and node depth allows the MME to deduce the structure of the inverted hash tree and to assess whether next MTC devices can be served according Case A or Case B.

Table 4. Sizes of parameters of EPS-AKA and group-based AKA at NAS level.

To compute the bandwidth consumption at NAS level, we consider the parameters and the sizes described in Table 4. We recall Eqs. 1 and 2 concerning the bandwidth consumption for the group-based protocol for the NAS and the S6a interface.

figure b
figure c

The bandwidth consumption for EPS-AKA at NAS level is

(3)
Table 5. Sizes of parameters of EPS-AKA and group-based AKA in the S6A interface.

Regarding the bandwidth consumption for the S6A interface, Diameter adds to each parameter 12 bytes for header and flags. Hence, the size of parameters are bigger in S6A interface than in NAS. The values of the parameters are synthesized in Table 5. The bandwidth consumption for EPS-AKA can be computed as

(4)
Fig. 10.
figure 10

Bandwidth consumption comparison between EPS AKA and the group-based AKA on the NAS.

Fig. 11.
figure 11

Bandwidth consumption comparison between EPS AKA and group-based AKA on the S6a interface

Fig. 12.
figure 12

Increase in NAS bandwidth consumption and decrease in S6a bandwidth consumption when the group-based AKA is used instead of EPS-AKA.

Figure 10 shows that the group-based AKA has more bandwidth consumption than the EPS-AKA at NAS level. This is because the attach request message in the group-based AKA includes the parameters path and noncein addition to the standard parameters. However, the bandwidth consumption rate is inverted in the S6a interface, as described in Fig. 11. The group-based AKA consumes less bandwidth already when more than two MTC devices are considered. Notably, when the number of MTC devices to be served are more then three, the overall bandwidth consumption of group-based AKA is less than the one of EPS-AKA. This is depicted in Fig. 12.

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Giustolisi, R., Gehrmann, C., Ahlström, M., Holmberg, S. (2017). A Secure Group-Based AKA Protocol for Machine-Type Communications. In: Hong, S., Park, J. (eds) Information Security and Cryptology – ICISC 2016. ICISC 2016. Lecture Notes in Computer Science(), vol 10157. Springer, Cham. https://doi.org/10.1007/978-3-319-53177-9_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-53177-9_1

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-53176-2

  • Online ISBN: 978-3-319-53177-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics