b'\n_START_ARTICLE_\nDistanza di unicit\xc3\xa0\n_START_PARAGRAPH_\nCon distanza di unicit\xc3\xa0 ci si riferisce, in crittografia, alla lunghezza minima necessaria che un testo cifrato deve avere affinch\xc3\xa9 sia possibile violare il cifrario con un attacco a forza bruta riducendo a zero il numero di possili chiavi spurie._NEWLINE_Considerando un attacco alla stringa di testo cifrato "WNAIW" cifrata con il cifrario di Vigen\xc3\xa8re ed una chiave di 5 lettere. In teoria, questa stringa potrebbe essere decifrata in qualunque altra stringa \xe2\x80\x94 RIVER e WATER sono entrambe soluzioni possibili, per certe chiavi. Questa \xc3\xa8 una regola generale della crittanalisi: senza ulteriori informazioni, \xc3\xa8 impossibile decodificare questo messaggio._NEWLINE_Ovviamente, anche in questo caso, sono possibili solo un certo numero di parole di senso compiuto composte da 5 lettere: provando tutte le possibili chiavi non si otterrebbero solo RIVER e WATER ma anche, ad esempio, SXOOS, KHDOP ed altre. Il numero di chiavi "funzionanti" sar\xc3\xa0 quindi molto minore dell\'intero insieme di tutte le possibili chiavi. Il problema \xc3\xa8 conoscere quale di queste chiavi "funzionanti" \xc3\xa8 quella giusta, le altre sono solo chiavi spurie.\n_START_SECTION_\nRelazione con la dimensione della chiave ed i possibili testi in chiaro\n_START_PARAGRAPH_\nIn generale, data una particolare ipotesi circa la dimensione della chiave ed il numero di messaggi possibili, c\'\xc3\xa8 una lunghezza media del testo cifrato per la quale c\'\xc3\xa8 (in media) solo una chiave che generer\xc3\xa0 un messaggio leggibile. Nel precedente esempio abbiamo solo lettere maiuscole dell\'alfabeto latino, per cui se ipotizziamo che questo sia l\'alfabeto usato allora ci sono 26 possibili lettere per ogni carattere della stringa. Allo stesso modo, se ipotizziamo l\'uso di chiavi lunghe 5 caratteri composte solo da lettere maiuscole, allora ci sono K=26\xe2\x81\xb5 possibili chiavi, di cui la maggior parte di esse non "funzioner\xc3\xa0"._NEWLINE_Anche usando questo piccolo insieme di caratteri, si possono generare un numero elevatissimo di messaggi N: _NEWLINE_N = 26\xe1\xb4\xb8_NEWLINE_dove L \xc3\xa8 la lunghezza del messaggio. Come detto, solo una piccola parte di essi sar\xc3\xa0 un messaggio in chiaro leggibile a causa delle regole del linguaggio, diciamo M di essi, dove M si spera sia molto pi\xc3\xb9 piccolo di N. Inoltre M ha una relazione uno-ad-uno con il numero di chiavi che funzionano, per cui dato K essere il numero di chiavi possibili, solo _NEWLINE_K \xc3\x97 (M/N)_NEWLINE_di esse "funzioneranno". Una di queste \xc3\xa8 la chiave corretta, le altre sono spurie._NEWLINE_Dato che N dipende dalla lunghezza del messaggio L, e siccome M dipende dal numero delle chiavi K, ci sono dei valori di L per cui il numero di chiavi spurie \xc3\xa8 pari a zero: questo L \xc3\xa8 la distanza di unicit\xc3\xa0.\n_START_SECTION_\nRelazione con l\'entropia della chiave e la ridondanza del testo in chiaro\n_START_PARAGRAPH_\nLa distanza di unicit\xc3\xa0 pu\xc3\xb2 essere anche definita come il minimo numero di testi cifrati necessari ad un attaccante dotato di una potenza elaborativa illimitata di recuperare l\'unica chiave di cifratura funzionante._NEWLINE_La distanza di unicit\xc3\xa0 che ci si attende \xc3\xa8 di conseguenza:_NEWLINE_dove U \xc3\xa8 la distanza di unicit\xc3\xa0, H(k) \xc3\xa8 l\'entropia dello spazio delle chiavi (ad esempio 128 per 2\xc2\xb9\xc2\xb2\xe2\x81\xb8 chiavi equamente possibili, un po\' di meno se la chiave \xc3\xa8 una frase memorizzata)._NEWLINE_D \xc3\xa8 definito come la ridondanza del testo in chiaro in bit per carattere._NEWLINE_Ora, un alfabeto di 32 caratteri pu\xc3\xb2 portare 5 bit di informazione per carattere (dato che 32 = 2\xe2\x81\xb5). In generale il numero di bit di informazione \xc3\xa8 log\xe2\x82\x82 N, dove N \xc3\xa8 il numero di caratteri dell\'alfabeto. Cos\xc3\xac, in inglese ogni carattere pu\xc3\xb2 trasportare log\xe2\x82\x82 26 = 4,7 bit di informazione, in italiano log\xe2\x82\x82 21 = 4,39 bit (vedere logaritmo per maggiori informazioni sull\'operazione)._NEWLINE_Comunque il numero medio di informazione trasportata per carattere da un testo di senso compiuto \xc3\xa8 solo di circa 1,5 bit per carattere, per cui la ridondanza del testo in chiaro \xc3\xa8_NEWLINE_D = 4,7 - 1,5 = 3,2._NEWLINE_Solitamente maggiore \xc3\xa8 la distanza di unicit\xc3\xa0 e pi\xc3\xb9 sicuro sar\xc3\xa0 lo schema. Per uno schema one-time pad, ad esempio, data la sconfinata entropia dello spazio della chiave, si ha_NEWLINE_, _NEWLINE_che \xc3\xa8 coerente con l\'assunto che uno schema one-time-pad sia teoricamente inviolabile._NEWLINE_Per un semplice cifrario a sostituzione il numero di chiavi possibili \xc3\xa8 26! = 4,0329 * 10\xc2\xb2\xe2\x81\xb6, il numero di modi in cui l\'alfabeto pu\xc3\xb2 essere permutato. Ipotizzando che tutte le chiavi siano equamente possibili, si ha la seguente entropia:_NEWLINE_H(k) = log\xe2\x82\x82(26!) = 88,4 bit_NEWLINE_Come detto sopra, nella lingua inglese D \xc3\xa8 pari a 3,2, per cui si ha una distanza di unicit\xc3\xa0_NEWLINE_U = 88,4/3,2 = 28_NEWLINE_Per cui dati 28 caratteri di testo cifrato sarebbe in teoria possibile ricavare per l\'inglese un testo in chiaro di senso compiuto e, conseguentemente, la chiave di cifratura.\n_START_SECTION_\nApplicazioni pratiche\n_START_PARAGRAPH_\nLa distanza di unicit\xc3\xa0 \xc3\xa8 una misura teoricamente utile ma non dice molto circa la sicurezza di un cifrario a blocchi quando viene attaccato ad un avversario con (limitate) risorse reali. Consideriamo un cifrario a blocchi con una distanza di unicit\xc3\xa0 di tre blocchi di testo cifrato: anche se un avversario dotato di potenza elaborativa illimitata ha abbastanza informazioni per recuperare la giusta chiave (con una semplice ricerca esaustiva) l\'operazione \xc3\xa8 in pratica non fattibile._NEWLINE_La distanza di unicit\xc3\xa0 pu\xc3\xb2 essere incrementata riducento la ridondanza del testo in chiaro: un modo per farlo \xc3\xa8 quello di applicare delle tecniche di compressione dei dati prima di procedere alla cifratura. Questa resta sempre una buona idea, dato che riduce il quantitatico di dati da cifrare._NEWLINE_Un altro modo per incrementare la distanza di unicit\xc3\xa0 \xc3\xa8 quello di incrementare il numero di possibili sequenze valide nei file che vengono letti: se almeno per i primi blocchi di dati qualunque sequenza di bit pu\xc3\xb2 effettivamente far parte di un messaggio valido, allora si ha che il valore della distanza di unicit\xc3\xa0 non \xc3\xa8 stato raggiunto. _NEWLINE_Se la ridondanza del testo in chiaro \xc3\xa8 0 allora la distanza di unicit\xc3\xa0 \xc3\xa8 infinita ed il sistema \xc3\xa8 inviolabile: ci\xc3\xb2 capita (teoricamente) se il testo in chiaro viene compresso perfettamente. In questo caso \xc3\xa8 chiaramente impossibile determinare quando \xc3\xa8 stata trovata la giusta chiave di cifratura._NEWLINE_\xc3\x88 possibile considerare i testi cifrati pi\xc3\xb9 grandi della distanza di unicit\xc3\xa0 come aventi una unica deicfratura di senso compiuto; i testi in chiaro pi\xc3\xb9 piccoli della distanza di unicit\xc3\xa0 possono avere pi\xc3\xb9 decifrature plausibili. La distanza di unicit\xc3\xa0 non \xc3\xa8 una misura di quanto testo cifrato sia richiesto per una crittanalisi ma di quanto testo cifrato sia richiesto affinch\xc3\xa9 ci sia una soluzione accettabile per la sua crittanalisi.'