excrypt_sha.h 640 B

123456789101112131415161718
  1. #ifndef EXCRYPT_SHA_H_
  2. #define EXCRYPT_SHA_H_
  3. // SHA1 hash & HMAC algorithm
  4. typedef struct _EXCRYPT_SHA_STATE
  5. {
  6. uint32_t count;
  7. uint32_t state[5];
  8. uint8_t buffer[64];
  9. } EXCRYPT_SHA_STATE;
  10. void ExCryptShaInit(EXCRYPT_SHA_STATE* state);
  11. void ExCryptShaUpdate(EXCRYPT_SHA_STATE* state, const uint8_t* input, uint32_t input_size);
  12. void ExCryptShaFinal(EXCRYPT_SHA_STATE* state, uint8_t* output, uint32_t output_size);
  13. void ExCryptSha(const uint8_t* input1, uint32_t input1_size, const uint8_t* input2, uint32_t input2_size,
  14. const uint8_t* input3, uint32_t input3_size, uint8_t* output, uint32_t output_size);
  15. #endif // EXCRYPT_SHA_H_