Essa é uma das maneiras de criptografar dados no sql server,
consiste em criptografar uma sequencia de caracteres ou uma senha usando
uma frase ou uma palavra mais facil de lembrar e um campo identificador da tabela,
pode ser um id ou qualquer outro.
Vamos cria a tabela conta com os campos usuario e senha...
CREATE TABLE #CONTA (USUARIO VARCHAR(50), SENHA VARBINARY(256))
Agora vamos inserir os dados do usuario na tabela encriptando com a função "encryptbypassphrase"
passando como parametros a FRASE secreta, a SENHA que sera encriptada, uma FLAG abilitando o uso de um identificador que será
o campo USUARIO...
INSERT INTO #CONTA VALUES ('ELVIS', ENCRYPTBYPASSPHRASE('QUERO MINHA SENHA', 'ESSA3AMINH423NH4$UP3RC0MP1X4',1,'ELVIS'))
E para finalizar vamos desencriptar utilizando a função "decryptbypassphrase" e como parametro é passado a FRASE secreta,
a senha encriptada do campo SENHA, novamente a FLAG abilitando o identificador e o identificador que nesse caso usamos o campo USUARIO...
SELECT
USUARIO,
SENHA AS 'SENHA ENCRYPTADA',
CONVERT(VARCHAR,DECRYPTBYPASSPHRASE('QUERO MINHA SENHA', SENHA,1,USUARIO)) AS 'SENHA DESENCRYPTADA'
FROM
#CONTA
Tambem é possivel fazer somente com a frase secreta sem utilizar nenhum campo identificador, basta não colocar a flag e o identificador.
confiram mais informações no link abaixo...
http://msdn.microsoft.com/pt-br/library/ms190357.aspx
Nenhum comentário:
Postar um comentário