Baixe o app para aproveitar ainda mais
Prévia do material em texto
Criptografia Assimétrica Apresentação O envio e o recebimento de mensagens sigilosas sempre foram uma necessidade. Com isso, a criptografia tornou-se ferramenta fundamental a fim de que apenas o emissor e o receptor tenham acesso a tais informações. Nas agências espaciais de inteligência e no período de guerras, há exemplos de utilização da criptografia, evitando, assim, que mensagens importantes possam ser interceptadas e lidas. Nesta Unidade de Aprendizagem, você vai aprender o que é a criptografia assimétrica, suas características e diferentes tipos. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Conceituar criptografia assimétrica.• Caracterizar criptografia assimétrica.• Exemplificar os diferentes tipos de criptografia assimétrica.• Desafio Seu colega de trabalho precisava escrever um algoritmo para cifrar um texto. Para isso, utilizou o seguinte código: #include <stdio.h> #include <stdlib.h> #include <string.h> void cifraCesar(char *texto, int chave) { int i; int tam = strlen(texto); for (i = 0; i <= tam-1; i++) { char letra = texto[i]; char letraCifrada = letra + chave; if (letra >= 65 && letra <= 90) { // trata letras maiusculas if (letraCifrada > 91) { letraCifrada = 65 + (letraCifrada - 91); } } else if (letra >= 97 && letra <= 122) { //trata letras minusculas if (letraCifrada > 123) { letraCifrada = 97 + (letraCifrada - 123); } } printf("%c",letraCifrada); } } int main() { cifraCesar("Adriana", 3); return 0; } No entanto, nas férias desse colega, seu chefe lhe chamou e pediu que melhorasse tal algoritmo, pois não ficara satisfatório. Então, você precisa analisá-lo e refazê-lo para que ele cifre e decifre o texto. Infográfico Hoje em dia, a informação está cada vez mais digital. Por isso, é importante que esta seja protegida, evitando sua interceptação por pessoas mal-intencionadas. Assim, a criptografia tem papel fundamental. No Infográfico, acompanhe as principais características da criptografia assimétrica e simétrica, bem como a combinação de ambas. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://statics-marketplace.plataforma.grupoa.education/sagah/b505927e-841e-48a2-a576-a79db5ee988c/82ab705c-99e8-4b1c-ad03-d8eadee38077.png Conteúdo do livro A criptografia é item muito importante para garantir a segurança da informação em sua transmissão, assegurando que a mesma não seja acessada por pessoas não autorizadas. Quanto mais forte for o padrão, mais difícil será o acesso à informação, e tal fato depende dos bits nesse padrão. No capítulo Criptografia assimétrica, da obra Segurança da informação, base teórica para esta Unidade de Aprendizagem, você vai aprofundar seus conhecimentos sobre a criptografia assimétrica, sua funcionalidade e respectivos tipos. Boa leitura. ENGENHARIA ECONÔMICA Rafael Stefani Criptografia assimétrica Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: Conceituar criptografia assimétrica. Exemplificar os principais algoritmos da criptografia assimétrica. Identificar as vantagens e desvantagens da criptografia assimétrica. Introdução Nunca se gerou e trocou tantas informações em meio eletrônico quanto nas últimas décadas, devido à popularização dos computadores, dos dispositivos portáteis e à conexão de alta velocidade à Internet. Para garantir a segurança de todas as partes envolvidas, torna-se cada vez mais necessário os investimentos em Segurança da Informação. A criptografia uma ferramenta de segurança utilizada para transformar uma informação original em uma informação ilegível, possibilitando que a informação seja acessada apenas pelas pessoas autorizadas. Com ela, as informações são enviadas de forma mais segura, utilizando-se de encriptação e desencriptação de mensagens. A criptografia assimétrica é um tipo ainda mais seguro de criptografia, que utiliza duas chaves. Neste capítulo, você aprenderá sobre este tipo de criptografia, compreendendo como seus algoritmos operam e quais são suas vantagens e desvantagens. Tipos de criptografia Se observarmos a etimologia da palavra “criptografi a”, veremos que ela é formada pelo grego antigo kryptós, que signifi ca “segredo”, e graphein, que signifi ca escrever, ou seja, a criptografi a pode ser entendida como “a escrita dos segredos”. É utilizada há bastante tempo e foi associada às atividades militares, nas quais as mensagens precisavam ser protegidas de espiões adversários. A criptografia tem como principal objetivo esconder informações utilizando processos de codificação. A mensagem original é codificada no momento do seu envio e poderá ser descodificada assim que estiver disponível à pessoa autorizada. A encriptação é a transformação dos dados, tornando-os ilegíveis para pessoas não autorizadas, e também é conhecida como codificação. A desen- criptação é a operação que reverte estes dados ao formato original, permitindo assim a sua leitura, e também é conhecida como decodificação. A criptografia utiliza-se de chaves e algoritmos para efetuar o seu papel. São tipos de criptografia: criptografia hash; chaves simétricas; chaves assimétricas; combinação dos tipos. A criptografia pode ser do tipo simétrica e assimétrica. Podem ser utili- zadas separadamente ou em conjunto para garantir ainda mais a segurança. A criptografia assimétrica, também conhecida como criptografia de chave pública, utiliza uma chave de encriptação (denominada chave pública) e uma chave para desencriptação (denominada chave privada), que é diferente da chave de encriptação. Assim, temos que a encriptação utiliza a chave “k1” em cima da mensa- gem em texto legível e a partir deste irá gerar um texto ilegível. Após isso, no processo de descriptografia, é utilizada a chave “k2” em cima do texto codificado e teremos como resposta o texto descodificado. Na criptografia assimétrica, a chave pública pode ser conhecida por todos e se faz necessária para encriptação do texto. Já a chave privada, precisa perma- necer secreta e sua utilização é necessária para desencriptação do texto cifrado e, por isso, a confidencialidade da informação é garantida. Para compreender melhor o uso das chaves na criptografia assimétrica, observe o Quadro 1. Criptografia assimétrica2 Fonte: Adaptado de Amaro (2009). Função da chave Qual chave? De quem? Criptografar os dados para um destinatário Chave pública Do destinatário Assinar a mensagem Chave privada Do remetente Descriptografar os dados para ler a mensagem Chave privada Do destinatário Verificar a assinatura da mensagem Chave privada Do destinatário Quadro 1. Resumo do uso de chaves públicas e privadas na criptografia assimétrica Criptografar e descriptografar utilizando a criptografia assimétrica pode ter um custo operacional um pouco maior, pois na maioria das vezes o tamanho da chave pode ser maior do que as utilizadas na criptografia simétrica, mas isto depende também do algoritmo utilizado na criptografia. A chave pública é sempre disponibilizada gratuitamente para a pessoa que queira enviar uma mensagem. A chave privada é mantida em segredo, para que somente a própria pessoa a tenha. Adriana gostaria de enviar uma mensagem para seu amigo Carlos. Para isto a mensa- gem precisa ser cifrada com a chave pública do Carlos. Quando a mensagem cifrada chega para Carlos, ele decifra a mensagem com a sua chave privada. Desta forma a confidencialidade da mensagem está garantida. A chave privada do Carlos é a única que pode decifrar a mensagem que foi criptografada ao ser enviada por Adriana. A criptografia assimétrica pode garantir também a autenticidade. Voltando ao exemplo de Carlos e Adriana, podemos imaginar que Adriana cifre a mensagemusando a sua chave privada e envie essa mensagem para Carlos. Perceba que a chave pública de Carlos não foi utilizada e, sim, a chave privada de Adriana, que somente ela possui. Somente a chave pública de Adriana pode decifrar a mensagem e só assim Carlos pode ter a certeza que foi Adriana quem a enviou. 3Criptografia assimétrica Algoritmos de criptografia assimétrica Como já foi comentado, para garantir a segurança, a criptografi a assimétrica utiliza duas chaves (uma pública e uma privada) e algoritmos para criptografar e descriptografar. Um esquema que explica esse processo pode ser visto na Figura 1. Alguns exemplos de algoritmos utilizados na criptografi a assimétrica: Diffie-Helman. ElGamal. Digital Signature Standard (DSS). RSA. Cifra de César. O algoritmo Diffie-Helman é um usado para fazer troca de chaves. É bastante eficiente, mas está sujeito a um ataque de intervenção humana no momento da troca das chaves pública–privada. Uma desvantagem é que não permite o ciframento e nem a assinatura digital. A sua lógica é baseada em criptoanálise. O algoritmo ElGamal é de chave pública e baseado no algoritmo Diffie- -Helman. Ele faz uso de um problema matemático conhecido como logaritmo discreto. É também utilizado em assinaturas digitais. O DSS, ou Padrão de Assinatura Digital, é o algoritmo utilizado para a realização de assinatura digital, mas pode ser usado também para criptografar. É uma variante do ElGamal. Figura 1. Criptografia assimétrica. Fonte: Boy ([2018]). Mensagem Original Cifragem Desifragem Mensagem Original Mensagem Cifrada Criptografia assimétrica4 A Cifra de César foi um dos primeiros sistemas de criptografia. Recebeu este nome pois foi elaborado pelo general Júlio César, no império Romano. Foi utilizado em combate pela Europa. Esta técnica baseia-se em efetuar a troca das letras do alfabeto. A Figura 2 apresenta outro exemplo de como funciona a Cifra de César. Figura 2. Exemplo da cifra de César. Fonte: Wikiwand ([2018]). 13 ROT13 ROT13 A B C D E F G H I J K L M N O P Q R S T U V H E L L O U R Y Y B W X Y Z O algoritmo RSA traz no seu nome as iniciais dos seus criadores. É um dos algoritmos de criptografia assimétrica mais utilizados. Sua lógica baseia-se Suponha que a chave seja a palavra “segurança”. Utilizando a Cifra de César com a substituição de 03 letras por vez, teremos a seguinte chave: SEGURANÇA resultaria em VHJYUDOFD VHJYUDOFD seria a senha criptografada. 5Criptografia assimétrica na multiplicação de dois números primos. O resultado desta multiplicação é o que deverá ser utilizado para descobrir os outros dois números e assim decifrar a chave. A sua segurança é baseada em operações matemáticas com números pri- mos grandes, conhecidas como problema de fatoração. Para decifrar a chave privada é necessário a utilização de recursos computacionais muito grandes e o usuário precisa calcular um par de chaves para ter acesso a mensagem: Calcular a chave pública do usuário P e calcular a chave secreta Q. Ou seja, para trabalhar com as chaves é necessário escolher dois números primos. Podemos chamar de P e Q. Para melhorar a segurança escolha números grandes. Quanto maior, melhor. Vantagens e desvantagens da criptografia assimétrica Assim como em outros assuntos da segurança da informação, utilizar a cripto- grafi a assimétrica também possui vantagens e desvantagens. Como vantagens podemos citar: A criptografia assimétrica é mais segura do que a simétrica. Para cifrar e decifrar são necessárias duas chaves, o que a torna mais segura. A chave pública é divulgada e a privada é secreta. Pelo fato de ter duas chaves, é possível fazer a autenticação de remetente. Existem pelo menos três grandes desvantagens: Os algoritmos utilizados na criptografia assimétrica são mais complexos. Exige maior poder de processamento. É mais lenta do que a criptográfica simétrica. Criptografia assimétrica6 Para exemplificar o funcionamento do algoritmo de criptografia, vamos escolher inicialmente dois números primos quaisquer “P” e “Q”. Obviamente vamos escolher dois números primos pequenos apenas por questão de exemplificação. Portanto, consideramos que “P = 17” e “Q = 11”. Após definirmos os valores dos números primos devemos calcular dois novos números N e Z de acordo com os números P e Q escolhidos, portanto temos que: N = P * Q Z = (P–1)*(Q–1) Assim, após substituir os valores teremos como resultado: N = 17 * 11 = 187 Z = 16 * 10 = 160 O próximo passo é definir um número D que tenha a propriedade de ser primo em relação a Z. Podemos escolher qualquer número como, por exemplo, o número “7”. Agora podemos começar o processo de criação da chave pública e da chave privada. Devemos encontrar um número E que satisfaça a propriedade “(E * D) mod Z = 1”. Se tomarmos o número “1” e substituirmos os valores na fórmula, teremos “E = 1 => (1 * 7) mod 160 = 7” que não satisfaz a condição, pois o resultado foi “7”. Se tomarmos os números “2”, “3” até o “22” nenhum satisfará a condição, mas o número “23” satisfará resultando em “E = 23 => (23 * 7) mod 160 = 1”. Outros números também satisfazem essa condição, como “183”, “343”, “503”, etc. Dessa forma, tomamos como referência “E = 23”. Agora podemos definir as chaves de encriptação e desencriptação. Para criptografar utilizamos “E” e “N” e esse par de números é utilizado como chave pública. Para descriptografar utilizamos “D” e “N” e esse par de números é utilizado como chave privada. Assim, temos as equações definidas abaixo: Texto Criptografado = (Texto Puro ^ E) mod N Texto Puro = (Texto Criptografado ^ D) mod N Como um exemplo prático, vamos imaginar uma mensagem bastante simples que tem o número “4” no seu corpo e será retornada ao destinatário. Para criptografar essa 7Criptografia assimétrica Unindo criptografia simétrica e assimétrica Para aumentar a segurança e otimizar recursos, pode-se utilizar o que se tem de melhor dos dois tipos de criptografi a: simétrica e assimétrica. Por ser mais simples, algoritmos simétricos são mais rápidos e mais van- tajosos para cifrar grande volume de informação. Os assimétricos, porém, são apropriados na distribuição de chaves e para garantir sua autenticação. Combinando as duas técnicas é possível cifrar um grande volume de infor- mações e distribuir com criptografia de chaves públicas. A Figura 3, a seguir, mostra como criptografar e descriptografar uma mensagem utilizando a combinação dos dois métodos, para tirar o melhor proveito de cada uma delas. Essa forma de combinar os dois métodos de criptografia tem se tornado um padrão e sido adotado em vários produtos comerciais, pois consegue resolver os problemas pertinentes às questões técnicas de cada método. mensagem teríamos o texto original como sendo “4”, o texto criptografado seria “(4 ^ 23) mod 187” que é “70.368.744.177.664 mod 187” resultando em “64”. Para descriptografar, o destinatário recebe o texto “64”. Recebido o texto cripto- grafado e aplicando a fórmula, temos que o texto original será “(64 ^ 7) mod 187” ou “4.398.046.511.104 mod 187”, que resulta em “4” que é o texto originalmente criado. Como o RSA trabalha com números devemos converter um alfabeto em número, assim a letra A seria 0, B seria 1, C seria 2, e assim por diante. Podemos notar que a escolha dos números primos envolvidos é fundamental para o algoritmo, por isso escolhemos números primos gigantes para garantir que a chave seja inquebrável. Criptografia assimétrica8 Figura 3. Envio seguro de mensagens combinando a criptografia simétrica com a assimétrica. Fonte: Adaptada de Curry (1997). ASSINAR SELAR ENVIAR Criar a mensagem Criar uma única impressão digital da mensagem original com uma função HASH Assinar a impressão digital com a chave privada do remetente Adicionar o código hash assinado à mensagem Criptografar toda a mensagem usando uma chave simétrica Criptografar a chave simétrica usando a chave públicado destinatário Enviar os envelopes eletrônicos ao destinatário AMARO, G. Criptografia simétrica e criptografia de chaves públicas: vantagens e desvan- tagens. 2009. Disponível em: <http://publica.fesppr.br/index.php/rnti/issue/down- load/4/33>. Acesso em: 10 ago. 2018. BOY, M. Entenda como um ransomware funciona e como se prevenir. [2018]. Disponível em: <https://www.perallis.com/news/entenda-como-um-ransomware-funciona-e- -como-se-prevenir>. Acesso em: 10 ago. 2018. CURRY, I. An introduction to cryptography. Addison, TX: Entrust Technologies, 1997. WIKIWAND. Cifra de substituição. [2018]. Disponível em: <http://www.wikiwand.com/ pt/Cifra_de_substitui%C3%A7%C3%A3o>. Acesso em: 10 ago. 2018. Leituras recomendadas CAESAR CIPHER. [2018]. Disponível em: <https://www.dcode.fr/caesar-cipher>. Acesso em: 10 ago. 2018. ZOCHIO, M. F. Introdução à criptografia: uma abordagem prática. São Paulo: Novatec, 2016. 9Criptografia assimétrica Encerra aqui o trecho do livro disponibilizado para esta Unidade de Aprendizagem. Na Biblioteca Virtual da Instituição, você encontra a obra na íntegra. Conteúdo: Dica do professor Com a criptografia assimétrica, além de resguardar a informação na sua transmissão, é possível também comprovar sua autenticidade, ou seja, verificar se ela realmente foi gerada por quem diz ter feito isso. Para tanto, utiliza-se a assinatura digital, na qual a verificação é feita com o uso de chaves. Na Dica do Professor, assista ao vídeo que indica como o algoritmo de criptografia assimétrica pode autenticar o remetente de determinada mensagem. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/9f0f595a918c0abba49e77e5befa5aa1 Exercícios 1) Leia as opções abaixo e indique o tipo de criptografia no qual a chave para cifrar e decifrar é compartilhada entre remetente e destinatário. A) Criptografia assimétrica. B) Criptografia WEP. C) Criptografia quântica. D) Criptografia simétrica. E) Criptografia RSA. 2) Analise as alternativas a seguir e marque a que corresponde ao modo de utilização das chaves na criptografia assimétrica. A) Usa-se uma única chave para encriptar e decriptar mensagens. B) Apenas a chave de encriptação é compartilhada. C) Não existe relação entre as duas chaves, e é isso que garante a segurança de tal tipo de criptografia. D) Por ser de conhecimento de todos, a chave pública só pode ser usada uma única vez. E) Caso o titular perca a sua chave privada, pode usar a chave pública para decriptar as mensagens. 3) A criptografia assimétrica utiliza de chaves e algoritmos para criptografar e descriptografar. A seguir, temos opções de algoritmos que podem ser empregados. Verifique as alternativas e marque a que corresponde aos algoritmos usados na criptografia assimétrica. A) PKI e DES. B) DSS e RSA. C) TCP e MD5. D) DMZ e IMAP. E) AES e RAID. 4) Analise o texto a seguir. "O usuário Carlos deseja enviar um e-mail para Adriana de modo seguro. Para isso, ele utilizará a criptografia assimétrica a fim de cifrar o conteúdo da mensagem." Marque a alternativa que descreve o processo a ser efetuado por ambos a fim de realizar a operação. A) Carlos deve criptografar a mensagem, utilizando a sua chave pública. Por sua vez, Adriana precisa descriptografar a mensagem, empregando a chave pública de Carlos. B) Carlos deve criptografar a mensagem, utilizando a sua chave privada. Por sua vez, Adriana precisa descriptografar a mensagem, usando a chave privada de Carlos. C) Carlos deve criptografar a mensagem, utilizando a chave privada de Adriana. Por sua vez, ela precisa descriptografar a mensagem, usando a sua chave privada. D) Carlos deve criptografar a mensagem, utilizando a chave pública de Adriana. Por sua vez, Adriana precisa descriptografar a mensagem, usando a sua chave pública. E) Carlos deve criptografar a mensagem, utilizando a chave pública de Adriana. Por sua vez, ela deve descriptografar a mensagem, usando a sua chave privada. 5) Assinale a alternativa que corresponde a uma característica da criptografia assimétrica. A) Usa algoritmo de chave pública. B) Emprega algoritmo de chave secreta. C) Utiliza chave compartilhada entre dois computadores. D) Trabalha segurança bidirecional. E) Gera código de tamanho fixo para qualquer tamanho de mensagem. Na prática Criptografia ou criptologia é a prática de princípios e técnicas para comunicação segura na presença de terceiros, chamados de adversários. Na Prática, veja como o aplicativo WhatsApp está usando a criptografia para garantir a privacidade de seus usuários. Conteúdo interativo disponível na plataforma de ensino! Saiba + Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor: Criptografia RSA RSA é um sistema de criptografia assimétrica que usa a fatoração de 2 números primos grandes para a geração das chaves a fim de criptografar e descriptografar. Assista ao vídeo para conhecer mais sobre a criptografia RSA. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. Criptografia simétrica e assimétrica. Sabe qual é a diferença? Este material apresenta as principais diferenças entre a criptografia simétrica e assimétrica, além de suas utilizações. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. Assinatura Digital com fun ̧c ̃ao Hash A assinatura digital é uma função matemática aplicada sobre os dados de entrada, visando a garantir que o conteúdo de determinado arquivo não foi alterado. Tal material apresenta maior contextualização sobre criptografia assimétrica e assinatura digital. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://www.youtube.com/embed/GAR1Ur_2IGk https://kryptazia.wordpress.com/2015/11/12/criptografia-simetrica-e-assimetrica-sabe-a-diferenca/ http://docente.ifrn.edu.br/josemacedo/disciplinas/2019/2019.1/praticas-de-laboratorio/05-assinatura-digital-com-funcao-hash#:~:text=A%20diferen%C3%A7a%20%C3%A9%20que%20a,a%20chave%20p%C3%BAblica%20do%20remetente.
Compartilhar