International Association for Cryptologic Research

International Association
for Cryptologic Research

Transactions on Cryptographic Hardware and Embedded Systems, Volume 2021

The Area-Latency Symbiosis: Towards Improved Serial Encryption Circuits


README

The Area-Latency Symbiosis

This repository contains the full source code alongside test vectors for all investigated schemes as part of the TCHES 2021 paper.

The Area-Latency Symbiosis: Towards Improved Serial Encryption Circuits

Fatih Balli, Andrea Caforio and Subhadeep Banik

LASEC, EPFL

Requirements

python3, gcc, g++, GHDL (https://github.com/ghdl/ghdl)

Details

Each folder given below contains a Makefile which can be used to run the testbench with GHDL. This archive does not contain the scripts that are used with Synopsys tools.

Following folders contain encryption-only block cipher implementations:

aes = AES-128 (bit serial)
aes_8bit = AES-128 (byte-serial)
gift = GIFT-128 (bit-serial)
giftstar = GIFT-128b (bit-serial) (see eprint.iacr.org/2017/622.pdf Appendix A)
giftstar4 = GIFT-128b (nibble-serial) (see eprint.iacr.org/2017/622.pdf Appendix A)
skinnyz1 = SKINNY-128-128 (bit-serial)
skinnyz1_8bit = SKINNY-128-128 (byte-serial)
skinnyz2 = SKINNY-128-256 (bit-serial)
skinnyz2_8bit = SKINNY-128-256 (byte-serial)
skinnyz3 = SKINNY-128-384 (bit-serial)
skinnyz3_8bit = SKINNY-128-384 (byte-serial)

Following folders contain encryption-only authenticated encryption implementations:

romulusN1 = Romulus-N1 (bit-serial)
romulusN1_8bit = Romulus-N1 (byte-serial)
romulusN3 = Romulus-N3 (bit-serial)
skinny-aead1 = SKINNY-AEAD M1 (bit-serial)
skinny-aead8 = SKINNY-AEAD M1 (byte-serial)
sundae = SUNDAE-GIFT-96 (bit-serial)
sundae4 = SUNDAE-GIFT-96 (nibble-serial)