md5基础知识与Qt中的应用

简介: md5基础知识与Qt中的应用

md5简介


md5(Message-Digest Algorithm 5(信息-摘要算法5))


MD5算法具有以下特点:


  • 任意长度的数据,算出的MD5值长度都是固定的。


  • 把一个任意长度的字节串变换成一定长的十六进制数字串


  • 压缩性:  容易计算:


从原数据计算出MD5值很容易。


  • 抗修改性


对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。


  • 强抗碰撞:


已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。


  • md5过程是不可逆的


md5的应用


文件校验


  • 软件下载站、论坛数据库、系统文件安全等方面


数字证书


  • 互联网通讯中标志通讯各方身份信息的一串数字


  • 提供了一种在Internet上验证通信实体身份的方式


登录验证


  • 操作系统的登陆认证,如Unix、各类BSD系统登录密码


MD5算法描述


  • MD5就是将输入的信息以512位分组,且每一分组被划分为16个32位子分组


  • 经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值


QCryptographicHash



应用计算方法


 // MD5
 方法一:
    QByteArray data = "hello, world";
    QCryptographicHash hash(QCryptographicHash::Md5);
    hash.addData(data);
    hash.addData("你好, 世界");
    // 计算
    QByteArray arry = hash.result();
    qDebug() << arry;
    arry = arry.toHex();
    qDebug() << arry;
方法二:
    QByteArray arry = QCryptographicHash::hash("hello, world", QCryptographicHash::Md5);
    qDebug() << arry.toHex();


md5转换工具下载


链接:https://pan.baidu.com/s/1rYQxOwSdlWTcDMoFdMlmHg


提取码:f53f

相关文章
|
7月前
|
Web App开发 编解码 安全
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
693 4
|
7月前
|
安全 前端开发 C++
C++视角下的Qt按钮:从基础应用到高级定制(二)
C++视角下的Qt按钮:从基础应用到高级定制
164 2
|
7月前
|
XML JSON 算法
C++视角下的Qt按钮:从基础应用到高级定制(一)
C++视角下的Qt按钮:从基础应用到高级定制
506 2
|
7月前
|
开发框架 Linux API
Qt:构建高效且用户友好的跨平台应用
Qt:构建高效且用户友好的跨平台应用
|
7月前
|
开发框架 网络协议 数据库
Qt:构建跨平台应用的强大框架
Qt:构建跨平台应用的强大框架
|
7月前
|
算法 数据可视化 程序员
【Qt UI】调色板QPalette类在Qt编程中的应用
【Qt UI】调色板QPalette类在Qt编程中的应用
240 0
|
7月前
|
存储 算法 API
【Qt 基本类】QDateTime类在C++中的应用与深度解析
【Qt 基本类】QDateTime类在C++中的应用与深度解析
296 0
|
7月前
|
算法 Unix 调度
【Qt 线程】深入探究QThread线程优先级:原理、应用与最佳实践
【Qt 线程】深入探究QThread线程优先级:原理、应用与最佳实践
582 0
|
7月前
|
编解码 并行计算 Java
QT界面中实现视频帧显示的多种方法及应用(二)
QT界面中实现视频帧显示的多种方法及应用
1129 0
|
7月前
|
Web App开发 编解码 安全
【WebRTC 入门教程】全面解析WebRTC:从底层原理到Qt和FFmpeg的集成应用
【WebRTC 入门教程】全面解析WebRTC:从底层原理到Qt和FFmpeg的集成应用
3207 1