BLTESTI: Benchmarking Lightweight TinyJAMBU on Embedded Systems for Trusted IoT | IEEE Conference Publication | IEEE Xplore
Scheduled Maintenance: On Monday, 30 June, IEEE Xplore will undergo scheduled maintenance from 1:00-2:00 PM ET (1800-1900 UTC).
On Tuesday, 1 July, IEEE Xplore will undergo scheduled maintenance from 1:00-5:00 PM ET (1800-2200 UTC).
During these times, there may be intermittent impact on performance. We apologize for any inconvenience.

BLTESTI: Benchmarking Lightweight TinyJAMBU on Embedded Systems for Trusted IoT


Abstract:

Embedded systems face an increasing number of attacks, necessitating improved security measures. However, the physical constraints of these devices often limit the use of...Show More

Abstract:

Embedded systems face an increasing number of attacks, necessitating improved security measures. However, the physical constraints of these devices often limit the use of traditional cryptographic techniques. To address this challenge, NIST organized a competition focused on lightweight cryptographic algorithms (LWC) tailored for embedded systems, aiming to minimize resource usage in low-power devices. This paper benchmarks the Rust, C, and Golang programming languages, considering their advantages in memory safety, portability, and concurrency, to implement the LWC algorithm finalist named TinyJAMBU. TinyJAMBU utilizes the non-linear feedback shift register (NLFSR) model as a core security element. The evaluation is conducted on embedded systems and FPGAs to determine the optimal strategy for mapping LWC cryptographic algorithms onto resource-constrained devices. Among the three languages, the C-based implementation achieves the highest runtime efficiency, while TinyGo demonstrates the lowest power consumption. Rust falls between the two, indicating trade-offs associated with each language. Despite its larger memory footprint of 73kB, the C-based implementation of TinyJAMBU outperforms other language implementations, achieving a faster runtime of ≈ 81 seconds for the same algorithm and 4-byte message size. Golang exhibits the smallest memory footprint of 19kB, while Rust’s memory footprint falls between the other two at 66kB. Furthermore, implementing TinyJAMBU on an FPGA using software-hardware partitioning with MicroBlaze takes ≈ 6.30 seconds to complete 10,000 encryption and decryption cycles, consuming around 1.09W of power. Although employing a proposed NLFSR co-processor with MicroBlaze for the 128-bit version of TinyJAMBU may not be the fastest approach, the reconfigurable nature of FPGAs allows for replicating the co-processor multiple times, offering significant advantages over the current state-of-the-art architecture of embedded systems.
Date of Conference: 05-08 September 2023
Date Added to IEEE Xplore: 22 September 2023
ISBN Information:

ISSN Information:

Conference Location: Santa Clara, CA, USA

Funding Agency:


Contact IEEE to Subscribe

References

References is not available for this document.