Я замеченный этот вопрос, Шифрующий/Хеширующий незашифрованные пароли в базе данных
и я знаю, что не должен делать md5 ("соль" + пароль); и я вижу реализацию в Python для решения.
Существует ли.NET, созданная в функции с параметрическими усилителями, которые я могу использовать вместо того, чтобы писать мое собственное?
Проверить Formandauthentication.hashpasswordforstoringInconfigfile
string hashMD5 = FormsAuthentication.HashPasswordForStoringInConfigFile(Pass + Salt, "MD5");
string hashSHA1 = FormsAuthentication.HashPasswordForStoringInConfigFile(Pass + Salt, "SHA1");
Я не думаю, что есть одна функция, но вы можете сделать это в нескольких строках (здесь, используя SHA512, но есть другие варианты):
using (var sha = new SHA512CryptoServiceProvider())
{
byte[] hashed = sha.ComputeHash(Encoding.Default.GetBytes(saltedPassword));
string output = Convert.ToBase64String(hashed);
}
Убедитесь, что вы используете один из Crypto. .. Классы для обеспечения более безопасного алгоритма используется.