Reference : Optimized Implementation of SHA-512 for 16-bit MSP430 Microcontrollers
Scientific congresses, symposiums and conference proceedings : Paper published in a book
Engineering, computing & technology : Computer science
Security, Reliability and Trust
Optimized Implementation of SHA-512 for 16-bit MSP430 Microcontrollers
Franck, Christian mailto [University of Luxembourg > Faculty of Science, Technology and Medicine (FSTM) > Department of Computer Science (DCS) >]
Groszschädl, Johann mailto [University of Luxembourg > Faculty of Science, Technology and Medicine (FSTM) > Department of Computer Science (DCS) >]
Innovative Security Solutions for Information Technology and Communications, 14th International Conference, SecITC 2021, Bucharest, Romania, November 25-26, 2021, Revised Selected Papers
Ryan, Peter Y A mailto
Toma, Cristian
Springer Verlag
Lecture Notes in Computer Science, volume ????
14th International Conference on Security for Information Technology and Communications (SecITC 2021)
November 25-26, 2021
[en] IoT Security ; Lightweight Cryptography ; Cryptographic Hash Function ; MSP430 Architecture ; Software Optimization
[en] The enormous growth of the Internet of Things (IoT) in the recent past has fueled a strong demand for lightweight implementations of cryptosystems, i.e. implementations that are efficient enough to run on resource-limited devices like sensor nodes. However, most of today's widely-used cryptographic algorithms, including the AES or the SHA2 family of hash functions, were already designed some 20 years ago and did not take efficiency in restricted environments into account. In this paper, we introduce implementation options and software optimization techniques to reduce the execution time of SHA-512 on 16-bit MSP430 microcontrollers. These optimizations include a novel register allocation strategy for the 512-bit hash state, a fast "on-the-fly" message schedule with low RAM footprint, special pointer arithmetic to avoid the need to copy state words, as well as instruction sequences for multi-bit rotation of 64-bit operands. Thanks to the combination of all these optimization techniques, our hand-written MSP430 Assembler code for the SHA-512 compression function reaches an execution time of roughly 40.6k cycles on an MSP430F1611 microcontroller. Hashing a message of 1000 bytes takes slightly below 338k clock cycles, which corresponds to a hash rate of about 338 cycles/byte. This execution time sets a new speed record for hashing with 256 bits of security on a 16-bit platform and improves the time needed by the fastest C implementations by a factor of 2.3. In addition, our implementation is extremely small in terms of code size (roughly 2.1k bytes) and has a RAM footprint of only 390 bytes.

File(s) associated to this reference

Fulltext file(s):

Limited access
SHA512_for_MSP430_preprint.pdfAuthor preprint407.09 kBRequest a copy

Bookmark and Share SFX Query

All documents in ORBilu are protected by a user license.