果然是好记性不如记笔记啊,之前看过的知识今天被人问起来还是一点儿都想不起来了,所以想还是记一下吧!

MD5不可逆的原因是由于它是一种散列函数(也叫哈希函数,哈希函数又称散列函数,杂凑函数,他是一个单向密码体制,即从明文到密文的不可逆映射,只有加密过程没有解密过程,哈希函数可以将任意长度的输入经过变化后得到固定长度的输出,这个固定长度的输出称为原消息的散列或消息映射。 理想的哈希函数可以针对不同的输入得到不同的输出,如果存在两个不同的消息得到了相同的哈希值,那我们称这是一个碰撞),使用的是hash算法,在计算过程中原文的部分信息是丢失了的。一个MD5理论上是可以对应多个原文的,因为MD5是有限多个而原文是无限多个的。

MD5码128位2进制数,最多有2^128种可能但是字符串的数量显然是有无数种可能的。

MD5加密为什么不可逆?相关推荐

  1. 【PHP】md5加密(不可逆)

    MD5加密(不可逆) string md5 ( string $str [, bool $raw_output = false ] ) 参数 * str -- 原始字符串. * raw_output ...

  2. 数据加密之MD5加密

    MD5是一个安全的散列算法,有两个特点: 1.输入两个不同的明文(一段原始的数字信息)不会得到相同的输出值 2.根据输出值,不能得到原始的明文,即过程不可逆 所以要解密MD5没有现成的算法,只能用穷举 ...

  3. java 赋值md5_Hook Java API以获得MD5加密前数据

    Java实现MD5加密 在Java中,我们用MD5对数据进行加密,代码大概是这样的: import java.security.MessageDigest; import java.security. ...

  4. Delphi2010 MD5加密的方法

    在Delphi2010及上以版本中,可以用TIdHashMessageDigest5对字符和流进行MD5加密,MD5加密是不可逆的,即不能解密,银行系统用户密码就是MD5加密,如果您的密码丢失,只能重 ...

  5. 利用Java自带的MD5加密java.security.MessageDigest;

    MD5加密算法,即"Message-Digest Algorithm 5(信息-摘要算法)",它由MD2.MD3.MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著 ...

  6. hashlib模块,md5加密

    import hashlib #字符串加密 # s = '12345'+'352627d' #后面的是加盐,只有自己知道 # # m = hashlib.md5(s.encode())#s.encod ...

  7. Java实现MD5加密和文件校验

    MD5简介: MD5的全称:Message-Digest Algorithm 5(信息-摘要算法5) MD5的加密方式是一种哈希加密.一些主流的编程语言都已经实现了MD5的加密,所以如果你的程序或是系 ...

  8. python约束 与MD5加密写法

    python 中约束写法有两种 常用的通过继承关系主动抛出异常 通过抽象类+抽象方法 1 常用的通过继承关系主动抛出异常写法 在本send方法中报错不会抛出异常, class BaseMessage( ...

  9. Shiro的Base64和MD5加密的使用

    场景 Shiro自带Base64和MD5加密. Base64位置: MD5位置: 实现 新建测试类 package com.badao.util;import org.apache.shiro.cod ...

最新文章

  1. 安卓 python termux_Android Termux 安装 Linux 就是这么简单
  2. python 进程间通信(上)
  3. python以运行效率高著称吗_提升Python程序运行效率的6个方法
  4. 华为P50真机谍照曝光:璀璨粉色机身 牢牢锁定女性用户
  5. PyTorch YOLOV3 模型转换问题
  6. 读后感之悟道-一位20年IT高管的职场心得
  7. nebulagraph exchange3.0.x
  8. 传统BIOS下的USB启动设置
  9. Resnet解决了什么问题
  10. dell服务器开机自动进入bios设置,戴尔服务器不能进入BIOS的解决方案
  11. 上门洗车小程序/APP功能介绍
  12. contiki之list(1)
  13. 编码格式问题 错误:JSON parse error: Invalid UTF-8 middle byte 0x3f
  14. 华中科技大学计算机科学与技术排名,2017华中科技大学专业排名
  15. linux uefi转mbr方法,如何将uefi改成mbr分区
  16. license程序设计 系统划分 及加密设计 加密算法调用openssl库
  17. 贝叶斯网络、拉普拉斯平滑
  18. 你拒绝的,也许是改变你最佳的机会
  19. 全网最全的云原生存储 OpenEBS 使用指南
  20. layui表格取值赋值

热门文章

  1. 【MATLAB】柱状图(bar的用法)
  2. 怎么开启微信蓝牙服务器,微信加群,电脑蓝牙怎么打开,教你一个最简单的方法...
  3. https 单向认证和双向认证
  4. 语音识别之HTK入门(四)——HCompV源码解析
  5. Android出现没有资源包问题,Android打包出现的小问题汇总
  6. 概率漫谈 转自 林达华
  7. Web前端最流行图表显示组件
  8. 人工智能和新能源行业有哪些
  9. 2015年9月11日
  10. Linux驱动 | 加载.ko驱动模块的两种方法(insmod与modprobe)