lilliput-ae-reference-implementation

Implementations of Lilliput-AE submitted to the NIST LWC standardization process
git clone https://git.kevinlegouguec.net/lilliput-ae-reference-implementation
Log | Files | Refs | README

commit 71c27277df9fa7af077947f262f4b3f248c3dea8
parent 3bb2d4e95f9bc5b419444b8f49046b516d9f1034
Author: Kévin Le Gouguec <kevin.legouguec@airbus.com>
Date:   Wed, 10 Jul 2019 15:22:28 +0200

Quelques reformulations dans le changelog VHDL

Diffstat:
MCHANGELOG.txt | 14++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.txt b/CHANGELOG.txt @@ -89,21 +89,23 @@ See [spec] and [break] changes in reference implementation. Further changes: - Re-write tweakey multiplications to better resemble the specification. (multiplications.py) -add_vhdl --------- +add_vhdltbc +----------- See [spec] and [break] changes in reference implementation. Further changes: -- A simpler file organization was chosen. Lilliput-II only needs encryption, while Lilliput-I needs encryption and decryption, so LilliputTBCencrypt is always used for Lilliput-I and LilliputTBCencryptdecrypt for Lilliput-II. LilliputTBCdecrypt is no longer described because no version uses it. +- Each algorithm variant now contains a single VHDL implementation, add_vhdltbc: + - for Lilliput-I variants, add_vhdltbc corresponds to the former add_vhdltbcencryptdecrypt, + - Lilliput-II variants do not need the decryption part of Lilliput-TBC, therefore add_vhdltbc corresponds to the former add_vdhltbcencrypt. - For Lilliput-I, the inverted multiplications have been updated to match changes to the encryption process: - lane 0: Id => inv(M) - lane 1: inv(M) => inv(M)^2 - lane 2: inv(M)^2 => inv(M)^3 - lane 3: inv(M)^3 => inv(M)^4 - - lane 4: M_R (unchanged) - - lane 5: M_R^2 (unchanged) - - lane 6: M_R^3 (unchanged) + - lane 4: inv(M_R) (unchanged) + - lane 5: inv(M_R)^2 (unchanged) + - lane 6: inv(M_R)^3 (unchanged) (inv_multiplication.vhd) - Merge Sbox in one file.