4.2. Message Authentication and Integrity (Autenticazione e integrità dei messaggi)
4.2. Message Authentication and Integrity (Autenticazione e integrità dei messaggi)
In tutta questa sezione, M denoterà i dati da proteggere per integrità. Nel caso di SRTP, M DEVE consistere nella porzione autenticata del pacchetto (come specificato nella Figura 1) concatenata con il ROC, M = Porzione autenticata || ROC; nel caso di SRTCP, M DEVE consistere solo nella porzione autenticata (come specificato nella Figura 2).
Parametri comuni:
- AUTH_ALG è l'algoritmo di autenticazione
- k_a è la chiave di autenticazione del messaggio di sessione
- n_a è la lunghezza in bit della chiave di autenticazione
- n_tag è la lunghezza in bit del tag di autenticazione di output
- SRTP_PREFIX_LENGTH è la lunghezza in ottetti del prefisso del flusso di chiavi come definito sopra, un parametro di AUTH_ALG
Le chiavi di autenticazione di sessione distinte per SRTP/SRTCP sono per impostazione predefinita derivate come specificato nella Sezione 4.3.
I valori di n_a, n_tag e SRTP_PREFIX_LENGTH DEVONO essere fissi per qualsiasi particolare valore fisso della chiave.
Descriviamo il processo di calcolo dei tag di autenticazione come segue. Il mittente calcola il tag di M e lo aggiunge al pacchetto. Il ricevitore SRTP verifica una coppia messaggio/tag di autenticazione calcolando un nuovo tag di autenticazione su M utilizzando l'algoritmo e la chiave selezionati, e poi lo confronta con il tag associato al messaggio ricevuto. Se i due tag sono uguali, allora la coppia messaggio/tag è valida; altrimenti, è invalida e DEVE essere restituito il messaggio di audit di errore "AUTHENTICATION FAILURE".