因工作需要,需要对字符串进行加密处理,在网上找了很长时间,终于找到了一个可以使用的aes加密算法。
其源代码采用c++编写而成,但其头文件引用windows.h,经过修改部分代码,将#include
去掉,这样可是使用与多个编译器。下面的代码中列出了测试用的代码(中文出现乱码现象):

main.cpp

 1 int main(int argc, char *argv[])
 2 {
 3     QCoreApplication a(argc, argv);
 4 
 5     TAesClass *aes = new TAesClass;
 6     char mingwen[1024] = "cheng xiaopeng";
 7     DWORD size = strlen(mingwen);
 8     char miwen[1024];
 9     char jiemi[1024];
10     UCHAR key[1024] = "xcy";
11     UCHAR *p = key;
12     aes->InitializePrivateKey(16, p); //进行初始化
13     aes->OnAesEncrypt((LPVOID)mingwen, size, (LPVOID)miwen); //进行加密
14     aes->OnAesUncrypt((LPVOID)miwen, (DWORD)sizeof(miwen),(LPVOID)jiemi); //进行解密
15 
16     //打印信息
17     qDebug() << "mingwen:" << mingwen;
18     qDebug() << "miwen:" << miwen;
19     qDebug() << "jiemi:" <<jiemi;
20 
21     free(aes);
22     aes = 0;
23     return a.exec();
24 }
View Code

相关文章: