Gestore della chiave
In crittografia il gestore della chiave (in inglese key schedule) indica una particolare funzione dei cifrari a blocchi che serve a generare, partendo dalla chiave segreta, delle sotto-chiavi utilizzate da altre funzioni dell'algoritmo crittografico.
Alcuni tipi di gestori delle chiavi
[modifica | modifica wikitesto]- Alcuni cifrari hanno dei gestori delle chiavi molto semplici: ad esempio, il cifrario a blocchi TEA divide semplicemente la chiave di 128 bit in 4 parti da 32 bit ciascuna, che usa poi nei successivi passaggi in modo ripetitivo.
- Il gestore del DES divide i 56 bit della chiave in 2 metà da 28 bit ciascuna: ogni metà è poi trattata separatamente. Nei passaggi successivi, entrambe le metà sono ruotate a sinistra di 1 o 2 bit (a seconda del passaggio) dopodiché viene creata una sotto-chiave di 48 bit da una funzione denominata Permuted Choice 2 (PC-2): 24 bit provengono dalla metà di sinistra e 24 dalla metà di destra. Le rotazioni servono a far sì che in ogni sotto-chiave venga utilizzato un insieme differente di bit; ogni bit è usato approssimativamente in 14 delle 16 sotto-chiavi generate.
- Nel tentativo di evitare relazioni molto semplici fra la chiave segreta e le sotto-chiavi e per resistere ad alcune forme di crittoanalisi come gli attacchi correlati alla chiave e gli attacchi laterali, molti cifrari moderni usano gestori della chiave molto più sofisticati, come algoritmi che usano funzioni unidirezionali per generare una "chiave espansa" da cui poi creare le sotto-chiavi. Alcuni cifrari, come il Rijndael (AES) ed il Blowfish, utilizzano parti dello stesso algoritmo di cifratura per l'espansione della chiave, alle volte inizializzati con numeri particolari (ad esempio, il Blowfish utilizza la rappresentazione binaria del Pi greco, π). Altri cifrari, come l'RC5, espandono le chiavi con funzioni che sono in parte o completamente diverse da quelle di cifratura.
Note
[modifica | modifica wikitesto]Lars Knudsen e John Erick Mathiassen (2004) hanno condotto studi che dimostrano come i gestori delle chiavi giochino un ruolo importante nel rendere un cifrario resistente alla crittanalisi differenziale e lineare. È stato anche osservato che i cifrari di Feistel con gestori ben disegnati e complessi permettono di arrivare rapidamente all'assenza di distorsioni statistiche potenzialmente sfruttabili da un crittoanalista.
Bibliografia
[modifica | modifica wikitesto]- Lars R. Knudsen e John E. Mathiassen: On the Role of Key Schedules in Attacks on Iterated Ciphers, ESORICS 2004, pp322–334.