Criptografia Criptografia Profº. Esp. Salomão Soares [email protected] Macapá/AP Método para proteção de acesso de pessoas não autorizadas à informação sigilosa; Este método busca armazenar e transmitir informações em formato não legível, ouse já, de forma segura, de tal forma que só emitente e receptor são capazes de interpretá-lo. 2012 Criptografia Esta técnica provê: Confidencialidade Disponibilidade Integridade Reconhecimento Criptografia - Termos Alguns termos relacionados são: Texto simples (Plaintext) Encriptar Cifrar Decifrar Work factor Algorítmo Sistema de Criptografia (Cryptosystem) Criptologia (Cryptology) 1 Criptografia - Chaves Chave (Key) A chave é um dado discreto utilizado na operação; Especifica uma transformação única de texto normal em texto criptografado, ou vice-versa Grupo de chaves: Criptografia - Chaves Quando 2 chaves geram o mesmo texto criptografado Criptografia - Cifras Criptografia Há diferentes tipos de cifras, são eles: Substituição: Substitui-se bits, caracteres ou blocos por valores diferentes; Running key: Utiliza objetos do mundo real para descrever palavras e números; Dissimulação: Coloca palavras aleatórias no texto real; Block: Utiliza chave criptográfica e algoritmo para um bloco de dados, ao invés de um bit de cada vez; Stream: Utiliza chave criptográfica e algoritmo para um bit de cada vez; Keyspace: Faixa de valores possíveis para construção de chaves; Autenticação de Dados originais: Utilizado para verificar a fonte da mensagem; Entidade de autenticação: Verifica a identidade do emissor. Cryptanalysis: São estudos que buscam verificar o ponto fraco de uma criptografia; Isto inclui quebrar a chave e obter o texto original a partir do texto cifrado, sem utilizar a chave ou o algoritmo de criptografia. 2 Criptografia Criptografia Simétrica A criptografia pode ser classificada em dois tipos: Chave Simétrica Chave Assimétrica Criptografia Simétrica - Exemplo Tanto emissor quanto receptor utilizam a mesma chave; Exemplo do cartão de crédito Escolhemos um número qualquer para ser a chave. Queremos cifrar nosso cartão de crédito, então subtraímos a chave de cada dígito do n° do cartão. Tomemos um número de cartão de crédito hipotético, 1424 3135 2435 1556 e escolhemos o número 12 para ser a nossa chave. Criptografia Simétrica - Exemplo Poderíamos encriptar o segredo assim: Para "abrir a caixa" e ver o segredo, temos que subtrair novamente só que desta vez subtraímos o a mensagem cifrada da chave: 3 Criptografia Simétrica Pontos fortes: Criptografia Simétrica Mais rápidas, pois são utilizados algoritmos simples; Difícil de ser quebrado se for utilizada uma chave de grande dimensão. Pontos Fracos Criptografia Assimétrica Emissor e receptor utilizam chaves diferenciadas; Como uma caixa com uma fechadura que aceita duas chaves diferentes: uma chave só serve para trancar a outra serve para abrir. A chave deve ser compartilhada para diferentes usuários; Se aumentar o número de usuários, o números de chaves aumenta, deixando o gerenciamento mais difícil; Se múltiplos usuários detiverem a mesma chave, fica incapaz do emissor realizar autenticação e não repúdio. Criptografia Assimétrica Qualquer um que tiver uma cópia da chave que tranca a caixa (a chave pública) pode colocar segredos nesta caixa. Como somente você possui a chave que abre a caixa (chave privada), ninguém mais pode “bisbilhotar” o seu segredo. 4 Criptografia Assimétrica Utiliza duas chaves diferentes para criptografar e descriptografar; Os dois tipos de chaves são privadas e públicas; A criptografia Assimétrica é mais lenta do que a Simétrica pois utiliza um algoritmo de operações matemáticas mais complexo. Criptografia Simétrica Alguns tipos de algorítmos de criptografia simétrica são: DES 3DES AES Criptografia Assimétrica Provê autenticação e não repúdio quando se utiliza chave privada; Além disso, sistemas assimétricos utilizam um gerenciamento mais simples de chaves e mais escalável do que sistemas simétricos. Data Encryption Standard (DES) Certificado pelo NIST (National Institute os Standards na Technology); Utiliza blocos de cifra baseado no algoritimo Lucifer de 128-bits da IBM; Opera com blocos de 64 bits Utiliza chave de 56 bits com mais 8 bits de paridade Espaço da chave é de 256 5 DES Há diferentes modos de operação do DES, são eles: ECB, CBC, CFB, OFB e Counter; A vantagem da utilização do DES é sua velocidade e provimento de segurança razoável; A desvantagem é que para os padrões atuais é um algoritmo fraco, por trabalhar com 56 bits na chave não provê muita proteção para ataques mais severos. 3DES Trabalha com diferentes modos, onde cada modo utiliza específicos números de chaves para performance de específicas funções; Os modos são: DES-EEE3 DES-EDE3 DES-EEE2 DES-EDE2 Triple Data Encryption Standard (3DES) Este tipo de algoritmo utiliza três chaves com 56 bits cada e criptografa e descriptografa três vezes os dados com essas três chaves; Tornando efetivamente uma chave de 168 bits; 3DES 3DES trabalha da mesma forma que o seu antecessor DES mas três vezes mais utilizando três chaves; Ao lado temos um Exemplo de DES-EEE3 6 3DES As vantagens da utilização 3DES são: Fácil implementação comparado com outros algoritmos Baseado no DES que é um algoritmo confiável Mais rápido se comparado com métodos que utilizam chaves públicas Advanced Encryption Standard (AES) 3DES Baseado no Algoritmo de Rijndael e suporta chaves de 128, 192 e 256 bits; As desvantagens são: Terá sua performance comprometida se um grande número de usuários utilizar três chaves distintas; AES Utiliza uma matriz de 4x4 bytes chamadas de estados; 7 AES Vantagens: Podem ser implementados na grande maioria dos equipamentos; Requer pouca memória; As chaves de 192 e 256 bits podem prover segurança para futura aplicações. Outros Algoritmos AES Desvantagens: Low number of computation rounds. Blowfish Alguns outros tipos de algoritmos simétricos: 8 IDEA RC4 RC5 RC6 9 CAST PRATICANDO Iremos agora praticar um pouco do estudo, criando nosso proprio meio de segurança para comunicação. 10