在工作遇到需要对字符串进行md5加密,而qt自带md5加密类
QCryptographicHash
直接进行调用就行。
MD5 加密后的位数有两种:16 位与 32 位。16 位实际上是从 32 位字符串中取中间的第 9 位到第 24 位的部分
1. 创建一个简单的Qt程序,添加头文件
#include <QCryptographicHash> //md5加密的库
#include <QDebug> //调试输出
2、核心代码
方法一:
QString strText = "12345";
QByteArray byteText = strText.toUtf8(); //原方式:toLatin1();为了支持中文:toUtf8()
QString strPwdMd5 = QCryptographicHash::hash(byteText, QCryptographicHash::Md5).toHex();
qDebug()<<strPwdMd5;
方法二:
QString MD5;//加密后字符串
QString passWd="12345";
QByteArray ba,bb;
//实例QCryptographicHash
QCryptographicHash md(QCryptographicHash::Md5);
ba.append(passWd);
md.addData(ba);
bb=md.result();
MD5.append(bb.toHex());
//MD5号称是不可逆推,所以暂时没有解密
qDebug() << MD5;
调试输出:
827ccb0eea8a706c4c34a16891f84e7b
3、验证
通过MD5在线加密网站来进行验证加密结果是否正确。@[TOC]