diff options
| author | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-07-04 17:13:57 +0200 |
|---|---|---|
| committer | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-07-04 17:13:57 +0200 |
| commit | 3d1334d6a9eb091b457f068033071f97d8758941 (patch) | |
| tree | ce7a28187e7c407f6fa56bf4ff4ed29245f8b484 /CHANGELOG.txt | |
| parent | 6589f3ef20f8f93168be49135764764cd0c02a23 (diff) | |
| parent | c670bbe78ea9bc18c9772ba5804f610937560d5f (diff) | |
| download | lilliput-ae-implem-3d1334d6a9eb091b457f068033071f97d8758941.tar.xz | |
Merge branch 'fix-tweakey-m4'
Diffstat (limited to 'CHANGELOG.txt')
| -rw-r--r-- | CHANGELOG.txt | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt index d836ba6..cc38a27 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,8 +1,79 @@ v1.1 ==== +ref +--- + +### Fixes + +These modifications change the algorithm's output. + +- Change alpha coefficients in tweakey schedule to ensure lane 0 is updated between each round: + - lane 0: Id => M + - lane 1: M => M^2 + - lane 2: M^2 => M^3 + - lane 3: M^3 => M^4 + - lane 4: M_R (unchanged) + - lane 5: M_R^2 (unchanged) + - lane 6: M_R^3 (unchanged) + (multiplications.h, tweakey.c) + +### Cleanups + +These modifications are structural and/or stylistic and do not change the algorithm's ouptut. + +- Introduce helper function copy_block_index() to make tweak-building functions more legible. + (lilliput-ae-utils.h, lilliput-i.c, lilliput-ii.c) + +- Initialize ΘCB3 tweak with nonce instead of copying the latter into the latter repeatedly. + (lilliput-i.c) + +- Re-write _nonlinear_layer() and _linear_layer() functions to better resemble the specification. + (cipher.c) + +- Extract tweakey multiplications into their own header file, so that other implementations can make more targeted changes. + (constants.h, multiplications.h, tweakey.c) + +add_threshold +------------- + +### Fixes + +See reference implementation. + +### Cleanups + +See reference implementation. Further cleanups: + +- Use size_t to iterate on arrays in lilliput_tbc_encrypt() and lilliput_tbc_decrypt(). + (cipher.c) + +- Add constant macros KEY_LANES_NB and TWEAK_LANES_NB to make tweakey schedule code more legible. + (tweakey.c) + +add_tweakeyloop +--------------- + +See reference implementation. + +add_python +---------- + +### Fixes + +See reference implementation. + +### Cleanups + +- Re-write tweakey multiplications to better resemble the specification. + (multiplications.py) + +add_vhdl +-------- + TODO + v1.0 ==== |
