10 #include "xmss_wots.h"
16 unsigned long long subtree;
32 unsigned int index_len;
37 unsigned int next_idx;
38 unsigned int stackusage;
39 unsigned char completed;
45 unsigned int stackoffset;
46 unsigned char *stacklevels;
49 treehash_inst *treehash;
50 unsigned char *retain;
51 unsigned int next_leaf;
58 void xmss_set_bds_state(bds_state *state,
unsigned char *stack,
int stackoffset,
unsigned char *stacklevels,
unsigned char *auth,
unsigned char *keep, treehash_inst *treehash,
unsigned char *retain,
int next_leaf);
63 int xmss_set_params(xmss_params *params,
int n,
int h,
int w,
int k);
70 int xmssmt_set_params(xmssmt_params *params,
int n,
int h,
int d,
int w,
int k);
76 int xmss_keypair(
unsigned char *pk,
unsigned char *sk, bds_state *state, xmss_params *params);
84 int xmss_sign(
unsigned char *sk, bds_state *state,
unsigned char *sig_msg,
unsigned long long *sig_msg_len,
const unsigned char *msg,
unsigned long long msglen,
const xmss_params *params);
90 int xmss_sign_open(
unsigned char *msg,
unsigned long long *msglen,
const unsigned char *sig_msg,
unsigned long long sig_msg_len,
const unsigned char *pk,
const xmss_params *params);
97 int xmssmt_keypair(
unsigned char *pk,
unsigned char *sk, bds_state *states,
unsigned char *wots_sigs, xmssmt_params *params);
105 int xmssmt_sign(
unsigned char *sk, bds_state *state,
unsigned char *wots_sigs,
unsigned char *sig_msg,
unsigned long long *sig_msg_len,
const unsigned char *msg,
unsigned long long msglen,
const xmssmt_params *params);
109 int xmssmt_sign_open(
unsigned char *msg,
unsigned long long *msglen,
const unsigned char *sig_msg,
unsigned long long sig_msg_len,
const unsigned char *pk,
const xmssmt_params *params);