Encriptar y Desencriptar de manera sencilla en MS SQL 2005
Estoy en pleno desarrollo de una aplicacion que va a estar montada sobre la plataforma de .net. Una de las preocupaciones es la parte de seguridad de las contraseñas, es cierto que las sentencias de SQL que a continuacion se muestran, no son las mas seguras como lei por ahi. Pero es una manera sencilla y rapida de salir, es un mejor que nada.
Sin mucho rollo pongo el codigo:
Para el caso de obtener la informacion en formato "leíble":
Para el caso de busqueda por un usuario y contraseña
Listo!
Sin mucho rollo pongo el codigo:
INSERT INTO Users
(Id, Username, Password)
VALUES (20, 'user20', ENCRYPTBYPASSPHRASE('siempremeolvido', 'pass20'))
Para el caso de obtener la informacion en formato "leíble":
SELECT Id, Username, CONVERT(VARCHAR(300), DECRYPTBYPASSPHRASE('siempremeolvido', Password))
FROM Users
Para el caso de busqueda por un usuario y contraseña
SELECT Id, Username, Password, Added, Status
FROM Users
WHERE (Username='victor')AND(CONVERT(VARCHAR(300), DECRYPTBYPASSPHRASE('siempremeolvido', Password)) = 'pass20')
Listo!
Comentarios
Es increible darse cuenta que siempre hay mas de una solucion para resolver un problema en programacion.
Atte Domingo Sanz