diff options
| author | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2018-11-26 14:31:13 +0100 |
|---|---|---|
| committer | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2018-11-26 14:31:13 +0100 |
| commit | d81db8049baed22ee866809305d80a138e9ebcca (patch) | |
| tree | 45adf79d0b5688285235c218682a77ecaf40c807 /crypto_aead | |
| parent | db2c7ed005cd201d708b43fd5babb626b9819e31 (diff) | |
| download | lilliput-ae-implem-d81db8049baed22ee866809305d80a138e9ebcca.tar.xz | |
Nettoyage des arguments
Diffstat (limited to 'crypto_aead')
| -rw-r--r-- | crypto_aead/lilliputaei128v1/ref/lilliput-ae-i.c | 63 | ||||
| -rw-r--r-- | crypto_aead/lilliputaei128v1/ref/lilliput-ae.h | 20 | ||||
| -rw-r--r-- | crypto_aead/lilliputaei128v1/ref/test/test-ae-roundtrip.c | 17 |
3 files changed, 51 insertions, 49 deletions
diff --git a/crypto_aead/lilliputaei128v1/ref/lilliput-ae-i.c b/crypto_aead/lilliputaei128v1/ref/lilliput-ae-i.c index d054880..8ec8295 100644 --- a/crypto_aead/lilliputaei128v1/ref/lilliput-ae-i.c +++ b/crypto_aead/lilliputaei128v1/ref/lilliput-ae-i.c @@ -48,7 +48,11 @@ static void _pad10(size_t len, const uint8_t buf[len], uint8_t padded[BLOCK_BYTE } } -static void _fill_ad_tweak(uint8_t prefix, uint64_t block_nb, uint8_t tweak[TWEAK_BYTES]) +static void _fill_ad_tweak( + uint8_t prefix, + uint64_t block_nb, + uint8_t tweak[TWEAK_BYTES] +) { /* The 192-bit tweak is filled as follows: * @@ -71,8 +75,12 @@ static void _fill_ad_tweak(uint8_t prefix, uint64_t block_nb, uint8_t tweak[TWEA tweak[TWEAK_BYTES-1] ^= prefix << 4; } -static void _fill_msg_tweak(uint8_t prefix, const uint8_t N[NONCE_BYTES], - uint64_t block_nb, uint8_t tweak[TWEAK_BYTES]) +static void _fill_msg_tweak( + uint8_t prefix, + const uint8_t N[NONCE_BYTES], + uint64_t block_nb, + uint8_t tweak[TWEAK_BYTES] +) { /* The 192-bit tweak is filled as follows: * @@ -103,8 +111,9 @@ static void _fill_msg_tweak(uint8_t prefix, const uint8_t N[NONCE_BYTES], static void _process_associated_data( const uint8_t key[KEY_BYTES], - size_t A_len, const uint8_t A[A_len], - uint8_t Auth[BLOCK_BYTES] + size_t A_len, + const uint8_t A[A_len], + uint8_t Auth[BLOCK_BYTES] ) { uint8_t Ek_Ai[BLOCK_BYTES]; @@ -135,11 +144,11 @@ static void _process_associated_data( static void _encrypt_message( const uint8_t key[KEY_BYTES], - size_t M_len, const uint8_t M[M_len], + size_t M_len, + const uint8_t M[M_len], const uint8_t N[NONCE_BYTES], - - size_t *C_len, uint8_t C[M_len+BLOCK_BYTES], - uint8_t Final[BLOCK_BYTES] + uint8_t C[M_len+BLOCK_BYTES], + uint8_t Final[BLOCK_BYTES] ) { size_t l = M_len / BLOCK_BYTES; @@ -184,11 +193,11 @@ static void _encrypt_message( static void _decrypt_message( const uint8_t key[KEY_BYTES], - size_t C_len, const uint8_t C[C_len], + size_t C_len, + const uint8_t C[C_len], const uint8_t N[NONCE_BYTES], - - size_t *M_len, uint8_t M[C_len], - uint8_t Final[BLOCK_BYTES] + uint8_t M[C_len], + uint8_t Final[BLOCK_BYTES] ) { } @@ -196,48 +205,48 @@ static void _decrypt_message( static void _generate_tag( const uint8_t final[BLOCK_BYTES], const uint8_t auth[BLOCK_BYTES], - uint8_t tag[TAG_BYTES] + uint8_t tag[TAG_BYTES] ) { } void lilliput_ae_encrypt( - size_t message_len, const uint8_t message[message_len], - size_t auth_data_len, const uint8_t auth_data[auth_data_len], + size_t message_len, + const uint8_t message[message_len], + size_t auth_data_len, + const uint8_t auth_data[auth_data_len], const uint8_t key[KEY_BYTES], const uint8_t nonce[NONCE_BYTES], - - size_t *ciphertext_len, uint8_t ciphertext[message_len+BLOCK_BYTES], - uint8_t tag[TAG_BYTES] + uint8_t ciphertext[message_len], + uint8_t tag[TAG_BYTES] ) { uint8_t auth[BLOCK_BYTES]; _process_associated_data(key, auth_data_len, auth_data, auth); uint8_t final[BLOCK_BYTES]; - _encrypt_message(key, message_len, message, nonce, - ciphertext_len, ciphertext, final); + _encrypt_message(key, message_len, message, nonce, ciphertext, final); _generate_tag(final, auth, tag); } bool lilliput_ae_decrypt( - size_t ciphertext_len, const uint8_t ciphertext[ciphertext_len], - size_t auth_data_len, const uint8_t auth_data[auth_data_len], + size_t ciphertext_len, + const uint8_t ciphertext[ciphertext_len], + size_t auth_data_len, + const uint8_t auth_data[auth_data_len], const uint8_t key[KEY_BYTES], const uint8_t nonce[NONCE_BYTES], const uint8_t tag[TAG_BYTES], - - size_t *message_len, uint8_t message[ciphertext_len] + uint8_t message[ciphertext_len] ) { uint8_t auth[BLOCK_BYTES]; _process_associated_data(key, auth_data_len, auth_data, auth); uint8_t final[BLOCK_BYTES]; - _decrypt_message(key, ciphertext_len, ciphertext, nonce, - message_len, message, final); + _decrypt_message(key, ciphertext_len, ciphertext, nonce, message, final); uint8_t effective_tag[TAG_BYTES]; _generate_tag(final, auth, effective_tag); diff --git a/crypto_aead/lilliputaei128v1/ref/lilliput-ae.h b/crypto_aead/lilliputaei128v1/ref/lilliput-ae.h index 6e9d735..062c71c 100644 --- a/crypto_aead/lilliputaei128v1/ref/lilliput-ae.h +++ b/crypto_aead/lilliputaei128v1/ref/lilliput-ae.h @@ -10,23 +10,25 @@ /* TODO: replace c_len with m_len */ void lilliput_ae_encrypt( - size_t message_len, const uint8_t message[message_len], - size_t auth_data_len, const uint8_t auth_data[auth_data_len], + size_t message_len, + const uint8_t message[message_len], + size_t auth_data_len, + const uint8_t auth_data[auth_data_len], const uint8_t key[KEY_BYTES], const uint8_t nonce[NONCE_BYTES], - - size_t *ciphertext_len, uint8_t ciphertext[message_len+BLOCK_BYTES], - uint8_t tag[TAG_BYTES] + uint8_t ciphertext[message_len], + uint8_t tag[TAG_BYTES] ); bool lilliput_ae_decrypt( - size_t ciphertext_len, const uint8_t ciphertext[ciphertext_len], - size_t auth_data_len, const uint8_t auth_data[auth_data_len], + size_t ciphertext_len, + const uint8_t ciphertext[ciphertext_len], + size_t auth_data_len, + const uint8_t auth_data[auth_data_len], const uint8_t key[KEY_BYTES], const uint8_t nonce[NONCE_BYTES], const uint8_t tag[TAG_BYTES], - - size_t *message_len, uint8_t message[ciphertext_len] + uint8_t message[ciphertext_len] ); diff --git a/crypto_aead/lilliputaei128v1/ref/test/test-ae-roundtrip.c b/crypto_aead/lilliputaei128v1/ref/test/test-ae-roundtrip.c index 4b03efb..a7bd8ed 100644 --- a/crypto_aead/lilliputaei128v1/ref/test/test-ae-roundtrip.c +++ b/crypto_aead/lilliputaei128v1/ref/test/test-ae-roundtrip.c @@ -81,24 +81,22 @@ int main() for (const vector *v=VECTORS; v<ARRAY_END(VECTORS); v++) { uint8_t ciphertext[v->message_len+BLOCK_BYTES]; - size_t ciphertext_len; uint8_t tag[TAG_BYTES]; lilliput_ae_encrypt( v->message_len, v->message, v->auth_len, v->auth, v->key, v->nonce, - &ciphertext_len, ciphertext, + ciphertext, tag ); uint8_t deciphered[v->message_len]; - size_t deciphered_len; bool valid = lilliput_ae_decrypt( - ciphertext_len, ciphertext, + v->message_len, ciphertext, v->auth_len, v->auth, v->key, v->nonce, tag, - &deciphered_len, deciphered + deciphered ); if (!valid) @@ -108,14 +106,7 @@ int main() continue; } - if (deciphered_len != v->message_len) - { - REPORT_DIFFERENCE(v->name, "deciphered plaintext length"); - diff++; - continue; - } - - if (memcmp(deciphered, v->message, deciphered_len) != 0) + if (memcmp(deciphered, v->message, v->message_len) != 0) { REPORT_DIFFERENCE(v->name, "deciphered plaintext"); diff++; |
