Baixe o app para aproveitar ainda mais
Prévia do material em texto
SEGURANÇA DA INFORMAÇÃO Algoritmos assimétricos e certificação digital Prof. Dr. Marcos A. Simplicio Jr. Distribuição de chaves • Chaves devem ser distribuídas por meio de canal seguro • Senão, elas podem ser interceptadas • Abordagem 1: manualmente • Comum em redes locais (exemplos: WPA2-PSK, Bluetooth) • Abordagem 2: com a ajuda de uma entidade confiável • Exemplo: usando centro de distribuição de chaves (Key Distribution Center -- KDC), e.g., via protocolo Kerberos • Abordagem 3: sem a ajuda de uma entidade confiável • Em geral, envolvem algoritmos assimétricos Exemplo didático: Protocolo Massey- Omura • Problema: Alice deseja enviar uma carta confidencial para Bob usando apenas um baú com cadeado e suas respectivas chaves. Protocolo Massey-Omura Protocolo Massey-Omura Protocolo Massey-Omura Protocolo Massey-Omura Criptografia assimétrica Criptografia assimétrica • Duas chaves distintas • Chave pública KU: divulgada abertamente • Paralelo: o cadeado • Chave privada KR: conhecida apenas pelo seu dono • Paralelo: a chave do cadeado • Transformações feitas com uma chave somente podem ser invertidas com a outra chave. • Ambas as chaves são geradas pelo seu dono • Em um algoritmo seguro, deve ser inviável calcular a chave privada a partir da chave pública. • Para se comunicar, usuários devem obter, de alguma forma, a chave pública de seus interlocutores Criptografia assimétrica • Cifração: confidencialidade • Assinatura digital: integridade, autenticidade e irretratabilidade A–1 KR M S KU S MA A KU M C KR C MA–1 A KU dest M KR A–1 rem MC Apenas o algoritmo assimétrico Envelope criptográfico assimétrico • É possível obter confidencialidade, integridade, autenticidade e irretratabilidade aplicando apenas criptografia assimétrica sobre o conteúdo completo da mensagem. KR A–1 dest A KU rem Criptografia assimétrica + simétrica Algoritmos assimétricos costumam ser combinados com simétricos por razões de desempenho: • Algoritmos simétricos costumam ser ~1000 vezes mais rápidos do que assimétricos Exemplos comuns: • Estabelecimento de chaves simétricas: usadas por cifras simétricas e algoritmos de MAC • Assinatura digital do hash da mensagem ao invés da mensagem em si: menor quantidade de dados processados pelo algoritmo assimétrico Transmissão de chave simétrica • Transmissão de chave simétrica K • R: número aleatório (fonte de entropia) gera chave K • L: chave K protegida por chave pública do destinatário (KU) • Enviado pela rede para o destinatário • Apenas dono da chave KR pode recuperar K • Utilidade: cifras simétricas são mais eficientes KR KU L dest A K KR dest A–1 KK Envelope criptográfico • Mensagem confidencial (C) e assinada (S) • Serviços: confidencialidade (cifra simétrica), integridade, autenticidade e irretratabilidade (assinatura digital) • Utilidade: mais eficiente assinar hash das mensagens H V M CE E –1 M KR S rem A–1 KU rem VA H V’ = ? Algoritmos assimétricos: exemplos • Protocolos para estabelecimento de chaves simétricas • Diffie-Hellman clássico (DH), com curvas elípticas (ECDH) ou com isogenias supersingulares (SIDH) • Protocolos para gerar assinaturas digitais • RSA, (EC)DSA, EdDSA, NTRUSign • Protocolos para cifração assimétrica • RSA, ECIES, McEliece, NTRUEncrypt Obs.: algoritmos em itálico são propostas que resistem a ataques feitos com computadores quânticos. Certificados digitais Distribuição de chaves públicas Aqui é o Bob. Anote minha chave pública... Oi, Bob. Pode falar, estou anotando... + Alice usa KU para verificar a atenticidade do certificado KU Bob KR AC AC Certificados digitais • Associam chave pública a seu dono • Atestado dizendo qual é a chave pública de Bob • Modelo PKI: certificado contém chave pública de Bob assinada por uma autoridade certificadora (AC) • Premissa: chave pública da AC é amplamente conhecida. • Na prática, certificados das ACs são pré-instalados em sistemas computacionais, como navegadores Web. • Também podem ser instalados por usuário Sub-ACs EFs AC raiz A B C E FD G H I K LJ Certificados Digitais: ICP • Modelo ICP (Infraestrutura de Chaves Públicas), ou PKI (Public Key Infrastructure): cadeias de certificação • Usa chave no certificado da AC raiz (autoassinado) para assinar outras chaves na cadeia, até entidades finais (EFs) • Proteção das chaves mais críticas (mais próximas da raiz) • ACs dedicadas a vários fins Exemplo: ICP-Brasil AC Raiz AC CEF AC Certisign AC RFB AC PR AC Serasa AC Serpro… AC Caixa PF AC Caixa PJ AC Certisign Múltipla AC Certisign SPB AC Imprensa Oficial SP AC Petrobrás AC Sincor AC Prodemge AC OAB AC Instituto Fenacom AC Caixa JUS AC Certisign JUS AC Serasa JUS AC Serpro JUS AC Imesp RFB AC Certisign RFB AC Serasa RFB AC Serpro RFB AC Sincor RFB AC Notarial RFB AC Prodest RFB AC BR RFB …… Serasa AC Serasa CD AC Fenacor Serpro ACF AC P Rode RJ AC JUS 1o nível 2o nível Processo de certificação A verificação de identidades é comumente delegada pelas ACs a entidades confiáveis: autoridades de registro (RAs) • As entidades finais (EFs) apresentam suas chaves públicas e demonstram sua identidade, por meios legais extra-criptográficos, às ARs • Dados a serem comprovados: dependem de legislação cabível e políticas da AC • Ex.: site web ➔ provar que é dono do domínio • Serviço descentralizado: por exemplo, distribuído geograficamente. 3. RA comprova dados cadastrais Autoridade de Registro (RA) 5. Certificado é instalado no cliente e publicado no Diretório Autoridade Certificadora (CA) 2 . D ad o s ca d as tr ai s Diretório 4. CA emite o certificado, assinando-o com sua própria chave 1. As chaves são geradas Ex.: Verisign, ICP-Brasil Processo de certificação Certificados: revogação • Comprometimento da chave privada do usuário (ou, em um caso extremo, da AC). • Alternativas: • Offline: Certificate Revocation List (CRL) • “Lista negra” emitida e assinada por AC, distribuída periodicamente. • Enumera identificadores (#serial) de certificados revogados não expirados e datas de revogação. • Online: Online Certificate Status Protocol (OSCP) • Protocolo web para consulta do status de certificados • Resposta assinada: “good”, “revoked” ou “unknown” Um exemplo prático de criptografia assimétrica: WhatsApp Caso prático: WhatsApp • WhatsApp/Signal/etc.: criptografia fim a fim • Para usuários finais, não só usuário e servidor (HTTPS) • Novidade? Serviços similares existem há décadas • Ex.: S/MIME, para e-mails, é de 1999 “Mensagens que você envia (…) são protegidas com criptografia fim a fim” A B SEGURANÇA DA INFORMAÇÃO Algoritmos assimétricos e certificação digital Prof. Dr. Marcos A. Simplicio Jr.
Compartilhar