盐值加密介绍
2016-06-03 10:14
204 查看
简单说就是为了使相同的密码拥有不同的hash值的一种手段 就是盐化 MD5自身是不可逆的 但是目前网路上有很多数据库支持反查询 如果用户密码数据库不小心被泄露 黑客就可以通过反查询方式获得用户密码 或者对于数据库中出现频率较高的hash码(即很多人使用的)进行暴力破解(因为它通常都是弱口令) 盐值就是在密码hash过程中添加的额外的随机值 比如我的id是癫ω倒④ゞ 密码是123456 存在数据库中的时候就可以对字符串“123456/癫ω倒④ゞ ”进行hash,而验证密码的时候也以字符串“(要验证的密码)/癫ω倒④ゞ ”进行验证 这样有另外一个笨蛋密码是123456的时候 依然能构造出不同的hash值 并且能成功的验证 这时候我的id就作为盐值 为密码进行复杂hash了 所以么。。盐值的作用是减少数据库泄露带来的损失如果你RP非常好 猜中了我的密码是123456 我也阻止不了你啊→_→
什么叫盐值加密 Spring security怎样进行盐值加密
以前的md5原理是
密码密文=md5算法(密码明文);
这样明文与密文其实还是一一对应的
那么人家就可以用字典攻击(就是一个一个的试)来探测密码
加盐(盐值加密)的算法很多
Spring security用的是:
密码密文=md5算法(密码明文{盐值});
这个盐值就可以自己随便设置了,弄一个静态字符串或者用用户的登录名
举个例子:
用户名:thr
密码:fou
用用户名作为盐值
打开网页:http://www.md5.org.cn/md5/Encrypt.asp
输入:thr{fou}
得到密文:5dbae131e3eea6ce50068aab9292c8c3
OK.应该明白了
相关文章推荐
- 软件就是未来:工业4.0时代下的工业软件
- Android day6:JAVA运算符、流程(循环)、数组
- git常用命令的使用(2)
- 关系型数据库之Mysql引擎-日志-用户管理(三)
- AndroidStudio中ADB Wifi插件
- 硬盘发生故障数据还能恢复吗
- Vim常用指令笔记
- Android框架进阶--ThinkAndroid注解机制(2)
- Java基本类型总结
- textarea根据id获取不到文本框的值时的解决方法
- eclipse 搭建 python 开发环境
- 调用Android系统设置项
- java中new对象分析
- Android常用代码片段(笔记一)
- spring配置核心控制器问题
- iOS 基础篇11—ios应用数据存储方式(归档)
- form的两种提交方式
- bootstrap学习总结-css样式设计(二)
- WeakHashMap
- KPHHS-1005CGCK kingbright 发光二极管