Segurança em Redes Aula 7 Luiz Fernando Rust INMETRO Tel. (021) 2679-9072 e-mail: [email protected] [email protected] 111 Assinatura Digital, Certificação e PKI • Assinatura Digital • Certificado Digital • X.509 • PKI • ICP-Brasil 2 1 Limitações do MAC • Exemplo – Maria e João usam MAC 1. Maria pode forjar uma msg diferente e dizer que veio de João • Precisaria apenar criar a msg e anexar um código de autenticação usando a chave que eles partilham 2. João pode negar o envio da msg, uma vez que é possível para a Maria forjar a msg • Não existe como provar que João enviou a msg de fato 3 Propriedades desejáveis • Deve ser possível verificar o autor, data e horário da assinatura • Deve ser possível autenticar o conteúdo no instante da assinatura • A assinatura deve ser verificável por terceiros 4 2 Requisitos • Padrão de bits que depende da msg sendo assinada • Deve usar alguma informação única ao emissor (para prevenir falsificação e negação) • Deve ser relativamente fácil a geração de uma assinatura digital • Deve ser relativamente fácil reconhecer e verificar uma assinatura digital • Praticamente impossível de falsificação • Deve ser factível reter uma cópia (armazenar) da assinatura digital 5 DSS • Digital Signature Standard • Norma FIPS PUB 106 publicada pelo NIST • Proposta inicialmente em 1991 e revisada em 1993 e 1996 • Usa – SHA – DAS (Digital Signature Algorithm) • Algoritmo discreto 6 3 Comparação entre RSA e DSS • • k – número aleatório Chave pública global (grupo de participantes) 7 Assinaturas Digitais 8 4 Problemas com a Criptografia de Chaves Públicas • Como você sabe de quem são as chaves públicas que você tem? – Certificados são associados a indivíduos, e suas chaves públicas são disponibilizadas em diretórios • Onde se obtém as chaves públicas? – Nos diretórios • Como confiar nestas chaves públicas? – Confiando nas Autoridades Certificadoras e verificando o status de validade dos certificados • Como as chaves são atualizadas ao longo do tempo? – Manual ou automaticamente 9 Certificados Digitais • Certificados Digitais são equivalentes eletrônicos às provas físicas de identificação, como passaporte e cédulas de identidade, que auxiliam a autenticação de usuários em redes de comunicações • Informação que é incluída juntamente com chave pública que serve para verificar se uma chave é genuína ou válida • São usados para impedir que a chave de uma pessoa seja substituída por outra • Simplificam a tarefa de se estabelecer se uma chave realmente pertence ao seu dono • Certificados Digitais são elementos essenciais em um PKI 10 5 Certificados Digitais • Um certificado digital contém – – – – – Informações sobre o proprietário Informações sobre o emitente A chave pública do proprietário Datas de validade e expiração Assinatura digital do emitente (CA), avalizando o conteúdo do certificado 11 Serviço de Autenticação X.509 • 1ª versão 1988, 2ª versão 1993, 3ª versão 1995 • Conjunto de servidores distribuídos que mantém uma base de dados dos usuários • Cada certificado contém a chave pública de um usuário e é assinado com a chave privada do CA • Usado no S/MIME, IP Security, SSL/TLS… • Recomenda o uso de RSA 12 6 Certificado X.509 v3 Versão Número Serial Algoritmo de Assinatura CA Emitente Período de Validade Nome X.500 do Proprietário Algoritmo de identificação da chave pública Chave pública Identificador do Emitente Identificador do Proprietário Extensão Assinatura Digital da CA 13 Exemplo Nome único do proprietário DN: cn=João Silva, o=MSS, c=BR Serial #: 8391037 Start: 1/5/00 1:02 End: 7/5/01 1:02 CRL: cn=CRL2, o=MSS, c=BR Key: Número de série único Período de validade Informação de revogação Chave pública Nome da AC emissora Assinatura digital da AC CA DN: o=MSS, c=BR 7 PKI • Políticas de segurança que definem as regras de operação de sistemas criptográficos • Produtos para criar, administrar e armazenar chaves • Procedimentos que determinam como as chaves devem ser criadas, distribuídas e utilizadas • Criptografia de Chaves Públicas • Assinaturas Digitais 15 Características da PKI • Padrão de segurança na Internet com aceitação global • Funcionalidade para assinaturas digitais • Plataforma comum de segurança para redes corporativas e públicas • Infraestrutura de chaves públicas e smart cards é o modo mais seguro de conduzir negócios pela Internet atualmente 16 8 Componentes de um PKI • UM PKI é uma combinação de produtos de hardware e software, procedimentos e políticas de segurança • O PKI fornece a segurança necessária para comercio eletrônico onde parceiros que não se conhecem podem trocar informações de modo seguro através de cadeias de credibilidade • Componentes – – – – – Certificado Autoridades Certificadoras Autoridades de Registro Diretórios Aplicações PKI 17 Componentes de uma PKI Autoridade Registradora Autoridade Certificadora Diretório Master Certificados Digitais Usuários Diretório Shadow AC + AR + Diretório + Usuários + Certificados + Aplicações = PKI • Certificado Digital – – • O formato X.509 (ITU-T) é o mais utilizado (SSL, IPSec, S/MIME...) PGP utiliza formato próprio Autoridade Certificadora – – Responsável pela emissão, renovação e revogação dos certificados Assina digitalmente todos os certificados emitidos 18 9 RA – Autoridades de Registro • • • • • Interface entre a CA e o usuário Identifica o usuário para a CA A qualidade do processo de autenticação determina o nível de credibilidade que pode ser atribuído a um certificado Mantém registros dos usuários Requisita a revogação de certificados Diretório CA RA Usuário 19 Diretórios • Ponto de distribuição para certificados e relações de certificados revogados • Podem estar distribuídos em redes • Seguem o padrão X.500 com protocolo LDAP • Podem armazenar outras informações Diretório CA RA Usuário 20 10 Aplicações PKI • Comunicações entre servidores web e browsers • E-mail • Electronic Data Interchange (EDI) • Transações de cartões de crédito na Internet • Redes Virtuais Privadas (VPN) Diretório CA RA Usuário 21 Emissão Certificados RA verifica as informações e solicita a emissão do certificado CA divulga o certificado em um diretório CA Diretório CA emite o certificado e o remete para o RA O RA envia o certificado para o usuário RA A informação do usuário e a Chave Pública são enviados para o RA Usuário O usuário gera um par de chaves e solicita um certificado 22 11 Emissão de Certificados • Duas maneiras – O par de chaves é gerado centralizado e distribuído para os usuários de uma maneira controlada – O usuário gera o seu par de chaves e envia a chave pública para a CA criar o seu certificado 23 Geração de Chaves Centralizada • Um componente do CA gera um par de chaves por software em um arquivo ou smartcard • O par de chaves é protegido por um PIN ou Passphrase • O arquivo ou smartcard é remetido ao cliente • A passphrase ou PIN também é remetido para o cliente • O cliente utiliza o par de chaves em seu ambiente operacional 24 12 Chaves Geradas pelo Usuário • O par de chaves é gerado no ambiente do usuário, por software ou usando um recurso de hardware • A chave pública é formatada em um modo pré-definido e enviada para a CA usando como mecanismo de transporte o email ou HTTP • A CA cria um certificado vinculando o usuário à sua chave pública • O certificado é enviado ao usuário 25 Certificados - Revogação • Possíveis Razões – Quando as chaves privadas tiverem sido comprometidas (ou suspeita) – Quando o usuário esquece o código de acesso – Quando o usuário deixa a organização e/ou não precisa mais e/ou não tem mais direito ao certificado – O certificado do CA está comprometido • A lista de certificados revogados é chamada de CRL • CRLs são emitidas e assinada pela CA • A CRL deve ser verificada sempre que um certificado é recebido 26 13 Ciclo de Vida dos Certificados Expiração das Chaves Geração das Chaves Gerenciamento das Chaves e Certificados Transparente para o Usuário Final Emissão do Certificado Validação dos Certificados Uso das Chaves • • • • • • Geração do par de chaves; Emissão e Distribuição do Certificado; Histórico, Backup e Recuperação de Chaves; Revogação e Emissão de novos Certificados; Validação de Certificado; Expiração e Atualização de Chaves; 27 Custódia ou Armazenamento de Chaves • A custódia (key escrow) significa permitir a um terceiro (empresa ou governo) guardar uma cópia das chaves privadas de uma entidade/usuário final – Caráter de segurança pública – Levanta questões de privacidade • O armazenamento de chaves (key archive) é uma necessidade comercial para permitir que as empresas recuperem – Chaves perdidas – Passwords esquecidas – Perda de funcionários 28 14 Elementos de Suporte • Listas de Revogação de Certificados (CRLs) – Formato X.509 v2 e publicadas em diretórios X.500 • Protocolos – Administração - PKIX/CMP (RFC 2510) – Operacionais - PKIX LDAP (RFC 2559/2587) – Online Certificate Status Protocol (RFC 2560) • Hardware Criptográfico – Necessário para aumentar desempenho do sistema e para maximizar a segurança (física e procedimentos) • Smartcards – Necessário para aumentar segurança das informações privadas da entidade/usuário final – Caráter individualizado aumenta a segurança dos procedimentos 29 Obtendo o certificado de um usuário • Qualquer usuário com acesso a chave pública do CA pode recuperar a chave pública de um usuário certificado • Ninguém pode alterar o certificado (a não ser o próprio CA) sem que isso seja detectado • A validação de um certificado implica em – O receptor obtém o certificado da origem da comunicação – O software executa as seguintes funções • • • • • • Obtém o certificado da CA que assina o certificado recebido Decodifica a amostra do certificado usando a chave pública da CA Calcula a amostra certificado Compara as amostras Verifica a data de expiração do certificado Verifica se o certificado foi revogado 30 15 Transação Comercial com Certificados Lojista CA divulga o certificado em um diretório CA Diretório Transações Comerciais via Internet Usuário O lojista pode Verificar: Detalhes do certificado Relações de revogação Validade dos certificados Assinaturas Decriptar dados A relação de credibilidade entre lojistas e usuários com certificados é endossada por uma Autoridade Certificadora 31 Procedimentos de Autenticação X.509 • Autenticação de via única Garante • Identidade de A • Msg foi emitida por A • Enviada para B • Integridade e Originalidade • Autenticação de duas vias 32 16 Procedimentos de Autenticação X.509 • Autenticação de três vias – Msg final de A para B com nonce – Timestamps não precisam ser checados – Ambos nonces são ecoados 33 Cadeia de Certificação O certificado do usuário é assinado por uma CA O certificado da CA é assinado por outra CA ... O último certificado é autoassinado pela CA Root Alice UniCERT Root 34 17 Hierarquia X.509 CA Notação: Y<<X>> • certificado de X • emitido por Y 35 Exemplos de Modelos • Hierárquico, em árvore AC Raiz AC Subordinada AC Subordinada 36 18 Exemplos de Modelos • Híbrido AC 1 Certificação Cruzada AC Subordinada AC 2 AC Subordinada 37 Exemplos de Modelos (cont.) • Web 38 19 ICP-Brasil • Infra-estrutura de chaves públicas brasileira “Conjunto de técnicas, práticas e procedimentos, a ser implementado pelas organizações governamentais e privadas brasileiras com o objetivo de estabelecer os fundamentos técnicos e metodológicos de um sistema de certificação digital baseado em chave pública” • Criada pelo governo em 2001 • Fornece validade jurídica a documentos enviados por e-mail e a transações feitas pela Internet que estejam com certificação • Estabelece um padrão tecnológico mínimo para emissão da certificação digital, e pré-requisitos para que órgãos públicos ou privados se tornem autoridades certificadoras credenciadas 39 20