MD5

作者: dreamkid | 来源:发表于2020-06-09 13:50 被阅读0次

    1.什么是md5

    MD5(Message Digest Algorithm)信息摘要算法。严格来说这个不算是加密算法。通常用来做数据的完整性校验,对数据进行md5算法处理生成128位的摘要,而且是不可 逆的。md5和sha算法都属于消息摘要不算加密算法,只有可以解密的才属于加密算法。而摘要算法只能碰撞并不能对消息进行复原。

    2.实现原理

    分四步数据补位,扩展长度,初始化寄存器,数据处理,输入结果。

    数据补位:数据最后补一位1,然后跟512取模如果不是448,后面继续补0,直到取模结果为448.这时候数据还差64位刚好是512整数倍

    扩展长度:数据补位完以后在最后添加64位,这时候数据整好是512整数倍

    初始化寄存器:初始化4个32位的寄存器ABCD(寄存器具体数据格式可自行百度)

    数据处理:数据以512位为单位与ABCD循环进行逻辑处理

    结果输出:最终以ABCD的形式输出

    3.应用场景

    通常用来做数据校验,比如android应用升级的时候安装包是否被篡改,对原始apk包进行md5存储在服务端,然后app升级下载安装包后对apk进行md5并将md5值与后台的md5进行比对,如果一致就进行升级否则就是非法安装包忽略。

    相关文章

      网友评论

          本文标题:MD5

          本文链接:https://www.haomeiwen.com/subject/mcystktx.html