View
105
Download
0
Category
Preview:
Citation preview
Criptografia
Criptografia
&
Segurança
Segurança
• Segurança Lógica
• Privacidade– Os dados somente são acessíveis para as pessoas
autorizadas
• Autenticidade– Os dados são “assinados” (gerados pelas pessoas
autorizadas)
• Integridade– Modificações nos dados (intencionais ou não) são detectadas
• Irrefutabilidade– O autor dos dados não pode negar a autoria
Segurança em PCs
• Aspectos de segurança retirados no projeto
• Arquitetura aberta
• Sistema Operacional aberto
• Controle de acesso ineficaz
• Baixo custo
• Uso muito difundido
• Conhecimento disseminado
Segurança na Internet
• Início: ARPANET, 1969
• Interligação de universidades e agencias de pesquisa
• Uso acadêmico
• Pouca preocupação com segurança– Uso por especialistas
– Correio Eletrônico
– Troca de arquivos e documentos
– Acesso restrito
– Confiança mútua
– Poucos casos de má utilização
Situação atual da Internet
• Utilização para situações não previstas
• Acesso irrestrito
• Mecanismos fracos de identificação e autenticação
• Sociedade eletrônica– Utopia x Caos
– Fonte de conhecimento x Validade da Informação
– Autoestrada da Informação x Superoferta de Informação
– Código de ética não escrito
– Existência de vândalos, malfeitores, bandidos, terroristas
– Necessidade de mecanismos de defesa
Problemas de Segurança
• Atacante Passivo– Capaz de monitorar toda a transmissão
– Pode obter cópia da transmissão
– Pode reproduzir dados transmitidos
– Pode requerer equipamento sofisticado
– Fácil de ser realizado na Internet (hardware barato e software disponível)
• Atacante Ativo– Capaz de interceptar e alterar a transmissão
– Ataque do “homem no meio”
– Pode ser realizado por Engenharia Social
– Capaz de inserir dados falsos
Segurança em Computação
• Segurança é um atributo negativo
• Segurança diminui a facilidade de uso
• Segurança diminui a liberdade do usuário
• Problemas– Falta de normalização
– Falta de suporte nos sistemas de computação
– Problemas legais de exportação/importação
– Gerenciamento da segurança
– Falta de conscientização
– Problemas de engenharia social
Política de segurança
• Promíscuo– Tudo é permitido
• Permissivo– Tudo que não é proibido é permitido
• Prudente– Tudo o que não é permitido é proibido
• Paranóico– Tudo é proibido
Segurança por Criptografia
• Proteção de informação sensível
• Necessita de chaves e/ou identificação
• Chaves– Algo que o usuário sabe (senha)
– Algo que o usuário possui (cartão)
– Algo que o usuário é (voz, digital, íris, rosto)
• Necessário gerenciar as chaves
• Necessário distribuir as chaves
Criptografia
• Definições Básicas
• Criptografia Clássica
• Criptografia Contemporânea
Definições Básicas
• Criptografia é a arte ou ciência que trata das técnicas de tornar uma mensagem confusa, incompreensível para qualquer pessoa que não seja o destinatário da mesma
• A mensagem original é chamada texto normal, texto original, texto claro, texto aberto ou ainda texto plano
• O processo de usar uma técnica de criptografia é chamado encriptação ou mesmo criptografia
• A mensagem resultante é chamada texto encriptado ou texto criptografado
Definições Básicas
• Decriptação é o processo de obter o texto original a partir do texto encriptado, ou seja, o contrário do processo de encriptação
• Passos:
– O remetente encripta o texto original, obtendo o texto encriptado
– O remente envia o texto encriptado ao destinatário
– O destinatário recebe o texto encriptado
– O destinatário decripta o texto encriptado, obtendo o texto original
Definições Básicas
Mensagem Original
(M)
Algoritmo de Encriptação
(E)
Mensagem Encriptada
(C)
C=E(M)
Mensagem Encriptada
(C)
Algoritmo de Decriptação
(D)
Mensagem Original
(M)
M=D(C)
Definições Básicas
• Criptografia consiste basicamente em:
– Códigos: a confusão é criada no nível das palavras » Os americanos usaram a língua dos índios navajos para
trocar mensagens secretas durante a II Guerra
– Cifras: a confusão é criada em nível no nível dos caracteres
» O imperador romano Júlio César trocava letras para enviar mensagens secretas
Definições Básicas
• Codificar, codificação, texto codificado, decodificar, decodificação e texto decodificado são termos aplicados à criptografia realizada com códigos
• Cifrar, cifragem, texto cifrado, decifrar, decifragem (ou decifração) e texto decifrado são termos aplicados à criptografia realizada com cifras
Definições Básicas
• Atacante é a pessoa que não é nem remetente nem destinatário da mensagem, mas que tenta desvendá-la ou obter outras informações inerentes ao processo
• Atacantes fazem uso da criptoanálise, que é a arte ou ciência que trata de desvendar os segredos envolvidos no processo de criptografia
Definições Básicas
• A criptoanálise tenta descobrir:– o algoritmo, comparando o texto original com o
encriptado
– a senha, comparando o texto original com o encriptado e tendo conhecimento do algoritmo
– o texto original, tendo conhecimento do texto encriptado, do algoritmo e, talvez, da senha
Definições Básicas
• Criptologia é a ciência que abrange a criptografia e a criptoanálise
• Esteganografia é a arte ou ciência que trata das técnicas de ocultar a mensagem
– Mensagens subliminares
– Tinta invisível
• A criptologia não engloba a esteganografia
Modelo (primitivo) de criptografia
E DM C M
Cifragem Decifragem
Atacante pode capturar CProteção está no segredo dos algoritmos E e D
Atacante
Modelo (atual) de criptografia
E DM C M
Cifragem Decifragem
Proteção está no segredo das chaves
Ke Kd
Atacante conhece C, E e DAtacante deve obter M (ou Kd)
Atacante
Ataque ao texto normal
E DM C M
Cifragem Decifragem
Atacante conhece E, D, no mínimo um par (M, C)Atacante deve obter Kd
Ke Kd
Atacante
Ataque adaptativo ao texto normal
E DM C M
Cifragem Decifragem
Atacante conhece E e D Pode fornecer vários pares (M,C), interativamenteDeve obter Kd ou Ke
Ke Kd
Atacante
Segurança computacional
E DM C M
Cifragem Decifragem
Premissa de Kerchoff: atacante conhece tudo,somente não conhece Ke e KdSó deve obter Ke ou Kd por força bruta
Ke Kd
Segurança por criptografia
• Não existe sistema absolutamente seguro (*)
• Toda criptografia pode ser “quebrada”
• Complexidade temporal
• Complexidade econômica
• Segurança computacional
(*) Exceto “one time pad”: C = M exor K
One Time Pad
• C = M exor K
• K tem o mesmo tamanho de M
• K nunca é reutilizada (“one time”)
• Praticamente impossível de gerenciar chaves
• Ataque do texto normal: K = C exor M
Criptografia tradicional
• Substituição de símbolos
• Permutação de símbolos
• Estenografia
• Livro de códigos
• Máquina de cifragem
Criptografia contemporânea
• Criptografia de chave única (ou simétrica)
• Criptografia de chave pública (ou assimétrica)
• Funções de hash seguras (ou funções de verificação de integridade)
Criptografia de chave única
• Única chave para cifragem e decifragem
• Substituição, permutação, operações algébricas
• Alta velocidade
• Problemas na distribuição de chaves
• Exemplos– DES (Data Encryption Standard) - 1977 - 56 bits
– DES40 - versão de 40 bits
– 3DES - DES triplo - 112 bits
– RC4_40 - 40 bits
– RC4_128 - 128 bits
– RC2_CBC_40 - 40 bits
– IDEA - 128 bits
Criptografia de chave única
• AES - Advanced Encryption System
• Finalistas– MARS (IBM)
– RC6 (RSA)
– Rijndael (Joan Daemen, Vincent Rijmen - Bélgica)
– Serpent (Ross Anderson, Eli Biham, Lars Knudsen - USA)
– Twofish (Bruce Schneier et all - USA)
– Chaves de 128, 192 e 256 bits
– Escolha final: Rijndael (2 de outubro de 2000)
Criptografia de chave única
• Alteração de um bit na entrada altera 50% dos bits de saída
• Alteração de um bit na chave altera 50% dos bits de saída
• Ataque da força bruta - tentar todas as chaves possíveis
• Tempo cresce exponencialmente com o número de bits da chave
• Poder de processamento também cresce
Segurança por Criptografia
Atacante Orçamento 40 bits 56 bits Segurança
Hacker $2.000 1 semana 38 anos 46 bits
EmpresaPequena
$20.000 5 horas 556 dias 56 bits
EmpresaMédia
$300.000 12 min 19 dias 62 bits
EmpresaGrande
$10 M 24 seg 13 horas 75 bits
Governo $300 M 0,7 seg 6 minutos 80 bits
Criptografia de chave única
• Chaves de 128 bits (mínimo)
• Um “DES-cracker”, que encontra uma chave DES em 1 segundo (realiza 256 tentativas por segundo) levaria 149 trilhões de anos para quebrar uma chave de 128 bits (idade atual do universo: 20 bilhões de anos)
• Um array de 1024 destes computadores quebraria a chave em um dia, mas não existem átomos de silício suficientes no universo conhecido para construir este array
• Tempo cresce exponencialmente com o número de bits da chave
Criptografia de chave pública
• Duas chaves: uma pública e outra secreta
• Cifragem com uma chave somente é decifrada com a outra chave
• Privacidade: cifrar com chave pública; somente chave secreta pode decifrar
• Assinatura: cifrar com chave secreta; chave pública decifra e identifica usuário
• Operação: funções aritméticas complexas
• Baixa velocidade
• Fácil distribuição de chaves
Criptografia de chave pública
• Exemplos– RSA (Rivest, Shamir, Adelman): cifragem e assinatura
– DH (Diffie& Hellman): troca de chaves
– DSS (Digital Signature Standard)
– El Gamal: cifragem e assinatura
• Tamanho da chave– Chaves fracas: menos de 768 bits
– Mais de 200 dígitos decimais (1024 bits)
– Proteção contra hacker: 1024 bits
– Proteção contra empresas: 1536 bits
– Proteção contra governo: 2048 bits
Funções de verificação de integridade
• Funções de hash unidirecionais
• Equivalente criptográfico do CRC e checksum
• Detectar alterações intencionais
• Calcula uma “impressão digital” (ou resumo) de um documento
• Tamanho típico do resumo: 128 bits
• Exemplos– MD5 (Message Digest 5)
– SHA (Secure Hash Algorithm)
Recommended