Cifra de substituição por palavra-chave
Com a palavra-chave CRYPTO, Hello World vira Btggj Vjmgp: a chave abre o alfabeto cifrado, as letras restantes vêm em ordem e cada letra é trocada pela sua par. Decifre com a mesma chave para recuperar a mensagem. 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
- Hello World
- Palavra-chave
- CRYPTO
- Ação
- Encrypt
- Resultado
- Btggj Vjmgp
- Alfabeto
- CRYPTOABDEFGHIJKLMNQSUVWXZ
- Letras mapeadas
- 10
Precisa de uma clássica cifra por palavra-chave para demonstrações em sala de aula, criação de enigmas, aquecimentos de CTF ou ofuscação reversível de notas curtas? Digite sua mensagem e uma palavra-chave de letras A–Z únicas. A ferramenta constrói um alfabeto misturado colocando a palavra-chave primeiro e preenchendo as letras restantes em ordem, depois substitui cada letra preservando a caixa e deixando intactos a pontuação, os espaços e os dígitos. Escolha cifrar ou decifrar com a mesma palavra-chave para que as idas e voltas permaneçam exatas.
Como um alfabeto de substituição por palavra-chave é construído
Uma cifra de substituição monoalfabética substitui cada letra do alfabeto por exatamente uma outra letra e mantém esse mapeamento fixo para toda a mensagem. Quando o mapeamento é semeado por uma palavra-chave, as letras da palavra-chave aparecem primeiro no alfabeto cifrado (cada letra apenas uma vez), e as letras restantes de A a Z seguem em sua ordem natural. Por exemplo, a palavra-chave CRYPTO gera o alfabeto de vinte e seis caracteres CRYPTOABDEFGHIJKLMNQSUVWXZ.
O A do texto claro mapeia para C, B mapeia para R, C mapeia para Y, e assim por diante até Z. A decifragem inverte a mesma tabela: cada letra do texto cifrado é procurada no alfabeto misturado e substituída pela letra clara no mesmo índice. Caracteres que não são letras nunca entram no mapa; eles são copiados diretamente, de modo que datas, códigos e pontuação permaneçam legíveis.
Como a palavra-chave deve usar cada letra no máximo uma vez, a construção é inequívoca: não há remoção silenciosa de duplicatas que pudesse surpreender um aluno comparando tabelas feitas à mão com a saída da máquina. As formas maiúscula e minúscula da mesma letra compartilham uma única entrada no mapa; o motor preserva a caixa de cada caractere de origem, de modo que HELLO e hello sejam cifrados de forma consistente em relação ao mesmo alfabeto.
Esta construção clássica é mais fraca do que a criptografia moderna e destina-se ao ensino, a enigmas e à ofuscação leve, não à proteção de segredos em repouso ou em trânsito.
Cifrar, decifrar e validar a palavra-chave
A palavra-chave passa por trim e deve conter apenas letras de A a Z, sem espaços, dígitos ou símbolos. Se qualquer letra aparecer mais de uma vez, a chamada falha nomeando a letra repetida, para que você possa corrigir a chave em vez de receber um alfabeto silenciosamente alterado. Em caso de sucesso, a resposta repete o texto original, a palavra-chave normalizada em maiúsculas, a ação utilizada, o alfabeto misturado completo de vinte e seis letras, a string de resultado transformada e uma contagem de quantos caracteres alfabéticos foram mapeados.
Encrypt percorre as letras do texto claro através do alfabeto simples até o alfabeto misturado; decrypt percorre a direção oposta. Fazer a ida e volta com encrypt e depois decrypt usando a mesma palavra-chave restaura exatamente a caixa original das letras e os caracteres que não são letras. O status é beta enquanto a superfície pública se estabiliza, mas as regras de substituição seguem esta construção clássica fixa e não mudarão para entradas idênticas.
Dicas práticas para a cifra por palavra-chave
Chame a capacidade com text e keyword como campos obrigatórios. Use action decrypt quando o texto já for cifrado produzido por este mesmo alfabeto de palavra-chave. Prefira palavras-chave curtas e memoráveis de letras únicas ao ensinar o método, e chaves mais longas de letras únicas quando quiser um embaralhamento mais denso para enigmas recreativos.
Nunca trate esta cifra como substituta do AES ou da criptografia autenticada: a análise de frequência quebra mapas monoalfabéticos em textos mais longos em inglês. Combine a ferramenta com suas notas de aula ou com o enunciado do enigma, para que os alunos possam verificar o trabalho manual contra uma referência estável.
Casos de uso
Demonstrações de criptografia em sala de aula
Mostre aos alunos como uma palavra-chave constrói um alfabeto misturado e como encrypt e decrypt invertem o mesmo mapa monoalfabético.
Enigmas e aquecimentos de CTF
Gere texto cifrado reversível para caças ao tesouro, escape rooms e desafios introdutórios de criptografia com uma palavra-chave conhecida.
Ofuscação reversível leve
Embaralhe rótulos ou notas curtas com uma palavra-chave compartilhada quando precisar de um mapeamento rápido de ida e volta em vez de criptografia real.
Perguntas frequentes
Quais entradas a cifra de substituição por palavra-chave precisa?
text e keyword são obrigatórios. O action opcional é encrypt (padrão) ou decrypt. A palavra-chave deve conter apenas letras A–Z únicas.
O que acontece se a palavra-chave tiver uma letra repetida?
Palavras-chave ausentes ou vazias falham da mesma forma. Entradas inválidas não são cobradas.
A cifra é determinística e segura?
Ela é totalmente determinística para o mesmo texto, palavra-chave e ação. É uma cifra monoalfabética clássica para ensino e enigmas, não segurança criptográfica moderna.
Como o alfabeto cifrado é montado a partir da palavra-chave?
As letras da chave vêm primeiro, cada uma uma única vez, e depois as letras não usadas de A a Z na ordem normal. CRYPTO gera CRYPTOABDEFGHIJKLMNQSUVWXZ, então o A vira C, o B vira R e o C vira Y.
Espaços, números e pontuação são alterados?
Não. Só as letras passam pela substituição; espaços, dígitos e sinais são copiados como estão, e datas e códigos continuam legíveis. Cada letra também mantém a maiúscula ou minúscula, por isso Hello vira Btggj.
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/keyword-cipher \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World","keyword":"CRYPTO"}'const res = await fetch("https://api.kit.forhosting.com/enc/keyword-cipher", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World",
"keyword": "CRYPTO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/keyword-cipher",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World",
"keyword": "CRYPTO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/keyword-cipher", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World","keyword":"CRYPTO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World","keyword":"CRYPTO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/keyword-cipher", 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": "Hello World",
"keyword": "CRYPTO"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.keyword_cipher",
"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
Palavras-chave ausentes e chaves com letras repetidas falham imediatamente com invalid_input, para que material inválido nunca pareça uma cifra bem-sucedida. Rode gratuitamente no navegador ou chame a mesma lógica determinística pela API a US$ 0,002 por requisição bem-sucedida.
Cifrar, decifrar e validar a palavra-chave
Envie uma string text obrigatória e uma keyword obrigatória e, opcionalmente, defina action como encrypt ou decrypt (encrypt é o padrão). Se a palavra-chave estiver ausente ou vazia após o trim, a chamada falha com invalid_input nomeando a palavra-chave ausente. Não há chamada de rede, semente aleatória nem dependência de relógio, de modo que testes de referência e widgets de navegador sempre coincidem com a API para a mesma entrada.
Usando a API, preços e dicas práticas
O preço da API hospedada é um valor fixo de US$ 0,002 por requisição bem-sucedida; falhas de validação, como uma palavra-chave ausente ou uma letra repetida, não consomem saldo. Para pipelines, envie cada mensagem como sua própria tarefa e colete os resultados pelo seu fluxo habitual de webhook ou de link assinado. Mantenha os nomes dos campos explícitos em vez de empacotar prosa livre: o contrato permanece alinhado com o OpenAPI, os tipos do SDK e os controles de formulário, e evita a análise ambígua entre chave e mensagem.
Perguntas técnicas
O que uma resposta bem-sucedida inclui?
O texto original, a palavra-chave normalizada, a ação, o alfabeto misturado completo, a string de resultado e letters_mapped (contagem de caracteres A–Z substituídos).
Quanto custa a API da cifra por palavra-chave?
Cada chamada de API bem-sucedida custa US$ 0,002. O mesmo motor roda gratuitamente no seu navegador, sem necessidade de conta.