Prévia do material em texto
Técnicas de
criptografia
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.
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).
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”.
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
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”.
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.
8
Cifras polialfabéticas
Outra forma de melhorar as técnicas monoalfabéticas simples é utilizar
substituições monoalfabéticas ao 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éticastambé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
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
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.
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.
http://www.obmep.org.br/docs/apostila7.pdf
http://www.obmep.org.br/docs/apostila7.pdf