aula 1 – introdução a segurança de dados. o que significa segurança de dados? o termo...

22
Aula 1 – Introdução a segurança de dados

Upload: internet

Post on 18-Apr-2015

106 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Aula 1 – Introdução a segurança de dados

Page 2: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

O que significa segurança de dados?

O termo segurança é usado com o significado de minimizar a vulnerabilidade dos dados, da informação, do conhecimento e da infra-estrutura que o suporta.

E sua necessidade está em proteger o valor de uma informação.

Page 3: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Visão geral da segurança de dados– No passado:

• meios físicos: arquivos e salas trancadas• meios administrativos: seleção rigorosa de

pessoal

– Atualmente:• necessidade de proteger dados em

computadores• interligação de computadores por redes tornou

dados mais vulneráveis

Page 4: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Conceitos básicos

• Confidencialidade;• Integridade;•Disponibilidade;• Autenticação;• Autorização.

Page 5: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Mecanismo de segurança

Não há um mecanismo único que provê todos os serviços de segurança necessários.

• Maioria dos mecanismos têm um ponto em comum: CRIPTOGRAFIA.• Quase todas as pesquisas em segurança são voltadas às técnicas de criptografia.

Page 6: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Serviços de segurança

Documentos (dados) em forma eletrônica necessitam dos mesmos serviços (funções) associados aos seus pares em papel.

– datas e assinaturas– proteção contra destruição, modificação

ou divulgação– autenticação e registro– gravação e licenciamento

Page 7: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Modelo de segurança para sistemas de comunicação

Page 8: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Criptografia

Principal ferramenta em segurança.• Duas variações principais

– Criptografia de Chave Única:• Também conhecida como Criptografia Convencional ou Simétrica.• Usa a mesma chave para cifrar e decifrar dado.• Muito antiga e a mais usada.

– Criptografia de Chave Pública• Chaves distintas para cifrar e decifrar dados.• Desenvolvimento recente (1976).

Page 9: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Criptografia de chave única (simétrica)

• Processo de Codificação consiste de:– algoritmo de criptografia– chave: independente dos dados, comum à codificação e decodificação.

Page 10: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Modelo de criptografia simétrica

Page 11: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Notação

• Dados originais: X = [X1, X2, X3, ..., XM]

• Chave única: K = [K1, K2, K3, ..., KJ ]• Dados cifrados: Y = [Y1,Y2 ,Y3 , ..., YN]

• Algoritmo de codificação: EY = EK(X)

• Algoritmo de decodificação: DX = DK(Y)

Page 12: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Criptoanálise Tentativa de se descobrir X e/ou K.• Técnica usada depende do que é conhecido.

– Normalmente o algoritmo é conhecido.– Força bruta: teste de todas as chaves possíveis.– Análise estatística: tipo do dado precisa ser

conhecido (Texto em inglês? Programa em C?).– Análise de pares (Xi, Yi) conhecidos.

• Obtidos casualmente ou intencionalmente.– Adivinhação de palavras prováveis no texto.

Page 13: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Segurança dos métodos de criptografia

Métodos Incondicionalmente Seguros– Dados cifrados não contêm informação

suficiente para se quebrar o código, independentemente do volume de dados disponível.

– Difíceis de obter.• Só há um exemplo: One-Time Pad.• Demais métodos buscam satisfazer um dos critérios:

– custo de quebrar o código excede o valor da informação.

– tempo requerido para quebrar o código excede o tempo de vida útil da informação.

Page 14: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Segurança dos métodos de criptografia

• Métodos Computacionalmente Seguros– Eficiência baseada no custo de quebrar o código.– Problema:

• difícil estimar tempo para analisar o código com sucesso.• primeira estimativa: tempo para análise por força bruta.

Page 15: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Técnicas básicas

• Esteganografia– Oculta a existência de uma mensagem.

• Substituição– Substitui um grupo de símbolos por outro.

• Transposição– Troca as posições dos símbolos.

Page 16: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Técnicas de esteganografiaVerdadeira informação é oculta no meio de outras sem valor (sobrecarga é alta).• Ex: informação obtida a partir de:

– últimas palavras de cada linha de um texto;– primeira letra de cada palavra;– letras impressas sobrescritas com lápis;

• visíveis quando há um reflexo adequado de luz;– letras escritas com tinta invisível;

• tornam-se visíveis ao receberem certa substância;– letras marcadas com minúsculos furos no papel;– letras escritas com fita de correção nas entrelinhas.

Page 17: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Técnicas de substituição

• Código de César– Troca símbolo por outro k posições à frente no alfabeto.– Ex: texto original: criptography

texto cifrado: FULSWRJUDSKB (k=3)• Forma geral:

C = E(P) = (p+k) mod 26 (p/ cifrar)P = D(C) = (C-k) mod 26 (p/ decifrar)

• Ataque por força bruta:– alfabeto inglês: 25 chaves– alfabeto chinês: mais de 10.000 chaves

Page 18: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Códigos polialfabéticos

Utilizam diferentes códigos monoalfabéticos.• Chave determina qual código usar a cada

instante.• Cada símbolo tem codificação diferente,

dependendo da chave.– Informação sobre freqüência de símbolos é

obscurecida (mas não totalmente).• Ex: código de Vigenère e suas variantes.

Page 19: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Código Polialfabético de Vigenère

Qual é o código?

Page 20: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Técnicas de transposição

Baseiam-se na permutação de símbolos.• Método mais comum: transposição por matriz

– texto reescrito em colunas com profundidade k1.– Ex: texto: cuide bem da senha– Extremamente vulnerável à criptoanálise.

Page 21: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Transposição de Colunas da Matriz

• Escrita do texto linha por linha e transposição de colunas segundo chave k2.• Também vulnerável à criptoanálise.

Page 22: Aula 1 – Introdução a segurança de dados. O que significa segurança de dados? O termo segurança é usado com o significado de minimizar a vulnerabilidade

Transposição Múltipla de Colunas

Aplicação da mesma transposição mais de uma vez.• Código torna-se bem mais seguro:

– permutação inversa difícil (maior embaralhamento).