使用方法:在.h中引入类库。然后在cpp中直接引入使用即可
类库的下载地址
https://download.csdn.net/download/u012372365/88478671
具体代码:
cpp
#include <QCoreApplication>
#include <QTest>
#ifdef __cplusplus
#include "unit_test/aestest.h"
#include "qaesencryption.h"
#include <QCoreApplication>
#include <QCryptographicHash>
#include <QVector>
#include <QDebug>
#include <QByteArray>
#include <qbytearray.h>
#endif
QList<QString> fileList;
QList<QString> saveFileList;
//设置密钥 /替换-的目的防止字符串出现转译的情况发生
QString key("dasdlk3214k21ksd");
QString strToSeaBody(QString body){
QString string =body;
QAESEncryption encryption(QAESEncryption::AES_128, QAESEncryption::ECB, QAESEncryption::PKCS7);
QByteArray enBA = encryption.encode(string.toUtf8(), key.toUtf8());
QByteArray enBABase64 = enBA.toBase64();
QString jieguo=enBABase64.replace("/","-");
return jieguo;
}
QString seaToStrBody(QString str){
str.replace("-","/").replace("\n","");
QByteArray ba = str.toUtf8(); //方法二
QByteArray enBA = QByteArray::fromBase64(str.toUtf8());
QAESEncryption encryption(QAESEncryption::AES_128, QAESEncryption::ECB, QAESEncryption::PKCS7);
QByteArray deBA = encryption.decode(enBA, key.toUtf8());
return QString::fromLocal8Bit( QAESEncryption::RemovePadding(deBA, QAESEncryption::PKCS7));
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString str("sunwukong");
QString jiami=strToSeaBody(str);
QString jiemi=seaToStrBody(jiami);
qDebug()<<"jiami=="<<jiami;
qDebug()<<"jiemi=="<<jiemi;
}