asp.net – 在代码而不是数据库中存储salt
发布时间:2020-05-24 11:18:31 所属栏目:asp.Net 来源:互联网
导读:关于盐最佳实践的 great讨论已有 couple次,似乎压倒性的建议是为每个密码生成不同的盐,并将其与密码一起存储在数据库中. 但是,如果我正确理解盐的目的,那就是减少彩虹表攻击会让你受到损害的可能性.因此,我理解通过将其存储在数据库中,最好为每个用户更改它,
|
关于盐最佳实践的 great讨论已有 couple次,似乎压倒性的建议是为每个密码生成不同的盐,并将其与密码一起存储在数据库中. 但是,如果我正确理解盐的目的,那就是减少彩虹表攻击会让你受到损害的可能性.因此,我理解通过将其存储在数据库中,最好为每个用户更改它,但是如果盐不在数据库附近怎么办?如果我在代码中存储单个salt值(在Web服务器上将存储在已编译的dll中),如果攻击者以某种方式获得对数据库的访问权限,那么这不会起到同样的作用吗?在我看来,它更安全. 解决方法盐的目的是要求每个密码重新生成彩虹表.如果您使用单一盐,黑客/黑客只需要重新生成彩虹表一次,并且他拥有您的所有密码.但是如果你为每个用户生成一个随机的,他必须为每个用户生成一个.黑客部分的成本要高得多.这就是为什么你可以用纯文本存储盐,如果黑客知道它只要有多个就没关系.默默无闻的安全性并不好,微软告诉我们这一点. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.NET MVC和混合模式认证
- 如何更改.Net页面将在其下运行的扩展名?
- asp.net-mvc-3 – MVC3正确的方式来改变每个请求的文化
- asp.net-mvc – Sitecore 7.5 MVC和HttpContext.Session.Ti
- asp.net – 如何使用Fiddler编辑HTTP请求
- 如何利用ASP.net IIS 7.5中的浏览器缓存
- “ASP.Net身份”如何与“Windows身份基金会”进行比较?
- 如何检测ASP.NET应用程序中的SqlServer连接泄漏?
- entity-framework – 术语’scaffold-dbcontext’不被识别为
- asp.net-mvc – 如果value为空,在razor模板上放置一个空字符
