md5加密

作者: 薯条你哪里跑 | 来源:发表于2021-04-16 11:01 被阅读0次
介绍:

MD5计算,对原始消息(Message)做有损的压缩计算,无论消息长度是多少字节都会生成一个固定长度(128位/16字节)的消息摘要。是一种HASH函数。

特性
  • 单向性: 当你知道这个原始消息,算法是MD5且迭代次数时,你就可以得到一模一样的信息摘要。
  • 不可预测性:两个完全不相干的消息,通过MD5转化后有可能变成一样的摘要。
  • 恒定性: 原始消息只要通过MD5加密后,得到的消息体一定是一致的(相同迭代次数下)
  • 不可逆:MD5是一种散列函数,使用的是hash算法,在计算过程中原始消部分信息是丢失了的。MD5是有穷的(128位),而数据是无穷的。
应用

数据完整性校验、数字签名、文件完整性检查、密码保存等等

以密码保存为例

使用明文肯定是不安全的,当通过md5加密之后进行存储就安全了很多。前面说到的这种加密方式不可逆,但是由于密码一般有位数限制所以通过彩虹表也是可以进行破解的。(彩虹表:简单说就是穷举可能的密码组合,将每个可能性组合的md5 hash散列存入数据库。形成个巨大的表)

或者我们可以对md5进行n次迭代加密,但是这种也还是可以进行大量计算来破解,对我们也有资源浪费。

那么如何解决呢,我们可以通过加盐的方式,将每个用户独有的信息加上密码进行md5加密。这样就不发从市面上已有的彩虹表中进行破解。

注:查资料时好多标题都是王小云教授已经破解了MD5,but事实是这样的,她的研究成果如下,并不是网络标题上的内中所谓的破解。
 MD5(x) = MD5(y)

及x、y两个原信息对应同一个加密后的信息摘要,这样的话我们传递消息即使通过md5校验但是内容也是已经被篡改的了。

相关文章

  • iOS常见信息加密方式总结

    目录 MD5加密HMAC加密base64加密对称加密RSA加密 - 非对称加密 一.MD5加密 MD5加密是最常用...

  • iOS 数据加密

    iOS 常用加密方式算法包括MD5加密、AES加密、BASE64加密 MD5加密 MD5:全称是Message D...

  • iOS加密

    iOS代码常见的加密方式包括MD5加密、AES加密、BASE64加密,RSA加密。 MD5加密 MD5是不可逆的只...

  • Java加密

    MD5加密: RSA加密: CBC加密:

  • linux进行md5加密

    linux进行md5加密 openssl做MD5加密 md5加密 交互式输入 管道标准输入处理 对文件处理 md5...

  • 数据加密

    单向散列:哈希加密。 PHP MD5函数 加密长度是64/32位的。MD5("这里是加密串")MD5($POST...

  • iOS开发之系统MD5加密

    常见的加密有Base64加密和MD5加密。Base64加密是可逆的,MD5加密目前来说一般是不可逆的。MD5生成的...

  • Java 常用加密算法(一)---单向加密算法(MD5/SHA)

    Java 常用加密算法(一)---单向加密算法(MD5/SHA) MD5加密MD5以512位分组来处理输入的信息,...

  • md5加密

    md5加密 生成的加密串

  • Java 登录模块设计

    登录流程 前端登录传输用户名和md5加密后的密码 后端对密码在进行md5加密,或者使用md5加密的密码 + id ...

网友评论

      本文标题:md5加密

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