3 ESP (Encapsulating Security Payload)
Il protocollo ESP (Encapsulating Security Payload) fornisce
servizi di riservatezza, autenticazione, integrità e protezione
anti-replay. È possibile utilizzare solo il
servizio di riservatezza, oppure solo i servizi di
autenticazione e integrità (ed eventualmente anti-replay), oppure
tutti i servizi insieme. Per quanto riguarda l'autenticazione,
questa differisce da quella fornita dal protocollo AH in quanto
non copre l'header IP esterno. La posizione di ESP all'interno del
pacchetto IP nelle modalità tunnel e
trasporto è mostrata in figura
2.3.
Figura 2.3:
Posizionamento di ESP
all'interno del pacchetto IP.
|
|
Come si vede nella figura 2.3, ESP aggiunge
sia un header sia un trailer, perché incapsula tutti i dati che
protegge. Ecco nel dettaglio il formato del pacchetto, mostrato
in figura 2.4.
- Security Parameters Index (SPI)
- contiene
un valore numerico che, insieme con l'indirizzo IP di destinazione
e il protocollo (in questo caso ESP), permette di identificare la
security association utilizzata. È
analogo all'omonimo campo presente in AH.
- Sequence number
- contiene il numero di sequenza del pacchetto nell'ambito della
security association, come in AH.
- Payload data
- contiene il payload del pacchetto IP originale (se in modalità
trasporto) oppure l'intero pacchetto
IP originale (se in modalità tunnel),
cifrato se si utilizza il servizio di riservatezza. Nel caso
l'algoritmo di cifratura utilizzato necessiti di un vettore di
inizializzazione (Initialization Vector -- IV), questo viene inserito
all'inizio del payload.
- Padding
- il padding (variabile tra 0 e 255 byte) può essere necessario sia perché
l'algoritmo di cifratura può richiedere che il testo in chiaro
abbia una dimensione multipla di un certo valore, sia per
assicurare il corretto allineamento dei campi successivi, come
mostrato in figura 2.4. È anche possibile
aggiungere un padding per limitare gli effetti di un'analisi del
traffico basata sulla dimensione dei pacchetti.
- Pad length
- contiene la lunghezza del padding.
- Next header
- contiene il codice identificativo del protocollo per i dati contenuti
nel payload, per esempio TCP o UDP. Si noti che, se si utilizza il
servizio di riservatezza, questo campo è cifrato.
- Authentication data
- contiene il valore di controllo integrità (ICV),
calcolato sull'intero pacchetto ESP escluso questo campo. È
presente solo se si utilizza il servizio di
autenticazione/integrità.
Figura 2.4:
Formato del pacchetto ESP.
|
|
Anche ESP, come AH, presuppone che esista già una security
association tra i due nodi e non si preoccupa di negoziarne i
parametri. La specifica del protocollo ESP è contenuta
in [4].
©2001 Davide Cerri