Reference implementation ======================== This folder contains the reference implementation for Lilliput-AE. It is organized as follows: `src` ----- Contains parameter-independent code for the reference implementation: - `lilliput-ae.h`: main API - `lilliput-ae-i.c`: implementation of Lilliput-Ⅰ (ΘCB3-based) - `lilliput-ae-i.c`: implementation of Lilliput-Ⅱ (SCT-2-based) - `ae-common.h`: internal helper functions used by both AE schemes - `tweakey.*`: implementation of Lilliput-TBC's tweakey schedule - `cipher.*`: implementation of the tweakable block-cipher Lilliput-TBC - `constants.*`: tabulated data for - the tweakey schedule's permutation h - the tweakey schedule's multiplication sequences P~0~ to P~5~ - Lilliput-TBC's S-box - `parameters.h`: byte sizes for inputs and outputs (depends on parameter-dependent `_parameters.h` files) Also contains some support files: - `common.mk`: Makefile recipes to compile and test the implementation - `debug.h`: helper functions to ease debugging and dump intermediate values