O que é ROT13
ROT13 significa “rotacionar 13 posições” (rotate by 13). Cada letra é trocada pela letra 13 posições adiante no alfabeto. A vira N, B vira O, e N dá a volta até o A. As maiúsculas continuam maiúsculas, e tudo o que não é letra fica onde está.
Como o alfabeto tem 26 letras, rotacionar 13 posições duas vezes leva de volta ao começo. Isso faz do ROT13 o seu próprio inverso: a mesma operação codifica e decodifica. Você nunca precisa perguntar “em que sentido?”.
O ROT13 ficou popular nos grupos da Usenet nos anos 1980, como um jeito educado de esconder spoilers, finais de piadas e respostas de charadas. Quem quisesse ver podia decodificar em um passo. Ele ainda é usado em fóruns, em dicas de geocaching e em exercícios de programação.
Como usar a ferramenta
- Digite ou cole um texto em Texto, à esquerda. A versão em ROT13 aparece em Texto em ROT13, à direita.
- Para ler uma mensagem embaralhada, cole em Texto em ROT13. A versão comum aparece na esquerda.
- Escolha outra rotação em Variante, se precisar:
- ROT13: só letras
- ROT18: letras e dígitos
- ROT47: todo o ASCII visível
- Clique em Copiar acima de qualquer caixa para copiá-la, ou em Limpar para esvaziar as duas.
Exemplos
Estes resultados saem de cada variante nesta página.
| Texto | ROT13 | ROT18 | ROT47 |
|---|---|---|---|
| Hello, World! | Uryyb, Jbeyq! | Uryyb, Jbeyq! | w6==@[ (@C=5P |
| Room 42 | Ebbz 42 | Ebbz 97 | #@@> ca |
| Code 2026 | Pbqr 2026 | Pbqr 7571 | r@56 a_ae |
| Gate 7 opens | Tngr 7 bcraf | Tngr 2 bcraf | v2E6 f @A6?D |
| To get to the other side! | Gb trg gb gur bgure fvqr! | Gb trg gb gur bgure fvqr! | %@ 86E E@ E96 @E96C D:56P |
O alfabeto completo do ROT13 fica assim, com as letras comuns em cima e as correspondentes em ROT13 embaixo:
abcdefghijklmnopqrstuvwxyz
nopqrstuvwxyzabcdefghijklm
A primeira metade vai para a segunda e a segunda volta para a primeira: a para n, n para a, z para m.
As três variantes
ROT13 gira só de A a Z e de a a z, 13 posições. Dígitos, espaços, pontuação e letras acentuadas não são tocados. É a versão clássica e a que todo mundo quer dizer por padrão.
ROT18 é o ROT13 para as letras mais o ROT5 para os dígitos. Cada dígito anda 5 posições, então 0 vira 5, 1 vira 6 e 9 vira 4. Ele também se desfaz sozinho.
ROT47 trabalha com os 94 caracteres ASCII visíveis, de ! a ~, o que cobre letras, dígitos e símbolos comuns. Cada um anda 47 posições. Como 47 é metade de 94, o ROT47 também se desfaz sozinho. O resultado parece bem menos com texto, que é justamente a ideia, mas pode conter caracteres como crases e barras verticais que alguns aplicativos de conversa tratam como formatação.
Os espaços e os caracteres fora dessas faixas, como emojis e letras acentuadas, ficam como estão em todas as variantes. Em português, isso quer dizer que “Olá, ação” vira “Byá, nçãb” no ROT13: o á, o ç e o ã ficam no lugar. Para esconder melhor um texto em português, escreva sem acento antes.
Limites
O ROT13 é um caso especial da cifra de César com deslocamento 13. Ele não oferece nenhuma segurança. Não há chave, e muita gente consegue ler palavras curtas em ROT13 só de olhar. Use para esconder um spoiler de uma olhada rápida, nunca para proteger uma senha ou uma mensagem particular.
Ele também não faz nada com alfabetos que não sejam o latino básico. Textos em grego, cirílico ou árabe passam sem mudança.
Outras formas de aplicar ROT13
No Linux, no macOS ou no Git Bash, o comando tr faz ROT13 em uma linha:
echo 'Hello, World!' | tr 'A-Za-z' 'N-ZA-Mn-za-m'
Ele mostra Uryyb, Jbeyq!. Passe o resultado pelo mesmo comando para ter o original de volta.
O Python tem ROT13 na biblioteca padrão:
import codecs
codecs.encode('Hello, World!', 'rot13')
Isso também devolve Uryyb, Jbeyq!.
No Vim, selecione o texto e pressione g? para aplicar ROT13. Alguns programas de e-mail e editores de texto também têm um comando de ROT13 nos menus.
Em uma planilha, seria preciso processar cada caractere com CÓDIGO, MOD e CARACT, o que dá trabalho para montar. Colar o texto aqui é mais fácil.
Ferramentas relacionadas
Para qualquer outro deslocamento, use a cifra de César, que também quebra deslocamentos desconhecidos. Para transformar letras em números, use a cifra A1Z26. Para codificar um texto de forma que ele sobreviva a e-mails e URLs, em vez de escondê-lo, use o Base64.