我正在处理一个应用程序,我需要存储用户密码,所以我想我会将它存储在注册表的当前用户类中,但我也想把它哈希,原因很明显,我已经看到新闻项目表明SHA1已被破解,"标准"系统或.net中是否有更好的(未破解的)散列算法?
SHA1不是加密,它是加密哈希函数.是的它已被打破,这意味着可以比蛮力方法更快地产生碰撞.SHA2系列尚未破解.
但我建议每个条目使用一个自定义种子,以便彩虹表不能用于尝试密码.如果您正在使用SQL成员资格提供程序,则密码格式"Hashed"已为每个用户使用不同的种子.
有关播种哈希的更多信息,请参阅Thomas Ptacek 撰写的有关安全密码方案的内容.