ROT13

O ROT13 ( girar em 13 lugares ) é um caso especial da cifra de César , um algoritmo de criptografia de texto simplista. Como o próprio nome sugere, é uma mudança de 13 caracteres de cada letra do texto a ser criptografada. Sua principal praticidade é que a codificação e a decodificação são feitas exatamente da mesma maneira.

Limites de uma cifra de César

A desvantagem dessa criptografia é que ela lida com letras, não lida com símbolos e pontuação. É por isso que devemos remover qualquer acentuação do texto a ser criptografado (esse defeito é menos incômodo para o inglês do que para o francês ou alemão). Também não lida com números, o que era irrelevante, já que os romanos escreviam seus números com letras ( I , V , X , L , M , etc.). Para usá-lo hoje, é suficiente primeiro converter os números usando a notação romana ou em letras ( UM para 1 , DOIS para 2 ...).

Na prática, ao processar texto, as implementações de ROT13 substituem apenas letras não acentuadas e deixam outros caracteres, como letras acentuadas, números e pontuação inalterados.

Como um caractere é invariavelmente substituído por outro, esse algoritmo também é chamado de substituição monoalfabética .

Algoritmo

Usando a definição deste algoritmo (deslocamento de 13 caracteres de cada letra), podemos então definir a correspondência entre os caracteres em claro e criptografado:

Caráter não criptografado NO B VS D E F G H eu J K eu M NÃO O P Q R S T você V C X Y Z
Personagem criptografado NÃO O P Q R S T você V C X Y Z NO B VS D E F G H eu J K eu M

A vantagem do ROT13 é o fato de que o deslocamento é 13. O alfabeto tem 26 letras e, se a criptografia for aplicada duas vezes seguidas, o resultado é texto não criptografado. Para isso devemos considerar o alfabeto circular, ou seja, após a letra Z temos a letra A, o que simplifica muito seu uso e programação, pois é o mesmo procedimento que se utiliza para criptografar e descriptografar.

ROT13 vai contra o princípio de Kerckhoffs porque se o adversário descobrir ou adivinhar que a mensagem foi criptografada em ROT13, ele será capaz de descriptografá-la sem problemas.

Utilitário

Embora não seja fácil ler um texto depois de criptografado com ROT13, essa criptografia é inadequada para manter os segredos protegidos. Em vez disso, é usado em páginas da web para não revelar soluções de jogos, fins de filmes ou para não revelar o enredo de uma série ...

Exemplo de uso (usando echo )

$ echo "Chiffre moi" | tr 'A-Za-z' 'N-ZA-Mn-za-m' Puvsser zbv

Variante

ROT47 é uma variante do ROT13 que permite que letras, números e outros caracteres especiais sejam criptografados. ROT47 é baseado no código ASCII , que atribui a cada símbolo um número. Ele usa os números no intervalo de 33 a 126, correspondendo ao ponto de exclamação (“!”) E o símbolo de til (“~”) respectivamente. Então, seguindo o mesmo princípio do ROT13, ele realiza uma rotação de 47 letras. O fato de utilizar um painel de símbolos maior que o ROT13 permite um embaralhamento mais eficiente, mesmo que o código permaneça trivial de decifrar.

Ferramentas

Além de alguns tradutores online, também existem extensões para ferramentas de mensagens ou navegadores de internet. Também podemos citar:

tr a-zA-Z n-za-mN-ZA-M

O editor de texto Vim também oferece suporte nativo a essa criptografia: consulte o comando g?.

Notas e referências

  1. Komlan Nelson Alate, The First Encryption Algorithm, Caesar's Cipher, em SupInfo.com
  2. Louis Frécon, Arithmétiques: Cours , Editions Publibook, 2016 p. 405
  3. Marie-José Durand-Richard, Philippe Guillot, Cryptology and mathematics: A mutation of the stakes , Editions L'Harmattan, 2014 p. 25

links externos