Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Criptografia de contéudo de banco de dados


Dayana Boni

Pergunta

Olá Pessoal,

Gostaria de pedir uma opinição de vocês.

Aqui na empresa onde trabalho estávamos discutindo a respeito de segurança no armazenamento das informações. No caso, em como as informações estão sendo guardadas no banco de dados.

De pronto, veio a lembrança a questão de criptografar os dados. Mas não uma ou outra informação, mas sim TUDO o que é guardado no banco.

Por isso, queria pedir algumas respostas para as dúvidas que surgiram:

1. É viável em questão de performance criptografar todas as informações do banco, tendo em vista que, sempre que preciso consultar/apresentar/e etc as informações, será preciso fazer a descriptografia?

2. Isso é comum?

3. Que tipo de criptografia seria mais recomendada: MD5, SHA-512 ou então criar uma nova classe que faça a criptografia?

Dayana.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
...

Por isso, queria pedir algumas respostas para as dúvidas que surgiram:

Oi Dyana,

Vamos as respostas a seus questionamentos:

1. É viável em questão de performance criptografar todas as informações do banco, tendo em vista que, sempre que preciso consultar/apresentar/e etc as informações, será preciso fazer a descriptografia?

Em segurança da informação o custo para o termo TUDO é caro demais. Você deverá decidir que tabelas são mais críticas que outras e, nestas tabelas, quais os dados(atributos) são os mais críticos.

A princípio todos os dados do tipo CHAR ou VARCHAR ou TEXT ou semelhantes devem ser protegidos. o preço é que suas consultas a estes atributos deverão ser criptografadas. Você não poderá usar pesquisas com LIKE no atributo pois geraria table scan.

Quando se fala em criptografia deve-se pensar em alta perda de performance caso não seja feito corretamente.

Abaixo dois exemplos sobre o que comentei acima:

Consulta a termo criptografado (Bom exemplo):

select * from tabela where atributo criptografa(termo)
Consulta com LIKE (Mau exemplo)
select * from tabela where descriptografa(atributo) LIKE 'termo%'

2. Isso é comum?
Sim, quando usado com equilíbrio. (Eu uso para guardar dados de prontuários médicos de pacientes de um cliente meu. Como outro exemplo, na tabela de pacientes, o nome não é criptografado, mas o endereço é.)
3. Que tipo de criptografia seria mais recomendada: MD5, SHA-512 ou então criar uma nova classe que faça a criptografia?
Jamais use criptografia que você não possa desfazer. É melhor você desenvolver o seu algorítimo de criptografia e descriptografia.

Bom, por enquanto é isso. Se houver mais dúvidas poste novamente. Senão, informe para que possamos fechar o tópico.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...