MD5 - 简介

全称 message-digest algorithm 5,翻译过来就是:信息-摘要-算法 5

 

一、特点

1. 长度固定

不管多长的字符串,加密后长度都是一样长 。

作用:方便平时信息的统计和管理。

2. 易计算

字符串和文件加密的过程是容易的。

作用:开发者很容易理解和做出加密工具。

3. 细微性

一个文件,不管多大,小到几k,大到几G,你只要改变里面某个字符,那么都会导致MD5值改变。

作用:很多软件和应用在网站提供下载资源,其中包含了对文件的MD5码;用户下载后只需要用工具测一下下载好的文件,通过对比就知道该文件是否有过更改变动。

4. 不可逆性

你明明知道密文和加密方式,你却无法反向计算出原密码 。

作用:基于这个特点,很多安全的加密方式都是用到,大大提高了数据的安全性。

 

二、后续讲解

关于撞库破解

这是概率极低的破解方法,原理就是:

1. 建立一个大型的数据库,把日常的各个语句,通过MD5加密成为密文,不断的积累大量的句子,放在一个庞大的数据库里。

2. 比如一个人拿到了别人的密文,想去查询真实的密码,就需要那这个密文去到提供这个数据库的公司网站去查询。

 

三、关于MD5加盐

比如我的银行密码是”12345”:

1. 得到的MD5是:827ccb0eea8a706c4c34a16891f84e7b。

2. 一个人截取到这个密文,那么通过撞库肯定容易撞出12345。

3. 我们要做的就是加盐,银行密码还是”12345”,然后我把银行密码加上我特定的字符串才计算MD5。所以密码还是那个密码,但是变成求”12345密码加密987”的MD5值,然后再得到MD5,那么这个MD5起码可以确认那个数据库不会有。

你可能感兴趣的:(#,密码学)