首页 > 其他分享 >Qt AES

Qt AES

时间:2023-06-07 13:55:27浏览次数:32  
标签:AES 字节 16 key 128 Qt

一、

1.第三方库

https://gitcode.net/mirrors/bricke/Qt-AES?utm_source=csdn_github_accelerator

2.考本相关文件

 3.添加到项目里

 

二、

void MainWindow::on_pushButton_clicked()
{
    //key长度为16字节,就要选择AES_128,因为16*8=128,key长度必须为16字节
    QString key = "0123456789012345";

    qDebug() << "key.size : " << key.toUtf8().size();

    QString str = "Hello World";

    QAESEncryption encryption(QAESEncryption::AES_128, QAESEncryption::ECB, QAESEncryption::PKCS7);
    QByteArray enBA = encryption.encode(str.toUtf8(), key.toUtf8());
    //QByteArray enBABase64 = enBA.toBase64();
    QString encrypt_str = enBA.toBase64();
    qDebug()<<"加密:"<< encrypt_str;

    enBA = QByteArray::fromBase64(encrypt_str.toUtf8());
    QByteArray deBA = encryption.decode(enBA,key.toUtf8());
    QString  decrypt_str = QAESEncryption::RemovePadding(deBA,QAESEncryption::PKCS7);
    qDebug()<<"解密:"<<decrypt_str;

    if(str == decrypt_str)
    {
       qDebug()<<"加密解密成功" ;
    }
    else
    {
       qDebug()<<"加密解密失败" ;

    }


}

 

标签:AES,字节,16,key,128,Qt
From: https://www.cnblogs.com/ike_li/p/17463096.html

相关文章

  • 如何对16个末端回路的电气因素进行在线监测——智慧用电精灵AESP100
    安科瑞虞佳豪AESP100系列末端多回路智慧用电在线监测装置应用于户内建筑物及类似场所的工业、商业、民用建筑及基础设施等领域低压终端配电网络。此装置配合断路器使用,对用电线路的关键电气因素,如电压、电流、功率、温度、能耗等进行实时监测,具有预警报警、电能计量统计等功能。......
  • PYQT内setFocus函数的作用
    setFocus()函数是QWidget类的一个成员函数,用于将焦点设置到该QWidget上。当一个QWidget被设置为焦点时,它将成为键盘事件的接收者,可以响应键盘事件。在PyQt5中,可以使用setFocus()函数将焦点设置到任何QWidget上,例如QPushButton、QLineEdit、QTextEdit等。当用户点击这些控件时,它们......
  • qt 定义插件
    定义的接口----------------------------------------------#ifndefREGEXPINTERFACE_H#defineREGEXPINTERFACE_H#include<QString>classRegExpInterface{public:virtual~RegExpInterface(){}virtualQStringregexp(constQString&message)=0;};Q_DECLARE_INTERF......
  • Python-PyQt5安装与简单使用
    一、安装1、安装PyQt5和PyQt5-toolspipinstallPyQt5-ihttps://pypi.douban.com/simplepipinstallPyQt5-tools-ihttps://pypi.douban.com/simple 安装结果查看 2、配置环境变量在系统变量Path中添加pyqt5-tools目录的绝对路径 3、安装qtdesigner......
  • qt 度分秒和点度转换
    度分秒和点度互转QString字符串截取1QStringdegree2Dmc(doubledbDegree)2{3doublelon=dbDegree;4if(lon<0.0)5lon=-dbDegree;6intnDegree=(int)lon;7doubledbMin=(lon-nDegree)*60.0;8intnMin=dbM......
  • qt 自定义工具栏
    自定义工具栏这个类中杂质较多,主要是是单击标签改变经纬度显示类型。调用方法,在析构函数中删除if(_statusBar)delete_statusBar;voidMainWindow::createStatusBar(){if(!_statusBar)_statusBar=newTDStatusBar(this);_statusBar->setFixe......
  • qt安装
            ......
  • 统信UOS系统开发笔记(三):从Qt源码编译安装之编译安装Qt5.12.8
    前言  上一篇,是使用Qt提供的安装包安装的,有些场景需要使用到自己编译的Qt,所以本篇如何在统信UOS系统上编译Qt5.12.8源码。<br>统信UOS系统版本  系统版本:  Qt源码下载  参考博文《获取下载Qt安装包,Qt源码全国网址备忘录(不用注册Qt账户,即可下载各版本Qt安装包和Qt源......
  • Odoo集成MQTT
    文件结构MQTT客户端importpaho.mqtt.clientasmqttclient_dict={}importlogging_logger=logging.getLogger(__name__)classMQTTClient(object):def__init__(self,client_id,protocol,broker,port,username,password):self.client_id=......
  • 饶派杯 XCTF 车联网挑战赛 mqttsvr 复现
    前言IDA和Ghidra对mips64架构的识别貌似不是很友好,赛场上由于反编译实在难看,所以很难静下心来去逆,于是赛后在期末考试前稍微花点时间做了一下复现。准备checksec一下,发现是mips64大端,没开CanaryRELRO,可以溢出,可以覆写got表,这里开了NX和PIE,NX对mips64这种异架构来说好像并不会......