AES加密算法对中文加密后,解密出现乱码
大家好,我从网上找了一个AES加密算法的源代码,但是当被加密的字符串中出现中文,加密后,当进行解密时,
出现乱码,不能正常的解密,这是为啥?
【下面的代码中,mingwen出现中文,解密出现乱码】
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
TAesClass *aes = new TAesClass;
char mingwen[1024] = "cheng xiaopeng";
DWORD size = strlen(mingwen);
char miwen[1024];
char jiemi[1024];
UCHAR key[1024] = "xcy";
UCHAR *p = key;
aes->InitializePrivateKey(16, p); //进行初始化
aes->OnAesEncrypt((LPVOID)mingwen, size, (LPVOID)miwen); //进行加密
aes->OnAesUncrypt((LPVOID)miwen, (DWORD)sizeof(miwen),(LPVOID)jiemi); //进行解密
//打印信息
qDebug() << "mingwen:" << mingwen;
qDebug() << "miwen:" << miwen;
qDebug() << "jiemi:" <<jiemi;
free(aes);
aes = 0;
return a.exec();
}
出现乱码,不能正常的解密,这是为啥?
【下面的代码中,mingwen出现中文,解密出现乱码】
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
TAesClass *aes = new TAesClass;
char mingwen[1024] = "cheng xiaopeng";
DWORD size = strlen(mingwen);
char miwen[1024];
char jiemi[1024];
UCHAR key[1024] = "xcy";
UCHAR *p = key;
aes->InitializePrivateKey(16, p); //进行初始化
aes->OnAesEncrypt((LPVOID)mingwen, size, (LPVOID)miwen); //进行加密
aes->OnAesUncrypt((LPVOID)miwen, (DWORD)sizeof(miwen),(LPVOID)jiemi); //进行解密
//打印信息
qDebug() << "mingwen:" << mingwen;
qDebug() << "miwen:" << miwen;
qDebug() << "jiemi:" <<jiemi;
free(aes);
aes = 0;
return a.exec();
}
...全文
相关推荐
C#文本文件加密解密完美支持中文
C#文本文件加密解密完美支持中文命令行执行
[C++]AES全文件加解密
C++下的AES加密算法,可以对所有文件进行加解密。 控制台程序,VS2012下开发,不引入额外库,方便移植。 包含加解密程序,丰富注释信息,初学者也能看懂。 包含一个加密例子。
AES加密工具 java 语言
AES加密工具 解决中文乱码问题 加密秘钥长度无限制 AES加密工具 解决中文乱码问题 加密秘钥长度无限制 AES加密工具 解决中文乱码问题 加密秘钥长度无限制
jsp,java中文乱码问题另类解决方案,jni加密、解密编码
jsp,java中文乱码问题另类解决方案,jni加密、解密编码
风吟PHP Escape 加密/解密.rar
escape PHP版的加密和解密广泛用于URL或者中文数据传输。


