Evaluating the Performance of Lightweight Ciphers in Constrained Environments—The Case of Saturnin
Abstract
:1. Introduction
2. Background
2.1. Lightweight Cryptography
2.2. The Saturnin Cryptographic Suite
- Authenticated encryption, through either the so-called mode Saturnin-CTR-Cascade, which is an authenticated cipher using the counter mode and a separate MAC, or the so-called Saturnin-Short mode which is intended for messages with length strictly smaller than 128 bits.
- A 256-bit hash function, via the so-called Saturnin-Hash mode.
3. Evaluating the Performance
3.1. Methodology—The Testing Environment
- The desktop application, called “cipher network client”. It runs on a PC and sends requests to the ESP8266 board.
- The “nodemcu” application called “esp cryptoserver”. It operates as a server, replying to client requests after performing the necessary encryption.
- void setup(): This function performs the initial setup. It is being used for the WiFi connection, the server initialization and a global variable setup. Then, it checks the correctness of the algorithms results and prints all the required messages to the terminal (see Figure 2).
- void loop(): This is the main function, which is being executed continuously while a condition holds; otherwise, the program stops running (the board needs reset to run the program again). Here, the server “listens” to the port 2080 and for every request received from the client, it replies sending back the message, first unencrypted, then encrypted with AES and finally encrypted with Saturnin. It subsequently prints to the terminal the time needed for AES encryption and for Saturnin encryption. All times are shown in milliseconds.
3.2. Experimental Results
- Sending the request to server;
- Encrypting the message;
- Transmitting the (encrypted) message back to the client;
- Decryption of the message received;
- Writing the result on the screen.
4. Conclusions
Author Contributions
Funding
Conflicts of Interest
Abbreviations
AEAD | Authenticated Encryption with Associated Data |
AES | Advanced Encryption Standard |
cpb | cycles per byte |
CTR | CounTeR (mode of operation) |
IoT | Internet of Things |
MAC | Message Authentication Code |
NIST | National Institute of Standards and Technology |
RAM | Random Access Memory |
ROM | Read Only Memory |
RTT | Round Trip Time |
References
- Meng, T.X.; Buchanan, W. Lightweight Cryptographic Algorithms on Resource-Constrained Devices. Preprints 2020, 2020090302. Available online: https://www.preprints.org/manuscript/202009.0302/v1 (accessed on 8 December 2021).
- Abed, S.; Jaffal, R.; Mohd, B.J.; Al-Shayeji, M. An analysis and evaluation of lightweight hash functions for blockchain-based IoT devices. Clust. Comput. 2021, 24, 3065–3084. [Google Scholar] [CrossRef]
- Moradi, A.; Poschmann, A.; Ling, S.; Paar, C.; Wang, H. Pushing the limits: A very compact and a threshold implementation of AES. In Advances in Cryptology—Eurocrypt 2011, Tallinn, Estonia, May 2011; Paterson, K.G., Ed.; Lecture Notes in Computer Science; Springer: Heidelberg, Germany, 2011; Volume 6632, pp. 69–88. [Google Scholar]
- Thakor, V.A.; Razzaque, M.A.; Khandaker, M.R.A. Lightweight Cryptography Algorithms for resource constrained IoT devices: A Review, Comparison and Research Opportunities. IEEE Access 2021, 9, 28177–28193. [Google Scholar] [CrossRef]
- National Institute for Standards and Technology, Lightweight Cryptography Project. Available online: https://csrc.nist.gov/Projects/lightweight-cryptography (accessed on 8 December 2021).
- Fotovvat, A.; Rahman, G.M.E.; Vedaei, S.S.; Wahid, K.A. Comparative performance analysis of lightweight cryptography algorithms for IoT sensor nodes. IEEE Internet Things J. 2021, 8, 8279–8290. [Google Scholar] [CrossRef]
- Canteaut, A.; Duval, S.; Leurent, G.; Naya-Plasencia, M.; Perrin, L.; Pornin, T.; Schrottenloher, A. Saturnin: A suite of lightweigth symmetric ciphers for post-quantum security. IACR Trans. Symmetric Cryptol. 2020, 2020, 160–207. [Google Scholar] [CrossRef]
- National Institute of Standards and Technology. Status Report on the Second Round of the NIST Lightweight Cryptography Standardization Process. 2021. Available online: https://nvlpubs.nist.gov/nistpubs/ir/2021/NIST.IR.8369.pdf (accessed on 8 December 2021).
- National Institute of Standards and Technology. Submission Requirements and Evaluation Criteria for the Lightweight Cryptography Standardization Process. 2018. Available online: https://csrc.nist.gov/CSRC/media/Projects/Lightweight-Cryptography/documents/final-lwc-submission-requirements-august2018.pdf (accessed on 8 December 2021).
- Canteaut, A.; Duval, S.; Leurent, G.; Naya-Plasencia, M.; Perrin, L.; Pornin, T.; Schrottenloher, A. An update on Saturnin. NIST Lightweight Crypto Standardization process (Round 2). 2020. Available online: https://csrc.nist.gov/CSRC/media/Projects/lightweight-cryptography/documents/round-2/status-update-sep2020/Saturnin_update.pdf (accessed on 8 December 2021).
- NodeMcu, Connect Things EASY. Available online: http://www.nodemcu.com/index_en.html (accessed on 8 December 2021).
- El-Haii, M.; Chamoun, M.; Fadlallah, A.; Serhrouchni, A. Analysis of cryptographic algorithms on IoT hardware platforms. In Proceedings of the 2nd Cyber Security in Networking Conference (CSNet), Paris, France, 24–26 October 2018; pp. 1–5. [Google Scholar]
- Engineer, M.; Shah, A. Performance analysis of lightweight cryptographic algorithms simulated on Arduino UNO and MATLAB using the voice recognition application. In Proceedings of the 2018 International Conference on Circuits and Systems in Digital Enterprise Technology (ICCSDET), Kottayam, India, 21–22 December 2018; pp. 1–7. [Google Scholar]
- Mathew, B.K. Protecting embedded systems against Class I & Class II cloning attacks using Arduino boards. In Proceedings of the 2018 International Conference on Circuits and Systems in Digital Enterprise Technology (ICCSDET), Kottayam, India, 21–22 December 2018; pp. 1–4. [Google Scholar]
- Okada, T. Handle Smart Contract on Ethereum with Arduino or ESP32. Available online: https://medium.com/@takahirookada/handle-smart-contract-on-ethereum-with-arduino-or-esp32-1bb5cbaddbf4 (accessed on 8 December 2021).
- Qt Framework. Available online: https://www.qt.io/ (accessed on 8 December 2021).
- Github, Tiny AES Implementation. Available online: https://github.com/kokke/tiny-AES-c (accessed on 8 December 2021).
- Visual Studio Code. Available online: https://code.visualstudio.com/ (accessed on 8 December 2021).
- Platformio. Available online: https://platformio.org/ (accessed on 8 December 2021).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. 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 (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Podimatas, P.; Limniotis, K. Evaluating the Performance of Lightweight Ciphers in Constrained Environments—The Case of Saturnin. Signals 2022, 3, 86-94. https://doi.org/10.3390/signals3010007
Podimatas P, Limniotis K. Evaluating the Performance of Lightweight Ciphers in Constrained Environments—The Case of Saturnin. Signals. 2022; 3(1):86-94. https://doi.org/10.3390/signals3010007
Chicago/Turabian StylePodimatas, Panagiotis, and Konstantinos Limniotis. 2022. "Evaluating the Performance of Lightweight Ciphers in Constrained Environments—The Case of Saturnin" Signals 3, no. 1: 86-94. https://doi.org/10.3390/signals3010007
APA StylePodimatas, P., & Limniotis, K. (2022). Evaluating the Performance of Lightweight Ciphers in Constrained Environments—The Case of Saturnin. Signals, 3(1), 86-94. https://doi.org/10.3390/signals3010007