⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlm5dlg.h

📁 MD5的全称是Message-digest Algorithm 5(信息-摘要算法)
💻 H
字号:
// DLM5Dlg.h : header file
//

#if !defined(AFX_DLM5DLG_H__72F0F9B9_4EE0_46BB_8684_9A0D915101F4__INCLUDED_)
#define AFX_DLM5DLG_H__72F0F9B9_4EE0_46BB_8684_9A0D915101F4__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/////////////////////////////////////////////////////////////////////////////
// CDLM5Dlg dialog

class CDLM5Dlg : public CDialog
{
// Construction
public:
	CDLM5Dlg(CWnd* pParent = NULL);	// standard constructor
	// 散列
	CString Digest(LPCTSTR message, UINT len = 0);
// Dialog Data
	//{{AFX_DATA(CDLM5Dlg)
	enum { IDD = IDD_DLM5_DIALOG };
	CString	m_In;
	CString	m_Out;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CDLM5Dlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;
	// f子函数 = (x&y)|((~x)&z)
	inline UINT Inner_f(UINT x, UINT y, UINT z);
	// g子函数 = (x&z)|(y&(~z)) 
	inline UINT Inner_g(UINT x, UINT y, UINT z);
	// h子函数 = x^y^z 
	inline UINT Inner_h(UINT x, UINT y, UINT z);
	// i子函数 = y^(x|(~z))
	inline UINT Inner_i(UINT x, UINT y, UINT z);
	// 循环左移位
	inline UINT Inner_RotateLeft(UINT x, UINT s);
	// ff子函数
	inline void Inner_ff(UINT &a, UINT b, UINT c, UINT d, UINT mj, 
		UINT s, UINT ti);
	// gg子函数
	inline void Inner_gg(UINT &a, UINT b, UINT c, UINT d, UINT mj, 
		UINT s, UINT ti);
	// hh子函数
	inline void Inner_hh(UINT &a, UINT b, UINT c, UINT d, UINT mj, 
		UINT s, UINT ti);
	// ii子函数
	inline void Inner_ii(UINT &a, UINT b, UINT c, UINT d, UINT mj, 
		UINT s, UINT ti);
	// 处理一个组
	void MakeOneTurn(UINT &a, UINT &b, UINT &c, UINT &d, UINT 
		messageGroup[16]);
	// Generated message map functions
	//{{AFX_MSG(CDLM5Dlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	virtual void OnOK();
	virtual void OnCancel();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_DLM5DLG_H__72F0F9B9_4EE0_46BB_8684_9A0D915101F4__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -