Cifrario perfetto

Da Wikipedia, l'enciclopedia libera.

In crittografia il cifrario perfetto è per definizione un algoritmo in grado di occultare il testo in chiaro escludendo ogni tipo di attacco di crittanalisi, ne segue che un testo cifrato con un cifrario perfetto non può essere letto in nessun modo se non si è in possesso della chiave di cifratura unica per decifrarlo.

L'unico cifrario perfetto[modifica | modifica wikitesto]

L'unico cifrario perfetto fino ad ora conosciuto è una variante del Cifrario di Vigenère che prende il nome di Cifrario di Vernam. Questo cifrario ha la peculiarità di scegliere casualmente un'unica chiave lunga esattamente quanto il testo, ne consegue che nessun attacco di crittanalisi può violarlo dato che il testo cifrato segue la casualità della chiave e nessun attacco di forza bruta può intaccarlo.

Il cifrario è perfetto dato che la chiave utilizzata per cifrare il messaggio è lunga quanto quest'ultimo ed è prodotta in modo casuale. Quando il messaggio viene unito alla chiave, esso perde ogni correlazione interna e quindi ogni tipologia di attacco statistico fallisce, visto che il messaggio cifrato non ha nessuna correlazione statistica con il messaggio non cifrato. Anche lo stesso attacco a forza bruta è destinato a fallire, dato che se anche si provassero tutte le possibili chiavi, si otterrebbero tanti potenziali messaggi decifrati quante sono le chiavi utilizzate; tuttavia non ci sarebbe modo di distinguere l'unico messaggio originale tra tutti i possibili messaggi in chiaro ottenuti. Se si cifrasse per esempio una parola di 5 lettere, un attacco a forza bruta genererebbe tutte le possibili parole di 5 lettere, ma non fornirebbe nessun metodo per distinguere la parola cercata da tutte le altre, che invece sono nelle decifrazioni sbagliate.

Esempio[modifica | modifica wikitesto]

Se vogliamo cifrare la cifra "50" tramite sottrazione di un numero casuale, e scegliamo come numero casuale a due cifre per esempio "33" otterremo "17". Se avessimo soltanto il testo cifrato "17" non avremmo modo di sapere quale è la cifra che manca per arrivare al testo chiaro (che ci è sconosciuto). Se avessimo soltanto la chiave "33" non avremmo lo stesso modo di sapere come arrivare al testo chiaro. Soltanto avendo sia il testo "17" e la chiave "33" possiamo risalire con certezza al testo chiaro "50".

Limiti[modifica | modifica wikitesto]

L'algoritmo è tuttora poco usato a causa di un forte limite che, nonostante la sua provata inviolabilità, lo rende estremamente difficile da usare. Il problema risiede nella casualità della chiave e della sua lunghezza (esattamente come il testo da cifrare) necessaria per rendere il messaggio davvero inviolabile: questo rende impossibile riutilizzare la chiave una volta che sia già stata usata. Per far funzionare l'algoritmo a regime le chiavi devono essere dunque tante (una per ogni messaggio) e devono essere decise prima dell'invio e condivise con il destinatario, creando un notevole problema di distribuzione delle chiavi che paradossalmente rende il cifrario molto rischioso da usare.

Il fatto che il cifrario sia inviolabile non risolve il problema delle chiavi, che possono essere sempre intercettate ed usate per leggere il messaggio.

Bibliografia[modifica | modifica wikitesto]

Crittografia Portale Crittografia: accedi alle voci di Wikipedia che trattano di Crittografia