xref: /freebsd/crypto/openssh/xmss_hash_address.h (revision 5ca8e32633c4ffbbcd6762e5888b6a4ba0708c6c)
1 #ifdef WITH_XMSS
2 /* $OpenBSD: xmss_hash_address.h,v 1.2 2018/02/26 03:56:44 dtucker Exp $ */
3 /*
4 hash_address.h version 20160722
5 Andreas Hülsing
6 Joost Rijneveld
7 Public domain.
8 */
9 
10 #ifdef HAVE_STDINT_H
11 #include <stdint.h>
12 #endif
13 
14 void setLayerADRS(uint32_t adrs[8], uint32_t layer);
15 
16 void setTreeADRS(uint32_t adrs[8], uint64_t tree);
17 
18 void setType(uint32_t adrs[8], uint32_t type);
19 
20 void setKeyAndMask(uint32_t adrs[8], uint32_t keyAndMask);
21 
22 // OTS
23 
24 void setOTSADRS(uint32_t adrs[8], uint32_t ots);
25 
26 void setChainADRS(uint32_t adrs[8], uint32_t chain);
27 
28 void setHashADRS(uint32_t adrs[8], uint32_t hash);
29 
30 // L-tree
31 
32 void setLtreeADRS(uint32_t adrs[8], uint32_t ltree);
33 
34 // Hash Tree & L-tree
35 
36 void setTreeHeight(uint32_t adrs[8], uint32_t treeHeight);
37 
38 void setTreeIndex(uint32_t adrs[8], uint32_t treeIndex);
39 
40 #endif /* WITH_XMSS */
41