因为123用MD5加密后只能是变成abc,这个是一一对应的关系,所以有些破解MD5密码的方式就是造了一个密码和密文对应关系的库,然后用密文找明文。加上salt的话,比如注册时间(每个人不一样),123会变成12320150507100101这样子,对应的密文也就不是简单的abc了,每个人的注册时间不一样,增加了密码的复杂度,也就提升了安全度。 要破解的话,需要知道密码和salt两个变量了,但是加salt通常是在代码里处理的,可以设计为一个简单的算法,一般黑客只能拿到数据库数据,拿不到源码,不知道salt值。。。但是你要是数据库设计一个字段叫salt,那就没意义了。。。除非程序对salt再做处理,比如3次md5后作为salt
因为123用MD5加密后只能是变成abc,这个是一一对应的关系,所以有些破解MD5密码的方式就是造了一个密码和密文对应关系的库,然后用密文找明文。加上salt的话,比如注册时间(每个人不一样),123会变成12320150507100101这样子,对应的密文也就不是简单的abc了,每个人的注册时间不一样,增加了密码的复杂度,也就提升了安全度。
要破解的话,需要知道密码和salt两个变量了,但是加salt通常是在代码里处理的,可以设计为一个简单的算法,一般黑客只能拿到数据库数据,拿不到源码,不知道salt值。。。但是你要是数据库设计一个字段叫salt,那就没意义了。。。除非程序对salt再做处理,比如3次md5后作为salt