250 likes | 362 Views
Sistemas de Informação Redes de Computadores Análise e Desenvolvimento de Sistemas. Administração de Banco de Dados 1º Semestre – 2011 Pedro Antonio Galvão Junior E-mail: pedrogalvaojunior@gmail.com Fone: 9531-7555 pedro.galvao@aes.edu.br Versão 1.11.02 – Fev/2011. CRIPTOGRAFIA.
E N D
Sistemas de Informação Redes de Computadores Análise e Desenvolvimento de Sistemas Administração de Banco de Dados 1º Semestre – 2011 Pedro Antonio Galvão Junior E-mail: pedrogalvaojunior@gmail.com Fone: 9531-7555 pedro.galvao@aes.edu.br Versão 1.11.02 – Fev/2011.
regulamentações • As estruturas de segurança das empresas devem cumprir as leis federais, estaduais e internacionais sobre armazenamento de informações pessoais. • As exigências afetam diversas operações que envolvem bancos de dados.
Hashing Algorithms Hashing Algorithm Data Data Digest
Two-way Algorithms • Usa duas funções para criptografar e descriptografar os dados: • EncryptByPassPhrase() • DecryptByPassPhrase()
algoritmos mais complexos • Certificados. • Chaves Simétricas. • Chaves Assimétricas.
Visão geral • A barreira de segurança final para dados confidenciais é normalmente a criptografia de dados. • A criptografia aumenta a carga do processador e consome espaço de armazenamento. Requer gerenciamento de chave. • Criptografia simétrica: • É rápida; • Usa uma chave; e • Não oferece não-repúdio.
Visão geral • Criptografia assimétrica: • Usa um par de chaves; • É mais lenta que a criptografia simétrica; e • Oferece confidencialidade e não-repúdio. • Criptografia híbrida: • Aproveita a velocidade da criptografia simétrica e a segurança aprimorada da criptografia assimétrica.
Soluções de Criptografia • Os processos de criptografia e descriptografia requerem: • Um certificado como uma forma de usar a criptografia assimétrica; • Uma chave assimétrica; e • Uma chave simétrica, que deve ser aberta na ordem correta em uma hierarquia de criptografia.
Serviço MASTER KEY (SMK) • Gerencia as chaves de criptografia; • Cada instância do SQL Server tem uma; • Criado durante o setup; e • Chave simétrica de 128 bits com algorítmo 3DES. BACKUP SERVICE MASTER KEY TO FILE = ‘file_name’ ENCRYPTION BY PASSWORD = ‘senha’ RESTORE SERVICE MASTER KEY FROM FILE = ‘file_name’ DECRYPTION BY PASSWORD = ‘senha’
Manutenção do Serviço Master Key Backup da MASTER KEY: BACKUP SERVICE MASTER KEY TO FILE = ‘file_name’ ENCRYPTION BY PASSWORD = ‘senha’ Restore da MASTER KEY: RESTORE SERVICE MASTER KEY FROM FILE = ‘file_name’ DECRYPTION BY PASSWORD = ‘senha’ Regenerando a Master Key: ALTER SERVICE MASTER KEY REGENERATE
Database Master Keys (DMK) • Protege informações do banco com chaves assimétricas ou as chaves privadas de um certificado; • Cada banco tem a sua DMK; e • Chave simétrica de 128 bits e DES.
CriptografiaSimétrica Symmetric Symmetric • Uma só chave para criptografar e descriptografar. • Baixo overhead. CREATE SYMETRIC KEY <nome_da_chave> WITH ALGORITHM = TRIPLE_DES ENCRYPTION BY PASSWORD = ’P@ssw0rd1’ Symmetric key encrypts and decrypts data
CriptografiaSimétrica Symmetric Symmetric Symmetric • Uma cópia da chave simétrica é armazenada ou distribuída para comunicação com partners.
CriptografiaASSimétrica • Par de chaves públicas e privadas: • Criptografia com chave publica, descriptografia com chave privada. • Criptografia com chave privada, descriptografia com chave pública • Autenticação: • Alto overhead. CREATE ASYMETRIC KEY <nome_da_chave> WITH ALGORITHM = RSA_2048 ENCRYPTION BY PASSWORD = ’P@ssw0rd1’
CriptografiaASSimétrica Private Public Public Public • Chave pública é colocada disponível ou é distribuida para se comunicar com os partners.
CriptografiaASSimétrica Private Public Public Encrypted data • Dados criptografados com chave pública só podem ser descriptografados com chave privada.
CriptografiaASSimétrica Private Public Public Encrypted data • Dados criptografados com chave privada pode somente ser descriptograda com chave pública. • Usa assinatura digital
Certificados • Mais alto mecanismo de criptografia. • Um certificado contém: • A chave pública do subject; • Informação de identificação do subject, como nome e email; • Período de validade; e • Assinatura digital.
Manutenção de Certificados Criando um Certificado: CREATE CERTIFICATE <nome> WITH SUBJECT = ‘Certificado 1’ Exportando um Certificado: BACKUP CERTIFICATE <nome> TO FILE = ‘c:\cert\nome.cer’ Importando um Certificado: CREATE CERTIFICATE <nome> FROM FILE = ‘c:\cert\nome.cer’
Práticas Recomendadas • Criar sempre backup com senha forte para Master Key. • Usar algoritmo de criptografia AES com 256 bits durante a criação de chaves simétricas. • Auditar tabelas do banco regularmente. • Não distribuir chaves de criptografia entre servidores.
Roteiro para trabalhar com Criptografia no banco de dados • Criar a master key com senha; • Criar o certificado digital; • Criar a chave; • Incluir colunas para serem criptografadas; • Abrir a chave; e • Criptografar os dados.