MD5+盐问题

xiyaoponewnew 2016-03-29 09:18:34
MD5+盐,既然盐是随机的,那么在保存密码的同时必需把随机盐保存,那么既然别人能拿到我的数据库,那就能看到我的盐,这样不是一样不安全了。
...全文
404 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
attilax 2016-04-12
  • 打赏
  • 举报
回复
加盐的目的是一是防止他人得到没加盐的哈希值后到哈希值查询网站查询到原文,即使有人得到了数据库的信息,有了哈希值和盐也不能还原到原文,查询网站查不到加了盐的哈希值。 二是防止 有漏洞后后用自己的无盐密码替换用户的密码,可以提升安全性。
梦蝶梦中醒 2016-04-10
  • 打赏
  • 举报
回复
引用 4 楼 Q80470101 的回复:
[quote=引用 3 楼 xiyaoponewnew 的回复:] [quote=引用 1 楼 Q80470101 的回复:] 我们干嘛一定要把“盐”存在数据库里呢? 或许可以存在配置文件或写死在代码里?
盐是随机的,如何写死在代码里呢???[/quote] 一般的做法是,使用一个常量作为盐,所以可以直接直接写在代码里面。 当然也有依赖算法生成的动态盐,例如,用密码的hash值,这是通过算法生成的,不需要存储。 如果你的设计确实是每次都随机生成,并要把它存储起来的话。只要存储是稍微做一些混淆也是不容易发现的。 因为即使数据库泄露了也只是拿到最后的数据,里面的数据处理逻辑是你自己定的,他们拿到也不容易破译。 [/quote] http://www.server110.com/sec_news/201309/995.html
coco_1986 2016-03-31
  • 打赏
  • 举报
回复
加盐的目的是防止他人得到没加盐的哈希值后到哈希值查询网站查询到原文,即使有人得到了数据库的信息,有了哈希值和盐也不能还原到原文,查询网站查不到加了盐的哈希值。
Intboy 2016-03-29
  • 打赏
  • 举报
回复
别人怎么拿到你的数据库?你应该从这方面防范。
家里敷泥呀 2016-03-29
  • 打赏
  • 举报
回复
我们干嘛一定要把“盐”存在数据库里呢? 或许可以存在配置文件或写死在代码里?
家里敷泥呀 2016-03-29
  • 打赏
  • 举报
回复
引用 3 楼 xiyaoponewnew 的回复:
[quote=引用 1 楼 Q80470101 的回复:] 我们干嘛一定要把“盐”存在数据库里呢? 或许可以存在配置文件或写死在代码里?
盐是随机的,如何写死在代码里呢???[/quote] 一般的做法是,使用一个常量作为盐,所以可以直接直接写在代码里面。 当然也有依赖算法生成的动态盐,例如,用密码的hash值,这是通过算法生成的,不需要存储。 如果你的设计确实是每次都随机生成,并要把它存储起来的话。只要存储是稍微做一些混淆也是不容易发现的。 因为即使数据库泄露了也只是拿到最后的数据,里面的数据处理逻辑是你自己定的,他们拿到也不容易破译。
xiyaoponewnew 2016-03-29
  • 打赏
  • 举报
回复
引用 1 楼 Q80470101 的回复:
我们干嘛一定要把“盐”存在数据库里呢? 或许可以存在配置文件或写死在代码里?
盐是随机的,如何写死在代码里呢???

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧