📄 cipherbase.h
字号:
#ifndef __CipherBase_H__
#define __CipherBase_H__
#include <limits.h>
#ifdef _BIG_WORDS
#define MASK32( x ) ( ( x ) & 0xFFFFFFFFUL )
#else
#define MASK32( x ) x
#endif /* _BIG_WORDS */
#if UINT_MAX > 0xFFFFUL
#define MASK16( x ) ( ( x ) & 0xFFFFUL )
#else
#define MASK16( x ) x
#endif /* > 16-bit ints */
#define mgetBWord(memPtr) \
( ( WORD ) memPtr[ 0 ] << 0 ) | ( ( WORD ) memPtr[ 1 ] ); \
memPtr += 2
#define mputBWord(memPtr,data) \
memPtr[ 0 ] = ( BYTE ) ( ( ( data ) >> 8 ) & 0xFF ); \
memPtr[ 1 ] = ( BYTE ) ( ( data ) & 0xFF ); \
memPtr += 2
#define mgetBLong(memPtr) \
( ( ( LONG ) memPtr[ 0 ] << 24 ) | ( ( LONG ) memPtr[ 1 ] << 16 ) | \
( ( LONG ) memPtr[ 2 ] << 8 ) | ( LONG ) memPtr[ 3 ] ); \
memPtr += 4
#define mputBLong(memPtr,data) \
memPtr[ 0 ] = ( BYTE ) ( ( ( data ) >> 24 ) & 0xFF ); \
memPtr[ 1 ] = ( BYTE ) ( ( ( data ) >> 16 ) & 0xFF ); \
memPtr[ 2 ] = ( BYTE ) ( ( ( data ) >> 8 ) & 0xFF ); \
memPtr[ 3 ] = ( BYTE ) ( ( data ) & 0xFF ); \
memPtr += 4
#define mgetLWord(memPtr) \
( ( WORD ) memPtr[ 0 ] ) | ( ( WORD ) memPtr[ 1 ] << 8 ); \
memPtr += 2
#define mputLWord(memPtr,data) \
memPtr[ 0 ] = ( BYTE ) ( ( data ) & 0xFF ); \
memPtr[ 1 ] = ( BYTE ) ( ( ( data ) >> 8 ) & 0xFF ); \
memPtr += 2
#define mgetLLong(memPtr) \
( ( ( LONG ) memPtr[ 0 ] ) | ( ( LONG ) memPtr[ 1 ] << 8 ) | \
( ( LONG ) memPtr[ 2 ] << 16 ) | ( ( LONG ) memPtr[ 3 ] << 24 ) ); \
memPtr += 4
#define mputLLong(memPtr,data) \
memPtr[ 0 ] = ( BYTE ) ( ( data ) & 0xFF ); \
memPtr[ 1 ] = ( BYTE ) ( ( ( data ) >> 8 ) & 0xFF ); \
memPtr[ 2 ] = ( BYTE ) ( ( ( data ) >> 16 ) & 0xFF ); \
memPtr[ 3 ] = ( BYTE ) ( ( ( data ) >> 24 ) & 0xFF ); \
memPtr += 4
class CCipherBase{
public:
virtual int CipherInitail(DWORD dwParam) = 0;
virtual int KeyInitial(BYTE *pByte, DWORD nKeySize, DWORD dwParam) = 0;
virtual int Encrypt(BYTE *pByte, DWORD nBlockSize) = 0;
virtual int Decrypt(BYTE *pByte, DWORD nBlockSize) = 0;
virtual int GetBlockSize() = 0;
virtual int GetKeySize() = 0;
virtual int GetRounds() = 0;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -