sha.h 643 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef SHA_H
  2. #define SHA_H
  3. /* NIST Secure Hash Algorithm */
  4. /* heavily modified from Peter C. Gutmann's implementation */
  5. /* Useful defines & typedefs */
  6. typedef unsigned char BYTE;
  7. typedef unsigned long LONG;
  8. #define SHA_BLOCKSIZE 64
  9. #define SHA_DIGESTSIZE 20
  10. typedef struct {
  11. LONG digest[5]; /* message digest */
  12. LONG count_lo, count_hi; /* 64-bit bit count */
  13. LONG data[16]; /* SHA data buffer */
  14. } SHA_INFO;
  15. void sha_init(SHA_INFO *);
  16. void sha_update(SHA_INFO *, BYTE *, int);
  17. void sha_final(SHA_INFO *);
  18. void sha_stream(SHA_INFO *);
  19. void sha_print(SHA_INFO *);
  20. void vSha();
  21. void vShaDriver();
  22. #endif /* SHA_H */