Criptografia de Dados com SQL Server

Bom dia a todos!

Este deve ser o último post do ano… Em 2012 deverei entrar de cabeça estudando o SQL Server 2012.

Aliás, a Sisnema vai promover um evento em janeiro, sobre tendências em produtos Microsoft. Nuvem, mobilidade, gerenciamento e SQL Server estarão na pauta. Pessoal de Porto Alegre, dêem uma olhada em http://sisnema.com.br/galerias/IdE001424.htm para informações.

Voltando ao assunto criptografia, o SQL Server 2008 introduziu muitas funcionalidades para criptografia. A mais notável delas é a capacidade de criptografar usando chaves, que são protegidas pelo Windows, isolando dados que serão protegidos das chaves de proteção.

Uma funcionalidade simples de criptografia, porém, é o conjunto das funções ENCRYPTBYPASSPHRASE e DECRYPTBYPASSPHRASE.

Essas funções utilizam o algoritmo 3-DES para proteger os dados. O uso básico destas funções é o seguinte:

=== CRIPTOGRAFIA ===

SELECT ENCRYPTBYPASSPHRASE('secret', 'My very secret text');

O valor retornado é um VARBINARY:

0x01000000409190B7ABDB55FE3724888C854ADBF33DA0BDF6F8AD0DCB0DC76746A2122D515B96DA4DCEF14FFA

=== LEITURA ===

Observando o comando acima, a tendência natural seria fazermos uso direto da função para descriptografar:

SELECT CONVERT (VARCHAR(100), DECRYPTBYPASSPHRASE('secret', 
0x010000006CF61B39AAF0030FDCED9942BEEEE946CB4EDB0AF2C0CDBCFB0B0882A7B32B4975974D20C8A3C82D));

Porém, nao esqueçamos que o retorno é binário – é preciso fazer a conversão para o tipo de dados original:

SELECT CONVERT(VARCHAR(100), 
DECRYPTBYPASSPHRASE(‘secret’, 0x010000006CF61B39AAF0030FDCED9942BEEEE946CB4EDB0AF2C0CDBCFB0B0882A7B32B4975974D20C8A3C82D));

Agora sim!

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s