Escolher um algoritmo de criptografia
A criptografia é um dos muitos recursos de proteção que estão disponíveis para o administrador que deseja oferecer segurança a uma instância do SQL Server.
Algoritmos de criptografia definem transformações de dados que não podem ser invertidas facilmente por usuários não autorizados. O SQL Server permite que administradores e desenvolvedores escolham entre diversos algoritmos, incluindo DES, Triple DES, TRIPLE_DES_3KEY, RC2, RC4, RC4 de 128 bits, DESX, AES de 128 bits, AES de 192 bits e AES de 256 bits.
Nenhum algoritmo é ideal para todas as situações e informações sobre o benefício de cada um está além do escopo dos Manuais Online do SQL Server. Porém, os seguintes princípios gerais se aplicam:
A criptografia segura geralmente consome mais recursos da CPU que criptografia menos segura.
As chaves extensas geralmente produzem uma criptografia mais segura que as chaves mais curtas.
A criptografia assimétrica é mais fraca que a criptografia simétrica, que usa o mesmo comprimento de chave mas é relativamente lenta.
Codificações em bloco com chaves extensas são mais seguras que codificações em fluxo.
Senhas longas e complexas são mais seguras que senhas curtas.
Se você estiver criptografando muitos dados, deve criptografá-los usando uma chave simétrica e criptografar a chave simétrica com uma chave assimétrica.
Dados criptografados não podem ser compactados, mas dados compactados podem ser criptografados. Se você usar compactação, deverá compactar os dados antes de criptografá-los.
Importante |
---|
O algoritmo RC4 tem suporte somente para compatibilidade com versões anteriores. O novo material só pode ser criptografado por meio do algoritmo RC4 ou RC4_128 quando o banco de dados está no nível de compatibilidade 90 ou 100. (Não recomendável.) Use um algoritmo mais recente; por exemplo, um dos algoritmos AES. No SQL Server 2012, o material criptografado por meio do algoritmo RC4 ou RC4_128 pode ser descriptografado em qualquer nível de compatibilidade. O uso repetido do mesmo RC4 ou RC4_128 KEY_GUID em blocos de dados diferentes resulta na mesma chave RC4 porque o SQL Server não fornece um salt automaticamente. O uso da mesma chave RC4 repetidamente é um erro bem conhecido que resulta em criptografia muito fraca. Portanto, preterimos as palavras-chave RC4 e RC4_128. Esse recurso será removido em uma versão futura do Microsoft SQL Server. Não utilize esse recurso em desenvolvimentos novos e modifique, assim que possível, os aplicativos que atualmente o utilizam. |
Para obter mais informações sobre os algoritmos de criptografia e sobre a tecnologia de criptografia, consulte Conceitos de segurança de chave no Guia do desenvolvedor do .NET Framework do MSDN.
Esclarecimento em relação aos algoritmos DES:
O DESX foi nomeado incorretamente. As chaves simétricas criadas com ALGORITHM = DESX na verdade usam a cifra TRIPLE DES com uma chave de 192 bits. O algoritmo DESX não é fornecido. Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.
As chaves simétricas criadas com ALGORITHM = TRIPLE_DES_3KEY usam TRIPLE DES com uma chave de 192 bits.
As chaves simétricas criadas com ALGORITHM = TRIPLE_DES usam TRIPLE DES com uma chave de 128 bits.
Tarefas relacionadas
Criptografando com o uso de uma chave simétrica. |
|
Criptografando com o uso de uma chave assimétrica. |
|
Criptografando com o uso de um certificado. |
|
Criptografando arquivos de banco de dados com o uso de criptografia transparente de dados. |
|
Como criptografar uma coluna de uma tabela. |