diff options
| author | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-02-20 14:51:56 +0100 |
|---|---|---|
| committer | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-02-20 17:21:58 +0100 |
| commit | 96ea916b2600a07f12818a1c4438eed1be7a5356 (patch) | |
| tree | 3666560df91f5faf2a566c756e5e1dd27ce291ec /src | |
| parent | 5689a35ba9a6821601ec71792a19bc6034be2dad (diff) | |
| download | lilliput-ae-implem-96ea916b2600a07f12818a1c4438eed1be7a5356.tar.xz | |
Adaptation du code de α₂
Diffstat (limited to 'src')
| -rw-r--r-- | src/add_tweakeyunrolled/tweakey.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/add_tweakeyunrolled/tweakey.c b/src/add_tweakeyunrolled/tweakey.c index 348de51..a5b88a8 100644 --- a/src/add_tweakeyunrolled/tweakey.c +++ b/src/add_tweakeyunrolled/tweakey.c @@ -96,12 +96,15 @@ static void _multiply_M(const uint8_t x[LANE_BYTES], uint8_t y[LANE_BYTES]) static void _multiply_M2(const uint8_t x[LANE_BYTES], uint8_t y[LANE_BYTES]) { + uint8_t x_M_5 = x[5]<<3 ^ x[4]; + uint8_t x_M_4 = x[4]>>3 ^ x[3]; + y[7] = x[5]; - y[6] = x[5]<<3 ^ x[4]; - y[5] = x[5]<<6 ^ _M1(x[4]) ^ x[3]; - y[4] = x[4]>>6 ^ x[3]>>3 ^ x[2]; - y[3] = x[6]<<2 ^ x[1]; - y[2] = x[5]<<2 ^ x[0]; + y[6] = x_M_5; + y[5] = x_M_5<<3 ^ x_M_4; + y[4] = x_M_4>>3 ^ x[2]; + y[3] = x[6]<<2 ^ x[1]; + y[2] = x[5]<<2 ^ x[0]; y[1] = x[7]; y[0] = x[6]; } |
