25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.1 KiB

  1. #ifndef XMSS_HASH_H
  2. #define XMSS_HASH_H
  3. #include <stdint.h>
  4. #include "params.h"
  5. void addr_to_bytes(unsigned char *bytes, const uint32_t addr[8]);
  6. int prf(const xmss_params *params,
  7. unsigned char *out, const unsigned char in[32],
  8. const unsigned char *key);
  9. int prf_keygen(const xmss_params *params,
  10. unsigned char *out, const unsigned char *in,
  11. const unsigned char *key);
  12. int h_msg(const xmss_params *params,
  13. unsigned char *out,
  14. const unsigned char *in, unsigned long long inlen,
  15. const unsigned char *key, const unsigned int keylen);
  16. int thash_h(const xmss_params *params,
  17. unsigned char *out, const unsigned char *in,
  18. const unsigned char *pub_seed, uint32_t addr[8]);
  19. int thash_f(const xmss_params *params,
  20. unsigned char *out, const unsigned char *in,
  21. const unsigned char *pub_seed, uint32_t addr[8]);
  22. int hash_message(const xmss_params *params, unsigned char *out,
  23. const unsigned char *R, const unsigned char *root,
  24. unsigned long long idx,
  25. unsigned char *m_with_prefix, unsigned long long mlen);
  26. #endif