Я пытаюсь преобразовать веб-сайт VS2010 в веб-приложение VS2015 (C#). Последняя проблема, с которой я столкнулся, заключается в том, что VS2015 требует SHA1 или HMACSHA256,384,512. Это старый сайт, и он использовался для 3DES. Он использует членство .NET 2.0 с зашифрованными паролями. Я прочитал что-то, что говорит, что .NET Membership использует шифрование машинного ключа при шифровании паролей. Я знаю, что мне нужно переключиться на Hashed Passwords, и это находится в списке элементов.Пароли, не работающие после изменения машинного ключа для обновления VS2015
When using <machineKey compatibilityMode="Framework45" /> or the MachineKey.Protect and
MachineKey.Unprotect APIs, the 'validation' attribute must be one of these values:
SHA1, HMACSHA256, HMACSHA384, HMACSHA512, or alg:[KeyedHashAlgorithm]
Проблема в том, что я не могу войти в систему после того, как это изменилось. Я предполагаю, что это потому, что проверка использует другой алгоритм, и поэтому совпадения не найдено.
Есть ли способ сохранить валидацию без необходимости расшифровывать каждый пароль, а затем хешировать его или повторно расшифровывать? Или я должен просто перевести все пароли в хэшированные во избежание этого? Или есть другой вариант?