Estratto del documento

AES Advanced Encryption Standard

Nel 1997 NIST richiede la sostituzione di DES. La gara richiedeva un algoritmo operante su blocchi da

128bit, e con chiavi da 128, 192 e 256bit, inoltre l’algoritmo doveva essere sicuro, occupare poca memoria,

efficienza ed essere idoneo per implementazioni sia hardware che software.

Tale gara, denominata AES, nel 98 ottenne 15 algoritmi finalisti e nel 99 solo 5 di essi vennero selezionati,

nel 2000 venne scelto Rijndael (realizzato da 2 ingegneri belgi, Joan Daemen e Vincent Rijmen) che divenne

standard NIST nel 2001.

Qualità di AES

- efficienza hardware e software su diverse piattaforme;

- schedula chiavi molto velocemente;

- opera in ambienti con memoria ridotta;

- dimensioni dei messaggi in chiaro e della chiave molto flessibili;

- consente di specificare il numero di round (9, 11 o 13);

- è resistente agli attacchi di crittoanalisi;

Caratteristiche di Rijndael

Rijndael non è basato sulla struttura del cifrario di Feistel, anch’esso utilizza una sottochiave per ogni fase,

ma il blocco non viene suddiviso in 2 metà, esso viene elaborato interamente, l’elaborazione prevede tre

sostituzioni ed una permutazione.

Differenze tra Rijndael e AES

dimensione messaggio:

- Rijndael consente l’utilizzo di blocchi da 128, 192 e 256bit, rappresentati con una matrice di byte di 4

righe e n colonne (a seconda del blocco 128/32=4, 192/32=6, 256/32=8);

- AES accetta solo blocchi da 128bit (matrice di byte 4x4);

Sia Rijndael che AES ammettono chiavi da 128, 192 e 256bit, anche le chiavi vengono inseriti in matrici di

byte di 4 righe e colonne variabili.

Passaggi dell’algoritmo Rijndael

1. Il blocco di testo in chiaro viene subito “xorato” con la sottochiave

2. L’output di quella fase attraversa poi 9/11/13 fasi uguali, in cui ognuna di esse prevede 3 sostituzioni e 1

permutazione, nell’ordine:

- SubstituteByte (sostituzione sui byte, funzione inversa nella decifratura)

- ShiftRow (scorrimento delle righe del blocco, funzione inversa nella decifratura)

- MixColumn (trasformazione sulle colonne, funzione inversa nella decifratura)

- AddRoundKey (XOR con la sottochiave di quella fase, il processo inverso si ottiene attraverso un

doppio XOR tra la chiave e il blocco)

3. La fase finale prevede le medesime operazioni delle fasi precedenti, escludendo la MixColumn

Come funzionano le singole funzioni

SubstituteByte: ogni byte del blocco viene sostituito da un byte presente nella S-box (dimensioni 16x16

bytes), ogni cella del blocco contiene 8bit (1byte) la prima metà di essi individua la riga della S-box, la

seconda metà la colonna (con quattro bit è possibile indicizzare da 0 a 15 posizioni).

Per eseguire l’operazione inversa vi è un’apposita S-box che opera in modo opposto, recupera la codifica

degli 8bit originari.

ShitRows: avviene uno scorrimento circolare verso sinistra, in cui:

- la prima riga del blocco non cambia;

- la seconda scala circolarmente di 1 byte verso sx (il 2° byte diventa il primo, il 1° diventa il quarto…)

- la terza scala circ. di 2 byte verso sx (il 3°byte diventa il primo, il 4° diventa il secondo, il 1° diventa il

terzo…)

- la quarta scala circ. di 3 byte verso sx (il 4°byte diventa il primo, il 1° diventa secondo, il 3° diventa

quarto…)

In questo modo i 4byte di ogni colonna di partenza sono distribuiti ognuno su una colonna differente, nella

Anteprima
Vedrai una selezione di 1 pagina su 2
Fondamenti di sicurezza - AES Advanced Encryption Standard Pag. 1
1 su 2
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher koganzjo di informazioni apprese con la frequenza delle lezioni di Fondamenti di sicurezza e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi dell' Insubria o del prof Carminati Barbara.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community