Aller au contenu principal

3.4. L'échange KRB_SAFE

Vue d'ensemble

Le message KRB_SAFE assure l'intégrité des données applicatives échangées entre principaux. Il n'assure pas la confidentialité : les données sont envoyées en clair mais protégées par une somme de contrôle cléée (keyed checksum).

Rôle

KRB_SAFE est utilisé lorsque :

  • une protection d'intégrité est requise
  • la confidentialité n'est pas nécessaire
  • un surcoût moindre que le chiffrement est souhaité

Structure du message

KRB_SAFE contient :

  • les données utilisateur (en clair)
  • l'horodatage (détection de relecture)
  • le numéro de séquence (optionnel)
  • les adresses expéditeur et destinataire (optionnelles)
  • la somme de contrôle cléée (intégrité)

Génération du message KRB_SAFE

L'expéditeur :

  1. construit le message avec les données utilisateur
  2. ajoute l'horodatage et le numéro de séquence optionnel
  3. calcule la somme de contrôle cléée sur l'ensemble du message
  4. transmet le message avec la somme de contrôle

Réception du message KRB_SAFE

Le destinataire :

  1. recalcule la somme de contrôle avec la clé partagée
  2. compare la somme calculée à celle reçue
  3. vérifie l'horodatage (protection contre la relecture)
  4. contrôle le numéro de séquence s'il est utilisé
  5. accepte ou rejette le message selon la validation

Propriétés de sécurité

  • Intégrité : la somme de contrôle cléée empêche l'altération
  • Protection contre la relecture : horodatage et numéro de séquence
  • Pas de confidentialité : les données sont transmises en clair

Référence

Pour les détails techniques complets, voir RFC 4120, section 3.4.