首先,我之前做过很多研究,但我不得不问一些可能很简单的事情......或者不是,但我更愿意问你以便确定......
我有两种密钥,一种是我设置的,另一种是简单的 FourCC 代码。但是,例如使用 HxD 在 .exe 的代码中找到它们非常简单。所以我想隐藏.exe中的密钥,但不要更改它,这是我的密钥示例:
BYTE * pbData = new BYTE[dwDataSize];
file.Read(pbData, dwDataSize);
CLZObject zObj;
static DWORD mykey[4] =
{
000000,
11111111,
222222222,
33333333
};
if (!CLZO::Instance().Decompress(zObj, pbData, mykey))
{
delete[] pbData;
return false;
}
如您所见,我使用 LZO,但仍然很容易找到钥匙,因为我们通常知道她在哪里......
然后,这是 FourCC(它非常容易找到,因为我们只需输入字母,例如:DXT1.
case MAKEFOURCC('D','X','T','1'):
strncpy_s(strPixelFormat, 512, "DXT1", 31);
m_CompFormat = PF_DXT1;
break;
所以我想通过使用内存来隐藏密钥(我没有例子,但我可以提供一个)或者加密密钥以便从程序中隐藏它,但我不知道(或者我不确定) 如何加密类似的东西:
000000,
11111111,
222222222,
33333333
谢谢,祝你有美好的一天!:)