mercoledì 10 novembre 2010

Cifratura simmetrica

I cifrari simmetrici utilizzano la stessa chiave per criptare e decriptare i messaggi, in genere sono implementati con algoritmi molto veloci il loro punto debole è la distribuzione delle chiavi.Questi cifrari possono essere a blocco o a flusso, un cifrario a blocco utilizza blocchi di dimensione fissa ,di solito 64 o 128 bit, lo stesso blocco di testo in chiaro verrà criptato utilizzando la stessa chiave,tipici esempi di cifrari a blocchi sono DES,AES e Blowfish. I cifrari a flusso generano un flusso di bit pseudocasuali di solito un byte per volta,questo flusso viene chiamato keystream ed è sottoposto a XOR con il testo in chiaro, questo è utile quando si devono criptare flussi continui di dati,RC4 è un valido esempio di cifrario a flusso. DES e AES sono forse i più diffusi cifrari a blocchi, la costruzione di cifrari a blocchi è oggetto di attenta riflessione in quanto si cerca di renderli invulnerabili ad attacchi crittoanalitici noti.Nei cifrari a blocchi sono utilizzati due concetti la "confusione" e la "diffusione",con "confusione" si intendono i metodi per mascherare le relazioni esistenti fra testo in chiaro, testo cifrato e chiave, questo significa che i bit di output devono utilizzare qualche forma di trasformazione complessa della chiave e del testo in chiaro.La "diffusione" serve a diffondere l' influenza dei bit del testo in chiaro e della chiave sulla maggior parte possibile del testo cifrato.Prendiamo il DES, sostanzialmente ogni blocco di dati in chiaro viene suddiviso in 2 metà L(sinistra) e R(destra), in una prima passata (round)la nuova metà sinistra viene impostata uguale alla vecchia metà destra, e una nuova metà destra viene impostata uguale alla vecchia metà sinistra a cui è stata applicata la funzione XOR con l'output di una funzione che utilizza la vecchia metà destra e la sottochiave per tale passata,questo procedimento è ripetuto per 16 volte.Il punto debole del DES è la lunghezza della chiave, che è di 56 bit, quindi è possibile implementare un attacco "brute force" in modo da controllare l' intero spazio delle chiavi in qualche settimana su hardware dedicato.
Nel triplo DES questo problema viene risolto utilizzando due chiavi DES concatenate fra loro, portando la lunghezza complessiva della chiave a 112 bit, la cifratura avviene criptando il testo in chiaro con la prima chiave, poi decriptandolo con la seconda e infine criptandolo nuovamente con la prima. In questo modo la lunghezza della chiave rende enormemente difficile un attacco brute force.

Nessun commento:

Posta un commento