gpt4 book ai didi

asp.net - SQL Server (asp.net) 中的哈希密码

转载 作者:行者123 更新时间:2023-12-04 06:53:14 24 4
gpt4 key购买 nike

这是存储在 SQL Server 中的散列密码应该是什么样子的吗?

alt text http://img28.imageshack.us/img28/2545/88871034.gif

这是我用来散列密码的函数(我在一些教程中找到了它)

public string EncryptPassword(string password)
{
//we use codepage 1252 because that is what sql server uses
byte[] pwdBytes = Encoding.GetEncoding(1252).GetBytes(password);
byte[] hashBytes = System.Security.Cryptography.MD5.Create().ComputeHash(pwdBytes);
return Encoding.GetEncoding(1252).GetString(hashBytes);
}

编辑
我尝试使用 sha-1,现在字符串看起来像他们假设的那样:
public string EncryptPassword(string password)
{
return FormsAuthentication.HashPasswordForStoringInConfigFile(password, "sha1");
}

// example output: 39A43BDB7827112409EFED3473F804E9E01DB4A8

上图的结果看起来像是断线,但这个 sha-1 看起来很正常......

这是否足够安全?

最佳答案

你很接近,但不完全在那里。

对于安全散列,您需要一个 salt另一列中的值。其次,尽量远离 MD5 作为散列提供程序。它不如 SHA-1 安全或 SHA-2。 SHA-1 包含在 .NET 中,就像 MD5 一样。

关于asp.net - SQL Server (asp.net) 中的哈希密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2825885/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com