Cifrario XOR

Cifra e decifra testo con il cifrario XOR online. Lo strumento applica l’operazione OR esclusivo bit a bit, byte per byte, supporta chiavi di testo e chiavi hex, ripete ciclicamente le chiavi brevi e restituisce l’output cifrato come stringa esadecimale.

Chiave
Input
0 caratt. · 0 byte
Prova:
Risultato
✓ Cifrario simmetrico — stessa chiave per cifrare e decifrare ✓ La chiave corta si ripete ciclicamente fino alla lunghezza del messaggio ✓ Non conserviamo i tuoi messaggi ✓ Elaborazione sul nostro server
Esempi
Cifrare CIAO Chiave: CHIAVE
Input CIAO
Output 0001080E

Chiave: CHIAVE. Lo strumento applica XOR ai byte UTF-8 del testo e ripete la chiave ciclicamente fino alla lunghezza del messaggio.

Cifrare ATTACCO ALL ALBA Chiave: SEGRETO
Input ATTACCO ALL ALBA
Output 1211131306170073040B1E6515031104

Ogni byte UTF-8 del testo viene combinato tramite XOR con la chiave ciclicamente ripetuta SEGRETO. Anche gli spazi partecipano all’operazione.

Decifrare testo cifrato hex Chiave: CHIAVE
Input 0001080E
Output CIAO

Incolla la stringa hex e usa la stessa chiave: XOR ripristina il testo originale.

Cifrare con chiave hex Chiave: 42 (HEX)
Input CIAO
Output 010B030D

Formato chiave: Hex. La chiave a un byte 0x42 viene applicata a ogni byte della rappresentazione UTF-8 del testo.

Come funziona il cifrario XOR

Il cifrario XOR è un metodo simmetrico di cifratura a livello di byte basato sull’operazione OR esclusivo bit a bit. Ogni byte del messaggio in input viene combinato con un byte della chiave. Se la chiave è più corta del messaggio, viene ripetuta ciclicamente finché tutti i byte sono stati elaborati.

XOR ha una proprietà reversibile utile: applicando una seconda volta la stessa chiave si ripristinano i dati originali. Per questo lo strumento può usare lo stesso algoritmo per cifrare e decifrare. In modalità Encrypt accetta testo normale e restituisce testo cifrato esadecimale. In modalità Decrypt richiede una stringa hex valida, la riconverte in byte, applica XOR con la stessa chiave e restituisce il testo in chiaro.

Questo approccio è spesso descritto come cifratura a gamma perché i byte della chiave agiscono come un flusso di chiave, o gamma, combinato con il messaggio. La qualità di quel flusso determina la robustezza del risultato.

Chiavi di testo, chiavi hex e output hex

Il servizio supporta due formati di chiave. In modalità Text, la chiave è trattata come normale testo UTF-8. In modalità Hex, la chiave è interpretata come byte grezzi scritti in forma esadecimale, quindi valori come DEADBEEF o DE AD BE EF possono essere usati direttamente.

L’output cifrato viene mostrato in hex maiuscolo perché XOR può produrre byte binari arbitrari, inclusi byte che non sono testo stampabile. La codifica hex rende il risultato sicuro da copiare, salvare, incollare nel decoder o usare in test ed esempi.

Durante la decifratura, l’input deve essere testo cifrato esadecimale. Spazi e separatori non hex sono ignorati, ma i dati hex rimanenti devono contenere coppie complete di byte.

Cifrario XOR, cifrario Vernam e one-time pad

Il cifrario XOR e il cifrario Vernam usano la stessa operazione di base: i byte del messaggio vengono combinati con i byte della chiave tramite XOR. La differenza pratica sta nel modo in cui la chiave viene scelta e riutilizzata.

Un vero one-time pad richiede una chiave casuale, lunga almeno quanto il messaggio e mai riutilizzata. In queste condizioni la cifratura basata su XOR può offrire segretezza teoricamente perfetta. Un tipico strumento XOR, però, usa una chiave riutilizzabile e la ripete quando necessario. È comodo per imparare, fare debug e sperimentare, ma non offre sicurezza crittografica moderna.

Quando usare questo strumento XOR

Usa questo encoder e decoder XOR online per studiare la cifratura bit a bit, provare il funzionamento dello XOR con chiave ripetuta, ispezionare testo cifrato hex o riprodurre semplici trasformazioni XOR in materiali didattici e attività di programmazione.

Per proteggere realmente password, messaggi privati, token API o dati di produzione, usa un algoritmo moderno di cifratura autenticata invece di un cifrario XOR classico con chiave ripetuta.

FAQ

XOR opera su byte grezzi e il risultato può contenere qualsiasi valore di byte, inclusi caratteri non stampabili e byte nulli. La codifica esadecimale fornisce una rappresentazione sicura e leggibile di dati binari arbitrari. Per decifrare, incolla il testo cifrato hex: lo strumento lo riconverte in byte, applica XOR e restituisce il testo originale.

Entrambi applicano XOR byte per byte con una chiave. La differenza è nella gestione della chiave: il cifrario Vernam, o one-time pad, richiede una chiave davvero casuale, lunga almeno quanto il messaggio e mai riutilizzata. Un tipico cifrario XOR usa per comodità una chiave ripetuta più corta, diventando vulnerabile ad attacchi statistici.

Poiché XOR è autoinverso (A XOR B XOR B = A), la decifratura usa la stessa chiave della cifratura. Seleziona Decode, incolla il testo cifrato hex, inserisci la stessa chiave e avvia lo strumento. Decodifica i byte hex, applica XOR e restituisce il testo in chiaro originale.

Lo strumento supporta chiavi di testo e chiavi hex. Le chiavi di testo sono usate come byte UTF-8. Le chiavi hex sono interpretate come valori di byte grezzi, quindi puoi inserire materiale di chiave come 42, DEADBEEF o DE AD BE EF.

Sì. Lo strumento ignora separatori non hex durante la lettura dei dati hex. Dopo la rimozione dei separatori, il valore rimanente deve contenere un numero pari di caratteri esadecimali per poter essere decodificato in byte completi.

La chiave viene ripetuta ciclicamente finché raggiunge la lunghezza del messaggio. È comune nello XOR a chiave ripetuta, ma crea anche schemi che possono rendere il testo cifrato più facile da analizzare.

Lo XOR con chiave ripetuta è utile per la didattica e semplici esperimenti a livello di byte, ma non è sicuro per la protezione moderna dei dati. La sicurezza arriva solo quando il materiale di chiave è casuale, lungo almeno quanto il messaggio e mai riutilizzato; in quel caso il metodo diventa un one-time pad.

Sì. Lo strumento lavora sui byte, quindi il testo Unicode viene elaborato come dati UTF-8. Il risultato cifrato è comunque mostrato in hex perché i byte di output potrebbero non essere caratteri stampabili.

Nella cifratura a gamma, il messaggio viene combinato con una sequenza di byte di chiave chiamata gamma o flusso di chiave. XOR è l’operazione che combina quel flusso con il messaggio e poi lo inverte usando lo stesso flusso.
Strumenti correlati

Cifrario di Cesare

Cifrario classico a spostamento di lettere con valori personalizzati.

Cifrario di Playfair

Classico cifrario a sostituzione per digrammi con matrice basata su parola chiave.