b050dec191530e936506ba810ea5e12f:377335 ?
这根本不是MD5 加密后的数字。。最起码位数就不对。。
如 123456 对应的MD5加密后的密文是:
e10adc3949ba59abbe56e057f20f883e
MD5是一种不可逆的加密算法,
什么是不可逆呢?就是加了密后,就不能解了。
现在网上的诸多所谓的“MD5解密工具”其实都是暴力破解,什么叫暴力破解呢?
那就是这些软件都有一些“字典文件”,其实就是一些常用的字符串及其加密过后的md5密文,例:软件首先把a加密成md5密文,然后用密文和现在要破解的密文进行比较,如果相同,那当然就破解了是a,如果不同,那么依此继续将b,c... 作同样的处理,也就是说,这些破解工具完全是用猜的,a不行猜b,b不行猜c,用循环一直往下猜。所以你想要找一个md5解密的软件,我劝楼主还是省了这份心吧,因为这些软件破解成功的机率很小。。
简单说就是为了使相同的密码拥有不同的hash值的一种手段 就是盐化,盐值就是在密码hash过程中添加的额外的随机值。
md5是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。
扩展资料
MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。比如,在Unix下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如:
MD5 (tanajiya.tar.gz) = 38b8c2c1093dd0fec383a9d9ac940515
这就是tanajiya.tar.gz文件的数字签名。MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。为了让读者朋友对MD5的应用有个直观的认识,笔者以一个比方和一个实例来简要描述一下其工作过程:
地球上任何人都有自己独一无二的指纹,这常常成为司法机关鉴别罪犯身份最值得信赖的方法;与之类似,MD5就可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”都会发生变化。
参考资料来源:百度百科-MD5
原因:盐被称作“Salt值”,这个值是由系统随机生成的,并且只有系统知道。即便两个用户使用了同一个密码,由于系统为它们生成的salt值不同,散列值也是不同的。
MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
扩展资料:
MD5相对MD4所作的改进:
1、增加了第四轮。
2、每一步均有唯一的加法常数。
3、减弱第二轮中函数的对称性。
4、第一步加上了上一步的结果,这将引起更快的雪崩效应(就是对明文或者密钥改变 1bit 都会引起密文的巨大不同)。
5、改变了第二轮和第三轮中访问消息子分组的次序,使其更不相似。
6、近似优化了每一轮中的循环左移位移量以实现更快的雪崩效应,各轮的位移量互不相同。
参考资料来源:百度百科-MD5
hash函数是一种单向散列算法,这意味着从明文可以得到散列值,而散列值不可以还原为明文。
验证密码的方法是将用户输入的密码与盐值按照加密时使用的hash算法再hash一次,并与数据库中存储的hash值作比较,若两者一致则认为密码正确。
列值,而散列值不可以还原为明文。验证密码的方法是将用户输入的密码与盐值按照加密时使用的hash算法再hash一次,并与数据库中存储的hash值作比较,若两者一致则认为密
函数的对称性。4、第一步加上了上一步的结果,这将引起更快的雪崩效应(就是对明文或者密钥改变 1bit 都会引起密文的巨大不同)。5、改变了第二轮和第三轮中访问消息子分组的次序,使其更不相似。6、近似优化了每一轮中的循环左移位移量以实现更快的雪崩效应,各轮的位移量互不相同。参考资料来源:百度百