Cifra Unicode ROT8000
Hello vira 聈聥聬聬聯: cada caractere do Plano Multilíngue Básico, com espaços, dígitos e qualquer alfabeto, salta metade do plano, e o mesmo passo traz o texto original de volta. 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
- Resultado
- 聈聥聬聬聯
- Codificação
- rot8000
- Comprimento da entrada
- 5
- Comprimento da saída
- 5
Esta cifra Unicode ROT8000 aplica uma rotação reversível em todo o Plano Multilíngue Básico, deslocando cada unidade de código UTF-16 em trinta e dois mil setecentos e sessenta e oito posições e fechando com aritmética modular. Como esse deslocamento é exatamente a metade do plano de sessenta e cinco mil quinhentas e trinta e seis unidades, a mesma operação tanto embaralha quanto restaura o texto: envie o texto simples uma vez para ocultá-lo e envie o cifrado de novo para recuperar o original. Diferente do ROT13 só de letras ou do ROT47 de ASCII imprimível, o ROT8000 move juntos espaços, pontuação, dígitos, letras latinas, ideogramas CJK e todas as demais unidades do BMP, de modo que anotações em scripts mistos se ofuscam com a mesma densidade do inglês puro. Verificações comuns incluem Hello virando a cadeia de aparência CJK que volta ao original numa segunda chamada.
O que é ROT8000 e o que esta ferramenta devolve
ROT8000 é uma cifra de substituição sobre o Plano Multilíngue Básico: as sessenta e cinco mil quinhentas e trinta e seis unidades de código UTF-16 de U+0000 até U+FFFF. Cada unidade é mapeada para a unidade trinta e dois mil setecentos e sessenta e oito passos à frente, com aritmética modular, de modo que o novo código são os dezesseis bits baixos do código original mais 0x8000.
Letras, dígitos, pontuação, espaços em branco e scripts não latinos se movem juntos, o que torna o ROT8000 bem mais denso que o ROT13 só de letras e melhor para embaralhar tokens Unicode mistos como senhas internacionais, trechos de configuração e strings de desafio multi-script. Esta página usa sempre essa regra modular exata, sem parâmetro de deslocamento opcional nem tabelas de alfabeto que possam divergir entre idiomas.
Enigmas e demonstrações multilíngues com ROT8000
Desenvolvedores e educadores encontram o ROT8000 em aquecimentos de capture-the-flag, capítulos de livros sobre cifras Unicode clássicas e ofuscação leve no cliente que deve reverter com uma única função em vez de um escalonamento de chaves. Equipes de frontend podem embaralhar credenciais multilingues de exemplo ou strings em forma de token para capturas de tela sem inventar um alfabeto personalizado que só cubra letras latinas.
Serviços de backend codificam fragmentos curtos de configuração para APIs de puzzle ou sandboxes de ensino onde os alunos devem aplicar o mesmo deslocamento de meio plano para desbloquear o próximo passo. Engenheiros de qualidade geram pares de codificação determinísticos para testes de contrato, de modo que um middleware que alega suporte a ROT8000 não possa mudar em silêncio para ROT13, ROT47 ou outro deslocamento. Organizadores de contestações pré-calculam chaves de resposta para frases Unicode modestas sem confiar em brinquedos web opacos que alteram regras de surrogates.
Ferramentas de produto e educação usam a transformação quando um aprendiz cola o cifrado e a interface deve mostrar o texto simples recuperado sob a propriedade de involução. Combine com outros auxiliares de codificação ao montar um pequeno laboratório de ferramentas de texto Unicode gratuitas e determinísticas.
Casos de uso
Aquecimentos de CTF e cifra Unicode
Ofusque e restaure texto do BMP com uma única rotação reversível de meio plano para puzzles, salas de aula e prática de capture-the-flag.
Ofuscação reversível multi-script
Oculte tokens multilingues de exemplo ou trechos de configuração em docs e capturas e recupere-os com a mesma chamada ROT8000.
Perguntas frequentes
Como decodificar ROT8000?
Aplique de novo a mesma transformação. ROT8000 é uma involução: codificar e decodificar são operações idênticas no Plano Multilíngue Básico.
Quais caracteres são deslocados?
Cada unidade de código UTF-16 da string é rotacionada em 0x8000 dentro do BMP (U+0000–U+FFFF). Não há subconjunto só imprimível: espaços e CJK também se movem.
O resultado é determinístico?
Sim. O mesmo texto produz sempre o mesmo resultado, sem rede, aleatoriedade ou comportamento dependente de data.
Por que Hello vira caracteres que parecem chineses?
Cada caractere avança meia volta no Plano Multilíngue Básico, e as letras latinas caem na faixa dos ideogramas chineses, japoneses e coreanos. O resultado só parece chinês: não tem significado e, ao repetir o passo, volta a ser Hello.
Qual a diferença entre ROT8000, ROT13 e ROT47?
O ROT13 só gira letras e o ROT47 gira os caracteres ASCII imprimíveis. O ROT8000 move todos os caracteres do Plano Multilíngue Básico, inclusive espaços, acentos e outros alfabetos, então textos em várias línguas ficam igualmente embaralhados.
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/rot8000 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello"}'const res = await fetch("https://api.kit.forhosting.com/enc/rot8000", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/rot8000",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/rot8000", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/rot8000", 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"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.rot8000",
"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 aquecimentos de CTF, demos de ofuscação Unicode reversível e folhas de exercícios, ou chame a API a US$ 0,002 por solicitação bem-sucedida quando pipelines precisarem de transformações ROT8000 reproduzíveis em CI e serviços de backend.
O que é ROT8000 e o que esta ferramenta devolve
A resposta JSON inclui result para a string transformada, encoding fixo em rot8000, input_length e output_length que coincidem porque o ROT8000 preserva o comprimento em unidades UTF-16, shifted_units contando quantas unidades foram rotacionadas (sempre igual ao comprimento de entrada em uma solicitação válida) e uma string formula que reafirma o mapeamento modular para documentação e testes. Não há caminho de streaming nem fallback silencioso para ROT13 ou ROT47: ou você fornece texto não vazio e recebe a transformação completa, ou a solicitação falha com invalid_input. Se precisar de rotação só de ASCII imprimível, Base64 seguro para URL ou Morse, use esses endpoints dedicados; esta página responde apenas o contrato de rotação BMP do ROT8000 que guias de cifra Unicode e ofuscação leve já descrevem.
Como o texto é lido e como os resultados permanecem reproduzíveis
Cada unidade de código UTF-16 é processada de forma independente com o mapa modular fixo, assim aplicar a transformação duas vezes sempre produz a carga original. O campo de carga preferido é text, com os aliases input, value, s e message, para que formulários, query strings e clientes de SDK reutilizem o mesmo contrato sem renomear colunas. A string deve estar presente e não vazia; campos ausentes, tipos que não são string e a string vazia elevam invalid_input com uma mensagem clara, para que um formulário em branco não pareça uma operação bem-sucedida sem efeito. Combine a execução gratuita no navegador desta página com a API paga quando precisar do mesmo resultado matemático dentro de um pipeline automatizado, sem reimplementar você mesmo a rotação de meio plano. Entradas inválidas devolvem invalid_input e não são cobradas, o que mantém a validação barata enquanto transformações bem-sucedidas seguem com preço fixo por item. Campos de comprimento e o contador shifted_units ajudam os testes a verificar que cada unidade se moveu e que o comprimento de saída coincide com o de entrada, sem rederivar a aritmética modular em cada asserção.
Onde o ROT8000 se encaixa em puzzles, demos 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 paga idêntica — combina com o restante do catálogo tier A do KIT e permite passar de uma demo de sala de aula a um pipeline automatizado sem mudar o resultado transformado.
Casos de integração
Fixtures determinísticos de CI
Gere strings ROT8000 reproduzíveis para testes unitários, arquivos golden e verificações de contrato entre serviços.
Perguntas técnicas
Quanto custa a cifra Unicode ROT8000?
É grátis no 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 com entrada vazia?
Texto vazio ou ausente falha com invalid_input e não é cobrado. Forneça uma string não vazia.