diff options
Diffstat (limited to 'traces')
| -rw-r--r-- | traces/traces-ae.patch | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/traces/traces-ae.patch b/traces/traces-ae.patch index c3fd36d..0461861 100644 --- a/traces/traces-ae.patch +++ b/traces/traces-ae.patch @@ -1,8 +1,8 @@ diff --git a/SOUMISSION_NIST/REFERENCE_IMPLEMENTATION/src/ref/lilliput-i.c b/SOUMISSION_NIST/REFERENCE_IMPLEMENTATION/src/ref/lilliput-i.c -index 2754fbb..061a24e 100644 +index 6f869c3..f7bdbde 100644 --- a/SOUMISSION_NIST/REFERENCE_IMPLEMENTATION/src/ref/lilliput-i.c +++ b/SOUMISSION_NIST/REFERENCE_IMPLEMENTATION/src/ref/lilliput-i.c -@@ -15,6 +15,8 @@ http://creativecommons.org/publicdomain/zero/1.0/ +@@ -17,6 +17,8 @@ http://creativecommons.org/publicdomain/zero/1.0/ This file implements Lilliput-AE's nonce-respecting mode based on ΘCB3. */ @@ -11,8 +11,8 @@ index 2754fbb..061a24e 100644 #include <stdbool.h> #include <stdint.h> #include <string.h> -@@ -82,32 +84,54 @@ static void _encrypt_message( - memset(tweak, 0, TWEAK_BYTES); +@@ -104,32 +106,54 @@ static void _encrypt_message( + uint8_t checksum[BLOCK_BYTES]; memset(checksum, 0, BLOCK_BYTES); + fprintf(DUMP, "message encryption\n"); @@ -24,7 +24,7 @@ index 2754fbb..061a24e 100644 + debug_dump_buffer("Mj", BLOCK_BYTES, &M[j*BLOCK_BYTES], 8); xor_into(checksum, &M[j*BLOCK_BYTES]); + debug_dump_buffer("Checksum", BLOCK_BYTES, checksum, 8); - _fill_msg_tweak(0x0, N, j, tweak); + _fill_msg_tweak(0x0, j, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, &M[j*BLOCK_BYTES], &C[j*BLOCK_BYTES]); + debug_dump_buffer("Cj", BLOCK_BYTES, &C[j*BLOCK_BYTES], 8); @@ -34,7 +34,7 @@ index 2754fbb..061a24e 100644 { + fprintf(DUMP, " no padding\n"); + - _fill_msg_tweak(0x1, N, l, tweak); + _fill_msg_tweak(0x1, l, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, checksum, Final); + debug_dump_buffer("Final", BLOCK_BYTES, Final, 8); @@ -52,22 +52,22 @@ index 2754fbb..061a24e 100644 xor_into(checksum, M_rest); + debug_dump_buffer("Checksum", BLOCK_BYTES, checksum, 8); - _fill_msg_tweak(0x4, N, l, tweak); + _fill_msg_tweak(0x4, l, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, _0n, Pad); xor_arrays(rest, &C[l*BLOCK_BYTES], &M[l*BLOCK_BYTES], Pad); + debug_dump_buffer("Pad", BLOCK_BYTES, Pad, 8); + debug_dump_buffer("C*", rest, &C[l*BLOCK_BYTES], 8); - _fill_msg_tweak(0x5, N, l+1, tweak); + _fill_msg_tweak(0x5, l+1, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, checksum, Final); + debug_dump_buffer("Final", BLOCK_BYTES, Final, 8); } } -@@ -129,32 +153,54 @@ static void _decrypt_message( - memset(tweak, 0, TWEAK_BYTES); +@@ -151,32 +175,54 @@ static void _decrypt_message( + uint8_t checksum[BLOCK_BYTES]; memset(checksum, 0, BLOCK_BYTES); + fprintf(DUMP, "message decryption\n"); @@ -77,7 +77,7 @@ index 2754fbb..061a24e 100644 + fprintf(DUMP, " j=%zu\n", j); + + debug_dump_buffer("Cj", BLOCK_BYTES, &C[j*BLOCK_BYTES], 8); - _fill_msg_tweak(0x0, N, j, tweak); + _fill_msg_tweak(0x0, j, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); decrypt(key, tweak, &C[j*BLOCK_BYTES], &M[j*BLOCK_BYTES]); + debug_dump_buffer("Mj", BLOCK_BYTES, &M[j*BLOCK_BYTES], 8); @@ -89,7 +89,7 @@ index 2754fbb..061a24e 100644 { + fprintf(DUMP, " no padding\n"); + - _fill_msg_tweak(0x1, N, l, tweak); + _fill_msg_tweak(0x1, l, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, checksum, Final); + debug_dump_buffer("Final", BLOCK_BYTES, Final, 8); @@ -102,7 +102,7 @@ index 2754fbb..061a24e 100644 uint8_t Pad[BLOCK_BYTES]; + debug_dump_buffer("C*", rest, &C[l*BLOCK_BYTES], 8); - _fill_msg_tweak(0x4, N, l, tweak); + _fill_msg_tweak(0x4, l, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); encrypt(key, tweak, _0n, Pad); + debug_dump_buffer("Pad", BLOCK_BYTES, Pad, 8); @@ -113,7 +113,7 @@ index 2754fbb..061a24e 100644 + debug_dump_buffer("pad10*(M*)", BLOCK_BYTES, M_rest, 8); xor_into(checksum, M_rest); - _fill_msg_tweak(0x5, N, l+1, tweak); + _fill_msg_tweak(0x5, l+1, tweak); + debug_dump_buffer("tweak", TWEAK_BYTES, tweak, 8); + debug_dump_buffer("Checksum", BLOCK_BYTES, checksum, 8); encrypt(key, tweak, checksum, Final); @@ -121,7 +121,7 @@ index 2754fbb..061a24e 100644 } } -@@ -164,7 +210,13 @@ static void _generate_tag( +@@ -186,7 +232,13 @@ static void _generate_tag( uint8_t tag[TAG_BYTES] ) { |
