Как создать настраиваемый поставщик членства asp.net sql для сохранения хешированных паролей в SHA256? - PullRequest
2 голосов
/ 18 декабря 2010

Я создаю веб-приложение, используя для управления провайдером членства ASP.net аутентификацию / авторизацию. Я делал это несколько раз, но на этот раз мне нужно сохранить хешированный пароль в SHA256 вместо стандартного хэша пароля SHA1.

Глядя на переопределяемые методы на SQLMembershipProvider, есть, по крайней мере, один, который, я думаю, мне придется переопределить, чтобы этот щенок работал:

byte[] EncryptPassword(byte[] password)

Мне также придется изменить поле aspnet_Membership.Password, чтобы справиться с новым хешированным паролем, в настоящее время это только nvarchar (128).

Я надеялся, что кто-то, имеющий немного больше опыта в расширении SqlMembershipProvider, сможет дать мне несколько советов.

Спасибо.

примечание: хотя я использую поставщика членства .net 2.0, на самом деле я использую .net 3.5

1 Ответ

0 голосов
/ 20 декабря 2010

Я бы попробовал следовать решениям, перечисленным в этом ответе, прежде чем создавать свой собственный поставщик членства:

Какой алгоритм хеширования по умолчанию использует членство ASP.NET?

Насколько я могу судить, SHA256 выводит строку из 64 символов , поэтому вы должны быть в безопасности с полем varchar (128).

...