A2. Anti-Replay Window (Fenêtre anti-rejeu)
A2. Anti-Replay Window (Fenêtre anti-rejeu)
Le récepteur maintiendra une fenêtre anti-rejeu de taille W. Cette fenêtre limitera à quel point un paquet peut être désordonné, par rapport au paquet avec le numéro de séquence le plus élevé qui a été authentifié jusqu'à présent. (Aucune exigence n'est établie pour les tailles minimales ou recommandées pour cette fenêtre, au-delà des valeurs de 32 et 64 paquets déjà établies pour les fenêtres de numéros de séquence de 32 bits. Cependant, il est suggéré qu'un implémenteur ajuste ces valeurs en fonction de la vitesse d'interface prise en charge par une implémentation qui utilise l'option ESN. De plus, l'algorithme décrit ci-dessous suppose que la fenêtre ne dépasse pas 2^31 paquets de largeur.) Tous les 2^32 numéros de séquence associés à une valeur fixe quelconque pour les 32 bits de poids fort (Seqh) seront désormais appelés un sous-espace de numéros de séquence (sequence number subspace). Le tableau suivant répertorie les variables pertinentes et leurs définitions.
Var. Size
Name (bits) Meaning
---- ------ ---------------------------
W 32 Size of window (Taille de la fenêtre)
T 64 Highest sequence number authenticated so far,
upper bound of window (Numéro de séquence le plus élevé authentifié jusqu'à présent, limite supérieure de la fenêtre)
Tl 32 Lower 32 bits of T (32 bits de poids faible de T)
Th 32 Upper 32 bits of T (32 bits de poids fort de T)
B 64 Lower bound of window (Limite inférieure de la fenêtre)
Bl 32 Lower 32 bits of B (32 bits de poids faible de B)
Bh 32 Upper 32 bits of B (32 bits de poids fort de B)
Seq 64 Sequence Number of received packet (Numéro de séquence du paquet reçu)
Seql 32 Lower 32 bits of Seq (32 bits de poids faible de Seq)
Seqh 32 Upper 32 bits of Seq (32 bits de poids fort de Seq)
Lors de l'exécution du contrôle anti-rejeu, ou lors de la détermination des bits de poids fort à utiliser pour authentifier un paquet entrant, il existe deux cas:
- Case A (Cas A): Tl >= (W - 1). Dans ce cas, la fenêtre se trouve dans un sous-espace de numéros de séquence. (Voir Figure 1)
- Case B (Cas B): Tl < (W - 1). Dans ce cas, la fenêtre s'étend sur deux sous-espaces de numéros de séquence. (Voir Figure 2)
Dans les figures ci-dessous, la ligne du bas ("----") montre deux sous-espaces de numéros de séquence consécutifs, avec des zéros indiquant le début de chaque sous-espace. Les deux lignes plus courtes au-dessus montrent les bits de poids fort qui s'appliquent. Le "====" représente la fenêtre. Le "****" représente les numéros de séquence futurs, c'est-à-dire ceux au-delà du numéro de séquence le plus élevé actuellement authentifié (ThTl).
Th+1 *********
Th =======*****
--0--------+-----+-----0--------+-----------0--
Bl Tl Bl
(Bl+2^32) mod 2^32
Figure 1 -- Cas A
Th ====**************
Th-1 ===
--0-----------------+--0--+--------------+--0--
Bl Tl Bl
(Bl+2^32) mod 2^32
Figure 2 -- Cas B