Sha.h
上传用户:lds876
上传日期:2013-05-25
资源大小:567k
文件大小:1k
源码类别:

P2P编程

开发平台:

Visual C++

  1. // Sha.h: interface for the CSha class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_SHA_H__146DC207_2B92_4B1E_8DEE_42E570884678__INCLUDED_)
  5. #define AFX_SHA_H__146DC207_2B92_4B1E_8DEE_42E570884678__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #define uint8  unsigned char
  10. #define uint32 unsigned long int
  11. struct sha1_context
  12. {
  13.     uint32 total[2];
  14.     uint32 state[5];
  15.     uint8 buffer[64];
  16. };
  17. void sha1_starts( struct sha1_context *ctx );
  18. void sha1_update( struct sha1_context *ctx, uint8 *input, uint32 length );
  19. void sha1_finish( struct sha1_context *ctx, uint8 digest[20] );
  20. class CSHA
  21. {
  22. public:
  23. void start();
  24. void update(uint8 *input, uint32 length );
  25. void finish(uint8 digest[20] );
  26. private:
  27. sha1_context m_ctx;
  28. };
  29. #endif // !defined(AFX_SHA_H__146DC207_2B92_4B1E_8DEE_42E570884678__INCLUDED_)