c# – 使用ASP.NET MVC 3哈希密码

前端之家收集整理的这篇文章主要介绍了c# – 使用ASP.NET MVC 3哈希密码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我现在正在尝试找出为我的ASP.NET MVC 3应用程序散列密码的最佳方法.根据我的意见,最好使用给定的密码和随机盐,然后将散列密码和盐存储在一起.我的问题是不会使随机盐毫无意义吗?我的意思是散列密码的原因是因为如果有人进入你的数据库,他们就没有普通的密码,并且盐使得反转哈希以获取密码要困难得多,但是如果我将哈希存储在密码,盐的重点是什么(我对哈希的知识是有限的,所以我可以完全脱离我的想法).

我的第二个问题是什么散列方法是最好用的?我读到MD5(这是我一直使用的)很容易破解.我听说bcrypt / sha512非常好.应该使用哪一个?我知道C#默认带有sha512哈希.从我所看到的,bcrypt不包含在.NET库中,有没有适合C#和bcrypt的好库?

解决方法

没有必要将盐存放在不同的位置,你应该总是假设攻击者知道盐,它的目的不是一个额外的密码!

在.NET中,这个API将完成你需要的一切,它会在每次AES加密通过之前创建大加密随机盐以及HMACSHA512散列和通过字节交换进行密钥扩展:)

http://sourceforge.net/projects/pwdtknet/

猜你在找的C#相关文章