summaryrefslogtreecommitdiff
path: root/README.md
blob: fb20c4ca598b0b817a7d73e95fc5edbf6d1b04f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Reference implementation
========================

This folder contains the reference implementation for Lilliput-AE.

It is organized as follows:

`src`
-----

Contains parameter-independent code.

- `lilliput-ae.h`: main API
- `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)
- `lilliput-ae-i.c`: implementation of Lilliput-Ⅰ (ΘCB3-based)
- `lilliput-ae-i.c`: implementation of Lilliput-Ⅱ (SCT-2-based)
- `ae-common.h`: helper functions for AE schemes