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 3bb2d4e95f9bc5b419444b8f49046b516d9f1034
parent 999b462bb9926d655c753263679227a8eac34fe8
Author: Kévin Le Gouguec <kevin.legouguec@airbus.com>
Date:   Tue,  9 Jul 2019 17:32:37 +0200

Ajustements rédactionnels

Diffstat:
MCHANGELOG.txt | 22+++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/CHANGELOG.txt b/CHANGELOG.txt @@ -94,34 +94,34 @@ add_vhdl See [spec] and [break] changes in reference implementation. Further changes: -- A more synthetical organisation was chosen. Indeed, Lilliput-II only need encryption and Lilliput-I need encryption and decryption, so LilliputTBCencrypt is always used for lilliput-I and LilliputTBCencryptdecrypt for Lilliput-II. And LilliputTBCdecrypt is no longer described because no version uses it. +- 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. -- For Lilliput-I we change coefficients in tweakey schedule to ensure lane 0 is updated between each decryption round: +- 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: M_R (unchanged) + - lane 5: M_R^2 (unchanged) + - lane 6: M_R^3 (unchanged) (inv_multiplication.vhd) - - Merge Sbox in one file. +- Merge Sbox in one file. (sbox.vhd, inner_sbox_a.vhd, inner_sbox_b, vhd,inner_sbox_c.vhd) - - Create registers in file roundexe_lilliput.vhd. +- Create registers in file roundexe_lilliput.vhd. (state_key_register.vhd, state_register.vhd, roundexe_lilliput) - - Reduction of the number of signals. +- Reduction of the number of signals. (chiffrement.vhd) - - Add self-checking testbench. +- Add self-checking testbench. (top_tb.vhd) - - Pipeline RoundTweakey extraction and round function. +- Pipeline RoundTweakey extraction and round function. (roundexe_lilliput.vhd, machine_etat_chiffrement.vhd) - - Isolate input and output from critical path. +- Isolate input and output from critical path. (roundexe_lilliput.vhd, machine_etat_chiffrement.vhd)