cryptortool1.cpp

来自「这是一个加解密程序」· C++ 代码 · 共 77 行

CPP
77
字号

#include "stdafx.h"

#include "CryptorTool1.h"



//////////////////////////////////////////////////////////////////////
// CCryptorTool1 类的成员
//////////////////////////////////////////////////////////////////////
//-------------------------------------------------------------------
// CCryptorTool1 类的静态变量

unsigned char CCryptorTool1::m_FirstKey[16]={
    0xB0,0x1C,0x51,0xF6,0x2D,0x42,0x45,0x2D,
	0x0C,0x0E,0x61,0x0F,0x03,0x5E,0x1A,0x2A
};

//-------------------------------------------------------------------
// CCryptorTool1 类的静态方法
//-------------------------------------------------------------------
// CCryptorTool1 类的构造方法和析构方法

CCryptorTool1::CCryptorTool1(CZCryptor *pCryptor)
{
	m_pCryptor = pCryptor;
	m_pCryptor->SetKey(m_FirstKey);
}

CCryptorTool1::~CCryptorTool1()
{
}

//-------------------------------------------------------------------
// CCryptorTool1 类的公共方法

void CCryptorTool1::GenerateKey(const char *s)
{
	int k;
	char b[256];
	k = strlen(s);
	memset(b,'#',256);
	if (k>256) k=256;
	memcpy(b,s,k);
	m_pCryptor->SetKey(m_FirstKey);
	m_pCryptor->Hash(b,256,m_CurrentKey);
	m_pCryptor->SetKey(m_CurrentKey);
}

//加密,Len必须是8字节的整数倍。
void CCryptorTool1::Encrypt(void *Dst,const void *Src,int Len)
{
	m_pCryptor->LongEncrypt(Dst,Src,Len);
}

//解密,Len必须是8字节的整数倍。
void CCryptorTool1::Decrypt(void *Dst,const void *Src,int Len)
{
	m_pCryptor->LongDecrypt(Dst,Src,Len);
}

//Hash
void CCryptorTool1::Hash(const void *Data,int Len,void *Result)
{
	m_pCryptor->Hash(Data,Len,Result);
}

//-------------------------------------------------------------------
// CCryptorTool1 类的保护方法
//-------------------------------------------------------------------
// CCryptorTool1 类的私有方法
//-------------------------------------------------------------------




⌨️ 快捷键说明

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