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

📄 rijndael.h

📁 可以实现RIJNDEAL和IDEA 2种加密方法的完整程序,还可以看到加密的所用时间的情况
💻 H
字号:
// Rijndael.h: interface for the CRijndael class.
//
//////////////////////////////////////////////////////////////////////

typedef unsigned char BYTE;
typedef unsigned long DWORD;

class CRijndael  
{
public:
	CRijndael();
	virtual ~CRijndael();
	void Init(BYTE key[]);
	void Encrypt(BYTE sText[],BYTE sRes[]);
	void Decrypt(BYTE sText[],BYTE sRes[]);
//	long DeEncrypt(BYTE sText[], BYTE key[], bool bEn, BYTE *sRes, long nlen, int nMode = 0);
	
private:
	typedef struct word
	{
		BYTE b[5];
	}word;
	word w[44];
	void MixColumn(BYTE p0[],BYTE p1[],BYTE p2[],BYTE p3[]);
	void InvMixColumn(BYTE p0[],BYTE p1[],BYTE p2[],BYTE p3[]);
	//void InvShiftRow(BYTE p[],int nCount);
	
	BYTE XMUL2( BYTE bin1 );
	BYTE XMUL3( BYTE bin1 );
	BYTE XMULe( BYTE bin1 );
	BYTE XMUL9( BYTE bin1 );
	BYTE XMULb( BYTE bin1 );
	BYTE XMULd( BYTE bin1 );

	void XMULP( BYTE bin1, BYTE p[] );

	BYTE XMUL(BYTE bin1,BYTE bin2);
};

⌨️ 快捷键说明

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