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

📄 crypto.h

📁 客户端与服务器的加密验证,用vc开发,只是一个例子,只作参考.
💻 H
字号:
#pragma once
#include <wincrypt.h>
class CCrypto
{
public:
	CCrypto(void);
	~CCrypto(void);
private:
	HCRYPTPROV	hCryptProv ;	// Handle for a cryptographic provider context.
	
	HCRYPTKEY hKey;				//Session KEY
	HCRYPTKEY hXchgKey;			//RSA Key pair
	HCRYPTKEY hPublicKey;		//RSA Public Key

	PBYTE pbPublicKeyBlob ;		//Exported Public Key data
	DWORD dwPublicKeyBlobLen;	

	PBYTE pbSessionKeyBlob ;	//Exported Session Key data which is encrypted with RSA public Key
	DWORD dwSessionKeyBlobLen;

	
public:
	BOOL GetCSP(LPCTSTR strUserName = NULL);
	void ReleaseCSP(void);
	BOOL GetRSAKey(void);
	BOOL GetSessionKey(void);
	void ReleaseKeys(void);
	BOOL ImportPublicKey(void);
	BOOL ImportSessionKey(void);
	void CopyExportedPublicKeyFrom(const CCrypto & crypto);
	void CopyExportedSessionKeyFrom(const CCrypto & crypto);
	BOOL EncryptData(CString & strData);
	BOOL DecryptData(CString & strData);
	void PrintRSAKeyPair(CString & strPublicKey_e, CString & strPublicKey, CString & strPrivateKey);
};

⌨️ 快捷键说明

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