Если вы имеете в виду пароль пользователя вашего приложения, было бы намного проще (и, вероятно, достаточно хорошо) просто хэш и соль пароль пользователя.
Есть несколько причин:
- Хеширование пароля является обычной практикой / стандартом.
- Пароль не может быть восстановлен из базы данных (даже при доступе к базе данных трудно восстановить пароль).
- База данных являетсяне калькулятор - это механизм хранения (расширенный механизм, но для хранения данных, а не для их вычисления).
В SQL Server 2005 имеется функция HashBytes .Не забудьте соль пароль перед хэшем.
Пример кода с использованием HashBytes
может выглядеть так:
DECLARE
@password nvarchar(100),
@salt AS nvarchar(100)
SET @salt = 'various random characters i.e. #_$a1b'
SET @password = 'my password'
SELECT HashBytes('SHA1', @salt + @password)
Однако, вероятно, гораздо прощесоздайте хеш непосредственно в приложении и сохраните только хешированный пароль в базе данных.