📄 md5.h
字号:
// MD5.h: interface for the CMD5 class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_MD5_H__2BD24C41_1D83_11D3_AA2B_5254AB10A272__INCLUDED_)
#define AFX_MD5_H__2BD24C41_1D83_11D3_AA2B_5254AB10A272__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//POINTER defines a generic pointer type
typedef unsigned char *POINTER;
//UINT2 defines a two byte word
typedef unsigned short int UINT2;
//UINT4 defines a four byte word
typedef unsigned long int UINT4;
typedef struct {
UINT4 state[4]; //state (ABCD)
UINT4 count[2]; //number of bits, modulo 2^64 (lsb first)
unsigned char buffer [64]; //input buffer
}MD5_CTX;
class CMD5
{
public:
void Digest_file(CString fn,unsigned char digest[16]);
void Digest_data(unsigned char *input,int inputlen,unsigned char digest[16]);
void MD5Final (unsigned char[], MD5_CTX *);
void MD5Update (MD5_CTX *context, unsigned char *input, ULONG inputLen);
void MD5Init (MD5_CTX*);
CMD5();
virtual ~CMD5();
private:
void MD5_memset (POINTER,unsigned char,unsigned int);
void MD5_memcpy (POINTER,POINTER,unsigned int);
void MD5Transform (ULONG state[4], unsigned char block[64]);
unsigned char PADDING [64];
};
#endif // !defined(AFX_MD5_H__2BD24C41_1D83_11D3_AA2B_5254AB10A272__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -