Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A criptografia é uma das várias defesas detalhadas que estão disponíveis para o administrador que deseja proteger uma instância do SQL Server.
Algoritmos de criptografia definem transformações de dados que não podem ser facilmente revertidas por usuários não autorizados. O SQL Server permite que administradores e desenvolvedores escolham entre vários algoritmos, incluindo DES, Triple DES, TRIPLE_DES_3KEY, RC2, RC4 de 128 bits, DESX, AES de 128 bits, AES de 192 bits e AES de 256 bits.
Nenhum algoritmo único é ideal para todas as situações e a orientação sobre os méritos de cada um está além do escopo dos Manuais Online do SQL Server. No entanto, os seguintes princípios gerais se aplicam:
A criptografia forte geralmente consome mais recursos de CPU do que a criptografia fraca.
Chaves longas geralmente produzem criptografia mais forte do que chaves curtas.
A criptografia assimétrica é mais fraca do que a criptografia simétrica usando o mesmo comprimento de chave, mas é relativamente lenta.
As criptografias de bloco com chaves longas são mais fortes do que as criptografias de fluxo.
Senhas longas e complexas são mais fortes que senhas curtas.
Se você estiver criptografando muitos dados, deverá criptografar os dados usando uma chave simétrica e criptografar a chave simétrica com uma chave assimétrica.
Os dados criptografados não podem ser compactados, mas os 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 e versões posteriores, dados criptografados usando RC4 ou RC4_128 podem ser descriptografados em qualquer nível de compatibilidade.
O uso repetido do mesmo RC4 ou RC4_128 KEY_GUID em diferentes blocos de dados resultará na mesma chave RC4 porque o SQL Server não fornece um sal automaticamente. Usar a mesma chave RC4 repetidamente é um erro conhecido que resultará em criptografia muito fraca. Portanto, descontinuamos as palavras-chave RC4 e RC4_128. Esse recurso será removido em uma versão futura do Microsoft SQL Server. Não use esse recurso em um novo trabalho de desenvolvimento e modifique os aplicativos que atualmente usam esse recurso o mais rápido possível.
Para obter mais informações sobre algoritmos de criptografia e tecnologia de criptografia, consulte Os Principais Conceitos de Segurança no Guia do Desenvolvedor do .NET Framework sobre MSDN.
Esclarecimento sobre algoritmos DES:
DESX foi nomeado incorretamente. As chaves simétricas criadas com ALGORITHM = DESX realmente usam a criptografia 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 um novo trabalho de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso.
Chaves simétricas criadas com ALGORITHM = TRIPLE_DES_3KEY usam TRIPLE DES com uma chave de 192 bits.
Chaves simétricas criadas com ALGORITHM = TRIPLE_DES usar TRIPLE DES com uma chave de 128 bits.
Tarefas Relacionadas
| Criptografar usando uma chave simétrica. | CREATE SYMMETRIC KEY (Transact-SQL) |
| Criptografar usando uma chave assimétrica. | CRIAR CHAVE ASSIMÉTRICA (Transact-SQL) |
| Criptografar usando um certificado. | CREATE CERTIFICATE (Transact-SQL) |
| Criptografar arquivos de banco de dados usando criptografia de dados transparente. | TDE (Transparent Data Encryption) |
| Como criptografar uma coluna de uma tabela. | Criptografar uma coluna de dados |