Получить ASP.Net AutoGenerated MachineKey - PullRequest
1 голос
/ 22 марта 2010

У меня есть приложение .Net 1.1, которое необходимо обновить до 2.0.Приложение шифрует пароли в базе данных, используя MD5CryptoServiceProvider.После того, как я обновился до 2.0, значение MD5 изменилось.В machine.config для машинного ключа было установлено автоматическое создание.

Есть ли способ получить этот ключ?

Ответы [ 2 ]

3 голосов
/ 22 марта 2010

Да, вы можете с небольшим размышлением, подробности и код см. Здесь :)

Хотя я не уверен, что MD5CryptoServiceProvider на самом деле использует машинный ключ, я думал, что он независим, кто-то правильно меня в комментариях?

0 голосов
/ 23 марта 2010

System.Security.Cryptography.MD5CryptoServiceProvider не использует настройки ASP.NET system.web/machineKey. Они используются для контроля защиты от взлома и шифрования ViewState, билетов проверки подлинности форм и файлов cookie роли ( Как: настроить MachineKey в ASP.NET 2.0 ).

Я только что скомпилировал простое консольное приложение в .NET 1.1 и 2.0, которое выполняет хэш MD5, и они оба выдают одно и то же значение. Я запустил эти приложения на двух разных компьютерах (один с автоматически сгенерированными машинными ключами, а другой с жестко закодированными ключами), опять же, идентичные результаты.

Похоже, что используемое Кодирование, возможно, отличается, то есть приложение 1.1 использует ASCIIEncoding, а приложение 2.0 использует Unicode.

Еще одна вещь, которую нужно проверить, - если используемый вами метод использует соль, о которой вы забыли, это, безусловно, приведет к созданию разных хешей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...