IPsec - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs est disponible ici.

IPSec (Internet Protocol Security) est un ensemble de protocoles (couche 3 modèle OSI) utilisant des algorithmes permettant le transport de données sécurisées sur un réseau IP.

Réalisé dans le but de fonctionner avec le protocole IPv6, il fut adapté pour l'actuel protocole IP : IPv4.

Son but est d'authentifier et de chiffrer les données : le flux ne pourra être compréhensible que par le destinataire final (chiffrement) et la modification des données par des intermédiaires ne pourra être possible (intégrité).

IPsec est souvent un composant de VPN, il est à l'origine de son aspect sécurité (canal sécurisé ou tunneling).

Lors de l'établissement d'une connexion IPsec, plusieurs opérations sont effectuées :

  • un canal d'échange de clés, sur une connexion UDP depuis et vers le port 500 (ISAKMP pour Internet Security Association and Key Management Protocol), défini dans la RFC 2408.

Le protocole IKE est en charge de négocier la connexion. Ce protocole permet deux types d'authentifications, PSK (Pre-Shared Key ou secret partagé) pour la génération de clefs de sessions ou à l'aide de certificats/signatures RSA

  • un ou plusieurs canaux de données par lesquels le trafic du réseau privé est véhiculé, deux protocoles sont possibles :
    • le protocole n°50, ESP (Encapsulating Security Payload), défini dans la RFC 2406 qui fournit l' intégrité et la confidentialité
    • le protocole n°51, AH, (Authentication Header), défini dans la RFC 2402 et qui ne fournit que l'intégrité.

La mise en place d'une architecture sécurisée à base d'IPsec est détaillée dans la RFC 2401.

Indépendamment des deux protocoles possibles AH/ESP, deux modes sont possibles, tunnel ou transport. Dans le cadre du mode transport, on peut choisir le protocole AH, ESP ou les deux. Dans le cadre du mode tunnel, on doit choisir entre le protocole AH ou ESP. Ce mode crée un nouveau paquet IP encapsulant celui qui doit être transporté.

Description des paquets

Authentication Header (AH)

Un paquet AH se présente comme suit :

0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Entête suivant Taille Réservé
Index du paramètre de sécurité (SPI)
Numéro de séquence

Données d'authentification (variable)

Significations :

Entête suivant 
identifie le protocole utilisé pour le transfert
Taille 
taille du paquet AH
Réservé 
champ à zéro (pour une utilisation future)
Index du paramètre de sécurité (SPI) 
identifie les paramètres de sécurité en fonction de l'adresse IP
Numéro de séquence 
un compteur qui évite les attaques par répétition
Données d'authentification 
contient les informations nécessaires pour authentifier le paquet

Encapsulated Security Payload (ESP)

Un paquet ESP se présente comme suit :

0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Index du paramètre de sécurité (SPI)
Numéro de séquence

Données attachées * (variable)

  Remplissage (0-255 octets)
    Longueur du remplissage Entête suivant

Données d'authentification (variable)

Significations :

Index du paramètre de sécurité (SPI) 
identifie les paramètres de sécurité en fonction de l'adresse IP
Numéro de séquence 
un compteur qui évite les attaques par répétition
Données attachées 
les données à transférer
Remplissage 
permet d'obtenir une taille de bloc compatible avec le chiffrement
Longueur du remplissage 
exprimée en bits
Entête suivant 
identifie le protocole utilisé pour le transfert
Données d'authentification 
contient les informations nécessaires pour authentifier le paquet
Page générée en 0.036 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise