Highly Efficient Symmetric Key Based Authentication and Key Agreement Protocol Using Keccak
Abstract
:1. Introduction
2. Related Work
3. Preliminaries
3.1. Security Architecture
3.2. Attack Model and Security Features
3.2.1. Attack Model
- The adversary can be a passive or active attacker, and thus is able to listen and collect data on the one hand or actively intercept, modify, or replay data on the other hand. As a consequence, protection should be obtained against replay, impersonation, man-in-the-middle, desynchronization, and denial of service attacks.
- The attacker is able to get access to the session specific variables by means of timing attacks, both on the server and sensor sides. As a consequence, protection must be offered against the known session specific temporary information attack.
- The adversary can capture any sensor and is able to retrieve the data stored on the sensor by means of power analysis techniques. Consequently, perfect forward secrecy is a very important security feature to be addressed since it avoids the attacker to be able to reveal the previously generated session keys.
3.2.2. Assumptions
3.2.3. Goals of the Attacker/Security Features
3.3. SHA3-Keccak
4. Proposed Protocol
4.1. With Storage
4.1.1. Initialization Phase
4.1.2. Authentication and Key Agreement Phase
- If and , the table contents are updated as follows: . The session key is defined as . The server sends to the sensor.
- If and , only the following table contents need to be updated and . The server sends to the sensor.
- If is different from , the server aborts the process.
4.2. Without Storage
4.2.1. Initialization Phase
4.2.2. Authentication and Key Agreement Phase
5. Security Evaluation
5.1. Security Strength and Concrete Parameters
- Hash queries . If m already exists in the list , the value will be returned. Otherwise, a random value will be generated, added to the list , and returned.
- Send queries. These queries simulate active attacks, where an adversary can modify the transmitted messages. As a result, a corresponding reply will be generated:
- -
- Send(). First, a random variable is chosen and sent to the sensor.
- -
- Send(,T). In addition, a random variable is chosen. A message containing the outcome of the hash function on the random data, identity and key related data and also information to identify the sensor and corresponding key material is generated and sent to the server. The outcome of the hash function is stored by the sensor.
- -
- Send(,R). The correctness of the message can be verified by checking the outcome of the hash value. For that, the server should look up or derive the identity related data of the sensor and the corresponding key material. If correct, the session key is defined. In the protocol without storage, also new identity related data are defined and masked in order to send it to the sensor. Finally, message , based also on the output of the hash function derived in the previous step, is sent to the sensor.
- -
- Send(,T). The received values of are checked for correctness using the stored values of the hash function. If correct, the session key is also computed and the key agreement protocol has been successfully ended.
- Execute queries. These queries simulate the passive attacks, where an adversary can eavesdrop onto the channel and collect the transmitted messages. There are three different execute queries resulting from the first three send queries defined above.
- Session specific state reveal queries (SSReveal). According to the adversary model of , the attacker is able to retrieve session specific state information, derived by the T and R, respectively. For the protocol with storage, no more information already available from the execute queries, can be found in this way. For the protocol without storage, is revealed, since it is hidden in the variable of .
- Corrupt queries. These queries give the secret key material of the entity as result and need to be added to prove the perfect forward security feature. Note that only Corrupt (T) is defined in the adversary model . As the service provider is considered to be a trusted entity and not included in the security model, there are no corrupt queries with regard to the service provider.
- Session key reveal query (SKReveal). In this query, the established symmetric SK between T,R is returned if it has been successfully generated.
- Test query. In this query, either the established SK or a random value is returned, dependent on the output or respectively of a flipped coin c. Note that the test query cannot be issued when SKReveal or corrupt queries have been executed.
- The entities T and R are partners if they are able to successfully derive in a mutual authenticated way a common shared SK.
- The established shared secret key is said to be fresh if the SK has been established without SKReveal queries by the adversary or Corrupt queries of T.
- Game GM0. This is the original and real game defined in the semantic security framework and is defined as
- Game GM1. In GM1, the random oracle simulates the different queries and outputs the corresponding results in the lists. Following the definition of random oracle model, we have that
- Game GM2. In this game, all oracles are also simulated, but now with avoiding collisions in the output of the hash function and the selection of random values among the different sessions. Consequently, due to the difference lemma and birthday attacks, it holds that
- Game GM3. In this game, the adversary is able to find the hash value ( or for protocol with and without storage respectively) without input of the random oracle Send queries. In this case, the scheme is simply stopped. Consequently, GM2 and GM3 are indistinguishable, except when the T rejects this value. Thus, by applying the difference lemma, we have that
- Game GM4. In this game, we consider the specific adversary model in which either the session state variables (corresponding to SKReveal query) can be revealed or the secret variables (corresponding to Corrupt query) at T. The adversary can perform Execute and Hash queries in order to find the SK:
- -
- In the case of SKReveal(T) and SKReveal(R), the SK can still not be retrieved if the hash function is secure for collision and preimage attacks as it is constructed based on the output of the hash function, which includes both session state variables and secret key variables of both entities as input.
- -
- If Corrupt(T) is applied, the previously generated session keys cannot be retrieved as they require the secret key information, which are the input of a hash function with the new key material as output. Again, the usage of a hash function resistant for collision and preimage attacks avoids the success of this attack.
Consequently, the difference between GM3 and GM4 is negligible as long as the hash function is secure for collision and preimage attacks. Therefore,
5.2. Informal Security Analysis
5.3. Comparison of Security Features of Different Protocols
6. Performance
7. Conclusions
Acknowledgments
Conflicts of Interest
References
- Lee, I.; Lee, K. The Internet of Things (IoT): Applications, investments, and challenges for enterprises. Bus. Horiz. 2015, 58, 431–440. [Google Scholar] [CrossRef]
- Shou, L.; Li, X.; Yeh, K.H.; Su, C.; Chiu, W. Lightweight IoT based authentication scheme in cloud computing circumstance. Future Gener. Comp. Syst. 2019, 91, 244–251. [Google Scholar]
- Sudhakar, T.; Natarajan, V. A new three-factor authentication and key agreement protocol for multi-server environment. Wirel. Netw. 2019, 1, 1–12. [Google Scholar] [CrossRef]
- Braeken, A. Efficient anonym smart card based authentication scheme for multi-server architecture. Int. J. Smart Home 2015, 9, 177–184. [Google Scholar] [CrossRef]
- Kumar, P.; Braeken, A.; Gurtov, A.; Iinatti, J.; Ha, P.H. Anonymous secure framework in connected smart home environments. IEEE Trans. Inf. Forensics Secur. 2017, 12, 968–979. [Google Scholar] [CrossRef] [Green Version]
- Lara, E.; Aguilar, L.; Sanchez, M.A.; García, J.A. Lightweight Authentication Protocol for M2M Communications of Resource-Constrained Devices in Industrial Internet of Things. Sensors 2020, 20, 501. [Google Scholar] [CrossRef] [Green Version]
- Esfahani, A.; Mantas, G.; Matischek, R.; Saghezchi, F.B.; Rodriguez, J.; Bicaku, A.; Maksuti, S.; Tauber, M.G.; Schmittner, C.; Bastos, J. Lightweight Authentication Mechanism for M2M Communications in Industrial IoT Environment. IEEE Internet Things 2019, 6, 288–296. [Google Scholar] [CrossRef]
- Aghili, S.F.; Mala, H. Breaking a Lightweight M2M Authentication Protocol for Communications in IIoT Environment. IACR Cryptol. ePrint Arch. 2018, 2018, 891. [Google Scholar]
- Limbasiya, T.; Soni, M.; Mishra, S.K. Advanced formal authentication protocol using smart cards for network applicants. Comput. Electr. Eng. 2018, 66, 50–63. [Google Scholar] [CrossRef]
- Adeel, A.; Ali, M.; Khan, A.N.; Khalid, T.; Rehman, F.; Jararweh, Y.; Shuja, J. A multi-attack resilient lightweight IoT authentication scheme. Trans. Emerg. Telecommun. Technol. 2019, e3076. [Google Scholar] [CrossRef]
- Han, J.; Kim, J. A lightweight authentication mechanism between IoT devices. In Proceedings of the 2017 International Conference on Information and Communication Technology Convergence (ICTC), Jeju, Korea, 18–20 October 2017; pp. 1153–1155. [Google Scholar]
- Qiu, Y.; Ma, M. An authentication and key establishment scheme to enhance security for M2M in 6LoWPANs. In Proceedings of the 2015 IEEE International Conference on Communication Workshop (ICCW), London, UK, 8–12 June 2015; pp. 2671–2676. [Google Scholar]
- Renuka, K.; Kumari, S.; Zhao, D.; Li, L. Design of a Secure Password-Based Authentication Scheme for M2M Networks in IoT Enabled Cyber-Physical Systems. IEEE Access 2019, 7, 51014–51027. [Google Scholar] [CrossRef]
- Joshitta, R.S.M.; Arockiam, L. Device authentication mechanism for IoT enabled healthcare system. In Proceedings of the 2017 International Conference on Algorithms, Methodology, Models and Applications in Emerging Technologies (ICAMMAET), Chennai, India, 16–18 February 2017; pp. 1–6. [Google Scholar]
- Chen, C.M.; Xiang, B.; Wu, T.Y.; Wang, K.H. An Anonymous Mutual Authenticated Key Agreement Scheme for Wearable Sensors in Wireless Body Area Networks. Appl. Sci. 2018, 8, 1074. [Google Scholar] [CrossRef] [Green Version]
- Chen, J.; Gui, Z.; Ji, S.; Tan, H.; Tang, Y. Cloud-aided lightweight certificateless authentication protocol with anonymity for wireless body area networks. J. Netw. Comput. Appl. 2018, 106, 117–123. [Google Scholar]
- Liu, J.; Zhang, Z.; Chen, X.; Kwak, K.S. Certificateless Remote Anonymous Authentication Schemes for WirelessBody Area Networks. IEEE Trans. Parallel Distrib. Syst. 2014, 25, 332–342. [Google Scholar] [CrossRef]
- Zhao, Z. An Efficient Anonymous Authentication Scheme for Wireless Body Area Networks Using Elliptic Curve Cryptosystem. J. Med. Syst. 2014, 38, 13. [Google Scholar] [CrossRef] [PubMed]
- Abbasinezhad-Mood, D.; Nikooghadam, M. Efficient Anonymous Password-Authenticated Key Exchange Protocol to Read Isolated Smart Meters by Utilization of Extended Chebyshev Chaotic Maps. IEEE Trans. Ind. Inform. 2018, 14, 4815–4828. [Google Scholar] [CrossRef]
- Li, X.; Ibrahim, M.H.; Kumari, S.; Sangaiah, A.K.; Gupta, V.; Choo, K.K.R. Anonymous Mutual Authentication and Key Agreement Scheme for Wearable Sensors in Wireless Body Area Networks. Comput. Netw. 2017, 25, 429–443. [Google Scholar] [CrossRef]
- Mansoor, K.; Ghani, A.; Chaudhry, S.A.; Shamshirband, S.; Ghayyur, S.A.K.; Mosavi, A. Securing IoT-Based RFID Systems: A Robust Authentication Protocol Using Symmetric Cryptography. Sensors 2019, 19, 4752. [Google Scholar] [CrossRef] [Green Version]
- Gope, P.; Hwang, T. A realistic lightweight authentication protocol preserving strong anonymity for securing RFID system. Comput. Secur. 2015, 55, 271–280. [Google Scholar] [CrossRef]
- Yang, J.; Park, J.; Lee, H.; Ren, K.; Kim, K. Mutual authentication protocol. In Proceedings of the Workshop on RFID and Lightweight Crypto, Graz, Austria, 14–15 July 2005. [Google Scholar]
- Tan, C.C.; Sheng, B.; Li, A. Secure and serverless RFID authentication and search protocols. IEEE Trans. Wirel. Commun. 2008, 7, 1400–1407. [Google Scholar] [CrossRef] [Green Version]
- Cai, S.; Li, Y.; Li, T.; Deng, R.H. Attacks and improvements to an RIFD mutual authentication protocol and its extensions. In Proceedings of the Second ACM Conference on Wireless Network Security, Zurich, Switzerland, 16–18 March 2009; pp. 51–58. [Google Scholar]
- Cho, J.S.; Jeong, Y.S.; Park, S.O. Consideration on the brute-force attack cost and retrieval cost: A hash-based radio-frequency identification (RFID) tag mutual authentication protocol. Comput. Math. Appl. 2015, 69, 58–65. [Google Scholar] [CrossRef]
- Bertoni, G.; Daemen, J.; Peeters, M.; Van Assche, G. The Keccak SHA-3 submission. SHA-3 Competition 2017, 6, 16. [Google Scholar]
- Bertoni, G.; Daemen, J.; Peeters, M.; van Assche, G. Sponge Functions. Available online: https://pdfs.semanticscholar.org/0338/0dd678b5dbf37734452ac57f793db1a9620c.pdf (accessed on 10 April 2020).
- SHA3 Wikipedia, Retrieved 10-3-2020. Available online: https://en.wikipedia.org/wiki/SHA-3 (accessed on 10 April 2020).
- Pointcheval, D.; Zimmer, S. Multi-factor authenticated key exchange. Appl. Cryptogr. Netw. Secur. 2008, 69, 77–95. [Google Scholar]
- Braeken, A.; Kumar, P.; Martin, A. Efficient and Provably Secure Key Agreement for Modern Smart Metering Communications. Energies 2018, 11, 2662. [Google Scholar] [CrossRef] [Green Version]
- Shoup, V. Sequences of Games: A Tool for Taming Complexity in Security Proofs. 2004. Available online: http://eprint.iacr.org/2004/332/ (accessed on 10 April 2020).
- Avoine, G.; Canard, S.; Ferreira, L. Symmetric-key authenticated key exchange (SAKE) with perfect forward secrecy. Cryptol. ePrint Arch. 2019, Report 2019/444. [Google Scholar]
- Winderickx, J. Energy-Efficient and Secure Implementations for the IoT. Ph.D. Thesis, KULeuven, Leuven, Belgium, March 2020. [Google Scholar]
- MAXIM Integrated, MAXREFDES100♯: Health Sensor Platform. Available online: https://www.maximintegrated.com/en/design/reference-design-center/system-board/6312.html (accessed on 10 April 2020).
Characteristic | Protocol with Storage | Protocol without Storage |
---|---|---|
Mutual authentication | Only the entities knowing the secret key or can derive the correct authentication values and respectively. Note that thanks to this feature, also protection against impersonation and man-in-the-middle attacks is offered. | The server is the only entity, who is able to derive and thus from the received value . The sensor is ensured about the authentication of the server by checking the correctness of , which cannot be manipulated without knowledge of . Consequently, the protocol is also resistant for impersonation and man-in-the-middle attacks. |
Anonymity and unlinkability | The identity sent in the protocol is dynamic and not linked to a certain static sensor. Its content changes after each successful run of the protocol and therefore no tracking of a specific sensor can be obtained. In addition, the other parameters sent in the protocol have no link with identity related information. | The identity related information sent in the protocol, is dynamic and updated after each successful run of the protocol. Without knowledge of the secret key , the attacker is not able to reveal the real identity of the sensor. Moreover, as there is no relation between consecutive parameters , an attacker cannot perform location tracking attacks. |
Perfect forward secrecy of sensor. | If an attacker captures the sensor and gets access to , it will not be able to generate the previous session keys as they were built using the hash function of the previously secure keys , which are overwritten in memory with the current version . Note that perfect forward secrecy does not hold at the server side. If an attacker gets access to the database, it is able to generate using the collected random values sent in clear in the transmission channel the last established session keys. | If the secret information is leaked from the sensor, the previous session keys cannot be revealed as they require the knowledge of the previous and also values. Without knowledge of , this data cannot be revealed from the transmitted messages. In addition, the anonymity and unlinkability features will still be valid as the parameters change after each successful authentication. In addition, here, no perfect forward secrecy on the server side is obtained because if is retrieved, the values can be derived from the message sent by the sensor, resulting in the derivation of SK. |
Replay attacks | The value can be replayed, but randomness will still be guaranteed by the generation of the random value by the sensor. Moreover, as the parameters change after each protocol run and a synchronized version is kept at the database, replay attacks are avoided. | In addition, here, can be replayed, but randomness will still be guaranteed by the generation of the random value by the sensor, whose uniqueness is specifically tested by the server. As a consequence, an attacker cannot obtain two times the same outcome of the hash value. |
Desynchronization attack | Suppose the message is dropped by the attacker. In this case, both server and sensor are not updated. However, in case the last message is dropped, the server gets updated and not the sensor. Therefore, in order to overcome potential desynchronization in the next call of the protocol, we need to store always the previous values of identity and key material too at the side of the server, which is considered to be the most powerful device. | Due to the nature of the protocol by the specific construction of the key material, there is no synchronization required. In particular, the usage of the static master key will always lead to common shared key material. |
Denial of service attack | The only place where a potential denial of service attack can appear is in the first step of sending the random value . However, the sensor can built in a mechanism to block in case more than a threshold of invalid responses are sent back. All the other messages can be specifically verified for the correctness as they include checks on the existence of the key material. Consequently, as the protocol only consists of three phases, the server can never be blocked by having too many open sessions. | The same reasoning for protection against the denial of service attack also holds in this protocol. |
Session specific temporary information | In this protocol, there is no additional session specific temporary information that can be revealed in order to be exploited for the generation of the SK. | If also is leaked, can be retrieved and thus a collision attack on can be executed. However, the size of is chosen in such a way that it still offers 128-bit protection. |
Scheme (Authors+Year) | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 |
---|---|---|---|---|---|---|---|---|
Kumar et al., 2017 [5] | Y | Y | Y | Y(T) | Y | Y | N | N |
Chen et al., 2018 [15] | Y | Y | Y | Y(T) | Y | Y | N | N |
Mansoor et al., 2019 [21] | Y | Y | Y | N(T,R) | N | N | N | N |
Lara et al., 2020 [6] | Y | Y | Y | Y(T,R) | N | Y | Y | N |
With storage | Y | Y | Y | Y(T) | Y | Y | Y | Y |
Without storage | Y | Y | Y | Y(T) | Y | Y | Y | Y |
© 2020 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Braeken, A. Highly Efficient Symmetric Key Based Authentication and Key Agreement Protocol Using Keccak. Sensors 2020, 20, 2160. https://doi.org/10.3390/s20082160
Braeken A. Highly Efficient Symmetric Key Based Authentication and Key Agreement Protocol Using Keccak. Sensors. 2020; 20(8):2160. https://doi.org/10.3390/s20082160
Chicago/Turabian StyleBraeken, An. 2020. "Highly Efficient Symmetric Key Based Authentication and Key Agreement Protocol Using Keccak" Sensors 20, no. 8: 2160. https://doi.org/10.3390/s20082160
APA StyleBraeken, A. (2020). Highly Efficient Symmetric Key Based Authentication and Key Agreement Protocol Using Keccak. Sensors, 20(8), 2160. https://doi.org/10.3390/s20082160