rijndael.h

来自「可以实现RIJNDEAL和IDEA 2种加密方法的完整程序,还可以看到加密的所用」· C头文件 代码 · 共 39 行

H
39
字号
// 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 + =
减小字号Ctrl + -
显示快捷键?