Passa al contenuto principale

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, ), dove InitiatorSignedOctets sono i dati da firmare.

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:

  1. 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).
  2. 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.