220 likes | 313 Views
Criptografia e Segurança em redes capitulo 11. Quarta Edição por William Stallings Lecture slides by Lawrie Brown. Capitulo 11 – Autenticação de Mensagem e Funções de Hash.
E N D
Criptografia e Segurança em redescapitulo 11. QuartaEdição por William Stallings Lecture slides by Lawrie Brown
Capitulo 11 – Autenticação de Mensagem e Funções de Hash • para o gato verde no domingo ele levou a mensagem de dentro do pilar e adicionou o nome de peter moran para os dois nomes já mostrados no codigo “Brontosaur” . A mensagem agora se lê: “grande dragão marinho:Martin Hillman,Trevor Allan,Peter Moran: observar a cauda.” Qual foi o bem de que mal sabia John. Ele sentiu melhor, ele sentiu que finalmente ele tinha feito um ataque a Peter Moran, em vez de aguardar passivamente e efetuar nenhuma retaliação. Além disso, qual foi o uso de estar em posse da chave para os códigos que ele nunca se aproveitou de seu funcionamento? • —Talking to Strange Men, Ruth Rendell
Autenticação de Mensagem • Autenticação de mensagem está preocupada com : • Proteger a integridade da mensagem • Validar a identidade do autor • Não repudio de origem (resolução) • Analisar os requisitos de segurança • São usadas três funções como alternativas • Encriptação de mensagem • Código de autenticação de mensagem (MAC) • Função de hash
Requisitos de Segurança • Divulgação • Análise de trafego • Mascarar • Modificação de conteudo • Sequencia de modificação • Tempo de modificação • Codigo de repudiação • Destino de repudiação
Encriptação de Mensagem • Encriptação de mensagem por ela mesma também fornece uma medida de autênticação • Se é usada encriptação simétrica então: • Destinatário saber se remetente tem ele criado • Uma vez que apenas o remetente e o destinatário usou a chave no momento • Saber que o conteúdo não foi alterado • Se a mensagem tem a estrutura adequada,redundancia, um teste pra detectar eventuais alterações
Encriptação de mensagem • Se chave pública de encriptção é usada: • Encriptação não fornece nenhuma confiança ao rementente • Desde então ninguem sabe o potencial das chaves públicas. • No entanto se: • as mensagem assinadas pelo rementente usam suas chaves privadas • Em seguida criptografa com chave pública os destinatarios • Tem tanto segredo e autenticação • Novamente preciso reconhecer mensagens corrompidas • Mas ao custo de usar 2 chaves públicas da mensagem
Código de Autenticação de Mensagem (MAC) • Geradas por um algoritmo que cria um pequeno bloco de tamanho fixo • Dependendo tanto da mensagem e de algumas chaves • Como encripatação não precisa ser reversível • Anexado a mensagem como uma assinatura • Receptor executa mesmo cálculo da mensagem e verifica se corresponde ao MAC • Garante que a mensagem está inalterada e veio do remetente
Código de Autenticação de Mensagem • Como mostrado o MAC fornece autenticação • Pode também usar encriptação por segredo • Geralmente usam chaves distintas para cada um • Pode calcular MAC, antes ou depois da criptografia • É geralmente considerado melhor se feito antes • Por que usar o MAC? • As vezes somente a autenticação é necessaria • As vezes precisa autenticar para continuar maior do que a encriptação. • Veja que um MAC não é uma assinatura digital
Propriedades do MAC • Um MAC é um “checksum” criptográfico • MAC = CK(M) • Condensa uma mensagem de comprimento variável M • Usando uma chave secreta K • Para um tamanho fixo autenticador • É uma função N para 1 • Potencialmente muitas mensagens tem o mesmo MAC • Mas achar essa necessidade pode ser muito difícil
Requisitos para MAC • Tendo em conta os tipos de ataques • O MAC precisa satisfazer o seguinte: • Sabendo uma mensagem e o MAC, é impossível de encontrar outra mensagem com o mesmo MAC • MACs deveriam ser unifomente distribuidos • MAC deve depender igualmente sobre todos os bits da mensagem
Usando cifras simétricas para MACs • Pode usar qualquer cifra de bloco encadeando o modo e utilização final como um bloco MAC • Algoritmo de autententicação de dados (DAA) é um metodo muito usado pelo MAC baseado em DES-CBC • Usando VI=0 e zero-pad de final de bloco • Encripta a mensagem usando DES no modo CBC • E envia só o final do bloco como o MAC. • Ou o bit M mais a esquerda (16≤M≤64) do final do bloco • Mas agora o final do MAC também é pequeno para segurança
Funções de hash • Condensa arbitrariamente a mensagem para tamanho fixo • h = H(M) • Normalmente assume que a função de hash é pública e não chaveada • MAC que é chaveado • Hash usado para detectar alterações à mensagem • Pode utilizar de várias formas com a mensagem • Na maioria das vezes para criar uma assinatura digital
Requerimentos para Funções de Hash • Pode ser aplicado para qualquer tamanho de mensagem M • Produz saidas de tamanhos fixos h • É facil calcular h=H(M) para qualquer mensagem M • Dado h é impossível de achar x s.t. H(x)=h • one-way propriedade • Dado x é impossível achar y s.t. H(y)=H(x) • Fraca resistência a colisão • É impossível achar qualquer x,y s.t. H(y)=H(x) • Forte resistência a colisão
Função de Hash simples • São varias as propostas para funções simples • Baseado no XOR de mensagens de bloco • Não é seguro uma vez que pode manipular qualquer mensagem mudando ou não seu hash • Precisa de uma forte função criptográfica (proximo capitulo)
Ataques de aniversario • Pode se pensar que um hash de 64 bits é seguro • Mas pelo Birthday Paradox não é • O ataque de aniversario funciona assim: • Oponente gera 2m/2 variações de uma mensagem válida todas com essencialmente o mesmo significado • O oponente também gera 2m/2 variações de mensagens falsas, desejadas • Dois conjuntos de mensagens são comparadas para encontrar os pares com o mesmo hash (probalidade > 0.5 por aniversario paradox) • Ter uma asssinatura válida na mensagem, então substitui por uma falsa que terá uma assinatura valida. • Conclusão é que ha necessidade de utilizar MAC / hash maiores
Cifras de bloco com função de hash • Pode usar cifras de bloco como função de hash • usando H0=0 e zero do final do bloco • calcula: Hi = EMi [Hi-1] • E usa final de bloco como o valor de hash • Similar ao CBC mas sem uma chave • Resultando um hash também pequeno (64-bit) • Tanto devido ao ataque de aniversario • E para o ataque “encontrar no meio” • Outras variações tabém sensíveis ao ataque
Funções de hash & Segurança MAC • Como cifras de bloco tem: • Explorando ataques de força bruta • Forte resistência a colisão, hash tem o custo de 2m/2 • Tem proposta para h/w MD5 cracker • Veja a vulnerabilidade do hash de, 160-bits é melhor • MACs com pares de mensagem conhecidas • Pode atacar “keyspace” or MAC • Pelo menos 128-bits é necessario para a segurança do MAC
Funções de hash & Segurança MAC • Ataques de criptoanálise exploram a estrutura • Como cifras de bloco querem ataques de força bruta pode ser a melhor alternativa • têm uma série de ataques a analítica iterada funções hash • CVi = f[CVi-1, Mi]; H(M)=CVN • tipicamente focar colisões na função f • Como cifras de bloco é frequentemente composta de rodadas • Ataques exploram propriedades de funções de rodadas
Sumário • Foi visto: • Usando autenticação de mensagem • Encriptação de mensagem • MACs • Funções de hash • abordagem geral e segurança