Abstract

Energy optimization is an important design aspect of lightweight cryptography. Since low energy ciphers drain less battery, they are invaluable components of devices that operate on a tight energy budget such as handheld devices or RFID tags. At Asiacrypt 2015, Banik et al. presented the block cipher family Midori which was designed to optimize the energy consumed per encryption and which reduces the energy consumption by more than 30% compared to previous block ciphers. However, if one has to encrypt/decrypt longer streams of data, i.e. for bulk data encryption/decryption, it is expected that a stream cipher should perform even better than block ciphers in terms of energy required to encrypt. In this paper, we address the question of designing low energy stream ciphers. To this end, we analyze for common stream cipher design components their impact on the energy consumption. Based on this, we give arguments why indeed stream ciphers allow for encrypting long data streams with less energy than block ciphers and validate our findings by implementations. Afterwards, we use the analysis results to identify energy minimizing design principles for stream ciphers.

Highlights

  • The field of lightweight cryptography has seen a number of cipher proposals in the past few years, with block ciphers like CLEFIA [SSA+07], KATAN [CDK09], Klein [GNL11], LED [GPPR11], Midori [BBI+15], PRESENT [BKL+07], Piccolo [SIH+11], PRINCE [BCG+12], SIMON/SPECK [BSS+13] and stream ciphers like Lizard [HKM17] and Plantlet [MAM16] to name a few

  • We argue that for battery driven devices that run on tight battery budgets like handheld devices, medical implants or RFID tags, a more relevant parameter is the energy consumption

  • The authors concluded that the energy consumed for encrypting one block of plaintext for any r-round unrolled implementation had a quasi-quadratic form (a, b, c are constants and R is the number of iterations of the round function prescribed for the design): Er = ·

Read more

Summary

Motivation

The field of lightweight cryptography has seen a number of cipher proposals in the past few years, with block ciphers like CLEFIA [SSA+07], KATAN [CDK09], Klein [GNL11], LED [GPPR11], Midori [BBI+15], PRESENT [BKL+07], Piccolo [SIH+11], PRINCE [BCG+12], SIMON/SPECK [BSS+13] and stream ciphers like Lizard [HKM17] and Plantlet [MAM16] to name a few. The authors concluded that for block ciphers with lightweight round functions like PRESENT and SIMON, r = 2 was the optimal configuration, whereas for “heavier” round functions like in AES and Noekeon, r = 1 was optimal Building on these ideas, the block cipher family Midori was proposed in [BBI+15] that optimized the energy consumption per encryption. The number of clock cycles required to encrypt a given amount of plaintext drops linearly with the level of unrolling and so does the energy required to perform the encryption operation This makes stream cipher promising candidates for low energy encryption. A two-round unrolled Grain v1 circuit, which performs 2 round operations in one clock cycle, has an area of around 1200 GE and an average power consumption of around 41 uW This circuit requires only 1+80+32=113 clock cycles to encrypt 64-bit data, and so the energy requirement is only around 463 pJ. For a cipher like Grain v1 which was designed to allow for efficient unrolling of up to 16 rounds, we expect the trend to persist for at least up to 16th degree of unrolling and perhaps beyond that as well

Contribution
Organization
Energy-Impact of Design Components
Frequency of Operation
Architecture
Kreyvium
Fibonacci Configuration f0
Lizard
Grain-128
Unrolling Rounds
Unrolling in RTL4
Midori64 1 1542
Lessons learnt
Conclusion
Findings
A Unrolling in RTL
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call