From 51108b6536117c384c907be435189d8c50019e0c Mon Sep 17 00:00:00 2001 From: Kévin Le Gouguec Date: Wed, 28 Nov 2018 17:00:18 +0100 Subject: Ajout de générateurs de traces pour la partie TBC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crypto_aead/lilliputaei192v1/ref/Makefile | 3 +- .../lilliputaei192v1/ref/test/traces-tbc-192-i.c | 62 ++++++++++++++++++++++ crypto_aead/lilliputaeii192v1/ref/Makefile | 3 +- .../lilliputaeii192v1/ref/test/traces-tbc-192-ii.c | 61 +++++++++++++++++++++ 4 files changed, 127 insertions(+), 2 deletions(-) create mode 100644 crypto_aead/lilliputaei192v1/ref/test/traces-tbc-192-i.c create mode 100644 crypto_aead/lilliputaeii192v1/ref/test/traces-tbc-192-ii.c diff --git a/crypto_aead/lilliputaei192v1/ref/Makefile b/crypto_aead/lilliputaei192v1/ref/Makefile index 49b05f3..c01fde4 100644 --- a/crypto_aead/lilliputaei192v1/ref/Makefile +++ b/crypto_aead/lilliputaei192v1/ref/Makefile @@ -1,11 +1,12 @@ tests = test-ae-roundtrip -traces = traces-ae-192-i +traces = traces-ae-192-i traces-tbc-192-i include src/common.mk results/test-ae-roundtrip: results/src/lilliput-ae-i.o results/src/cipher.o results/src/tweakey.o results/src/constants.o | results results/traces-ae-192-i: results/src/lilliput-ae-i.o results/src/cipher.o results/src/tweakey.o results/src/constants.o | results/src +results/traces-tbc-192-i: results/src/cipher.o results/src/tweakey.o results/src/constants.o | results/src results/test-ae-roundtrip.o: src/lilliput-ae.h diff --git a/crypto_aead/lilliputaei192v1/ref/test/traces-tbc-192-i.c b/crypto_aead/lilliputaei192v1/ref/test/traces-tbc-192-i.c new file mode 100644 index 0000000..251141e --- /dev/null +++ b/crypto_aead/lilliputaei192v1/ref/test/traces-tbc-192-i.c @@ -0,0 +1,62 @@ +#include +#include + +#include "cipher.h" + +#include "debug.h" +#include "test-helpers.h" + + +FILE *DUMP; + + +struct vector +{ + char *name; + uint8_t key[KEY_BYTES]; + uint8_t tweak[TWEAK_BYTES]; + uint8_t message[BLOCK_BYTES]; +}; + +typedef struct vector vector; + + +const vector VECTORS[] = { + { + .name = "order", + .key = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }, + .tweak = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }, + .message = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + } + } +}; + + +int main() +{ + for (const vector *v=VECTORS; vname); + debug_dump_buffer("message", BLOCK_BYTES, v->message, 0); + debug_dump_buffer("key", KEY_BYTES, v->key, 0); + debug_dump_buffer("tweak", TWEAK_BYTES, v->tweak, 0); + + uint8_t ciphertext[BLOCK_BYTES]; + + lilliput_tbc_encrypt(v->key, v->tweak, v->message, ciphertext); + + debug_dump_buffer("ciphertext", BLOCK_BYTES, ciphertext, 0); + + fclose(DUMP); + } +} diff --git a/crypto_aead/lilliputaeii192v1/ref/Makefile b/crypto_aead/lilliputaeii192v1/ref/Makefile index d1c1106..a421206 100644 --- a/crypto_aead/lilliputaeii192v1/ref/Makefile +++ b/crypto_aead/lilliputaeii192v1/ref/Makefile @@ -1,11 +1,12 @@ tests = test-ae-roundtrip -traces = traces-ae-192-ii +traces = traces-ae-192-ii traces-tbc-192-ii include src/common.mk results/test-ae-roundtrip: results/src/lilliput-ae-ii.o results/src/cipher.o results/src/tweakey.o results/src/constants.o | results results/traces-ae-192-ii: results/src/lilliput-ae-ii.o results/src/cipher.o results/src/tweakey.o results/src/constants.o | results/src +results/traces-tbc-192-ii: results/src/cipher.o results/src/tweakey.o results/src/constants.o | results/src results/test-ae-roundtrip.o: src/lilliput-ae.h diff --git a/crypto_aead/lilliputaeii192v1/ref/test/traces-tbc-192-ii.c b/crypto_aead/lilliputaeii192v1/ref/test/traces-tbc-192-ii.c new file mode 100644 index 0000000..5f5929f --- /dev/null +++ b/crypto_aead/lilliputaeii192v1/ref/test/traces-tbc-192-ii.c @@ -0,0 +1,61 @@ +#include +#include + +#include "cipher.h" + +#include "debug.h" +#include "test-helpers.h" + + +FILE *DUMP; + + +struct vector +{ + char *name; + uint8_t key[KEY_BYTES]; + uint8_t tweak[TWEAK_BYTES]; + uint8_t message[BLOCK_BYTES]; +}; + +typedef struct vector vector; + + +const vector VECTORS[] = { + { + .name = "order", + .key = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }, + .tweak = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + }, + .message = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + } + } +}; + + +int main() +{ + for (const vector *v=VECTORS; vname); + debug_dump_buffer("message", BLOCK_BYTES, v->message, 0); + debug_dump_buffer("key", KEY_BYTES, v->key, 0); + debug_dump_buffer("tweak", TWEAK_BYTES, v->tweak, 0); + + uint8_t ciphertext[BLOCK_BYTES]; + + lilliput_tbc_encrypt(v->key, v->tweak, v->message, ciphertext); + + debug_dump_buffer("ciphertext", BLOCK_BYTES, ciphertext, 0); + + fclose(DUMP); + } +} -- cgit v1.2.3