Abstract address types into macro constants

This commit is contained in:
Joost Rijneveld 2017-10-24 16:20:31 +02:00
джерело ae49c04807
коміт 4111393912
Не вдалося знайти GPG ключ що відповідає даному підпису
Ідентифікатор GPG ключа: A4FE39CF49CBC553
3 змінених файлів з 16 додано та 12 видалено

@ -3,6 +3,10 @@
#include <stdint.h>
#define XMSS_ADDR_TYPE_OTS 0
#define XMSS_ADDR_TYPE_LTREE 1
#define XMSS_ADDR_TYPE_HASHTREE 2
void set_layer_addr(uint32_t addr[8], uint32_t layer);
void set_tree_addr(uint32_t addr[8], uint64_t tree);

@ -201,9 +201,9 @@ int xmss_core_sign_open(const xmss_params *params,
uint32_t ltree_addr[8] = {0};
uint32_t node_addr[8] = {0};
set_type(ots_addr, 0);
set_type(ltree_addr, 1);
set_type(node_addr, 2);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
set_type(ltree_addr, XMSS_ADDR_TYPE_LTREE);
set_type(node_addr, XMSS_ADDR_TYPE_HASHTREE);
*mlen = smlen - params->bytes;
@ -264,9 +264,9 @@ int xmssmt_core_sign_open(const xmss_params *params,
uint32_t ltree_addr[8] = {0};
uint32_t node_addr[8] = {0};
set_type(ots_addr, 0);
set_type(ltree_addr, 1);
set_type(node_addr, 2);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
set_type(ltree_addr, XMSS_ADDR_TYPE_LTREE);
set_type(node_addr, XMSS_ADDR_TYPE_HASHTREE);
*mlen = smlen - params->bytes;

@ -39,9 +39,9 @@ static void treehash(const xmss_params *params,
copy_subtree_addr(ltree_addr, subtree_addr);
copy_subtree_addr(node_addr, subtree_addr);
set_type(ots_addr, 0);
set_type(ltree_addr, 1);
set_type(node_addr, 2);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
set_type(ltree_addr, XMSS_ADDR_TYPE_LTREE);
set_type(node_addr, XMSS_ADDR_TYPE_HASHTREE);
for (idx = 0; idx < (uint32_t)(1 << params->tree_height); idx++) {
/* Add the next leaf node to the stack. */
@ -119,7 +119,7 @@ int xmss_core_sign(const xmss_params *params,
unsigned char idx_bytes_32[32];
uint32_t ots_addr[8] = {0};
set_type(ots_addr, 0);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
/* Read and use the current index from the secret key. */
idx = (unsigned long)bytes_to_ull(sk, params->index_len);
@ -212,7 +212,7 @@ int xmssmt_core_sign(const xmss_params *params,
uint32_t idx_leaf;
uint32_t ots_addr[8] = {0};
set_type(ots_addr, 0);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
/* Read and use the current index from the secret key. */
idx = (unsigned long)bytes_to_ull(sk, params->index_len);
@ -233,7 +233,7 @@ int xmssmt_core_sign(const xmss_params *params,
hash_message(params, mhash, sm, pub_root, idx, m, mlen);
sm += params->n;
set_type(ots_addr, 0);
set_type(ots_addr, XMSS_ADDR_TYPE_OTS);
for (i = 0; i < params->d; i++) {
idx_leaf = (idx & ((1 << params->tree_height)-1));