On the efficiency of software implementations of lightweight block ciphers from the perspective of programming languages

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 cannot be ruled out. A number of studies have compared software implementations of differen...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Future generation computer systems Jg. 104; S. 43 - 59
Hauptverfasser: Raza, Abdur Rehman, Mahmood, Khawir, Amjad, Muhammad Faisal, Abbas, Haider, Afzal, Mehreen
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Elsevier B.V 01.03.2020
Schlagworte:
ISSN:0167-739X, 1872-7115
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung: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 cannot 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. •Software Implementations of Lightweight Block Ciphers•Lookup table based implementations of LED block cipher•Impact of choice relating to implementation type, programming language, Operating system and platform on performance of block ciphers•Performance of LED Block Cipher on AWS cloud
ISSN:0167-739X
1872-7115
DOI:10.1016/j.future.2019.09.058