Twofish | Due pesci

In crittografia, Twofish è un cifrario a blocco di chiave simmetrico con una dimensione del blocco di 128 bit e una lunghezza della chiave fino a 256 bit.

Nel 1997, il NIST ha annunciato per il concorso la scelta di un successore del DES da denominare AES, Twofish è stato uno dei cinque finalisti del concorso Advanced Encryption Standard, ma non è stato selezionato come standard.

Twofish è collegato al precedente cifrario a blocchi Blowfish. Le caratteristiche principali di Twofish sono l'uso di S-box pre-calcolate che dipendono dalla chiave, e un programma di chiavi relativamente complesso. Una metà di una chiave a n-bit viene utilizzata come chiave di cifratura vera e propria e l'altra metà della chiave a n-bit viene utilizzata per modificare l'algoritmo di cifratura (S-boxes dipendenti dalla chiave). Twofish utilizza alcuni elementi di altri design; per esempio, la pseudo-trasformazione di Hadamard (PHT) della famiglia di cifrari SAFER. Twofish utilizza la stessa struttura Feistel del DES.

Sulla maggior parte delle piattaforme software Twofish è leggermente più lento di Rijndael (l'algoritmo scelto per Advanced Encryption Standard) per le chiavi a 128 bit, ma un po' più veloce per le chiavi a 256 bit.

Twofish è stato progettato da Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall e Niels Ferguson; il "team Twofish esteso" che si è riunito per fare un'ulteriore criptoanalisi di Twofish e di altri concorrenti AES comprendeva Stefan Lucks, Tadayoshi Kohno e Mike Stay.

L'algoritmo Twofish è gratuito per chiunque, senza alcuna restrizione. Il cifrario Twofish non è stato brevettato e l'esempio software delle sue specifiche è stato reso di pubblico dominio. Tuttavia, Twofish non è ampiamente utilizzato come il Blowfish, che è stato disponibile per un periodo di tempo più lungo.

Criptanalisi

A partire dal 2008, la migliore crittoanalisi pubblicata sul cifrario a blocchi Twofish è una crittoanalisi differenziale troncata della versione completa a 16 giri. Il documento sostiene che la probabilità di attacchi di differenziali troncati è di 2-57,3 per blocco e che ci vorranno circa 251 plaintexts scelti (32 PiB di dati) per trovare una buona coppia di differenziali troncati.

Bruce Schneier risponde in un blog del 2005 che questo articolo non presenta un attacco criptanalitico completo, ma solo alcune ipotetiche caratteristiche differenziali: "Ma anche da un punto di vista teorico, Twofish non è nemmeno lontanamente rotto. Non ci sono state estensioni di questi risultati da quando sono stati pubblicati" nel 2000.

Pagine correlate

Domande e risposte

D: Che cos'è Twofish?


R: Twofish è un cifrario a blocchi a chiave simmetrica con una dimensione di blocco di 128 bit e una lunghezza di chiave fino a 256 bit.

D: Qual è il rapporto tra Twofish e il precedente cifrario a blocchi Blowfish?


R: Le caratteristiche principali di Twofish sono l'uso di S-box precalcolate dipendenti dalla chiave e un programma di chiavi relativamente complesso. Una metà di una chiave a n bit viene utilizzata come chiave di crittografia vera e propria e l'altra metà della chiave a n bit viene utilizzata per modificare l'algoritmo di crittografia (S-box dipendenti dalla chiave).

D: Twofish è stato scelto come Advanced Encryption Standard?


R: No, nel 1997, il NIST ha indetto una gara per scegliere un successore del DES che sarebbe stato conosciuto come AES, tuttavia Twofish non è stato selezionato come standard.

D: Quali elementi utilizza Twofish da altri design?


R: Twofish utilizza alcuni elementi di altri progetti; ad esempio, la trasformazione pseudo-Hadamard (PHT) della famiglia di cifrari SAFER.

D: Utilizza la struttura Feistel come il DES?


R: Sì, utilizza la struttura Feistel come il DES.

D: È più veloce di Rijndael per chiavi a 128 bit?


R: Sulla maggior parte delle piattaforme software, Twofish è leggermente più lento di Rijndael per le chiavi a 128 bit.

D: È più veloce di Rijndael per le chiavi a 256 bit?


R: È leggermente più veloce di Rijndael per le chiavi a 256 bit.

AlegsaOnline.com - 2020 / 2023 - License CC3