Lightweight cryptography has been a very hot topic for the last few years, driven by the lack of primitives capable to run on devices with very low computing power. We can think for instance of RFID tags, sensors in wireless sensor network or, more generally, small internet-enabled appliances expected to flood the markets as the Internet of Things (IoT) arises.
What is Lightweight Cryptography?
At the core of lightweight cryptography is a trade-off between lightweightness and security: how can we reach high levels of security using only a small computing power? Many cryptographers have addressed these issues by suggesting lightweight streamciphers, blockciphers, hashfunction and recently one-pass authenticated encryption. We provide a discussion on the meaning of lightweightness in the following page.
Submit implementations of lightweight block ciphers, collect points based on each implementation performance figures and win Luxembourgish chocolate/beer. For details see Triathlon Competition.
Lightweight Cryptography Lounge
We reviewed primitives of all these types and keep track of recent advances regarding them from a security perspective. For every primitive, we describe briefly the design, list the known attacks and give the characteristics of the best hardware implementations. Connections between the designs (e.g. A being an inspiration for B) are also highlighted. Of course, detailed references are provided. This review consists in the following pages, one for each type of primitive.
- List of lightweight blockciphers
- List of lightweight hashfunctions
- List of lightweight streamciphers
- List of lightweight one-pass authenticated ciphers
If you wish to quote this review in an article, you can use this bibtex entry. If you would like to provide any kind of feedback, please contact us at <leo dot perrin at-sign uni dot lu>. We describe the updates to these pages and acknowledge those who pointed out new primitives/attacks on this page.
We designed and implemented a flexible benchmarking framework to evaluate lightweight symmetric primitives in the Internet of Things context.
- Fair Evaluation of Lightweight Cryptographic Systems (FELICS)
- Block ciphers brief results
- Block ciphers detailed results
- Stream ciphers brief results
- Stream ciphers detailed results
We have designed a family of lightweight block ciphers called SPARX. They are ARX-based and, as such, have a lightweight implementation with some inherent resilience against side-channel attacks. They are also Substitution-Permutation Networks for which we can prove bounds on the probability of linear and differential trails, a first for ARX-based ciphers.
The work of Daniel Dinu and Léo Perrin is funded by the Fonds National de la Recherche, Luxembourg (ACRYPT CORE project, ID C12-15-4009992).