In this paper, we define the Lightweight Cryptography (LWC)
Hardware Application Programming Interface (API) for the implementations
of lightweight authenticated ciphers, hash functions, and cores
combining both functionalities. In particular, our API is intended to meet
the requirements of all candidates submitted to the NIST Lightweight
Cryptography standardization process. The major parts of our specification
include minimum compliance criteria, interface, communication
protocol, and timing characteristics supported by the LWC core. All
of these criteria have been defined with the goals of guaranteeing (a)
compatibility among implementations of the same algorithm by different
designers, and (b) fair benchmarking of hardware cores implementing an
authenticated cipher, a hash function, or both functionalities. Since 2016,
a similar API has been successfully used to implement and benchmark
all candidates qualified to Rounds 2 and 3 of the CAESAR competition
for authenticated ciphers.
«
In this paper, we define the Lightweight Cryptography (LWC)
Hardware Application Programming Interface (API) for the implementations
of lightweight authenticated ciphers, hash functions, and cores
combining both functionalities. In particular, our API is intended to meet
the requirements of all candidates submitted to the NIST Lightweight
Cryptography standardization process. The major parts of our specification
include minimum compliance criteria, interface, communication
protocol, and t...
»