Autenticação: mais uma tentativa Protocolo ap3.1: Alice diz “Eu sou Alice” e envia sua senha secreta criptografada para prová-lo. I am Eu souAlice Alice criptografia (senha) encrypt(password) Cenário de Falha? 7: Segurança de Redes 1 Autenticação: mais uma tentativa Meta: evitar ataque de reprodução (playback) Nonce: número (R) usado apenas uma vez na vida ap4.0: para provar que Alice “está ao vivo”, Bob envia a Alice um nonce, R. Alice deve devolver R, criptografado com a chave secreta comum Eu sou Alice Figure 7.11 goes here Falhas, problemas? 7: Segurança de Redes 2 Autenticação: ap5.0 ap4.0 exige chave secreta compartilhada problema: como Bob e Alice combinam a chave é possível autenticar usando técnicas de chave pública? ap5.0: usar nonce, criptografia de chave pública Envie-me sua chave pública eA Bob calcula eA[dA[R]]=R autenticando Alice 7: Segurança de Redes 3 ap5.0: falha de segurança Ataque do homem (mulher) no meio: Trudy se passa por Alice (para Bob) e por Bob (para Alice) Figure 7.14 goes here Necessita chaves públicas certificadas (mais depois …) 7: Segurança de Redes 4 Assinaturas Digitais Técnica criptográfica análoga às assinaturas manuais. Transmissor(Bob) assina digitalmente um documento, estabelecendo que ele é o autor/criador. Verificável, não-forjável: receptor (Alice) pode verificar que Bob, e ninguém mais, assinou o documento. Assinatura digital simples para mensagem m: Bob criptografa m com sua chave pública dB, criando a mensagem assinada dB(m). Bob envia m e dB(m) para Alice. Chave privada de Bob Texto criptografado com a chave privada de Bob Mensagem pronta para transmissão 7: Segurança de Redes 5 Assinaturas Digitais (mais) Suponha que Alice recebe a Alice verifica então que: mensagem m, e a assinatura Bob assinou m. digital dB(m) Ninguém mais assinou m. Alice verifica que m foi Bob assinou m e não m’. assinada por Bob aplicando a chave pública de Bob eB a Não-repúdio: Alice pode levar m, e a dB(m) então verifica que assinatura dB(m) a um eB(dB(m) ) = m. tribunal para provar que Bob Se eB(dB(m) ) = m, quem assinou m. quer que tenha assinado m deve posuir a chave privada de Bob. 7: Segurança de Redes 6 Resumos de Mensagens mensagem longa função de hash muitas-para-um resumo da mensagem, tam. fixo Computacionalmente caro criptografar com chave pública mensagens longas Meta: assinaturas digitais de comprimento fixo, facilmente computáveis, “impressão digital” aplicar função hash H a m, para obter um resumo de tamanho fixo, H(m). Propriedades das funções de Hash: Muitas-para-1 Produz um resumo da mensagem de tamanho fixo (impressão digital) Dado um resumo da mensagem x, é computacionalmente impraticável encontrar m tal que x = H(m) computacionalmente impraticável encontrar duas mensagens m e m’ tal que H(m) = H(m’). 7: Segurança de Redes 7 Assinatura digital = resumo assinado de mensagem Bob envia mensagem digitalmente assinada: Alice verifica a asinatura e a integridade da mensagem digitalmente assinada: 7: Segurança de Redes 8 Algoritmos de Funções de Hash A soma verificadora da Internet resulta num resumo de mensagem pobre. Muito fácil encontrar duas mensagens com a mesma soma verificadora. O algoritmo MD5 é a função de hash mais usada. Calcula resumo de 128-bits da mensagem num processo de 4 etapas. uma cadeia arbitrária X` cujo hash de 128 bits obtido pelo MD5 é igual ao hash de um cadeia X parece difícil de construir. SHA-1 também é usado. padrão do EUA resumo de mensagem com 160bits 7: Segurança de Redes 9 Intermediários Confiáveis Problema: Como duas entidades estabelecem uma chave compartilhada secreta sobre uma rede? Solução: centro de distribuição de chaves confiável (KDC) atuando como intermediário entre as entidades Problema: Quando Alice obtém a chave pública de Bob (de um web site, e-mail, ou diskette), como ela sabe que é a chave pública de Bob e não de Trudy? Solução autoridade certificadora confiável (CA) 7: Segurança de Redes 10 Centro de Distribuição de Chaves (KDC) Alice e Bob necessitam de um chave simétrica compartilhada. KDC: servidor compartilha diferentes chaves secretas com cada usuário registrado. Alice e Bob conhecem as próprias chaves simétricas, KA-KDC KB-KDC , para comunicação com o KDC. Alice conhece R1 Bob conhece R1 Alice e Bob se comunicam usando chave compartilhada R1 Alice se comunica com o KDC, obtém a chave de sessão R1, e KB-KDC(A,R1) Alice envia a Bob KB-KDC(A,R1), Bob extraí R1 Alice e Bob agora compartilham a chave simétrica R1. 7: Segurança de Redes 11 Autoridades Certificadoras Autoridades certificadoras (CA) associam chaves públicas a uma particular entidade. Entidade (pessoa, roteador, etc.) pode registrar sua chave pública com a CA. Entidade fornece “prova de identidade” à CA. CA cria certificado ligando a entidade à chave pública. Certificado é digitalmente assinado pela CA. informação de identidade de Bob chave pública de Bob Autoridade Certificadora Chave privada da autoridade certificadora certificado criptografado de Bob Quando Alice quer a chave pública de Bob: obtém o certificado de Bob (com Bob ou em outro local). Aplica a chave pública da CA ao certificado de Bob para obter a chave pública de Bob. 7: Segurança de Redes 12 E-mail seguro • Alice quer enviar uma mensagem de e-mail secreta, m, para Bob. Alice envia mensagem de e-mail m • • • • Bob recebe mensagem de e-mail m gera chave simétrica aleatória, KS. criptografa mensagem com KS também criptografa KS com a chave pública de Bob. envia KS(m) e eB(KS) para Bob. 7: Segurança de Redes 13 E-mail seguro (continuação) • Alice quer prover autenticação do transmissor e integridade da mensagem. Alice envia mensagem de e-mail m Bob recebe mensagem de e-mail m • Alice assina digitalmente a mensagem. • envia a mensagem (em texto aberto) e a assinatura digital. 7: Segurança de Redes 14 E-mail seguro (continuação) • Alice quer prover privacidade, autenticação do transmissor e integridade da mensagem. Nota: Alice usa tanto sua chave privada quanto a chave pública de Bob. 7: Segurança de Redes 15 Pretty good privacy (PGP) Esquema de criptografia de e-mail da Internet, um padrão de fato. Usa criptografia de chave simétrica, criptografia de chave pública, função de hash e assinatura digital, como descrito. Oferece privacidade, autenticação do transmissor e integridade. O inventor, Phil Zimmerman, foi alvo de uma investigação federal durante três anos. Uma mensagem PGP assinada: ---BEGIN PGP SIGNED MESSAGE--Hash: SHA1 Bob:My husband is out of town tonight.Passionately yours, Alice ---BEGIN PGP SIGNATURE--Version: PGP 5.0 Charset: noconv yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ hFEvZP9t6n7G6m5Gw2 ---END PGP SIGNATURE--- 7: Segurança de Redes 16 Secure sockets layer (SSL) PGP oferece segurança para uma aplicação de rede específica. SSL opera na camada de transporte. Fornece segurança para qualquer aplicação baseada no TCP que usa os serviços da SSL. SSL: usada entre clientes WWW e servidores de comércio eletrônico (shttp). Serviços de segurança da SSL: autenticação do servidor criptografia dos dados autenticação do cliente (opcional) Autenticação do Servidor: clientes com SSL habilitado incluem chaves públicas para CA’s confiáveis. Cliente solicita o certificado do servidor, originado pela entidade certificadora confiável. Cliente usa a chave pública da CA para extrair a chave pública do servidor do certificado. Visite o menu de segurança do seu browser para examinar suas entidades certificadoras confiáveis. 7: Segurança de Redes 17 SSL (continuação) Sessão SSL criptografada: Cliente gera uma chave de sessão simétrica e a criptografa com a chave pública do servidor, envia a chave simétrica criptografada ao servidor. Usando sua chave privada, o servidor decriptografa a chave. Cliente e o servidor negociam que as futuras mensagens serão criptografadas. Todos os dados enviados na porta TCP (pelo cliente ou pelo servidor) são criptografados com a chave de sessão. SSL: base do mecanismo Transport Layer Security (TLS) do IETF. SSL pode ser usado por aplicações que não usam a Web, por exemplo, IMAP. Autenticação do cliente pode ser feita com certificados do cliente. 7: Segurança de Redes 18 Secure electronic transactions (SET) projetado pra transações de pagamento de cartões de crédito sobre a Internet. oferece serviços de segurança envolvendo três partes: cliente comerciante banco do vendedor Todos devem ter certificados. SET especifica o valor legal dos certificados. divisão das responsabilidades pelas transações Número do cartão do cliente é enviado ao banco do vendedor sem que o vendedor veja o número aberto em nenhum momento. Previne que os vededores possam furtar e repassar números de cartões de crédito. Três componentes de software: Carteira do browser Servidor do comerciante Gateway do adquirente Veja o texto do livro para a descrição de uma transação SET. 7: Segurança de Redes 19 Ipsec: Segurança na Camada de Rede Segurança na Camada de Rede: o host transmissor criptografa os dados no datagrama IP Segmentos TCP e UDP; ICMP e mensagens SNMP. Autenticação na Camada de Rede host destino pode autenticar o endereço IP da origem Dois protocolos principais: protocolo de autenticação de cabeçalho (AH Authentication Header) protocolo de encapsulamento seguro de dados (ESP Encapsulation Secure Payload) Tanto para o AH como para o ESP, exige negociação entre a fonte e o destino: cria canal lógico de camada de rede chamado de “acordo de serviço” (SA) Cada SA é unidirecional. Unicamente determinado por: protocolo de segurança (AH ou ESP) endereço IP da origem Identificador de conexão de 32-bit 7: Segurança de Redes 20 Protocolo ESP Oferece privacidade, autenticação de host e integridade dos dados. Dados e trailer ESP são criptografados. Campo de próximo cabeçalho está no trailer ESP. campo de autenticação do ESP é similar ao campo de autenticação do AH. Protocolo = 50. Autenticado Criptografado Protocolo = 50 7: Segurança de Redes 21 Protocolo de Autenticação de Cabeçalho (AH) Oferece autenticação do host originador, integridade de dados, mas não privacidade dos dados. Cabeçalho AH é inserido entre o cabeçalho IP e o campo de dados do IP. Campo de Protocolo = 51. Roteadores intermediários processam o datagrama na forma usual. cabeçalho AH inclui: identificador de conexão dados de autenticação: mensagem assinada e resumo da mensagem são calculados sobre o datagrama IP original, provendo autenticação da fonte e integridade dos dados. Campo próximo cabeçalho: especifica o tipo de dados (TCP, UDP, ICMP, etc.) Protocolo = 51 7: Segurança de Redes 22 Segurança de Redes (resumo) Técnicas básicas…... criptografia (simétrica e pública) autenticação integridade de mensagem …. usadas em muitos cenários de segurança diferentes email seguro transporte seguro (SSL) IP sec See also: firewalls , in network management 7: Segurança de Redes 23