Cifrario Unicode ROT8000
Hello diventa 聈聥聬聬聯: ogni carattere del piano multilingue di base, con spazi, cifre e qualsiasi alfabeto, salta metà del piano, e lo stesso passaggio restituisce il testo originale. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Testo
- Hello
- Risultato
- 聈聥聬聬聯
- Codifica
- rot8000
- Lunghezza dell'input
- 5
- Lunghezza dell'output
- 5
Questo cifrario Unicode ROT8000 applica una rotazione reversibile su tutto il Piano Multilingue di Base, spostando ogni unità di codice UTF-16 di trentaduemilasettecentosessantotto posizioni e chiudendo con aritmetica modulare. Poiché tale scostamento è esattamente la metà del piano di sessantacinquemilacinquecentotrentasei unità, la stessa operazione sia confonde sia ripristina il testo: invii il testo in chiaro una volta per nasconderlo e invii di nuovo il cifrato per recuperare l'originale. A differenza di ROT13 limitato alle lettere o di ROT47 sull'ASCII stampabile, ROT8000 sposta insieme spazi, punteggiatura, cifre, lettere latine, ideogrammi CJK e ogni altra unità del BMP, così le note a scritture miste si confondono con la stessa densità dell'inglese puro. I controlli comuni includono Hello che diventa la stringa dall'aspetto CJK che torna all'originale con una seconda chiamata.
Che cos'è ROT8000 e cosa restituisce questo strumento
ROT8000 è un cifrario a sostituzione sul Piano Multilingue di Base: le sessantacinquemilacinquecentotrentasei unità di codice UTF-16 da U+0000 a U+FFFF. Ogni unità è mappata sull'unità trentaduemilasettecentosessantotto passi avanti, con aritmetica modulare, così il nuovo codice è i sedici bit bassi del codice originale più 0x8000. Lettere, cifre, punteggiatura, spazi bianchi e scritture non latine si muovono insieme, il che rende ROT8000 molto più denso del solo ROT13 alfabetico e migliore per confondere token Unicode misti come password internazionali, frammenti di configurazione e stringhe di sfida multi-scrittura.
Questa pagina usa sempre quella regola modulare esatta, senza parametro di scostamento opzionale né tabelle di alfabeto che possano divergere tra lingue.
Enigmi e demo multilingue con ROT8000
Sviluppatori e docenti incontrano ROT8000 nei riscaldamenti capture-the-flag, nei capitoli di manuali sui cifrari Unicode classici e nell'offuscamento leggero lato client che deve invertirsi con una sola funzione anziché con una schedula di chiavi. I team frontend possono confondere credenziali multilingue di esempio o stringhe a forma di token per screenshot senza inventare un alfabeto personalizzato limitato alle lettere latine.
Gli ingegneri della qualità generano coppie di codifica deterministiche per test di contratto, così un middleware che dichiara supporto ROT8000 non possa passare in silenzio a ROT13, ROT47 o a un altro offset. Gli organizzatori di contest precalcolano chiavi di risposta per frasi Unicode modeste senza affidarsi a giocattoli web opachi che cambiano le regole sui surrogati. Gli strumenti di prodotto e istruzione usano la trasformata quando un discente incolla il cifrato e l'interfaccia deve mostrare il testo in chiaro recuperato sotto la proprietà di involuzione.
Lo abbini ad altri ausili di codifica quando costruisce un piccolo laboratorio di strumenti di testo Unicode gratuiti e deterministici.
Casi d'uso
Riscaldamenti CTF e cifrario Unicode
Offuschi e ripristini testo BMP con un'unica rotazione reversibile di mezzo piano per puzzle, aule e pratica capture-the-flag.
Offuscamento reversibile multi-scrittura
Nasconda token multilingue di esempio o frammenti di configurazione in documentazione e screenshot, poi li recuperi con la stessa chiamata ROT8000.
Domande frequenti
Come si decodifica ROT8000?
Applichi di nuovo la stessa trasformata. ROT8000 è un'involuzione: codifica e decodifica sono operazioni identiche sul Piano Multilingue di Base.
Quali caratteri vengono spostati?
Ogni unità di codice UTF-16 della stringa viene ruotata di 0x8000 nel BMP (U+0000–U+FFFF). Non c'è un sottoinsieme solo stampabile: si muovono anche spazi e CJK.
Il risultato è deterministico?
Sì. Lo stesso testo produce sempre lo stesso risultato, senza rete, casualità o comportamento dipendente dalla data.
Perché Hello diventa caratteri che sembrano cinesi?
Ogni carattere avanza di mezzo giro nel piano multilingue di base, e le lettere latine finiscono nella zona degli ideogrammi cinesi, giapponesi e coreani. Il risultato non ha significato e, ripetendo il passaggio, torna Hello.
Che differenza c'è tra ROT8000, ROT13 e ROT47?
ROT13 ruota solo le lettere e ROT47 i caratteri ASCII stampabili. ROT8000 sposta tutti i caratteri del piano multilingue di base, spazi, accenti e altri alfabeti compresi, quindi anche un testo in più lingue viene mescolato del tutto.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
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)Esempio di richiesta
{
"text": "Hello"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.rot8000",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Lo usi gratis nel browser per riscaldamenti CTF, demo di offuscamento Unicode reversibile e schede di esercizi, oppure chiami l'API a $0.002 per richiesta riuscita quando le pipeline necessitano di trasformate ROT8000 riproducibili in CI e servizi backend.
Che cos'è ROT8000 e cosa restituisce questo strumento
La risposta JSON include result per la stringa trasformata, encoding fisso a rot8000, input_length e output_length che coincidono perché ROT8000 preserva la lunghezza in unità UTF-16, shifted_units che conta quante unità sono state ruotate (sempre uguale alla lunghezza d'ingresso per una richiesta valida) e una stringa formula che riafferma la mappatura modulare per documentazione e test. Non c'è percorso in streaming né un fallback silenzioso a ROT13 o ROT47: o Lei fornisce testo non vuoto e riceve la trasformata completa, o la richiesta fallisce con invalid_input. Se Le serve una rotazione solo ASCII stampabile, Base64 sicuro per URL o Morse, usi quegli endpoint dedicati; questa pagina risponde solo al contratto di rotazione BMP di ROT8000 già descritto dalle guide ai cifrari Unicode e all'offuscamento leggero.
Come si legge il testo e come i risultati restano riproducibili
Ogni unità di codice UTF-16 è elaborata in modo indipendente con la mappa modulare fissa, così applicare la trasformata due volte produce sempre il carico originale. Il campo di carico preferito è text, con gli alias input, value, s e message, così form, query string e client SDK riutilizzano lo stesso contratto senza rinominare colonne. La stringa deve essere presente e non vuota; campi assenti, tipi non stringa e stringa vuota sollevano invalid_input con un messaggio chiaro, affinché un modulo vuoto non sembri un'operazione riuscita senza effetto. Abbini l'esecuzione gratuita nel browser di questa pagina all'API a pagamento quando Le serve lo stesso risultato matematico in una pipeline automatizzata, senza reimplementare da sé la rotazione di mezzo piano. Gli input non validi restituiscono invalid_input e non vengono addebitati, il che tiene economica la validazione mentre le trasformate riuscite restano a un prezzo fisso per elemento. I campi di lunghezza e il contatore shifted_units aiutano i test a verificare che ogni unità si sia mossa e che la lunghezza d'uscita coincida con quella d'ingresso, senza ridisegnare l'aritmetica modulare a ogni asserzione.
Dove si colloca ROT8000 in puzzle, demo e fixture di test
I servizi backend codificano brevi frammenti di configurazione per API di puzzle o sandbox didattiche dove gli studenti devono applicare lo stesso scostamento di mezzo piano per sbloccare il passo successivo. In questa pagina il lavoro viene eseguito interamente nel Suo browser; tramite l'API ogni consultazione riuscita costa $0.002, la validazione fallita non viene addebitata e non si memorizza nulla dopo la risposta. Quella separazione — esplorazione interattiva gratuita e API a pagamento identica — combacia con il resto del catalogo tier A del KIT e Le consente di passare da una demo in aula a una pipeline automatizzata senza cambiare il risultato trasformato.
Casi di integrazione
Fixture CI deterministiche
Generi stringhe ROT8000 riproducibili per test unitari, file golden e controlli di contratto tra servizi.
Domande tecniche
Quanto costa il cifrario Unicode ROT8000?
È gratis nel browser in questa pagina. Tramite l'API una richiesta riuscita costa $0.002; gli input non validi non vengono addebitati.
Cosa succede con input vuoto?
Testo vuoto o assente fallisce con invalid_input e non viene addebitato. Fornisca una stringa non vuota.