A New Look at Counters: Don't Run Like Marathon in a Hundred Meter Race
IEEE Transactions on Computers
In cryptography, counters (classically encoded as bit strings of fixed size for all inputs) are employed to prevent collisions on the inputs of the underlying primitive which helps us to prove the security. In this paper we present a unified notion for counters, called counter function family, and identify some necessary and sufficient conditions on counters which give (possibly) simple proof of security for various counter-based cryptographic schemes. We observe that these conditions are trivially true for the classical counters. We also identify and study two variants of the classical counter which satisfy the security conditions. The first variant has message length dependent counter size, whereas the second variant uses universal coding to generate message length independent counter size. Furthermore, these variants provide better performance for shorter messages. For instance, when the message size is 219 bits, AES-LightMAC with 64 -bit (classical) counter takes 1.51 cycles per byte (cpb), whereas it takes 0.81 cpb and 0.89 cpb for the first and second variant, respectively. We benchmark the software performance of these variants against the classical counter by implementing them in MACs and HAIFA hash function.
Dutta, Avijit; Jha, Ashwin; and Nandi, Mridul, "A New Look at Counters: Don't Run Like Marathon in a Hundred Meter Race" (2017). Journal Articles. 2356.