Я написал быстрое консольное приложение для быстрого создания и создания имен пользователей и логинов для моего веб-приложения для существующих учетных записей, которые не имели правильно хешированных паролей. В моем веб-приложении я использую FormsAuthentication так:
string hashedPwd = FormsAuthentication.HashPasswordForStoringInConfigFile(saltAndPassword, "SHA1");
Я пытался использовать FormsAuthentication в консольном приложении, но он не может разрешить ни FormsAuthentication, ни импорт. Предупреждение, которое я получаю, спрашивает, пропускаю ли я сборку. Я попытался использовать следующее, чтобы дать мне те же результаты, что и предыдущий:
SHA1 sha1 = new SHA1CryptoServiceProvider();
System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
byte[] bytesHashedPwd = sha1.ComputeHash(encoding.GetBytes(saltAndPwd));
string tmpString = encoding.GetString(byteshashedPwd);
string hashedPwd = String.Concat(str, salt);
return hashedPwd;
Эти два метода дают мне разные результаты. Мне нужно получить тот же результат, что и FormsAuthentication. Я не эксперт по безопасности с крошечным легкомысленным фоном, и мои знания о характере еще хуже. Я ценю любую помощь.