3.8. Payload AUTH
3.8. Payload AUTH
Il payload AUTH contiene i dati utilizzati per autenticare l'identità durante l'instaurazione della IKE SA.
Il formato del payload AUTH è il seguente:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Next Payload |C| RESERVED | Payload Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Auth Method | RESERVED | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Authentication Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 11: Formato del payload AUTH
o Auth Method (1 ottetto) - Tipo del metodo di autenticazione. I valori definiti includono:
- 1 - Firma digitale RSA
- 2 - Codice di integrità del messaggio con chiave condivisa (PSK)
- 3 - Firma digitale DSS (obsoleto)
o RESERVED (3 ottetti) - DEVE essere inviato come zero e DEVE essere ignorato al ricevimento.
o Authentication Data (lunghezza variabile) - Dati di autenticazione, il cui formato e contenuto sono determinati dal metodo Auth Method.
Il calcolo dei dati di autenticazione è il seguente:
Per la firma RSA (metodo 1): AUTH = prf( SK_pi,
Per la chiave condivisa (metodo 2): AUTH = prf( prf(Shared Secret, "Key Pad for IKEv2"),
Per la firma DSS (metodo 3): simile a RSA, usando l'algoritmo DSS.
SignedOctets è composto da due parti:
- Il messaggio IKE_SA_INIT usato per creare la IKE SA (che inizia con l'header ISAKMP fino al payload contenente il nonce dell'iniziatore).
- Una funzione pseudo-casuale applicata al nonce del risponditore (includendo la concatenazione di initiator SPI, responder SPI e nonce del risponditore).
Per la costruzione dettagliata di SignedOctets, vedere la sezione 2.15 di RFC 5996.