From e0e6fe9aebbdf78761fd457a3fca0e62ee594254 Mon Sep 17 00:00:00 2001 From: Ivan Deniskin <ivanmordwin@yandex.ru> Date: Wed, 23 May 2018 18:55:22 +0300 Subject: [PATCH] Little changes --- client/dap_client_internal.c | 4 +--- crypto/dap_enc_msrln16.c | 8 ++++++++ crypto/dap_enc_msrln16.h | 1 + 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/client/dap_client_internal.c b/client/dap_client_internal.c index c9d9366..ea59028 100644 --- a/client/dap_client_internal.c +++ b/client/dap_client_internal.c @@ -429,9 +429,7 @@ void m_enc_init_response(dap_client_t * a_client, void * a_response,size_t a_res dap_enc_base64_decode(msg_index+1,msg_size,encoded_msg); dap_enc_msrln16_key_t* msrln16_key = DAP_ENC_KEY_TYPE_RLWE_MSRLN16(s_key_domain); OQS_KEX_rlwe_msrln16_alice_1(msrln16_key->kex, msrln16_key->private_key, encoded_msg, 2048,&msrln16_key->public_key,&msrln16_key->public_length); - uint8_t s; - for(int i=0; i < msrln16_key->public_length;i++) - s = msrln16_key->public_key[i]; + aes_key_from_msrln_pub(s_key_domain); free(encoded_key); free(encoded_msg); l_client_internal->stage_status = DAP_CLIENT_STAGE_STATUS_DONE; diff --git a/crypto/dap_enc_msrln16.c b/crypto/dap_enc_msrln16.c index 418ceac..61bc3eb 100644 --- a/crypto/dap_enc_msrln16.c +++ b/crypto/dap_enc_msrln16.c @@ -224,3 +224,11 @@ size_t dap_enc_msrln16_encode(OQS_KEX *k, void **alice_priv, uint8_t **alice_msg } PRINT_HEX_STRING("Alice message", alice_msg, alice_msg_len);*/ } + + +void aes_key_from_msrln_pub(dap_enc_key_t* key){ + //TODO: More difflicult aes generation + dap_enc_msrln16_key_t* msrln_key = DAP_ENC_KEY_TYPE_RLWE_MSRLN16(key); + key->data = (unsigned char *)malloc(16); + memcpy(key->data,msrln_key->public_key,16); +} diff --git a/crypto/dap_enc_msrln16.h b/crypto/dap_enc_msrln16.h index a9f2225..583ef4e 100644 --- a/crypto/dap_enc_msrln16.h +++ b/crypto/dap_enc_msrln16.h @@ -46,5 +46,6 @@ void dap_enc_msrln16_key_delete(struct dap_enc_key* a_key); size_t dap_enc_msrln16_decode(OQS_KEX *k, const uint8_t *alice_msg, const size_t alice_msg_len, uint8_t **bob_msg, size_t *bob_msg_len, uint8_t **key, size_t *key_len); size_t dap_enc_msrln16_encode(OQS_KEX *k, void **alice_priv, uint8_t **alice_msg, size_t *alice_msg_len); //size_t dap_enc_msrln16_encode(dap_enc_key_t* a_key, const void * a_in, size_t a_in_size,void * a_out); +void aes_key_from_msrln_pub(dap_enc_key_t* key); #endif -- GitLab