O que é a transposição por colunas?
A Cifra de Transposição Columnar é um tipo de cifra por transposição, ou seja, não altera as letras, mas reorganiza a sua ordem. O texto é escrito em uma tabela linha por linha e, em seguida, lido por colunas de acordo com a ordem alfabética das letras de uma palavra-chave. Assim, o conteúdo permanece o mesmo, mas as posições das letras são embaralhadas.
A palavra-chave define a ordem de leitura das colunas com base na ordem alfabética de suas letras. Se a palavra-chave contiver letras repetidas, utiliza-se uma ordem estável — em caso de empate, prevalece a letra que aparece primeiro na palavra original. Isso garante um processo reprodutível e consistente.
Como funciona
- Escreva a palavra-chave acima das colunas da tabela e determine a ordem das colunas organizando as letras em ordem alfabética. Se houver letras repetidas, a que aparece primeiro na palavra-chave mantém a prioridade (ordem estável).
- Preencha a tabela linha por linha com o texto normalizado (pode-se remover acentos e decidir se os espaços e sinais de pontuação serão mantidos). Se o texto não completar a última linha, adicione um caractere de preenchimento e registre-o para que possa ser removido durante a decifragem.
- Por fim, leia o conteúdo por colunas seguindo a ordem definida pela palavra-chave. Ao concatenar as colunas, obtém-se o texto cifrado.
Observação: por ser uma cifra de transposição, as frequências das letras permanecem as mesmas — apenas suas posições são alteradas.
Exemplo
Vamos cifrar o texto ATAQUEAMANHECER usando a palavra-chave CLAVE.
Primeiro, determinamos a ordem alfabética das letras da palavra-chave:
A(2), C(0), E(4), L(1), V(3) ⇒ índices [2,0,4,1,3].
Em seguida, escrevemos o texto linha por linha e o lemos coluna por coluna nessa ordem:
o resultado cifrado é AMEAEEUNTACQAR.
Esquema (sem preenchimento)
Palavra-chave: CLAVE → ordem: A(2), C(0), E(4), L(1), V(3) ⇒ índices: [2,0,4,1,3] Texto: ATAQUEAMANHECER → 5 colunas (3 linhas; 1 célula vazia) Tabela: C L A V E A T A Q U E A M A N E C E R - Leitura por colunas na ordem: A(2) → C(0) → E(4) → L(1) → V(3) Blocos: AME | AEE | UN | TAC | QAR Cifrado: AMEAEEUNTACQAR
Se usar preenchimento, complete a última célula com um caractere combinado (ex.: X)
e registre-o para que o destinatário saiba removê-lo ao decifrar.
História
- Exemplo clássico de cifra por transposição, amplamente usada em aulas de criptografia, desafios de lógica e criptogramas educacionais.
- Serviu de base para variantes mais fortes, como a dupla transposição, historicamente usada com duas chaves diferentes em etapas sucessivas.
Ataques clássicos
- Teste de comprimento da chave: experimentar diferentes larguras de tabela e verificar se o texto resultante apresenta padrões de idioma (bigramas ou trigramas comuns).
- Reconstrução de colunas: reordenar colunas candidatas usando heurísticas (palavras prováveis, prefixos ou sufixos comuns) até se obter um texto legível.
- Exploração do preenchimento ou normalização: se o invasor conhecer o caractere de preenchimento ou as regras de normalização, o espaço de busca é reduzido e a quebra da cifra torna-se mais rápida.
Diferente das cifras de substituição, as cifras de transposição mantêm as mesmas frequências de letras, o que ajuda a identificá-las por meio da análise de frequência.
Prós e contras
Vantagens
- Muito didática para compreender transposição, ordem de colunas e leitura por blocos.
- Fácil de combinar com outras técnicas (como dupla transposição) para aumentar a complexidade.
- Simples de implementar e reproduzir com uma ordem de chave estável e bem definida.
Limitações
- Com texto suficiente, é vulnerável à reconstrução da tabela e da chave.
- As decisões de preenchimento e normalização devem ser documentadas; se reveladas, facilitam ataques.
- Sozinha, não oferece integridade nem autenticidade — apenas reorganiza o texto.