summaryrefslogtreecommitdiff
path: root/src/add_felicsref
diff options
context:
space:
mode:
authorGaetan Leplus <gaetan.leplus@airbus.com>2019-07-05 16:16:19 +0200
committerGaetan Leplus <gaetan.leplus@airbus.com>2019-07-05 16:16:19 +0200
commita432c19745907a96303b3a25111e0fd622202e0c (patch)
tree3ac352a3598fa444d45695dbb2b4cee63698ac57 /src/add_felicsref
parent92893d79b36c9fb5a90644b82d16d9fa2563feb1 (diff)
parent4f58d99e11e1c412a600f39f32a8d181765f0246 (diff)
downloadlilliput-ae-implem-a432c19745907a96303b3a25111e0fd622202e0c.tar.xz
Merge remote-tracking branch 'origin/master' into fix-vhdltbc
Diffstat (limited to 'src/add_felicsref')
-rw-r--r--src/add_felicsref/cipher.c4
-rw-r--r--src/add_felicsref/tweakey.c9
2 files changed, 6 insertions, 7 deletions
diff --git a/src/add_felicsref/cipher.c b/src/add_felicsref/cipher.c
index 7de0a08..59bc5d8 100644
--- a/src/add_felicsref/cipher.c
+++ b/src/add_felicsref/cipher.c
@@ -150,7 +150,7 @@ void lilliput_tbc_encrypt(
uint8_t RTK[ROUND_TWEAKEY_BYTES];
tweakey_state_init(TK, key, tweak);
- for (unsigned i=0; i<ROUNDS-1; i++)
+ for (size_t i=0; i<ROUNDS-1; i++)
{
tweakey_state_extract(TK, i, RTK);
_one_round_egfn(ciphertext, RTK, PERMUTATION_ENCRYPTION);
@@ -174,7 +174,7 @@ void lilliput_tbc_decrypt(
uint8_t RTK[ROUNDS][ROUND_TWEAKEY_BYTES];
_compute_round_tweakeys(key, tweak, RTK);
- for (uint8_t i=0; i<ROUNDS-1; i++)
+ for (size_t i=0; i<ROUNDS-1; i++)
{
_one_round_egfn(X, RTK[ROUNDS-1-i], PERMUTATION_DECRYPTION);
}
diff --git a/src/add_felicsref/tweakey.c b/src/add_felicsref/tweakey.c
index 18a7792..47badde 100644
--- a/src/add_felicsref/tweakey.c
+++ b/src/add_felicsref/tweakey.c
@@ -81,11 +81,10 @@ static void _multiply(uint8_t TKj[LANE_BYTES], matrix_multiplication alpha)
void tweakey_state_update(uint8_t TK[TWEAKEY_BYTES])
{
- /* Skip lane 0, as it is multiplied by the identity matrix. */
-
- _multiply(TK + 1*LANE_BYTES, _multiply_M);
- _multiply(TK + 2*LANE_BYTES, _multiply_M2);
- _multiply(TK + 3*LANE_BYTES, _multiply_M3);
+ _multiply(TK + 0*LANE_BYTES, _multiply_M);
+ _multiply(TK + 1*LANE_BYTES, _multiply_M2);
+ _multiply(TK + 2*LANE_BYTES, _multiply_M3);
+ _multiply(TK + 3*LANE_BYTES, _multiply_M4);
#if LANES_NB >= 5
_multiply(TK + 4*LANE_BYTES, _multiply_MR);