Tpicos l Criptografia Servios Oferecidos l Criptografia Fundamentos


























































- Slides: 58
Tópicos l Criptografia – Serviços Oferecidos l Criptografia - Fundamentos l Criptografia - Tipos Criptografia Simétrica ¡ Criptografia Assimétrica ¡ 1
Criptografia – Serviços Oferecidos Serviços Descrição Disponibilidade Garante que uma informação estará disponível para acesso no momento desejado. Integridade Garante que o conteúdo da mensagem não foi alterado. Controle de acesso Garante que o conteúdo da mensagem será acessado somente por pessoas autorizadas. Autenticidade da Garante a identidade de quem está enviando a origem mensagem. Não-repudiação Previne que alguém negue o envio e/ou recebimento de uma mensagem. Privacidade (confidencialidad e ou sigilo) Impede que pessoas não autorizadas tenham acesso ao conteúdo da mensagem, garantindo que apenas a origem e o destino tenham conhecimento. 2
Criptografia – Serviços Oferecidos Exemplo de aplicação: Compra pela Internet ¡ Informação que permite a transação - valor e descrição do produto adquirido - precisa estar disponível no dia e na hora que o cliente desejar efetuá-la (disponibilidade). ¡ O valor da transação não pode ser alterado (integridade). ¡ Somente o cliente que está comprando e o comerciante devem ter acesso à transação (controle de acesso). ¡ O cliente que está comprando deve ser quem diz ser (autenticidade). ¡ O cliente tem como provar o pagamento e o comerciante não tem como negar o recebimento (não-repúdio). ¡ O conhecimento do conteúdo da transação fica restrito aos envolvidos (privacidade). 3
Fundamentos de Criptografia ¡ Componentes básicos para o ciframento de uma mensagem: l l algoritmo chave Princípio de Kerckhoff (1883): Todos os algoritmos devem ser públicos; apenas as chaves são secretas. Algoritmo secreto: segurança pela obscuridade. 4
Fundamentos de Criptografia Vantagens importantes para o uso de chaves ¡ Permite a utilização do mesmo algoritmo criptográfico para a comunicação com diferentes receptores, trocando apenas a chave. ¡ Permite trocar facilmente a chave no caso de uma violação, mantendo o mesmo algoritmo. ¡ Número de chaves possíveis depende do tamanho (número de bits) da chave. l Exemplo: uma chave de 8 bits permite uma combinação de no máximo 256 chaves. Quanto maior o tamanho da chave, mais difícil quebrá-la. 5
Criptografia - Tipos básicos de Criptografia (em relação ao uso de chaves) l Criptografia Simétrica (chave secreta) Chave (A) l Fechada Chave (A) Aberta Criptografia Assimétrica (chave pública) Chave (A) Fechada KEY (B) Aberta 6
Criptografia Simétrica Texto claro l Mensagem cifrada Utiliza uma mesma chave tanto para cifrar como para decifrar (ou pelo menos a chave de decifração pode ser obtida trivialmente a partir da chave de cifração) A mesma chave utilizada para “fechar o cadeado” é utilizada para “abrir o cadeado”. 7
Criptografia Simétrica - Requer uma chave compartilhada Criptografia Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2, 5 milhões da conta 254674 -12 para a conta 071517 -08 + + Algoritmo = Affonso *> *ql 3*UY #~00873/JDI c 4(DH: IWB(883 LKS 9 UI 29 as 9 eea qw 9 vijhas 9 djerhp 7 (*Y 23 k^wbvlqkwc zqw-_89237 x. Gyjdc Biskdue di 7@94 Descriptografia *> *ql 3*UY #~00873/JDI c 4(DH: IWB(883 LKS 9 UI 29 as 9 eea qw 9 vijhas 9 djerhp 7 (*Y 23 k^wbvlqkwc zqw-_89237 x. Gyjdc Biskdue di 7@94 Para: Banco De: Affonso + + Algoritmo = Data: 16, Abr, 2001 Transferir R$ 2, 5 milhões da conta 254674 -12 para a conta 071517 -08 Affonso 8
Criptografia Simétrica l Algoritmos simétricos - exigem que a chave seja mantida secreta, do conhecimento exclusivo dos dois interlocutores. l É requerido um canal seguro que permita a um usuário transmitir a chave ao seu interlocutor. Se uma pessoa quer se comunicar com outra com segurança, ela deve passar primeiramente a chave utilizada para cifrar a mensagem. Este processo é chamado distribuição de chaves. 9
Criptografia Simétrica Uso de algoritmo criptográfico simétrico (chave secreta) Chave K Alice Mensagem (abcdef. . . z) Chave K Canal Seguro Criptograma (abcdef. . . z) Cifrar Bob Decifrar Mensagem (abcdef. . . z) Canal Inseguro Alice e Bob precisam acordar uma chave secreta que irá proteger as mensagens trocadas entre eles. 10
Criptografia Simétrica l Alice cifra uma mensagem - utiliza um algoritmo de ciframento e uma chave secreta para transformar uma mensagem clara em um texto cifrado. l Bob decifra uma mensagem - utiliza o algoritmo de deciframento correspondente e a mesma chave para transformar o texto cifrado em uma mensagem em claro. l Eva - não possui a chave secreta, mesmo conhecendo o algoritmo, não consegue decifrar a mensagem. l A segurança do sistema reside não mais no algoritmo e sim na chave empregada. É ela que agora, no lugar do algoritmo, deverá ser mantida em segredo por Alice e Bob. 11
Criptografia Simétrica Modelo de criptografia (para uma cifra de chave simétrica) Intruso passivo apenas escuta Texto simples, P Intruso ativo pode alterar mensagens Intruso Método de criptografia, E Método de descriptografia, D Texto simples, P Texto cifrado, C=Ek(P) Chave de criptografia, K Chave de descriptografia, K Dk(Ek(P)) = P 12
Criptografia Simétrica Exemplos de algoritmos que utilizam chaves secretas: ¡ ¡ DES Triple DES IDEA RC 2 13
Criptografia Simétrica l Vantagem ¡ Rapidez na criptografia e descriptografia da informação. l Desvantagens ¡ A chave deve ser trocada entre as partes e armazenada de forma segura, o que nem sempre é fácil de garantir; ¡ A criptografia simétrica não garante a identidade de quem enviou ou recebeu a mensagem (autenticidade e não -repudiação). ¡ Cada par necessita de uma chave para se comunicar de forma segura. Em geral, se n pessoas querem se comunicar usando chave secreta, serão necessárias chaves - problema para o gerenciamento de chaves. 14
Criptografia Simétrica Proposta de solução para o problema da distribuição das chaves secretas Forma tradicional Forma moderna: Uso de um Centro de Distribuição de Chaves (KDC) Possíveis problemas? 15
Criptografia Assimétrica Texto claro Mensagem cifrada l As chaves são sempre geradas aos pares: uma para cifrar e a sua correspondente para decifrar. l A chave pública é divulgada, a chave privada é proprietária (normalmente não abandona o ambiente onde foi gerada). Uma chave é utilizada para “fechar o cadeado” e outra chave, diferente, mas relacionada à primeira, é utilizada para “abrir o cadeado” 16
Criptografia Assimétrica - Não possui segredos compartilhados Criptografia Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2, 0 milhões da conta 254674 -12 para a conta 071517 -08 + + Algoritmo = Chave Pública Affonso *> *ql 3*UY #~00873/JDI c 4(DH: IWB(883 LKS 9 UI 29 as 9%#@ qw 9 vijhas 9 djerhp 7 (*Y 23 k^wbvlqkwc zqw-_89237 x. Gyjdc Biskdue di 7@94 Descriptografia *> *ql 3*UY #~00873/JDI c 4(DH: IWB(883 LKS 9 UI 29 as 9%#@ qw 9 vijhas 9 djerhp 7 (*Y 23 k^wbvlqkwc zqw-_89237 x. Gyjdc Biskdue di 7@94 Para: Banco De: Affonso + + Chave Privada Algoritmo = Data: 16, Abr, 2001 Transferir R$ 2, 0 milhões da conta 254674 -12 para a conta 071517 -08 Affonso As duas chaves são relacionadas através de um processo matemático, usando funções unidirecionais para a codificação da informação. 17
Criptografia Assimétrica l Algoritmos assimétricos - permitem que a chave de cifração possa ser tornada pública, disponibilizando-a em um “canal público” (Ex. : repositório de acesso público) - chave-pública. l Qualquer um pode cifrar mensagens com uma dada chavepública. l Somente o destinatário, detentor da correspondente chave de decifração (chave-privada, ou secreta), poderá decifrar a mensagem. A chave-privada não precisa e nem deve ser dada a conhecer a ninguém, devendo ser guardada em segredo pelo seu detentor apenas, que deve também ter sido o responsável pela geração do seu par de chaves, enquanto a chave-pública pode ser publicada livremente. 18
Criptografia Assimétrica Uso de algoritmo criptográfico assimétrico (chave pública). Chave KPública Alice Mensagem (abcdef. . . z) Chave KSecreta Canal Público Bob Criptograma (abcdef. . . z) Cifrar Decifrar Mensagem (abcdef. . . z) Canal Inseguro Para que Alice envie uma mensagem confidencial a Bob, ela deve encriptar essa mensagem com a chave pública de Bob que, de posse de sua chave privada, consegue descriptá-la. Como, em tese, ninguém tem acesso à chave privada de Bob, ninguém pode descriptar a mensagem. 19
Criptografia Assimétrica Descrição do funcionamento do sistema (forma simplificada) l ¡ ¡ Bob e todos os que desejam comunicar-se de modo seguro geram uma chave de ciframento e sua correspondente chave de deciframento. Bob mantém secreta a chave de deciframento; esta é chamada de sua chave privada. Bob torna pública a chave de ciframento: esta é chamada de sua chave pública. Qualquer pessoa pode obter uma cópia da chave pública. Bob encoraja isto, enviando-a para seus amigos ou publicando-a em boletins. Eva não tem nenhuma dificuldade em obtê-la. 20
Criptografia Assimétrica Descrição do funcionamento do sistema (forma simplificada) l ¡ ¡ Alice deseja enviar uma mensagem a Bob: precisa primeiro encontrar a chave pública dele. Feito isto, ela cifra sua mensagem utilizando a chave pública de Bob, despachando-a em seguida. Bob recebe a mensagem, a decifra facilmente com sua chave privada. Eva, que interceptou a mensagem em trânsito, não conhece a chave privada de Bob, embora conheça sua chave pública. Mas este conhecimento não a ajuda a decifrar a mensagem. Mesmo Alice, que foi quem cifrou a mensagem com a chave pública de Bob, não pode decifrá-la agora. 21
Criptografia Assimétrica Exemplos de algoritmos que utilizam chaves públicas: ¡ ¡ RSA El. Gamal Diffie-Hellman Curvas Elípticas 22
Criptografia Assimétrica l Vantagens ¡ ¡ l Mais segura do que a criptografia simétrica, por não precisar comunicar ao receptor a chave necessária para descriptografar a mensagem. Permite qualquer um possa enviar uma mensagem secreta, utilizando apenas a chave pública de quem irá recebê-la. Como a chave pública está amplamente disponível, não há necessidade do envio de chaves como no modelo simétrico. A confidencialidade da mensagem é garantida, enquanto a chave privada estiver segura. Caso contrário, quem possuir acesso à chave privada terá acesso às mensagens. Desvantagem ¡ costuma ser mais lenta do que a criptografia simétrica. 25
Criptografia Simétrica x Assimétrica Número de chaves necessárias/número de participantes Nº de participantes Criptografia Simétrica n(n-1)/2 Criptografia Assimétrica 2 n 2 1 4 4 6 8 8 28 16 16 120 32 26
Criptografia Simétrica x Assimétrica Simétrica Funcionamento ¡ Utiliza um algoritmo e uma chave para cifrar e decifrar Assimétrica Funcionamento ¡ Utiliza um algoritmo e um par de chaves para cifrar e decifrar Requisito de Segurança ¡ A chave tem que ser mantida ¡ Uma chave é pública e a em segredo outra tem que ser mantida em segredo ¡ Tem que ser impossível decifrar a mensagem ¡ Algoritmo com alguma parte do texto cifrado com uma das ¡ Algoritmo mais alguma parte chaves não devem ser do texto cifrado devem ser suficientes para obter a outra insuficientes para obter a chave 27
Criptografia Simétrica x Assimétrica Problemas ¡ Criptografia Simétrica l Como distribuir e armazenar as chaves secretas de forma segura? l Quantas chaves são necessárias para uma comunicação segura entre n pessoas? ¡ Criptografia Assimétrica l Como garantir que o detentor da chave pública é realmente quem diz ser? l Necessidade de ter uma infra-estrutura para armazenar as chaves públicas. 28
Criptografia Simétrica x Assimétrica Assinatura Digital Qual a melhor técnica? Como garantir a autenticidade de quem envia a mensagem? Como garantir a integridade do conteúdo? Certificado Digital 29
Ameaças do Ambiente Eletrônico Intermediário Adulteração da comunicação Repúdio Penetração de sistema Comunicações abertas Impostor Internet Processamento distribuído Emulação Cavalos de Tróia Interrupção do serviço Violação de autorização Repetição 30
Comunicação Segura Criptografia Assinatura Eletrônica Certificação Validade do Certificado Descriptografia Verificação de Assinatura Documento Eletrônico Internet Documento Eletrônico “Alice” “Bob” 31
Tópicos l Assinatura Digital l Certificação Digital l Segurança da Comunicação 32
Criptografia - Autenticação l l Algumas vezes há a necessidade de se provar quem escreveu um documento e de manter as informações desse documento sem modificações. Solução: serviços de autenticação e integridade de dados A autenticidade de muitos documentos é determinada pela presença de uma Assinatura Digital. 33
Criptografia - Autenticação l Assinatura digital – item que acompanha um determinado dado e apresenta as seguintes funções: 1. Confirmar a origem do dado 2. Certificar que o dado não foi modificado 3. Impedir a negação de origem 34
Assinatura Digital l Vantagens provenientes do envio de mensagem “assinada”: 1. O receptor poderá verificar a identidade alegada pelo transmissor. 2. Posteriormente, o transmissor não poderá repudiar o conteúdo da mensagem. 3. O receptor não terá a possibilidade de forjar ele mesmo a mensagem. 35
Assinatura Digital l Assinaturas de Chave Simétrica l Assinaturas de Chave Pública l Sumários de mensagens (Message Digests) l Aplicações Práticas 36
Assinatura Digital Assinatura de Chave Simétrica ¡ Estratégia – uso de uma autoridade central que saiba de tudo e na qual todos confiem (BB - Big Brother). ¡ Cada usuário escolhe uma chave secreta e a leva para o BB. ¡ Somente Alice e BB conhecem a chave secreta de Alice, KA, e assim por diante. 37
Assinatura Digital Assinatura de Chave Simétrica Assinaturas digitais com Big Brother B – identidade de Bob RA – número aleatório escolhido por Alice t – timbre de hora para assegurar a atualidade KA(B, RA, t, P) – mensagem criptografada com a chave de Alice, KA KBB (A, t, P) – mensagem assinada 38
Assinatura Digital Problemas - Assinaturas de Chave Simétrica ¡ Todos têm de confiar no BB. ¡ O BB tem de ler todas as mensagens assinadas. 39
Assinatura Digital Assinaturas de Chave Pública Computador de Alice Chave privada de Alice, DA Linha de transmissão Chave pública de Bob, EB Computador de Bob Chave privada de Bob, DB Chave pública de Alice, EA Assinaturas digitais com o uso de chave pública. 40
Assinatura Digital ¡ Assinaturas de Chave Pública - Problemas relacionados ao ambiente no qual operam l Bob só poderá provar que uma mensagem foi enviada por Alice enquanto DA permanecer secreta. Se Alice revelar sua chave secreta, o argumento deixará de existir - qualquer um poderá ter enviado a mensagem. l O que acontecerá se Alice decidir alterar sua chave? 41
Assinatura Digital Criptografia Assimétrica (chave pública) Críticas ¡ Reúnem sigilo e autenticação ¡ Em geral, o sigilo não é necessário ¡ Cifragem da mensagem inteira é lenta Solução: assinar a mensagem sem cifrá-la completamente Sumários de Mensagens 42
Assinatura Digital ¡ Sumários de Mensagens (Message Digests) l Uso de uma função hash unidirecional que extrai um trecho qualquer do texto simples e, a partir deste, calcula um string de bits de tamanho fixo. l Função hash – geralmente denominada sumário de mensagens (MD). 43
Assinatura Digital • Hash - Algoritmo que faz o mapeamento de uma seqüência de bits de tamanho arbitrário para uma seqüência de bits de tamanho fixo menor, de forma que seja muito difícil encontrar duas mensagens produzindo o mesmo resultado hash. Mess age Hash Função Hash - funciona como uma impressão digital de uma mensagem gerando, a partir de uma entrada de tamanho variável, um valor fixo pequeno: o digest ou valor hash. 44
Assinatura Digital MD - Propriedades importantes 1. Se P fornecido, o cálculo de MD(P) será muito fácil. 2. Se MD(P) fornecido, será efetivamente impossível encontrar P. 3. Dado P, não deve ser possível encontrar P´ tal que MD(P´) = MD(P). 4. Uma mudança na entrada de até mesmo 1 bit produz uma saída muito diferente. 45
Assinatura Digital Message Digests - Propriedades importantes ¡ Gera um sumário de tamanho fixo para qualquer comprimento de mensagem. ¡ Efetivamente impossível adivinhar a mensagem a partir do sumário. ¡ Efetivamente impossível encontrar outra mensagem que gere o mesmo sumário. ¡ Uma pequena mudança na mensagem altera bastante o sumário. 46
Função hash – Message Digests 47
Assinatura Digital - Geração 48
Assinatura Digital - Geração ¡ Geração da Assinatura Digital 1. entra-se com os dados a serem "digeridos" e o algoritmo MD gera um hash de 128 ou 160 bits (dependendo do algoritmo). 2. computada uma MD, criptografa-se o hash gerado com uma chave privada. 49
Assinatura Digital - Verificação Normalmente, 2 m/2 (e não 2 m) operações são suficientes para subverter um sumário de mensagens de m bits utilizando-se o ataque de aniversário. 50
Assinatura Digital - Verificação ¡ Verificação da Assinatura Digital 1. Executa-se a função MD (usando o mesmo algoritmo MD que foi aplicado ao documento na origem), obtendo-se um hash para aquele documento, e posteriormente, decifra-se a assinatura digital com a chave pública do remetente. 2. A assinatura digital decifrada deve produzir o mesmo hash gerado pela função MD executada anteriormente. 3. Se estes valores são iguais é determinado que o documento não foi modificado após a assinatura do mesmo, caso contrário o documento ou a assinatura, ou ambos foram alterados. Assinatura digital – informa apenas que o documento foi modificado, mas não o que foi modificado e o quanto foi modificado. 51
Assinatura Digital ¡ É importante perceber: a assinatura digital, como descrita no exemplo anterior, não garante a confidencialidade da mensagem. ¡ Qualquer um poderá acessá-la e verificá-la, mesmo um intruso (Eva), apenas utilizando a chave pública de Alice. 52
Assinatura Digital ¡ Obtenção de confidencialidade com assinatura digital: l Alice 1. assina a mensagem, utilizando sua chave privada. 2. criptografa a mensagem novamente, junto com sua assinatura, utilizando a chave pública de Bob. l Bob 1. ao receber a mensagem, deve decifrá-la com sua chave privada, o que garante sua privacidade. 2. "decifrá-la" novamente, ou seja, verificar sua assinatura utilizando a chave pública de Alice, garantindo assim sua autenticidade. 53
Assinatura Digital Exemplos de algoritmos que implementam Assinatura Digital: ¡ ¡ ¡ RSA El Gamal DSA 54
Assinatura Digital Algoritmo RSA Descrição • Como já mencionado, o RSA também é comutativo e pode ser utilizado para a geração de assinatura digital. • A matemática é a mesma: há uma chave pública e uma chave privada, e a segurança do sistema baseiase na dificuldade da fatoração de números grandes. 55
Assinatura Digital Algoritmo Descrição El Gamal • Também é comutativo, podendo ser utilizado tanto para assinatura digital quanto para gerenciamento de chaves. • Obtém sua segurança da dificuldade do cálculo de logaritmos discretos em um corpo finito. 56
Assinatura Digital Algoritmo Descrição DSA • O Digital Signature Algorithm, destinado unicamente a assinaturas digitais, foi proposto pelo NIST em agosto de 1991, para utilização no seu padrão DSS (Digital Signature Standard). • Adotado como padrão final em dezembro de 1994, trata-se de uma variação dos algoritmos de assinatura El Gamal e Schnorr. 57
Criptografia - Função Hash Exemplos de funções hash (MD) utilizadas em produtos e protocolos criptográficos: ¡ ¡ ¡ MD 5 SHA-1 MD 2 e MD 4 58
Criptografia - Função Hash Funções Descrição MD 5 • Função de espalhamento unidirecional inventada por Ron Rivest, do MIT, que também trabalha para a RSA Data Security. MD - Message Digest. • Produz um valor hash de 128 bits, para uma mensagem de entrada de tamanho arbitrário. • Inicialmente proposto em 1991, após alguns ataques de criptoanálise terem sidos descobertos contra a função Hash prévia de Rivest: a MD 4. • Projetado para ser rápido, simples e seguro. Seus detalhes são públicos, e têm sido analisados pela comunidade de criptografia. • Foi descoberta uma fraqueza em parte do MD 5, mas até agora ela não afetou a segurança global do algoritmo. • O fato dele produzir um valor hash de somente 128 bits é o que causa maior preocupação; é preferível uma função Hash que produza um valor maior. 59
Criptografia - Função Hash Funções Descrição SHA-1 • O Secure Hash Algorithm, função de espalhamento unidirecional inventada pela NSA, gera um valor hash de 160 bits, a partir de um tamanho arbitrário de mensagem. • Funcionamento interno muito parecido com o observado no MD 4, indicando que os estudiosos da NSA basearam-se no MD 4 e fizeram melhorias em sua segurança. • A fraqueza existente em parte do MD 5, citada anteriormente, descoberta após o SHA-1 ter sido proposto, não ocorre no SHA-1. • Atualmente, não há nenhum ataque de criptoanálise conhecido contra o SHA-1. • Mesmo o ataque da força bruta torna-se impraticável, devido ao seu valor hash de 160 bits. • Não há provas de que, no futuro, alguém não possa descobrir como quebrar o SHA-1. 60