Key whitening
In crittografia si definisce key whitening (mascheramento della chiave) la tecnica mediante la quale si cerca di incrementare la sicurezza di un cifrario a blocchi iterato attraverso passi successivi durante i quali vengono combinati i dati da cifrare con porzioni della chiave (in genere mediante semplici operazioni di XOR) prima del primo passaggio e dopo l'ultimo passaggio del processo di cifratura.
Il primo cifrario a blocchi che usava una forma di key whitening fu il DES-X, che utilizzava semplicemente due ulteriori chiavi da 64 bit in aggiunta a quella standard da 56 bit del DES: in questo modo si intendeva aumentare la complessità di un attacco a forza bruta incrementando la dimensione della chiave senza introdurre ulteriori modifiche alla struttura dell'algoritmo. Ronald Rivest, che progettò il DES-X, battezzò questa tecnica con il termine key whitening.
Il cifrario FEAL (seguito dal Khufu e Khafre) introdusse la pratica del key whitening usando porzioni della stessa chiave utilizzata nel resto del cifrario: ciò non offre protezione aggiuntiva da un attacco a forza bruta, ma può rendere altri tipi di attacco più difficili da portare a termine.
In un cifrario di Feistel, o in algoritmi simili, il key whitening può incrementare la sicurezza occultando gli input specifici del primo e dell'ultimo passaggio della funzione di cifratura. In particolare, si evita la possibilità di un attacco di tipo meet-in-the-middle. Questa forma di key whitening è stata adottata come caratteristica da molti altri cifrari a blocchi, come il MARS, l'RC6 ed il Twofish.
Bibliografia
- Bruce Schneier, Applied Cryptography, 2ª ed., John Wiley & Sons, 1996, ISBN 0-471-11709-9.
Voci correlate
- Crittografia
- Cifratura a blocchi
- DES-X
- Twofish
V · D · M | |
---|---|
Cifrari principali | AES · Blowfish · DES · IDEA · Serpent · Triple DES · TEA · Twofish |
Altri cifrari | 3-Way · ABC · Akelarre · Anubis · ARIA · BaseKing · BassOmatic · BATON · BEAR · C2 · Camellia · CAST-128 · CAST-256 · CIKS-1 · CIPHERUNICORN-A · CIPHERUNICORN-E · CLEFIA · CMEA · Cobra · COCONUT98 · Crab · CRYPTON · CS-Cipher · DEAL · DES-X · FEAL · GDES · GOST · IDEA NXT · Iraqi · Kalyna · KASUMI · Khafre · KHAZAD · Khufu · LION · LOKI89/91 · LOKI97 · Lucifer · MacGuffin · MAGENTA · MARS · MISTY1 · MMB · RC2 · RC5 · RC6 · Red Pike · S-1 · SAFER · SEED · SHARK · Skipjack · Square · XTEA · XXTEA |
Strutture | Cifrario del prodotto · Gestore della chiave · Rete a sostituzione e permutazione · Rete di Feistel · S-Box |
Varie | Dimensione del blocco · Dimensione della chiave · Key whitening · Modalità di funzionamento dei cifrari a blocchi · Vettore di inizializzazione |
Portale Crittografia · Progetto Crittografia · Cifrari a blocchi |