登录
首页 » 算法 » 封装好的C++MD5算法库

封装好的C++MD5算法库

于 2022-03-19 发布 文件大小:4.00 kB
0 160
下载积分: 2 下载次数: 1

代码说明:

应用背景md5的典型应用是对一段信息(message)产生信息摘要(message-digest),以防止被篡改。比如,在unix下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:  md5 (tanajiya.tar.gz) = 0ca175b9c0f726a831d895e269332461 这就是tanajiya.tar.gz文件的数字签名。md5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的md5信息摘要。如果在以后传播这个文件的过程中,无论文件的内容发生了任何形式的改变(包括人为修改或者下载过程中线路不稳定引起的传输错误等),只要你对这个文件重新计算md5时就会发现信息摘要不相同,由此可以确定你得到的只是一个不正确的文件。如果再有一个第三方的认证机构,用md5还可以防止文件作者的"抵赖",这就是所谓的数字签名应用。  md5还广泛用于加密和解密技术上。比如在unix系统中用户的密码就是以md5(或其它类似的算法)经加密后存储在文件系统中。当用户登录的时候,系统把用户输入的密码计算成md5值,然后再去和保存在文件系统中的md5值进行比较,进而确定输入的密码是否正确。通过这样的步骤,系统在并不知道用户密码的明码的情况下就可以确定用户登录系统的合法性。这不但可以避免用户的密码被具有系统管理员权限的用户知道,而且还在一定程度上增加了密码被破解的难度。  正是因为这个原因,现在被黑客使用最多的一种破译密码的方法就是一种被称为"跑字典"的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用md5程序计算出这些字典项的md5值,然后再用目标的md5值在这个字典中检索。我们假设密码的最大长度为8位字节(8 bytes),同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是p(62,1)+p(62,2)….+p(62,8),那也已经是一个很天文的数字了,存

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 蚁群的c++实现方
    蚁群算法的c++实现方法,通过c++实现蚁群算法的基本功能,提供了详细的注释和编码。
    2022-07-10 02:05:31下载
    积分:1
  • 等离子体PIC模拟
    等离子体PIC模拟-PIC simulation of plasma
    2022-11-02 03:45:04下载
    积分:1
  • C++语言编写的几何学模板。包括几何学的10多种基本的操作。例如点生成直线,叉积运,线段的拐向,任意多边形面积的计,点的位置判断,线段相交判断,求凸包等...
    C++语言编写的几何学算法模板。包括几何学的10多种基本的操作。例如点生成直线,叉积运算,线段的拐向,任意多边形面积的计算,点的位置判断,线段相交判断,求凸包等等。-C++ Language template geometry algorithm. Including the geometry of more than 10 kinds of basic operation. For example, point to generate a straight line, fork plot computing, the segment拐向, arbitrary polygon area calculations to determine the location of the point, line segment intersection judge, and the convex hull and so on.
    2023-01-01 05:25:03下载
    积分:1
  • 学生信息结构
    这是程序使用指针和结构来保存和重新调用数据 主要的选择是: 添加新的学生数据、 删除学生数据、 编辑学生数据、 显示所有学生数据
    2022-03-06 21:41:21下载
    积分:1
  • 一个用MASM写的正则表达式引擎
    此正则表达式引擎属于正统的NFA引擎,基本兼容Perl,简单说一下引擎是怎么实现的: 首先做一个递归下降语法分析,利用栈把正则表达式转换成NFA(以有向图的形式表现),再遍历NFA判断是否能到达完成节点。 实现正则表达式匹配的各种复杂功能的力量来自于回溯,而回溯的基础是栈,回溯能力是通过栈来达成的。 栈中保存了匹配路径中所有的状态,状态回溯就是出栈,状态匹配就是入栈。 除了回溯,一些扩展功能的实现也是通过栈来完成的,比如捕获和零宽断言,都要通过搜索或操纵栈来完成。 转换成NFA再匹配的好处是简化匹配和利于优化和DEBUG:因为不管再复杂的表达式转换成NFA之后只有边和节点组成,边和节点也只有顺序、分支、循环这三种形式组成。 详细原理说明看下面关于实现引擎的文章,第3条是我理解引擎匹配原理的入门参考。 支持GBK和UTF8编码   ==参考和学习资料== 关于实现引擎的文章: 1、《Perl语言编程》第五章  书 2、《精通正则表达式》  书 3、构造正则表达式引擎   http://www.cppblog.com/vczh/archive/2008/05/22/50763.html   我的原理学习入门参考 4、NFA引擎匹配原理   http://blog.csdn.net/lxcnn/article/details/4304651 5、英文参考资料   请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报
    2022-05-27 18:36:44下载
    积分:1
  • 很不错的哦C常用程序集
    很不错的哦C常用算法程序集-徐士良 -very good oh C procedures commonly used algorithm set-XU Shi-liang C algorithms commonly used procedures set-XU Shi-liang
    2022-03-17 06:34:01下载
    积分:1
  • bushound 3.1.rar bushound 3.1.rar bushound 3.1.rar bushound 3.1.rar
    BusHound 3.1.rar BusHound 3.1.rar BusHound 3.1.rar BusHound 3.1.rar -BusHound 3.1.rarBusHound 3.1.rarBusHound 3.1.rarBusHound 3.1.rarBusHound 3.1.rarBusHound 3.1.rar
    2022-03-14 16:07:27下载
    积分:1
  • C4.5—运用JAVA实现的决策树
    C4.5是一系列用在机器学习和数据挖掘的分类问题中的算法。它的目标是监督学习:给定一个数据集,其中的每一个元组都能用一组属性值来描述,每一个元组属于一个互斥的类别中的某一类。C4.5的目标是通过学习,找到一个从属性值到类别的映射关系,并且这个映射能用于对新的类别未知的实体进行分类。 C4.5由J.Ross Quinlan在ID3的基础上提出的。ID3算法用来构造决策树。决策树是一种类似流程图的树结构,其中每个内部节点(非树叶节点)表示在一个属性上的测试,每个分枝代表一个测试输出,而每个树叶节点存放一个类标号。一旦建立好了决策树,对于一个未给定类标号的元组,跟踪一条有根节点到叶节点的路径,该叶节点就存放着该元组的预测。决策树的优势在于不需要任何领域知识或参数设置,适合于探测性的知识发现。 请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报
    2022-03-11 00:16:44下载
    积分:1
  • GAUSS-SEIDEL ALGORITHM
    在给定初始近似值X(0)的情况下求解AX=B:
    2022-03-03 07:28:48下载
    积分:1
  • 用初等相似变换将实矩阵约化为上H阵,即Hessen berg矩阵
    用初等相似变换将实矩阵约化为上H阵,即Hessen berg矩阵-Using elementary similarity transformation will be about real matrix H into the matrix, that is, Hessen berg matrix
    2022-03-05 18:16:40下载
    积分:1
  • 696516资源总数
  • 106562会员总数
  • 4今日下载