Baixe o app para aproveitar ainda mais
Prévia do material em texto
Técnicas de criptografia Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 SST Passos, Ubiratan Roberte Cardoso Técnicas de criptografia / Ubiratan Roberte Cardoso Passos Ano: 2020 nº de p.: 11 Copyright © 2020. Delinea Tecnologia Educacional. Todos os direitos reservados. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 Técnicas de criptografia 3 Apresentação Neste momento, trataremos de duas técnicas clássicas de encriptação. Após a contextualização inicial, trabalharemos com os conceitos referentes às técnicas de substituição, considerando a cifra de césar, as cifras monoalfabéticas, a cifra Playfair, a cifra de Hill e as cifras polialfabéticas. Dentro das cifras polialfabéticas, iremos ver as principais cifras que utilizam desta técnica. Na sequência, veremos as técnicas de transposição, buscando compreender como realizar a encriptação conhecendo a cifra de trilho. Contextualização Conhecer algumas das técnicas clássicas de encriptação é algo muito importante na área da criptografia. Estudar as técnicas que deram origem aos algoritmos modernos de criptografia permite ilustrar alguns dos princípios básicos do sistema de criptografia simétrica, que é, atualmente e vastamente, utilizado em diversos segmentos da economia e do governo. Palavra “password” nos meio de bits Fonte: Plataforma Deduca (2019). Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 4 Seja qual for o método de encriptação escolhido, ao menos um dos dois mais conhecidos blocos básicos de montagem será utilizado: ou a cifragem da mensagem ocorrerá por meio de técnicas de substituição, ou ocorrerá através de técnicas de transposição. Técnicas de substituição As técnicas de substituição são aquelas nas quais as letras da mensagem original são substituídas por outras letras, números ou até mesmo símbolos. Se a mensagem for vista como uma sequência de bits, então a substituição será realizada por meio da troca dos padrões de bits da mensagem por bits de texto cifrado. Veremos as seguintes técnicas: • cifra de césar • cifras mono alfabéticas, • cifra playfair, • cifra de hill • cifras polialfabéticas Cifra de César Trata-se do modelo de cifra de substituição mais antigo do qual se tem conhecimento, tendo sido criado por Júlio César. A cifra de César consiste basicamente em substituir cada uma das letras do alfabeto por aquela localizada três posições na sua frente. (STALLINGS, 2015) Texto claro: a b c d e f g h i j k l m n o p q r s t u v w x y z Texto cifrado: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Reflita Então, caso a mensagem seja, por exemplo, “observe aqueles montes”, seu correspondente cifrado será “revhuyh dtxhohv prqwhv”. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 5 Existem três características importantíssimas relacionadas à cifra de César que permitem realizar o processo de criptoanálise por força bruta: • Os algoritmos utilizados para cifrar e decifrar a mensagem são conhecidos. • Existem somente 25 chaves para serem testadas • A linguagem utilizada na mensagem original é conhecida e facilmente reco- nhecível Cifras monoalfabéticas Uma realidade é indiscutível: com somente 25 possibilidades de chaves para serem utilizadas, a cifra de César não pode ser considerada segura. Entretanto, é possível aumentar significativamente o número de chaves empregando somente uma substituição arbitrária. (COUTINHO, 2015) Vimos anteriormente que a cifra de César substitui cada letra do texto claro por uma letra localizada três posições à frente no alfabeto. Mesmo em suas adaptações, que permitem variações no avanço das posições no alfabeto, o número de chaves possíveis continua o mesmo. Mas se a substituição pudesse ocorrer tomando como base a permutação dos 26 caracteres do alfabeto? Fazendo-se isso, teremos, então, 26! (ou seja: 26 x 25 x 24 x, ..., x 2 chaves) possíveis chaves. Tal procedimento seria suficiente para impedir qualquer tipo de ataque com base na força bruta. (COUTINHO, 2015) Contudo, existem outras linhas de ataque às quais a técnica de substituição por cifras monoalfabéticas está sujeita. Caso o criptoanalista consiga descobrir a natureza do texto claro, ele poderá explorar as regularidades da linguagem. Uma permutação é um conjunto finito de elementos S em uma sequência ordenada de todos os elementos de S, com cada um aparecendo exatamente uma vez. Por exemplo, se S = {a, b, c}, existem seis permutações de S (STALLINGS, 2005). Reflita Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 6 Cifra playfair É uma cifra de encriptação de múltiplas letras que trata os diagramas no texto claro como se fossem unidades isoladas, traduzindo-as para diagramas de texto cifrado (STALLINGS, 2015). O algoritmo da Playfair é uma técnica que se baseia em uma matriz com dimensões 5 x 5 de letras construídas a partir de uma palavra-chave. Um exemplo da matriz pode ser observado a seguir: Matriz playfair Fonte: Elaborada pelo autor (2019). No caso do exemplo, a palavra-chave é SPECTRO, e a matriz é construída por meio do preenchimento das letras da palavra-chave (com exceção das duplicatas), da esquerda para a direita e de cima para baixo. O restante da matriz é preenchido com as demais letras do alfabeto. As letras I e J contam como se fossem somente uma. Nesse algoritmo, o texto claro é cifrado com duas letras de cada vez, de acordo com as seguintes regras (STALLINGS, 2015): Regra 1 Letras de texto claro repetidas que estão no mesmo par são separadas por uma de preenchimento, como x, de modo que a palavra “empreender” seria tratada como “em pr ex en de r”. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 7 Regra 2 Duas letras de texto claro que estejam na mesma linha da matriz são substituídas pela letra à direita, com o primeiro elemento da linha vindo após o último, de forma rotativa. Por exemplo, “ro” é encriptado como “os”. Regra 3 Duas letras de texto claro que estejam na mesma coluna são substituídas pela letra abaixo, com o elemento de cima da coluna vindo após o último, de forma rotativa. Por exemplo, “su” é encriptado como “rs”. Regra 4 Caso contrário, cada letra de texto claro em um par é substituída por aquela que esteja em sua própria linha, na coluna ocupada pela outra letra de texto claro. Assim, “or” torna-se “dm”, e “fc” torna-se “is” (ou “js”, a critério do cifrador). A cifra Playfair é um grande avanço em relação às cifras monoalfabéticas simples (STALLINGS, 2015). Contudo, apesar de possuir bom nível de segurança, é relativamente fácil de ser quebrada, devido ao fato de boa parte da estrutura do texto claro permanecer intacta. Cifra de Hill O algoritmo de Hill realiza a encriptação da mensagem utilizando m letras de texto claro sucessivas, substituindo-as, posteriormente, por m letras de texto cifrado. Nesse algoritmo, a substituição é determinada por um conjunto de m equações lineares, nas quais cada caractere recebe um valor numérico que varia de acordo com sua posição no alfabeto (a = 0, ..., z = 25). Como na cifra Playfair, a cifra de Hill tem como ponto forte o fato de ocultar totalmente as frequências de letras únicas. Certamente com a cifra de Hill, ao se utilizar uma matriz maior, é possível esconder mais informações de frequência. Logo, uma cifra de Hill de 3 x 3 esconde não somente informações de frequência de única letra, como também de duas letras (STALLINGS, 2015). Embora seja bem resistente contra ataques voltados ao texto cifrado, a cifra pode ser facilmente quebrada caso o ataque seja direcionado ao texto claro conhecido. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 8 Cifras polialfabéticas Outra forma de melhorar as técnicas monoalfabéticas simples é utilizar substituições monoalfabéticasao mesmo tempo em que se prossegue pela mensagem de texto claro. Essas técnicas são conhecidas como cifras de substituição polialfabética, apresentando as seguintes características: • Um conjunto de regras de substituição monoalfabéticas é utilizado. • Uma chave define qual regra em particular é escolhida para determinada transformação. Vejamos algumas das principais cifras que aplicam a técnica de cifra polialfabética: Cifra de Vigenère É a mais conhecida e também uma das mais simples cifras polialfabéticas. Nesse esquema, o conjunto de regras de substituição monoalfabéticas também consiste nas 26 cifras de César, entretanto, os deslocamentos podem ser de 0 até 25. Cada uma das cifras é indicada por uma letra da chave, e essa letra é a mesma do texto cifrado (ALENCAR, 2015). Reflita A força da cifra de Vigenère está no fato de que existem múltiplas letras de texto cifrado para cada letra do texto original – uma para cada letra exclusiva da palavra- chave. Dessa forma, as informações referentes à frequência das letras são ocultas, contudo, nem todo conhecimento relacionado à estrutura do texto claro é perdido. Porém, até mesmo esse esquema criptográfico é vulnerável à criptoanálise. Como a chave e o texto original compartilham a mesma distribuição de frequência das letras, uma técnica estatística pode ser aplicada para que a criptografia seja quebrada. Cifra de Vernam Especialistas em criptografia afirmam que a principal defesa contra as técnicas de criptoanálise é escolher uma palavra-chave que seja tão grande quanto o texto da Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 9 mensagem original e que não possua nenhum relacionamento estatístico com a mensagem. Introduzido por Gilbert Vernam, engenheiro da AT&T, em 1918, o sistema funciona com base em dados binários, e não em letras. Dessa forma, o texto cifrado é gerado mediante a operação lógica de ou-exclusivo, o XOR, bit a bit, entre o texto claro e a chave. A essência dessa técnica está na forma como a chave é construída. Curiosidade A proposta de Vernam é uma palavra-chave muito longa, entretanto, a palavra era eventualmente repetida. Embora o esquema com uma chave longa apresente dificuldades relevantes no processo de criptoanálise, o algoritmo ainda pode ser quebrado por meio de um número suficiente de texto cifrado, com o uso de sequências de texto claro, conhecidos ou prováveis, ou até ambos. Técnicas de transposição Até o momento, está claro que todas as técnicas apresentadas realizam a criptografia por meio da substituição de um símbolo de texto claro por um de texto cifrado. Uma forma bem diferente de realizar o processo é através do mapeamento obtido mediante algum tipo de permutação nas letras do texto claro. Essa é uma técnica referenciada como cifra de transposição. A cifra mais simples desse tipo é a técnica conhecida como cerca de trilho. Nela, o texto claro é escrito como uma sequência de diagonais e, posteriormente, a leitura é feita como uma sequência de linhas. Outro esquema mais complexo é escrever a mensagem em um retângulo, linha a linha, lendo coluna por coluna, mas a permuta ocorre na ordem destas. Assim, a ordem das colunas torna-se a chave para o algoritmo. (COUTINHO, 2015) Reflita Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 10 Cifras de transposição são facilmente reconhecidas por terem as mesmas frequências de letra do texto da mensagem original. Para a transposição de colunas demonstrada, a criptoanálise é muito simples e envolve dispor o texto cifrado em uma matriz, além de mexer com as posições de coluna. As tabelas de frequência de um diagrama de trigrama podem ser úteis. Assim, a cifra de transposição pode acabar não se tornando muito mais segura, realizando- se mais de um estágio de transposição. O resultado é, então, uma permutação mais complexa e que não pode ser facilmente reconstruída. A cifra de transposição pode se tornar muito mais segura se mais de um estágio de transposição for realizado. O resultado é uma permutação complexa e que não pode ser facilmente reconstruída. Fechamento Iniciamos com uma contextualização sobre a importância de se conhecer as principais técnicas de criptografia clássicas existentes. Na sequência, passamos a analisar as técnicas de substituição que tem como base a substituição de letras da mensagem original. Analisamos diferentes técnicas: a cifra de césar, as cifras monoalfabéticas, a cifra Playfair, a cifra de Hill e as cifras polialfabéticas. Dentro das cifras polialfabéticas ainda estudamos as duas principais cifras que utilizam desta técnica. Por fim, estudamos os conceitos referentes as técnicas de transposição, buscando compreender como realizar a encriptação conhecendo a cifra de trilho. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 11 Referências ALENCAR, M. S. Informação, codificação e segurança de redes. 1. ed. Rio de Janeiro: Elsevier, 2015. COUTINHO, S. C. Criptografia. Rio de Janeiro: IMPA, 2015. Disponível em: http:// www.obmep.org.br/docs/apostila7.pdf. Acesso em: 29 jan. 2019. STALLINGS, W. Criptografia e segurança de redes: princípios e práticas. São Paulo: Pearson Prentice Hall, 2015. Licensed to Wellington Vichinhevski Kruk - well@wknetworks.com.br - 096.466.679-02 http://www.obmep.org.br/docs/apostila7.pdf http://www.obmep.org.br/docs/apostila7.pdf
Compartilhar