sha.h 944 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef _SHA_H
  2. #define _SHA_H
  3. #if defined(OPENSSL_SYS_WIN16) || defined(__LP32__)
  4. #define SHA_LONG unsigned long
  5. #elif defined(OPENSSL_SYS_CRAY) || defined(__ILP64__)
  6. #define SHA_LONG unsigned long
  7. #define SHA_LONG_LOG2 3
  8. #else
  9. #define SHA_LONG unsigned int
  10. #endif
  11. #define SHA_LBLOCK 16
  12. #define SHA_CBLOCK (SHA_LBLOCK*4) /* SHA treats input data as a
  13. * contiguous array of 32 bit
  14. * wide big-endian values. */
  15. #define SHA_LAST_BLOCK (SHA_CBLOCK-8)
  16. #define SHA_DIGEST_LENGTH 20
  17. typedef struct SHAstate_st
  18. {
  19. SHA_LONG h0,h1,h2,h3,h4;
  20. SHA_LONG Nl,Nh;
  21. SHA_LONG data[SHA_LBLOCK];
  22. int num;
  23. } SHA_CTX;
  24. int SHA1_Init(SHA_CTX *);
  25. int SHA1_Update(SHA_CTX *, const void *, unsigned long);
  26. int SHA1_Final(unsigned char *, SHA_CTX *);
  27. void SHA1_Transform(SHA_CTX *, const unsigned char *);
  28. #endif /* !_SHA_H */