Paper 2019/1218
On the Efficiency of Software Implementations of Lightweight Block Ciphers from the Perspective of Programming Languages
Abdur Rehman Raza, Khawir Mahmood, Muhammad Faisal Amjad, Haider Abbas, and Mehreen Afzal
Abstract
Lightweight block ciphers are primarily designed for resource constrained devices. However, due to service requirements of large-scale IoT networks and systems, the need for efficient software implementations can not be ruled out. A number of studies have compared software implementations of different lightweight block ciphers on a specific platform but to the best of our knowledge, this is the first attempt to benchmark various software implementations of a single lightweight block cipher across different programming languages and platforms in the cloud architecture. In this paper, we defined six lookup-table based software implementations for lightweight block ciphers with their characteristics ranging from memory to throughput optimized variants. We carried out a thorough analysis of the two costs associated with each implementation (memory and operations) and discussed possible trade-offs in detail. We coded all six types of implementations for three key settings (64, 80, 128 bits) of LED (a lightweight block cipher) in four programming languages (Java, C#, C++, Python). We highlighted the impact of choice relating to implementation type, programming language, and platform by benchmarking the seventy-two implementations for throughput and software efficiency on 32 & 64-bit platforms for two major operating systems (Windows & Linux) on Amazon Web Services Cloud. The results showed that these choices can affect the efficiency of a cryptographic primitive by a factor as high as 400.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- Published elsewhere. Future Generation Computer Systems, issue 104 (March 2020): pages 43-59
- DOI
- 10.1016/j.future.2019.09.058
- Keywords
- lightweight block-ciphersoftware implementationlookup tableLEDIoTaws EC2
- Contact author(s)
- raza abrehman @ gmail com
- History
- 2019-10-17: revised
- 2019-10-17: received
- See all versions
- Short URL
- https://ia.cr/2019/1218
- License
-
CC BY-NC-ND
BibTeX
@misc{cryptoeprint:2019/1218, author = {Abdur Rehman Raza and Khawir Mahmood and Muhammad Faisal Amjad and Haider Abbas and Mehreen Afzal}, title = {On the Efficiency of Software Implementations of Lightweight Block Ciphers from the Perspective of Programming Languages}, howpublished = {Cryptology {ePrint} Archive, Paper 2019/1218}, year = {2019}, doi = {10.1016/j.future.2019.09.058}, url = {https://eprint.iacr.org/2019/1218} }