mirror of
https://github.com/dashr9230/SA-MP.git
synced 2024-12-22 14:37:29 +08:00
40 lines
698 B
C++
40 lines
698 B
C++
|
|
#pragma once
|
|
|
|
#include <windows.h>
|
|
|
|
#define TEA_KEY_SIZE 16
|
|
|
|
class CTinyEncrypt
|
|
{
|
|
private:
|
|
static DWORD ms_dwRounds;
|
|
static DWORD ms_dwInitDelta;
|
|
static DWORD ms_dwInitSum;
|
|
static BOOL ms_bInitDone;
|
|
|
|
DWORD m_pdwKey[TEA_KEY_SIZE/sizeof(DWORD)];
|
|
|
|
#ifdef ARCTOOL
|
|
void EncryptBlock(DWORD &dwV0, DWORD &dwV1);
|
|
#endif
|
|
|
|
void DecryptBlock(DWORD &dwV0, DWORD &dwV1);
|
|
|
|
public:
|
|
CTinyEncrypt(void);
|
|
~CTinyEncrypt(void);
|
|
|
|
void SetKey(BYTE* pbKey, BYTE bytXORKey);
|
|
|
|
#ifdef ARCTOOL
|
|
void LoadKey(PCHAR szFileName);
|
|
void WriteKey(PCHAR szFileName);
|
|
void WriteCHeaderFile(PCHAR szFileName);
|
|
|
|
void EncryptData(DWORD dwLength, BYTE* pbData);
|
|
#endif
|
|
|
|
void DecryptData(DWORD dwLength, BYTE* pbData);
|
|
};
|