Cifra ADFGX
Use a cifra ADFGX da Primeira Guerra Mundial, que transforma cada letra em um par dos rótulos A, D, F, G e X e depois embaralha as colunas: com as chaves NAVAL e CARGO, ATTACKATONCE sai como DAFFAAXFXDXDDAFGAGAGDAXD. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Texto
- ATTACKATONCE
- Chave do quadrado
- NAVAL
- Key
- CARGO
- Modo de cálculo
- Encrypt
- Resultado
- DAFFAAXFXDXDDAFGAGAGDAXD
- Comprimento
- 24
- Letras mapeadas
- 12
- Comprimento fracionado
- 24
Esta ferramenta de cifra ADFGX cifra ou decifra texto usando o esquema clássico alemão da Primeira Guerra Mundial, que combina um quadrado de Políbio 5×5 com chave e uma transposição colunar em segunda etapa. Você informa uma mensagem, uma palavra-chave do quadrado que preenche a grade de Políbio, uma chave de transposição que ordena as colunas e um modo opcional. Na cifragem, cada letra latina vira um dígrafo dos rótulos A, D, F, G e X; esses símbolos são reordenados sob a palavra de transposição. Na decifragem, desfaz-se primeiro a ordem das colunas e depois os dígrafos voltam pelo mesmo quadrado, de modo que um par conhecido de chaves restaura as letras originais. I e J compartilham uma célula, não letras são ignoradas na cifragem e só símbolos ADFGX são lidos na decifragem, alinhado a convenções de livros e CTF.
O que é a cifra ADFGX e o que esta ferramenta devolve
ADFGX é uma cifra de campo clássica que fraciona cada letra por um quadrado de Políbio 5×5 cujas linhas e colunas usam as letras amigáveis ao Morse A, D, F, G e X em vez dos dígitos de um a cinco. O quadrado é com chave: letras únicas da palavra do quadrado vêm primeiro na ordem de aparição e o restante do alfabeto completa a grade, forçando I e J a uma única célula compartilhada para que vinte e cinco posições cubram A–Z.
A cifragem troca cada letra latina pelo dígrafo de duas etiquetas da linha e da coluna, gerando um fluxo só de símbolos ADFGX com o dobro do número de letras. Esse fluxo é escrito linha a linha numa grade de largura igual ao comprimento da chave de transposição e lido coluna a coluna na ordem obtida ao ordenar os caracteres da chave, com empates resolvidos pelo índice da esquerda quando as letras se repetem.
A decifragem inverte o layout com as mesmas alturas de coluna derivadas do comprimento total e da largura da chave, emparelha o fluxo de dígrafos recuperado e consulta cada par no quadrado. Esta página aplica sempre esse contrato fixo e nunca muda em silêncio para ADFGVX, Bifid, Políbio puro ou cifra só de transposição.
Onde ela é útil em aulas e enigmas
Desenvolvedores e educadores encontram a cifra ADFGX em aquecimentos de capture-the-flag, capítulos de livros sobre criptografia de campo da Primeira Guerra Mundial e demos que mostram por que fracionamento mais transposição elevou o nível em relação à substituição simples, embora o esquema não seja seguro contra criptoanálise moderna. Equipes de frontend podem embaralhar frases de exemplo para capturas sem inventar um alfabeto próprio e recuperá-las com decrypt sob as mesmas chaves de quadrado e de transposição.
Serviços backend codificam strings curtas de desafio para APIs de puzzles ou sandboxes didáticos em que alunos precisam reconstruir o quadrado e a grade para o próximo passo. Engenheiros de qualidade geram pares determinísticos de cifrar e decifrar para testes de contrato, para que um middleware que afirme suporte a ADFGX não mude em silêncio para fracionamento Bifid, omita a etapa de transposição ou force rótulos numéricos em vez de A D F G X.
Organizadores de competições pré-computam chaves de resposta para frases modestas em inglês sem confiar em brinquedos web opacos que forçam saída só em maiúsculas ou inserem preenchimento que você não pediu. Ferramentas de produto e educação usam a transformação quando um aprendiz cola o cifrado e a interface deve mostrar o plano recuperado sob as palavras documentadas.
Combine com outros helpers clássicos de codificação ao montar um pequeno laboratório de ferramentas de texto gratuitas e determinísticas, e nunca trate ADFGX como substituto de criptografia autenticada moderna como AES-GCM para segredos reais.
Casos de uso
Prática de CTF e cifras clássicas
Cifre e decifre mensagens ADFGX com palavras de quadrado e de transposição para puzzles, salas de aula e aquecimentos de capture-the-flag.
Aulas de história da criptografia
Demonstre o fracionamento ADFGX da WWI com rótulos A/D/F/G/X, união I/J e transposição colunar sem preenchimento forçado.
Perguntas frequentes
Como decifro um texto cifrado ADFGX?
A cifragem é o padrão quando mode é omitido.
Em que a ADFGX difere do Políbio simples ou da transposição colunar?
ADFGX fraciona letras em dígrafos A/D/F/G/X com um quadrado com chave e depois aplica transposição colunar com uma segunda palavra. O Políbio simples para em pares de dígitos (ou rótulos); a colunar sozinha só reordena caracteres sem fracionamento.
A ADFGX é segura para segredos reais?
Não. É uma cifra clássica de ensino da Primeira Guerra Mundial. Use criptografia autenticada moderna como AES-GCM para confidencialidade real.
Por que I e J dividem a mesma casa no quadrado ADFGX?
Porque um quadrado 5×5 tem só vinte e cinco casas para vinte e seis letras. I e J ficam juntas em uma casa para que a grade cubra o alfabeto inteiro, então um J criptografado volta como I na decifração.
Por que o texto cifrado fica com o dobro do tamanho?
Porque cada letra vira um par de rótulos, um da linha e um da coluna do quadrado. ATTACKATONCE tem doze letras e gera vinte e quatro símbolos; a transposição só muda a ordem deles, não a quantidade.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/enc/adfgx \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"ATTACKATONCE","square_key":"NAVAL","key":"CARGO"}'const res = await fetch("https://api.kit.forhosting.com/enc/adfgx", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "ATTACKATONCE",
"square_key": "NAVAL",
"key": "CARGO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/adfgx",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "ATTACKATONCE",
"square_key": "NAVAL",
"key": "CARGO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/adfgx", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"ATTACKATONCE","square_key":"NAVAL","key":"CARGO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"ATTACKATONCE","square_key":"NAVAL","key":"CARGO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/adfgx", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "ATTACKATONCE",
"square_key": "NAVAL",
"key": "CARGO"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.adfgx",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Use grátis no navegador para aulas de história da criptografia, design de puzzles e demos reversíveis de laboratório, ou chame a API a US$ 0,002 por solicitação bem-sucedida quando pipelines precisarem de transformações ADFGX reproduzíveis sem reimplementar fracionamento e empacotamento de grade.
O que é a cifra ADFGX e o que esta ferramenta devolve
A resposta JSON inclui result para o cifrado ou o plano recuperado, mode em encrypt ou decrypt, square_key e key ecoando as palavras que você enviou, letters_mapped e fractionated_length para a etapa de dígrafos, key_length e column_order para a transposição, alphabet com o preenchimento de vinte e cinco letras do quadrado, labels fixo em ADFGX, cipher fixo em adfgx e uma string formula que reafirma o contrato em duas etapas para documentação e testes. Não há caminho de streaming nem fallback silencioso para Vigenère ou AES moderno: ou você envia texto e as duas chaves sob as regras documentadas, ou a solicitação falha com invalid_input. Se precisar só de um mapa de dígitos de Políbio, só de reordenação colunar ou de criptografia autenticada moderna, use esses endpoints dedicados; esta landing responde ao fluxo combinado ADFGX que capítulos de história da cripto e aquecimentos de CTF já descrevem.
Como text, square_key, key e mode são lidos e por que o resultado é reproduzível
A ordem das colunas é calculada uma vez a partir da chave de transposição, e a mesma fórmula de alturas é usada na cifragem e na decifragem, de modo que um ciclo completo sempre restaura as letras originais de qualquer mensagem com letras latinas sob essas duas palavras-chave. Os campos preferidos do payload são text para a mensagem, square_key para a palavra do Políbio, key para a palavra de transposição e mode opcional para cifrar ou decifrar. Text aceita aliases como input, value, s, message, plaintext e ciphertext para que formulários e clientes SDK reutilizem nomes de coluna sem renomear cada chamada. Square_key aceita square_keyword, polybius_key e square; deve conter ao menos uma letra latina após normalização de maiúsculas, senão o motor lança invalid_input com mensagem clara de square_key vazio. Key aceita transposition_key, keyword, k, password e passphrase; a string não vazia inteira define as colunas, inclusive dígitos e símbolos se você os incluir, porque a ordenação usa comparação de caracteres com letras latinas ordenadas sem distinguir maiúsculas e empates estáveis por índice esquerdo em repetições. Uma chave de transposição vazia é rejeitada com invalid_input. Mode por padrão é encrypt e também aceita aliases curtos como enc, encode, e para cifrar e dec, decode, d para decifrar; qualquer outra string falha na validação. Texto ausente, chaves ausentes, tipos que não sejam string, plano sem letras na cifragem, cifrado sem símbolos ADFGX e fluxos de dígrafos de comprimento ímpar após desfazer a transposição geram invalid_input para que um formulário em branco não pareça um no-op bem-sucedido. Combine a execução gratuita no navegador desta página com a API cobrada quando precisar da mesma transformação ADFGX dentro de um pipeline automatizado sem reimplementar o fracionamento de dígrafos. Entradas inválidas retornam invalid_input e não são cobradas, o que mantém a validação barata enquanto transformações bem-sucedidas têm preço fixo por item de US$ 0,002.
Onde a ADFGX se encaixa em aulas, puzzles e fixtures de teste
Nesta página o trabalho roda inteiramente no seu navegador; pela API cada consulta bem-sucedida custa US$ 0,002, validação falha não é cobrada e nada é armazenado após a resposta. Essa divisão — exploração interativa gratuita e uma API idêntica cobrada — combina com o restante do catálogo KIT de nível A e permite ir de uma demo de sala de aula a um pipeline automatizado sem mudar o cifrado.
Casos de integração
Fixtures determinísticos de CI
Gere pares reproduzíveis de cifrado e plano ADFGX para testes unitários, arquivos golden e checagens de contrato.
Perguntas técnicas
Quanto custa a ferramenta de cifra ADFGX?
É gratuita no seu navegador nesta página. Pela API uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.
O que acontece se square_key estiver vazio?
A solicitação falha com invalid_input. A palavra-chave do quadrado de Políbio deve conter ao menos uma letra latina A–Z para o motor preencher uma grade 5×5.