4.2. Message Authentication and Integrity (Nachrichtenauthentifizierung und Integrität)
4.2. Message Authentication and Integrity (Nachrichtenauthentifizierung und Integrität)
In diesem gesamten Abschnitt bezeichnet M Daten, die integritätsgeschützt werden sollen. Im Fall von SRTP SOLL M aus dem authentifizierten Teil des Pakets (wie in Abbildung 1 angegeben) bestehen, der mit dem ROC verkettet ist, M = Authentifizierter Teil || ROC; im Fall von SRTCP SOLL M nur aus dem authentifizierten Teil (wie in Abbildung 2 angegeben) bestehen.
Gemeinsame Parameter:
- AUTH_ALG ist der Authentifizierungsalgorithmus
- k_a ist der Sitzungsnachrichtenauthentifizierungsschlüssel
- n_a ist die Bitlänge des Authentifizierungsschlüssels
- n_tag ist die Bitlänge des Ausgabeauthentifizierungstags
- SRTP_PREFIX_LENGTH ist die Oktettlänge des oben definierten Schlüsselstrom-Präfixes, ein Parameter von AUTH_ALG
Die unterschiedlichen Sitzungsauthentifizierungsschlüssel für SRTP/SRTCP werden standardmäßig wie in Abschnitt 4.3 spezifiziert abgeleitet.
Die Werte von n_a, n_tag und SRTP_PREFIX_LENGTH MÜSSEN für jeden bestimmten festen Wert des Schlüssels fest sein.
Wir beschreiben den Prozess der Berechnung von Authentifizierungstags wie folgt. Der Sender berechnet das Tag von M und hängt es an das Paket an. Der SRTP-Empfänger verifiziert ein Nachricht/Authentifizierungstag-Paar, indem er ein neues Authentifizierungstag über M unter Verwendung des ausgewählten Algorithmus und Schlüssels berechnet und es dann mit dem mit der empfangenen Nachricht verbundenen Tag vergleicht. Wenn die beiden Tags gleich sind, dann ist das Nachricht/Tag-Paar gültig; andernfalls ist es ungültig und die Fehleraudit-Nachricht "AUTHENTICATION FAILURE" MUSS zurückgegeben werden.