Est-ce que Ike utilise Oakley
Ipsec utilise-t-il ike ou isakmp
IKEV2 utilise ISAKMP pour appeler Oakley pendant la phase 2, où il devrait coordonner l’entrée à Skeme (matériau de keying) et le rendement de la sortie à Isakmp (touches). Pourquoi Isakmp ne communique-t-il pas simplement avec Skeme directement? Pourquoi n’y a-t-il pas un seul processus qui s’occupe de toutes ces étapes à la fois? Trois mots: secret avant parfait (PFS).
Est-ce que Ike utilise Oakley
Obsolète par: 4306 historique
Mis à jour par: 4109
Résumé:
1. IPSEC utilise ISAKMP (Internet Security Association et Key Management Protocol) pour l’échange d’informations de saisie et l’authentification des pairs.
2. IKEV2, la dernière version d’Ike, utilise Isakmp pour invoquer Oakley, un protocole d’échange clé, pendant la phase 2 de la négociation IPSEC.
3. ISAKMP coordonne l’entrée à Skeme, qui génère du matériau de saisie, et renvoie la sortie à Isakmp, qui gère la gestion des clés.
4. La raison pour laquelle Isakmp ne communique pas directement avec Skeme est due à un secret avant parfait (PFS), ce qui garantit que le compromis des clés d’une session ne compromet pas les sessions passées ou futures.
Points clés:
- IPSec utilise ISAKMP pour l’échange de clés et l’authentification.
- IKEV2 utilise Isakmp pour appeler Oakley pendant la phase 2 de la négociation IPSEC.
- ISAKMP coordonne l’entrée à Skeme et renvoie la sortie à Isakmp.
- Le secret avant parfait (PFS) est la raison pour laquelle Isakmp ne communique pas directement avec Skeme.
Des questions:
- Pourquoi ikev2 utilise-t-il Isakmp? IKEV2 utilise Isakmp pour invoquer Oakley, qui est responsable de la génération de matériaux de saisie.
- Quel est le but de Isakmp? ISAKMP est utilisé pour l’échange de clés et l’authentification dans iPsec.
- Quel est le rôle de Skeme dans la négociation IPSEC? Skeme génère du matériel de saisie en fonction de l’entrée reçue d’Isakmp.
- Pourquoi n’y a-t-il pas un seul processus qui gère toutes les étapes de l’échange de clés et de la génération de clés? Le secret avant parfait (PFS) nécessite la séparation des processus d’échange de clés et de génération de clés pour éviter le compromis des sessions passées ou futures.
- Quel est le but d’Oakley dans la négociation IPSEC? Oakley est un protocole d’échange clé utilisé pendant la phase 2 de la négociation IPSEC pour générer du matériel de saisie.
- Quel est le secret avant parfait (PFS)? Le secret avant parfait (PFS) garantit que le compromis des clés d’une session ne compromet pas les sessions passées ou futures.
- Isakmp communique-t-il directement avec Skeme? Non, ISAKMP coordonne l’entrée à Skeme et renvoie la sortie à Isakmp pour la gestion des clés.
- Quelle version d’Ike est utilisée dans ipsec? IKEV2 est la dernière version utilisée dans iPsec.
- Quel est le but d’Isakmp dans ipsec? ISAKMP est utilisé pour l’échange de clés et l’authentification dans iPsec.
- Que se passe-t-il pendant la phase 2 de la négociation IPSEC? Oakley est invoqué par Isakmp pour la génération de clés pendant la phase 2 de la négociation IPSEC.
- Pourquoi PFS est-il important dans iPsec? La PFS garantit que le compromis des clés d’une session ne compromet pas les séances passées ou futures, améliorant la sécurité.
- Pourquoi Isakmp ne communique-t-il pas directement avec Skeme? La séparation des processus d’échange de clés et de génération de clés est nécessaire pour un secret avant parfait (PFS) dans IPSEC.
- Peut Isakmp être utilisé pour d’autres associations de sécurité en dehors de l’ipsec? Oui, Isakmp peut être utilisé pour d’autres associations de sécurité telles que AH et ESP pour l’IETF IPSec DOI.
- L’ensemble des protocoles Oakley et Skeme doivent-ils être mis en œuvre pour IPSec? Non, seul un sous-ensemble d’Oakley et de Skeme nécessaires aux objectifs IPSEC doit être mis en œuvre.
- Qu’est-ce que Ike représente? Ike signifie Internet Key Exchange.
Réponses détaillées:
- Pourquoi ikev2 utilise-t-il Isakmp?
IKEV2 utilise Isakmp pour invoquer Oakley pendant la phase 2 de la négociation IPSEC. . Cette division des responsabilités permet un secret avant parfait (PFS), garantissant la sécurité des séances passées et futures. - Quel est le but de Isakmp?
. Il fournit un cadre pour négocier et établir des associations de sécurité (SAS) entre deux appareils. - Quel est le rôle de Skeme dans la négociation IPSEC?
Skeme est une technique d’échange clé utilisée par Isakmp pour générer du matériel de saisie pour les associations de sécurité. Il fournit des fonctionnalités telles que l’anonymat, la répudabilité et le rafraîchissement rapide. Skeme prend les commentaires d’Isakmp et génère du matériau de saisie, qui est ensuite renvoyé à Isakmp pour un traitement ultérieur. - Pourquoi n’y a-t-il pas un seul processus qui gère toutes les étapes de l’échange de clés et de la génération de clés?
La séparation des processus d’échange de clés et de génération de clés est nécessaire pour un secret avant parfait (PFS) dans IPSEC. La PFS garantit que le compromis des clés d’une session ne compromet pas les séances passées ou futures. En séparant ces processus et en les coordonnant via Isakmp, la sécurité de l’iPsec est améliorée. - Quel est le but d’Oakley dans la négociation IPSEC?
Oakley est un protocole d’échange clé utilisé pendant la phase 2 de la négociation IPSEC. Il décrit une série d’échanges de clés, appelés «modes», qui fournissent des fonctionnalités telles que le secret avant parfait pour les clés, la protection de l’identité et l’authentification. Oakley est invoqué par Isakmp pour générer du matériel de saisie pour ipsec. - Quel est le secret avant parfait (PFS)?
Le secret avant parfait (PFS) est une propriété de protocoles cryptographiques qui garantit que compromettre les clés d’une session ne comprometra pas les séances passées ou futures. Dans le contexte de l’IPSEC, la PFS est réalisée en séparant les processus d’échange de clés et de génération de clés, tels que coordonnés par Isakmp et Oakley, assurant la sécurité de toutes les séances IPSec. - ?
Non, Isakmp ne communique pas directement avec Skeme. ISAKMP coordonne l’entrée à Skeme et renvoie la sortie à Isakmp. Cette division des responsabilités permet d’appliquer un secret avant parfait (PFS) et garantit la sécurité du matériau de saisie utilisé dans IPSEC. - Quelle version d’Ike est utilisée dans ipsec?
La dernière version d’Ike utilisée dans IPSEC est IKEV2, qui s’appuie sur la fonctionnalité des versions précédentes et fournit des fonctionnalités de sécurité améliorées. - Quel est le but d’Isakmp dans ipsec?
Le but d’Isakmp dans IPSEC est de fournir un cadre d’authentification et d’échange de clés. ISAKMP est indépendant d’échange de clés et prend en charge diverses méthodes d’échange de clés. Il est responsable de la négociation et de l’établissement des associations de sécurité (SAS) entre les pairs IPSEC. - ?
Pendant la phase 2 de la négociation de l’IPSEC, Isakmp invoque Oakley, un protocole d’échange de clés, pour générer du matériel de saisie. Ce matériel de saisie est utilisé pour établir des associations de sécurité (SAS) pour le trafic IPSEC entre les pairs. - Pourquoi PFS est-il important dans iPsec?
Le secret avant parfait (PFS) est important dans IPSEC car il garantit que le compromis des clés utilisés en une seule session ne comprometra pas les clés utilisées dans les séances passées ou futures. En séparant les processus d’échange de clés et de génération de clés, IPSEC réalise PFS et améliore la sécurité globale de la communication. - Pourquoi Isakmp ne communique-t-il pas directement avec Skeme?
ISAKMP ne communique pas directement avec Skeme pour appliquer un secret avant parfait (PFS). La PFS nécessite la séparation des processus d’échange de clés et de génération de clés, tels que coordonnés par Isakmp et Oakley. Cette séparation améliore la sécurité de l’IPSEC en protégeant le matériau de saisie utilisé dans la communication. - Peut Isakmp être utilisé pour d’autres associations de sécurité en dehors de l’ipsec?
Oui, Isakmp peut être utilisé pour d’autres associations de sécurité en dehors de l’iPsec. Il peut être utilisé pour des associations de sécurité telles que AH (en-tête d’authentification) et ESP (charge utile de sécurité encapsulée) pour l’IETF IPSEC DOI (domaine d’interprétation), fournissant un cadre d’authentification et d’échange de clés dans divers scénarios de communication sécurisés. - L’ensemble des protocoles Oakley et Skeme doivent-ils être mis en œuvre pour IPSec?
Non, pour IPSec, il n’est pas nécessaire de mettre en œuvre l’ensemble des protocoles Oakley et Skeme. Seul un sous-ensemble de ces protocoles, qui est nécessaire pour atteindre les objectifs d’IPSEC, doit être mis en œuvre. Cela permet une flexibilité dans le choix des protocoles et fonctionnalités spécifiques en fonction des exigences spécifiques du déploiement. - Qu’est-ce que Ike représente?
Ike signifie Internet Key Exchange. Il s’agit d’un protocole de gestion clé utilisé dans IPSEC pour négocier et établir des associations de sécurité entre leurs pairs.
Ipsec utilise-t-il ike ou isakmp
IKEV2 utilise ISAKMP pour appeler Oakley pendant la phase 2, où il devrait coordonner l’entrée à Skeme (matériau de keying) et le rendement de la sortie à Isakmp (touches). Pourquoi Isakmp ne communique-t-il pas simplement avec Skeme directement? Pourquoi n’y a-t-il pas un seul processus qui s’occupe de toutes ces étapes à la fois? Trois mots: secret avant parfait (PFS).
Est-ce que Ike utilise Oakley
[RFC Home] [Texte | PDF | HTML] [Tracker] [IPR] [Page d’informations]
Obsolète par: 4306 historique
Mis à jour par: 4109
Groupe de travail du réseau D. . Catégorie Carrel: Standards Track Cisco Systems Novembre 1998 The Internet Key Exchange (IKE) Statut de ce mémo Ce document spécifie un protocole de suivi des normes Internet pour la communauté Internet, et demande des discussions et des suggestions d'amélioration. Veuillez vous référer à l'édition actuelle des "normes de protocole officiel d'Internet" (STD 1) pour l'état de normalisation et l'état de ce protocole. La distribution de cette note est illimitée. AVIS COPYRIGHT Copyright (c) The Internet Society (1998). Tous les droits sont réservés. Table des matières 1 Résumé. 2 2 Discussion. 2 3 Termes et définitions. 3 3.1 Terminologie des exigences. 3 3.2 notation. 3 3.3 Secrectie avant parfaite. 5 3.4 Association de sécurité. . 5 5 échanges. .1 Authentification avec des signatures numériques. 10 5.2 Authentification avec cryptage de clé publique. 12 5.. .4 Authentification avec une clé pré-partagée. 16 5.5 Mode rapide. 16 5.6 nouveaux mode de groupe. 20 5.7 Échanges d'information ISAKMP. 20 6 groupes d'Oakley. 21 6.1 First Oakley Group. 21 6.2 secondes du groupe Oakley. 22 6.3 troisième groupe Oakley. 22 6.4 Fourth Oakley Group. 23 7 Explosion de charge utile de l'échange complet. 23 7.1 phase 1 avec mode principal. .2 Phase 2 avec mode rapide. 25 8 Exemple de secret avant parfait. 27 9 Indices de mise en œuvre. 27
RFC 2409 IKE novembre 1998 . 28 11 Considérations de l'IANA. 30 12 Remerciements. 31 13 références. 31 Annexe A. . 37 Adresses des auteurs. Note de 40 auteurs. 40 Énoncé complet du droit d'auteur. 41 1. Abstrait ISAKMP ([MSST98]) fournit un cadre pour l'authentification et l'échange de clés mais ne les définit pas. ISAKMP est conçu pour être indépendant de l'échange clé; c'est-à-dire qu'il est conçu pour prendre en charge de nombreux échanges de clés différents. Oakley ([ORM96]) décrit une série d'échanges clés - appelés "modes" - et détaille les services fournis par chacun (e.g. Secrécyt avant parfait pour les clés, la protection de l'identité et l'authentification). Skeme ([Skeme]) décrit une technique d'échange de clés polyvalente qui fournit l'anonymat, la répudabilité et le rafraîchissement rapide des clés. Ce document décrit un protocole utilisant une partie d'Oakley et une partie de Skeme en collaboration avec ISAKMP pour obtenir du matériel de saisie authentifié pour une utilisation avec ISAKMP, et pour d'autres associations de sécurité telles que AH et ESP pour l'IETF IPSEC DOI. 2. Discussion Cette note décrit un protocole hybride. Le but est de négocier et de fournir un matériel de saisie authentifié pour les associations de sécurité de manière protégée. Les processus qui mettent en œuvre ce mémo peuvent être utilisés pour négocier des réseaux privés virtuels (VPN) et également pour fournir un utilisateur distant d'un site distant (dont l'adresse IP ne doit pas être connue au préalable) un accès à un hôte ou un réseau sécurisé. La négociation des clients est soutenue. Le mode client est l'endroit où les parties de négociation ne sont pas les points de terminaison pour lesquels la négociation de l'association de sécurité a lieu. Lorsqu'elle est utilisée en mode client, l'identité des parties finales reste cachée. Standards Harkins & Carrel Track [Page 2]
RFC 2409 IKE novembre 1998 Cela ne met pas en œuvre tout le protocole Oakley, mais seulement un sous-ensemble nécessaire pour satisfaire ses objectifs. Il ne revendique pas la conformité ni la conformité avec l'ensemble du protocole d'Oakley et il n'est pas dépendant du protocole Oakley. De même, cela n'implémente pas l'ensemble du protocole SKEME, mais seulement la méthode du cryptage des clés publics pour l'authentification et son concept de repensage rapide à l'aide d'un échange de nonces. Ce protocole ne dépend en aucune façon du protocole Skeme. 3. Termes et définitions 3.1 Terminologie des exigences Les mots clés "doivent", "ne doivent pas", "requis", "devraient", "ne devraient pas" et "May" qui apparaissent dans ce document doivent être interprétés comme décrit dans [BRA97]. 3.2 notation La notation suivante est utilisée tout au long de cette note. HDR est un en-tête isakmp dont le type d'échange est le mode. Lorsque vous écrivez comme HDR *, cela indique le cryptage en charge utile. SA est une charge utile de négociation SA avec une ou plusieurs propositions. Un initiateur peut fournir de multiples propositions de négociation; Un intervenant doit répondre avec un seul. _b indique le corps de la charge utile - le vpayload générique isakmp n'est pas inclus. SAI_B est le corps entier de la charge utile SA (moins l'en-tête générique isakmp) - i.e. La situation DOI, toutes les propositions et toutes les transformations offertes par l'initiateur. CKY-I et CKY-R sont le cookie de l'initiateur et le cookie du répondeur, respectivement, de l'en-tête Isakmp. g ^ xi et g ^ xr sont les valeurs publiques diffie-hellman ([dh]) de l'initiateur et du répondeur respectivement. G ^ xy est le secret partagé Diffie-Hellman. KE est la charge utile d'échange de clés qui contient les informations publiques échangées dans un échange Diffie-Hellman. Il n'y a pas de codage particulier (e.g. un TLV) utilisé pour les données d'une charge utile KE. Standards Harkins & Carrel Track [Page 3]
RFC 2409 IKE novembre 1998 NX est la charge utile nonce; x peut être: i ou r pour l'initiateur et répondeur isakmp respectivement. IDX est la charge utile d'identification pour "x". X peut être: "II" ou "IR" pour l'initiateur et répondeur ISAKMP respectivement lors de la négociation de phase un; ou "ui" ou "ur" pour l'initiateur et le répondeur utilisateur respectivement pendant la phase deux. Le format de charge utile d'identification pour Internet DOI est défini dans [PIP97]. SIG est la charge utile de signature. Les données à signer sont d'échanges. CERT est la charge utile du certificat. Hash (et tout dérivé tel que le hash (2) ou le hash_i) est la charge utile de hachage. Le contenu du hachage est spécifique à la méthode d'authentification. PRF (clé, MSG) est la fonction pseudo-aléatoire à clé - souvent une fonction de hachage à clé - utilisé pour générer une sortie déterministe qui apparaît pseudo-aléatoire. Les PRF sont utilisés à la fois pour les dérivations clés et pour l'authentification (I.e. En tant que mac à clé). (Voir [KBC96]). Skeyid est une chaîne dérivée du matériel secret connu uniquement des joueurs actifs de l'échange. SKEYID_E est le matériau de saisie utilisé par l'ISAKMP SA pour protéger la confidentialité de ses messages. SKEYID_A est le matériau de saisie utilisé par l'ISAKMP SA pour authentifier ses messages. SKEYID_D est le matériau de saisie utilisé pour dériver les clés des associations de sécurité non ISAKMP. y indique que "x" est chiffré par la clé "y". --> signifie la communication "Initiator to Responder" (Demandes). x] indique que x est facultatif. Standards Harkins & Carrel Track [Page 4]
RFC 2409 IKE novembre 1998 Le chiffrement des messages (lorsqu'il est noté par un «*» après l'en-tête isakmp) doit commencer immédiatement après l'en-tête ISAKMP. Lorsque la communication est protégée, toutes les charges utiles suivant l'en-tête isakmp doivent être cryptées. Les clés de chiffrement sont générées à partir de SKEYID_E d'une manière définie pour chaque algorithme. 3.3 Secrécyt avant parfait Lorsqu'il est utilisé dans le Secrecy Forward Perfect Forward (PFS), fait référence à la notion selon laquelle le compromis d'une seule clé permettra d'accès à uniquement des données protégées par une seule clé. Pour que PFS existe la clé utilisée pour protéger la transmission des données ne doit pas être utilisée pour dériver des clés supplémentaires, et si la clé utilisée pour protéger la transmission des données a été dérivée d'un autre matériau de saisie, ce matériau ne doit pas être utilisé pour dériver d'autres clés. Un secret avant parfait pour les clés et les identités est fourni dans ce protocole. (Sections 5.5 et 8). 3.4 Association de sécurité Une association de sécurité (SA) est un ensemble de politiques et de clés utilisées pour protéger les informations. L'Isakmp SA est la politique et les clés partagées utilisées par les pairs négociés de ce protocole pour protéger leur communication. 4. Introduction Oakley et Skeme définissent chacun une méthode pour établir un échange de clés authentifié. Cela comprend la construction de charges utiles, les charges utiles de l'information, la commande dans laquelle ils sont traités et comment ils sont utilisés. Alors qu'Oakley définit les "modes", Isakmp définit les "phases". La relation entre les deux est très simple et Ike présente des échanges différents comme des modes qui fonctionnent en deux phases. La phase 1 est l'endroit où les deux pairs isakmp établissent un canal sécurisé et authentifié avec lequel communiquer. C'est ce qu'on appelle l'Isakmp Security Association (SA). "Mode principal" et "mode agressif" chacun accomplit un échange de phase 1. "Mode principal" et "mode agressif" ne doit être utilisé que dans la phase 1. La phase 2 est là que les associations de sécurité sont négociées pour le compte de services tels que l'IPSEC ou tout autre service qui a besoin de négociation de matériel et / ou de paramètres clés. "Mode rapide" accomplit un échange de phase 2. "Mode rapide" ne doit être utilisé que dans la phase 2. Track Standards Harkins & Carrel [Page 5]
RFC 2409 IKE novembre 1998 "Nouveau mode de groupe" n'est pas vraiment une phase 1 ou une phase 2. Il suit la phase 1, mais sert à établir un nouveau groupe qui peut être utilisé dans les négociations futures. "Nouveau mode de groupe" ne doit être utilisé qu'après la phase 1. L'Isakmp SA est bidirectionnel. Autrement dit, une fois établi, l'une ou l'autre des parties peut initier des échanges de mode rapide, d'information et de mode de groupe. Selon le document de base ISAKMP, l'ISAKMP SA est identifié par le cookie de l'initiateur suivi du cookie du répondeur - le rôle de chaque partie dans l'échange de phase 1 dicte quel cookie est l'initiateur de l'initiateur. L'ordre des cookies établi par l'échange de phase 1 continue d'identifier l'ISAKMP SA, quelle que soit la direction du mode rapide, de l'information ou de l'échange de groupes. En d'autres termes, les cookies ne doivent pas échanger des places lorsque la direction de l'isakmp SA change. Avec l'utilisation des phases ISAKMP, une implémentation peut accomplir un saisie très rapide si nécessaire. Une négociation en une seule phase 1 peut être utilisée pour plus d'une négociation de phase 2. De plus, une négociation en une seule phase 2 peut demander plusieurs associations de sécurité. Avec ces optimisations, une implémentation peut voir moins d'un aller-retour par SA ainsi que moins d'une exponentiation DH par SA. "Mode principal" pour la phase 1 offre une protection d'identité. Lorsque la protection de l'identité n'est pas nécessaire, le «mode agressif» peut être utilisé pour réduire encore plus loin les aller-retour. Les conseils du développeur pour faire ces optimisations sont inclus ci-dessous. Il convient également de noter que l'utilisation du cryptage des clés publics pour authentifier un échange de mode agressif offrira toujours une protection d'identité. Ce protocole ne définit pas son propre doi en soi. L'ISAKMP SA, établie dans la phase 1, peut utiliser le doi et la situation à partir d'un service non ISAKMP (comme l'IETF IPSEC DOI [PIP97]). Dans ce cas, une implémentation peut choisir de restreindre l'utilisation de l'ISAKMP SA pour l'établissement de SAS pour les services du même DOI. Alternativement, un ISAKMP SA peut être établi avec la valeur zéro dans le DOI et la situation (voir [MSST98] pour une description de ces champs) et dans ce cas, les implémentations seront libres d'établir des services de sécurité pour tout DOI défini en utilisant cet isakmp SA. Si un doi de zéro est utilisé pour l'établissement d'une phase 1 SA, la syntaxe des charges utiles d'identité utilisée dans la phase 1 est celle définie dans [MSST98] et non à partir de DOI - E.g. [PIP97] - qui peut étendre davantage la syntaxe et la sémantique des identités. Les attributs suivants sont utilisés par IKE et sont négociés dans le cadre de l'ISAKMP Security Association. (Ces attributs concernent uniquement l'ISAKMP Security Association et non à aucune association de sécurité que IsakMP pourrait négocier au nom d'autres services.) Track Standards Harkins & Carrel [Page 6]
RFC 2409 IKE novembre 1998 - Algorithme de chiffrement - Algorithme de hachage - Méthode d'authentification - Informations sur un groupe sur lequel faire Diffie-Hellman. Tous ces attributs sont obligatoires et doivent être négociés. De plus, il est possible de négocier éventuellement une fonction pSuedo-alandom ("PRF"). (Il n'y a actuellement aucune fonction pseudo-aléatoire négociable définie dans ce document. Les valeurs d'attribut à usage privé peuvent être utilisées pour la négociation du PRF entre les parties consentantes). Si une "PRF" n'est pas une négociation, la version HMAC (voir [KBC96]) de l'algorithme de hachage négocié est utilisée comme une fonction pseudo-aléatoire. D'autres attributs non obligatoires sont décrits à l'annexe A. L'algorithme de hachage sélectionné doit prendre en charge les modes natifs et HMAC. Le groupe Diffie-Hellman doit être spécifié à l'aide d'une description du groupe défini (section 6) ou en définissant tous les attributs d'un groupe (section 5 5.6). Les attributs de groupe (tels que le type de groupe ou Prime - voir l'annexe A) ne doivent pas être proposés en conjonction avec un groupe précédemment défini (soit une description de groupe réservée ou une description d'utilisation privée qui est établie après la conclusion d'un nouvel échange de mode de groupe). Les implémentations IKE doivent prendre en charge les valeurs d'attribut suivantes: - Des [des] en mode CBC avec une vérification des clés faibles et semi-weak (les clés faibles et semi-weak sont référencées dans [SCH96] et répertoriées en annexe A). La clé est dérivée selon l'annexe B. - MD5 [MD5] et Sha [Sha>. - Authentification via des clés pré-partagées. - MODP sur le groupe par défaut numéro un (voir ci-dessous). De plus, les implémentations IKE devraient prendre en charge: 3DES pour le chiffrement; Tiger ([Tiger]) pour le hachage; La norme de signature numérique, les signatures RSA [RSA] et l'authentification avec le cryptage de clé publique RSA; et le groupe MODP numéro 2. Les implémentations IKE peuvent prendre en charge les algorithmes de chiffrement supplémentaires définis à l'annexe A et peuvent prendre en charge les groupes ECP et EC2N. Les modes IKE décrits ici doivent être implémentés chaque fois que l'IETF IPSec DOI [PIP97] est implémenté. D'autres DOI peuvent utiliser les modes décrits ici. Standards Harkins & Carrel Track [Page 7]
RFC 2409 IKE novembre 1998 5. des échanges Il existe deux méthodes de base utilisées pour établir un échange de clés authentifié: mode principal et mode agressif. Chacun génère un matériau de keying authentifié à partir d'un échange éphémère Diffie-Hellman. Le mode principal doit être implémenté; Le mode agressif doit être implémenté. De plus, le mode rapide doit être mis en œuvre en tant que mécanisme pour générer du matériel de saisie frais et négocier des services de sécurité non ISAKMP. De plus, un nouveau mode de groupe doit être mis en œuvre comme mécanisme pour définir des groupes privés pour les échanges Diffie-Hellman. Les implémentations ne doivent pas changer de type d'échange au milieu d'un échange. Les échanges sont conformes à la syntaxe standard de la charge utile ISAKMP, au codage d'attribut, aux délais d'expiration et aux retransmis de messages et aux messages d'information - E.g Une réponse d'information est envoyée lorsque, par exemple, une proposition est inacceptable, ou une vérification ou un décryptage de signature a échoué, etc. La charge utile SA doit précéder toutes les autres charges utiles dans un échange de phase 1. Sauf si autrement noté, il n'y a aucune exigence pour les charges utiles d'Isakmp dans un message dans un ordre particulier. La valeur publique de Diffie-Hellman a été adoptée dans une charge utile KE, dans un échange de phase 1 ou de phase 2, doit être la durée du groupe Diffie-Hellman négocié appliqué, si nécessaire, en préfabriquant la valeur avec zéros. La durée de la charge utile nonce doit être comprise entre 8 et 256 octets inclus. Le mode principal est une instanciation de l'échange de protection de l'identité ISAKMP: les deux premiers messages négocient la politique; Les deux suivants échangent des valeurs publiques et des données auxiliaires (e auxiliaires (E.g. Nonces) nécessaire pour l'échange; Et les deux derniers messages authentifient l'échange Diffie-Hellman. La méthode d'authentification négociée dans le cadre de l'échange initial de l'ISAKMP influence la composition des charges utiles mais pas leur objectif. Le XCHG pour le mode principal est Isakmp Identity Protect. De même, le mode agressif est une instanciation de l'échange agressif Isakmp. Les deux premiers messages négocient la politique, l'échange de valeurs publiques Diffie-Hellman et les données auxiliaires nécessaires pour l'échange et les identités. De plus, le deuxième message authentifie le répondeur. Le troisième message authentifie l'initiateur et fournit une preuve de participation à l'échange. Le XCHG pour le mode agressif est agressif Isakmp. Le message final ne peut être envoyé sous la protection de l'Isakmp SA permettant à chaque partie de Standards Harkins & Carrel [Page 8]
RFC 2409 IKE novembre 1998 Reportez-vous à l'exponentiation, si vous le souhaitez, jusqu'à ce que la négociation de cet échange soit terminée. Les représentations graphiques du mode agressif montrent la charge utile finale dans le clair; il n'a pas besoin d'être. Les échanges à Ike ne sont pas ouverts et ont un nombre fixe de messages. La réception d'une demande utile de demande de certificat ne doit pas prolonger le nombre de messages transmis ou attendus. La négociation de l'association de sécurité est limitée avec le mode agressif. En raison des exigences de construction de messages, le groupe dans lequel l'échange Diffie-Hellman est effectué ne peut être négocié. De plus, différentes méthodes d'authentification peuvent limiter davantage la négociation des attributs. Par exemple, l'authentification avec le cryptage de clé publique ne peut pas être négociée et lors de l'utilisation de la méthode révisée de cryptage de clé publique pour l'authentification, le chiffre et le hachage ne peuvent pas être négociés. Pour les situations où les riches capacités de négociation d'attribut d'Ike sont requises. Le mode rapide et le mode de groupe ne sont pas analogiques dans Isakmp. Les valeurs XCHG pour le mode rapide et le nouveau mode de groupe sont définies à l'annexe A. Mode principal, mode agressif et mode rapide Faire la négociation de l'association de sécurité. Les offres de l'association de sécurité prennent la forme de la charge utile Tranform encapsulée en charge utile de proposition encapsulée en charge utile de l'association de sécurité (SA). Si plusieurs offres sont effectuées pour les échanges de phase 1 (mode principal et mode agressif), ils doivent prendre la forme de charges utiles de transformation multiples pour une charge utile de proposition unique en une seule charge utile SA. Pour le dire autrement, pour les échanges de phase 1, il ne doit pas y avoir plusieurs charges utiles de proposition pour une seule charge utile SA et il ne doit pas y avoir plusieurs charges utiles SA. Ce document ne proscrit pas un tel comportement sur les offres dans les échanges de phase 2. Il n'y a pas de limite au nombre d'offres que l'initiateur peut envoyer au répondeur, mais les implémentations conforantes peuvent choisir de limiter le nombre d'offres qu'il inspectera pour des raisons de performance. Pendant la négociation de l'association de sécurité, les initiateurs présentent des offres d'associations de sécurité potentielles aux répondants. Les répondeurs ne doivent pas modifier les attributs d'aucune offre, le codage d'attribut excepté (voir l'annexe A). Si l'initiateur d'un échange remarque que les valeurs d'attribut ont changé ou que des attributs ont été ajoutés ou supprimés d'une offre faite, cette réponse doit être rejetée. Quatre méthodes d'authentification différentes sont autorisées avec le mode principal ou le mode agressif - signature numérique, deux formes d'authentification avec cryptage de clé publique ou clé pré-partagée. La valeur skeyid est calculée en séparation pour chaque méthode d'authentification. Standards Harkins & Carrel Track [Page 9]
RFC 2409 IKE novembre 1998 Pour les signatures: skeyid = prf (ni_b | nr_b, g ^ xy) pour le cryptage des clés publics: skeyid = prf (hash (ni_b | nr_b), cky-i | cky-r) pour les clés pré-partagées: skeyid = prf (pré-key-key, Ni_b | nr_b) f (skeyid, g ^ xy | cky-i | cky-r | 0) skeyid_a = prf (skeyid, skeyid_d | g ^ xy | cky-i | cky-r | 1) skeyid_e = prf (skeyid, skeyid_a | g ^ xy | cky-i | cky-r | 2) et convenu sur la politique pour protéger les communications supplémentaires |. Les valeurs de 0, 1 et 2 ci-dessus sont représentées par un seul octet. La clé utilisée pour le cryptage est dérivée de SKEYID_E de manière spécifique à l'algorithme (voir l'annexe B). Pour authentifier soit l'échange de l'initiateur du protocole génère hash_i et le répondeur génère hash_r où: hash_i = prf (skeyid, g ^ xi | g ^ xr | cky-i | cky-r | sai_b | idii_b) hash_r = prf (skeyid, g ^ xr | g ^ xi | cky-rwy-r | cky-i | sai_B ATURS, HASH_I et HASH_R sont signés et vérifiés; Pour l'authentification avec un cryptage de clés publics ou des clés pré-partagées, Hash_i et Hash_R authentifient directement l'échange. La charge utile entière d'identification (y compris le type d'identification, le port et le protocole mais à l'exclusion de l'en-tête générique) est haché dans Hash_i et Hash_R. Comme mentionné ci-dessus, la méthode d'authentification négociée influence le contenu et l'utilisation des messages pour les modes de phase 1, mais pas leur intention. Lorsque vous utilisez des clés publiques pour l'authentification, l'échange de phase 1 peut être effectué soit en utilisant des signatures, soit en utilisant le cryptage des clés publics (si l'algorithme le prend en charge). Voici les échanges de phase 1 avec différentes options d'authentification. 5.1 IKE Phase 1 authentifiée avec des signatures En utilisant des signatures, les informations auxiliaires échangées pendant le deuxième aller-retour sont des non -ces; L'échange est authentifié en signant un hachage mutuellement disponible. Le mode principal avec l'authentification de la signature est décrit comme suit: Standards Harkins & Carrel Track [Page 10]
RFC 2409 IKE novembre 1998 Répondeur initiateur ----------- ----------- HDR, SA -> Dans les deux modes, les données signées, SIG_I ou SIG_R, est le résultat de l'algorithme de signature numérique négocié respectivement appliqué à Hash_i ou Hash_R. En général, la signature sera terminée par hash_i et hash_r comme ci-dessus en utilisant le PRF négocié, ou la version HMAC de la fonction de hachage négociée (si aucun PRF n'est négocié). Cependant, cela peut être remplacé pour la construction de la signature si l'algorithme de signature est lié à un algorithme de hachage particulier (e.g. DSS n'est défini qu'avec une sortie de 160 bits de SHA). Dans ce cas, la signature sera terminée Hash_i et Hash_R comme ci-dessus, sauf en utilisant la version HMAC de l'algorithme de hachage associé à la méthode de signature. La fonction PRF et de hachage négociée continuerait à être utilisées pour toutes les autres fonctions pseudo-aléatoires prescrites. Étant donné que l'algorithme de hachage utilisé est déjà connu, il n'est pas nécessaire de coder son OID dans la signature. De plus, il n'y a pas de liaison entre les OID utilisées pour les signatures RSA dans PKCS # 1 et celles utilisées dans ce document. Par conséquent, les signatures RSA doivent être codées sous forme de chiffrement de clé privée au format PKCS # 1 et non comme une signature au format PKCS # 1 (qui comprend l'OID de l'algorithme de hachage). Les signatures DSS doivent être codées comme R suivi de S. Une ou plusieurs charges utiles de certificat peuvent être éventuellement adoptées. Standards Harkins & Carrel Track [Page 11]
RFC 2409 IKE novembre 1998 5.2 Phase 1 authentifiée avec un cryptage de clé publique En utilisant le cryptage des clés publics pour authentifier l'échange, les informations auxiliaires échangées sont des non-cryptés. La capacité de chaque partie à reconstruire un hachage (prouvant que l'autre partie a décrypté le nonce) authentifie l'échange. Afin d'effectuer le cryptage de la clé publique, l'initiateur doit déjà avoir la clé publique du répondeur. Dans le cas où le répondeur a plusieurs clés publiques, un hachage du certificat que l'initiateur utilise pour crypter les informations auxiliaires est transmise dans le troisième message. De cette façon, le répondeur peut déterminer quelle clé privée correspondante à utiliser pour décrypter les charges utiles cryptées et la protection d'identité sont conservées. En plus du nonce, l'identité des parties (IDII et IDIR) est également chiffrée avec la clé publique de l'autre partie. Si la méthode d'authentification est un cryptage de clé publique, les charges utiles de nonce et d'identité doivent être cryptées avec la clé publique de l'autre partie. Seuls le corps des charges utiles est cryptée, les en-têtes de charge utile sont laissés dans le clair. Lorsque vous utilisez le cryptage pour l'authentification, le mode principal est défini comme suit. Répondeur d'initiateur ----------- ----------- HDR, SA -> PUBKEY_R, PUBKEY_R -> HDR, KE, PUBKEY_I, PUBKEY_I HDR *, HASH_I -> PUBKEY_R, PUBKEY_R -> HDR, SA, KE, PUBKEY_I, PUBKEY_I, HASH_R HDR, HAND_I -> Standards Harkins & Carrel Track [Page 12]
RFC 2409 IKE novembre 1998 Où le hachage (1) est un hachage (en utilisant la fonction de hachage négociée) du certificat que l'initiateur utilise pour crypter le nonce et l'identité. Le chiffrement RSA doit être codé au format PKCS # 1. Bien que seul le corps des charges utiles d'ID et de nonce soit cryptée, les données cryptées doivent être précédées d'un en-tête générique ISAKMP valide. La longueur de charge utile est la durée de l'en-tête utile cryptée et de l'en-tête. Le codage PKCS # 1 permet de déterminer la longueur réelle de la charge utile en texte clair lors du décryptage. L'utilisation du cryptage pour l'authentification prévoit un échange plausiblement déniable. Il n'y a aucune preuve (comme avec une signature numérique) que la conversation a jamais eu lieu puisque chaque partie peut reconstruire complètement les deux côtés de l'échange. De plus, la sécurité est ajoutée à Secret Generation, car un attaquant devrait briser avec succès non seulement l'échange Diffie-Hellman, mais aussi les deux cryptage RSA. Cet échange a été motivé par [Skeme]. Notez que, contrairement à d'autres méthodes d'authentification, l'authentification avec le chiffrement de la clé publique permet une protection de l'identité avec le mode agressif. 5.3 phase 1 authentifiée avec un mode révisé de cryptage des clés publics L'authentification avec le cryptage de clé publique présente des avantages importants par rapport à l'authentification avec les signatures (voir la section 5.2 ci-dessus). Malheureusement, cela est au coût de 4 opérations clés publiques - deux cryptage de clés publics et deux décryptions de clés privées. Ce mode d'authentification conserve les avantages de l'authentification à l'aide du chiffrement des clés publics, mais le fait avec la moitié des opérations de clé publique. Dans ce mode, le nonce est toujours crypté en utilisant la clé publique du pair, mais l'identité du pair (et le certificat si elle est envoyée) est cryptée en utilisant l'algorithme de cryptage symétrique négocié (de la charge utile SA) avec une clé dérivée du non -ce. Cette solution ajoute une complexité et un état minimaux tout en permet d'économiser deux opérations de clés publiques coûteuses de chaque côté. De plus, la charge utile d'échange de clé est également cryptée en utilisant la même clé dérivée. Cela offre une protection supplémentaire contre la cryptanalyse de l'échange Diffie-Hellman. Comme pour la méthode d'authentification du cryptage de clé publique (section 5.2), une charge utile de hachage peut être envoyée pour identifier un certificat si le répondeur dispose de plusieurs certificats contenant des clés publiques utilisables (E.g. Si le certificat n'est pas uniquement pour les signatures, soit en raison de restrictions de certificat ou de restrictions algorithmiques). Si le hachage Track Standards Harkins & Carrel [Page 13]
RFC 2409 IKE novembre 1998 La charge utile est envoyée, il doit être la première charge utile du deuxième échange de messages et doit être suivi par la nonce cryptée. Si la charge utile de hachage n'est pas envoyée, la première charge utile du deuxième échange de messages doit être la nonce cryptée. De plus, l'initiateur est éventuellement envoyé une charge utile de certificat pour fournir au répondeur une clé publique avec laquelle répondre. Lorsque vous utilisez le mode de chiffrement révisé pour l'authentification, le mode principal est défini comme suit. Répondeur initiateur ----------- ----------- HDR, SA -> PUBKEY_R, KE_I, KE_I, [KE_I] -> HDR, PUBKEY_I, KE_R, KE_R,, HDR *, HASH_I -> PUBKEY_R, KE_I, KE_I [, KE_I] -> HDR, SA, PUBKEY_I, KE_R,.2. KE_I et KE_R sont des clés de l'algorithme de chiffrement symétrique négocié dans l'échange de charge utile SA. Seuls le corps des charges utiles est chiffré (dans la clé publique et les opérations symétriques), les en-têtes génériques de la charge utile sont laissés dans le clair. La longueur de charge utile comprend celle ajoutée pour effectuer un cryptage. Les clés de chiffre symétrique sont dérivées des non-décryptés comme suit. Les valeurs ne_i et ne_r sont d'abord calculées: Standards Harkins & Carrel Track [Page 14]
RFC 2409 IKE novembre 1998 Ne_i = prf (ni_b, cky-i) ne_r = prf (nr_b, cky-r) Les clés ke_i et ke_r sont ensuite prises respectivement de ne_i et ne_r de la manière décrite dans l'annexe B utilisée pour dériver des clés symétriques pour une utilisation avec l'algorithme d'encryption négocié pour dériver des clés symétriques pour l'algorithme d'encryption négocié en négociation. Si la longueur de la sortie du PRF négociée est supérieure ou égale aux exigences de longueur de clé du chiffre, KE_I et KE_R sont dérivées des bits les plus significatifs de Ne_i et NE_R. Si la longueur souhaitée de KE_I et KE_R dépasse la longueur de la sortie du PRF, le nombre nécessaire de bits est obtenu en renvoyant à plusieurs reprises les résultats du PRF en lui-même et en concaténant le résultat jusqu'à ce que le nombre nécessaire soit atteint. Par exemple, si l'algorithme de chiffrement négocié nécessite 320 bits de clé et que la sortie du PRF n'est que de 128 bits, KE_I est les 320 bits les plus significatifs de K, où k = k1 | K2 | K3 et k1 = prf (ne_i, 0) k2 = prf (ne_i, k1) k3 = prf (ne_i, k2) pour la concision, seule la dérivation de Ke_i est indiquée; Ke_r est identique. La longueur de la valeur 0 dans le calcul de K1 est un seul octet. Notez que Ne_i, NE_R, KE_I et KE_R sont tous éphémères et doivent être jetés après une utilisation. Enregistrez les exigences sur l'emplacement de la charge utile de hachage en option et de la charge utile obligatoire de non -ce Il n'y a pas d'autres exigences de charge utile. Toutes les charges utiles - dans n'importe quel ordre - suivant le nonce chiffré doit être chiffré avec KE_I ou KE_R en fonction de la direction. Si le mode CBC est utilisé pour le chiffrement symétrique, les vecteurs d'initialisation (IV) sont définis comme suit. Le IV pour crypter la première charge utile suivant le nonce est défini sur 0 (zéro). L'IV pour les charges utiles suivantes cryptées avec la clé de chiffre symétrique éphémère, KE_I, est le dernier bloc de texte chiffré de la charge utile précédente. Les charges utiles cryptées sont rembourrées jusqu'à la taille du bloc le plus proche. Tous les octets de rembourrage, à l'exception du dernier, contiennent 0x00. Le dernier octet du rembourrage contient le nombre d'octets de rembourrage utilisés, à l'exclusion du dernier. Notez que cela signifie qu'il y aura toujours un rembourrage. Track Standards Harkins & Carrel [Page 15]
RFC 2409 IKE novembre 1998 5.4 phase 1 authentifiée avec une clé pré-partagée Une clé dérivée par un mécanisme hors bande peut également être utilisée pour authentifier l'échange. L'établissement réel de cette clé est hors de portée de ce document. Lors d'une authentification de clé pré-partagée, le mode principal est défini comme suit: Responder de l'initiateur ---------- ----------- HDR, SA -> Lors de l'utilisation de l'authentification pré-partagée avec le mode principal, la clé ne peut être identifiée que par l'adresse IP des pairs puisque Hash_i doit être calculé avant l'initiateur Inidi. Le mode agressif permet d'utiliser une gamme plus large d'identifiants du secret pré-partagé. De plus, le mode agressif permet à deux parties de maintenir plusieurs clés pré-partagées différentes et d'identifier celle correcte pour un échange particulier. 5.5 phase 2 - mode rapide Le mode rapide n'est pas un échange complet lui-même (en ce qu'il est lié à un échange de phase 1), mais est utilisé dans le cadre du processus de négociation SA (phase 2) pour dériver du matériel de saisie et négocier la politique partagée pour les SAS non ISAKMP. Les informations échangées avec le mode rapide doivent être protégées par l'ISAKMP SA - i.e. Toutes les charges utiles à l'exception de l'en-tête isakmp sont cryptées. En mode rapide, une charge utile de hachage doit immédiatement suivre l'en-tête Isakmp et une charge utile SA doit suivre immédiatement le hachage. Ce hachage authentifie le message et fournit également des preuves vivantes. Standards Harkins & Carrel Track [Page 16]
RFC 2409 IKE novembre 1998 L'ID de message dans l'en-tête isakmp identifie un mode rapide en cours pour un ISAKMP SA particulier qui est lui-même identifié par les cookies de l'en-tête Isakmp. Étant donné que chaque instance d'un mode rapide utilise un vecteur d'initialisation unique (voir l'annexe B), il est possible d'avoir plusieurs modes rapides simultanés, en fonction d'un seul ISAKMP SA, en cours à tout moment. Le mode rapide est essentiellement une négociation de l'AS et un échange de nonces qui offre une protection de relecture. Les nonces sont utilisés pour générer un nouveau matériau clé et empêcher les attaques de relecture de générer des associations de sécurité. Une charge utile d'échange de clés en option peut être échangée pour permettre un échange et une exponentiation Diffie-Hellman supplémentaires par mode rapide. Alors que l'utilisation de la charge utile d'échange de clés avec le mode rapide est facultative, elle doit être prise en charge. Le mode rapide de base (sans la charge utile KE) actualise le matériau de saisie dérivé de l'exponentiation de la phase 1. Cela ne fournit pas de PFS. En utilisant la charge utile en option, une exponentiation supplémentaire est effectuée et PFS est fourni pour le matériau de saisie. Les identités des SAS négociées en mode rapide sont implicitement supposées être les adresses IP des pairs ISAKMP, sans aucune contrainte implicite sur le protocole ou les numéros de port autorisés, à moins que les identificateurs de clients ne soient spécifiés en mode rapide. Si Isakmp agit en tant que négociateur client au nom d'une autre partie, l'identité des parties doit être adoptée en tant qu'IDCI puis IDCR. La politique locale dictera si les propositions sont acceptables pour les identités spécifiées. Si les identités du client ne sont pas acceptables pour le répondeur de mode rapide (pour une politique ou d'autres raisons), une charge utile de notification avec le type de message notif. Les identités du client sont utilisées pour identifier et diriger le trafic vers le tunnel approprié dans les cas où plusieurs tunnels existent entre deux pairs et pour permettre des SAS uniques et partagés avec des granularités différentes. Toutes les offres faites pendant un mode rapide sont logiquement liées et doivent être cohérentes. Par exemple, si une charge utile KE est envoyée, l'attribut décrivant le groupe Diffie-Hellman (voir la section 6.1 et [PIP97]) doivent être inclus dans chaque transformée de chaque proposition de chaque SA. De même, si les identités des clients sont utilisées, elles doivent s'appliquer à chaque SA de la négociation. Le mode rapide est défini comme suit: Track Standards Harkins & Carrel [Page 17]
RFC 2409 IKE novembre 1998 Répondeur d'initiateur ----------- ----------- HDR *, Hash (1), SA, Ni [, Ke] [, IDCI, IDCR] -> Where: Hash (1) est le PRF sur l'ID de message (M-ID) de l'en-tête ISAKMP concaténé avec l'ensemble du message qui suit l'encryption, y compris tous. Hash (2) est identique à Hash (1) sauf le nonce de l'initiateur - ni, moins l'en-tête de charge utile - est ajouté après M-ID mais avant le message complet. L'ajout du nonce au hash (2) est pour une preuve de vivacité. Hash (3) - pour la vivacité - le PRF sur la valeur zéro représentée comme un seul octet, suivi d'une concaténation de l'identifiant du message et des deux nonces - l'initiateur suivi par le répondeur - moins l'en-tête de charge utile. En d'autres termes, les hachages pour l'échange ci-dessus sont: hash (1) = prf (skeyid_a, m-id | sa | ni [| ke] [| idci | idcr) hash (2) = prf (skeyid_a, m-id | ni_b | sa | nr [| ke] [| idci | idcr) L'exception du hachage, de la SA et des charges utiles d'identification en option, il n'y a pas de restrictions de commande de charge utile en mode rapide. Le hachage (1) et le hash (2) peuvent différer de l'illustration ci-dessus si l'ordre des charges utiles dans le message diffère de l'exemple illustratif ou si des charges utiles facultatives, par exemple, une charge utile de notification, ont été enchaînées au message. Si PFS n'est pas nécessaire et que les charges utiles de KE ne sont pas échangées, le nouveau matériau de keying est défini comme keymat = prf (SKEYID_D, Protocole | Spi | Ni_B | nr_b). Si PFS est souhaité et que les charges utiles de KE ont été échangées, le nouveau matériau de keying est défini comme KeyMat = PRF (SKEYID_D, G (QM) ^ XY | Protocole | Spi | Ni_B | Nr_B) où G (QM) ^ XY est le secret partagé de l'échange éphémère Diffie-Hellman de ce mode rapide. Dans les deux cas, "Protocole" et "SPI" proviennent de la charge utile de la proposition ISAKMP qui contenait la transformation négociée. Track Standards Harkins & Carrel [Page 18]
RFC 2409 IKE novembre 1998 Une seule négociation de l'AS se traduit par deux associations de sécurité - un entrant et un sortant. Différentes SPI pour chaque SA (l'une choisie par l'initiateur, l'autre par le répondeur) garantit une clé différente pour chaque direction. Le SPI choisi par la destination de la SA est utilisé pour dériver des keymats pour cette SA. Pour les situations où la quantité de matériau de saisie souhaité est supérieure à celle fournie par le PRF, le keymat est élargi en renforçant les résultats du PRF en lui-même et en concaténant les résultats jusqu'à ce que le matériau de saisie requis soit atteint. En d'autres termes, keymat = k1 | K2 | K3 | . où k1 = prf (skeyid_d, [g (qm) ^ xy |] protocole | spi | ni_b | nr_b) k2 = prf (skeyid_d, k1 | [g (qm) ^ xy |] protocol | spi | ni_b | nr_b) k3 = prf (Skeyid_d, k2 | [g (qm) ^ xy r_b) etc. Ce matériel de saisie (que ce soit avec PFS ou sans, et qu'il soit dérivé directement ou par la concaténation) doit être utilisé avec l'AS négocié. Il appartient au service de définir comment les clés sont dérivées du matériau de saisie. Dans le cas d'un échange éphémère diffie-hellman en mode rapide, l'exponentiel (g (qm) ^ xy) est irréilablement supprimé de l'état actuel et skeyid_e et skeyid_a (dérivé de la négociation de phase 1) continuent de protéger et d'authentifier l'isakmp sa et Skeyid_d continue d'être utilisé pour dériver des keys. En utilisant le mode rapide, plusieurs SA et clés peuvent être négociés avec un échange comme suit: Responder de l'initiateur ----------- ----------- HDR *, Hash (1), SA0, SA1, NI, [, KE] [, IDCI, IDCR] -> Le matériau de keying est dérivé identique comme dans le cas d'un seul SA SA. Dans ce cas (négociation de deux charges utiles SA), le résultat serait quatre associations de sécurité - deux à chaque sens pour les deux SAS. Track Standards Harkins & Carrel [Page 19]
RFC 2409 IKE novembre 1998 5.6 nouveaux mode de groupe Le mode nouveau groupe ne doit pas être utilisé avant la création d'un Isakmp SA. La description d'un nouveau groupe ne doit suivre que la négociation de phase 1. (Ce n'est pas un échange de phase 2, cependant). Répondeur initiateur ----------- ----------- HDR *, Hash (1), SA -> APPENDICE A, "Attribut Assigned Numbers"). Les descriptions de groupe pour les groupes privés doivent être supérieures ou égales à 2 ^ 15. Si le groupe n'est pas acceptable, le répondeur doit répondre avec une charge utile de notification avec le type de message défini sur Attributs-No Supported (13). Les implémentations ISAKMP peuvent exiger des groupes privés à expirer avec la SA dans laquelle ils ont été établis. Les groupes peuvent être directement négociés dans la proposition SA avec le mode principal. Pour ce faire, les composants - pour un groupe MODP, le type, le premier et le générateur; Pour un groupe EC2N le type, le polynôme irréductible, le générateur de groupe, le générateur de groupe deux, la courbe de groupe A, la courbe de groupe B et l'ordre de groupe - sont passés comme des attributs SA (voir l'annexe A). Alternativement, la nature du groupe peut être cachée en utilisant un nouveau mode de groupe et seul l'identifiant de groupe est passé en clair pendant la négociation de la phase 1. 5.7 Échanges d'information ISAKMP Ce protocole protège les échanges d'information Isakmp lorsque cela est possible. Une fois l'association de sécurité ISAKMP établie (et SKEYID_E et SKEYID_A ont été générées) Les échanges d'informations ISAKMP, lorsqu'ils sont utilisés avec ce protocole, sont les suivants: Standards Harkins & Carrel Track [Page 20]
RFC 2409 IKE novembre 1998 Responder de l'initiateur ----------- ----------- HDR *, Hash (1), N / D -> où N / D est soit une charge utile Isakmp, soit une clé USAKMP de suppression, et un M-ID unique à cet échange, à la charge de l'information entière (un Nottif. En d'autres termes, le hachage de l'échange ci-dessus est: hash (1) = prf (skeyid_a, m-id | n / d) comme indiqué l'ID de message dans l'en-tête isakmp - et utilisé dans le calcul PRF - est unique à cet échange et ne doit pas être le même que l'ID de message d'un autre échange de phase 2 qui a généré cet échange d'informations et ne doit pas être le même que l'ID de message d'un autre échange de phase 2 qui a généré cet échange d'informations. La dérivation du vecteur d'initialisation, utilisée avec SKEYID_E pour crypter ce message, est décrite à l'annexe B. Si l'ISAKMP Security Association n'a pas encore été établie au moment de l'échange d'information, l'échange est effectué en clair sans une charge utile de hachage qui l'accompagne. 6 groupes d'Oakley Avec Ike, le groupe dans lequel faire l'échange Diffie-Hellman est négocié. Quatre groupes - les valeurs 1 à 4-- sont définies ci-dessous. Ces groupes sont originaires du protocole Oakley et sont donc appelés "groupes d'Oakley". La classe d'attribut pour "groupe" est définie dans l'annexe A. Toutes les valeurs 2 ^ 15 et plus sont utilisées pour les identifiants de groupe privés. Pour une discussion sur la force des groupes d'Oakley par défaut, veuillez consulter la section des considérations de sécurité ci-dessous. Ces groupes ont tous été générés par Richard Schroeppel à l'Université de l'Arizona. Les propriétés de ces groupes sont décrites dans [ORM96]. 6.1 groupe par défaut d'Oakley Les implémentations d'Oakley doivent prendre en charge un groupe MODP avec le premier et le générateur suivant. Ce groupe se voit attribuer ID 1 (un). Le premier est: 2 ^ 768 - 2 ^ 704 - 1 + 2 ^ 64 * < [2^638 pi] + 149686 >Sa valeur hexadécimale est Standards Harkins & Carrel Track [Page 21]
RFC 2409 IKE novembre 1998 FFFFFFFF FFFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67C74 020BBEA6 3B139B22 51C245 E485B576 625E7EC6 F44C42E9 A63A3620 FFFFFFFF ffffffff Le générateur est: 2. 6.2 secondes du groupe Oakley Les implémentations IKE devraient prendre en charge un groupe MODP avec le premier et le générateur suivant. Ce groupe est attribué ID 2 (deux). Le premier est 2 ^ 1024 - 2 ^ 960 - 1 + 2 ^ 64 * < [2^894 pi] + 129093 >. Sa valeur hexadécimale est ffffffff ffffffff C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B 302B04DD F2519B3 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 ) 6.3 troisième groupe Oakley Les implémentations IKE devraient prendre en charge un groupe EC2N avec les caractéristiques suivantes. Ce groupe est attribué ID 3 (trois). La courbe est basée sur le champ Galois GF [2 ^ 155]. La taille du champ est de 155. Le polynôme irréductible pour le champ est: U ^ 155 + U ^ 62 + 1. L'équation de la courbe elliptique est: y ^ 2 + xy = x ^ 3 + ax ^ 2 + b. Taille du champ: 155 Polynomial de premier ordre / irréductible: 0x080000000000000000000000004000000000000001 GÉNÉRATEUR DE GRAS Solution (x, y), le point sur la courbe choisie en prenant le Secret Ka et en informatique choisi au hasard, où * est la répétition de l'ajout de groupe et des deux opérations, P est le point de courbe avec des coordonnées x égales au générateur 1 et le y Standards Harkins & Carrel Track [Page 22]
RFC 2409 IKE novembre 1998 coordonnée déterminée à partir de l'équation définissante. L'équation de la courbe est implicitement connue par le type de groupe et les coefficients A et B. Il existe deux valeurs possibles pour la coordonnée y; L'un ou l'autre peut être utilisé avec succès (les deux parties n'ont pas besoin d'être d'accord sur la sélection). 6.4 Fourth Oakley Group Les implémentations IKE devraient prendre en charge un groupe EC2N avec les caractéristiques suivantes. Ce groupe est attribué ID 4 (quatre). La courbe est basée sur le Galois Field GF [2 ^ 185]. La taille du champ est 185. Le polynôme irréductible pour le champ est: U ^ 185 + U ^ 69 + 1. L'équation de la courbe elliptique est: y ^ 2 + xy = x ^ 3 + ax ^ 2 + b. Taille du champ: 185 Prime de groupe / Polynôme irréductible: 0x0200000000000000000000000000000000200000000000000001 Générateur de groupe ONE: 0x18 Courbe de groupe A: 0x0 Courbe de groupe B: 0x1EE9 Commande de groupe: 0x01ffffffffffffffffffffdbf2f889b73e484175f94e Ce groupe sera identique à cela comme lorsque vous utilisez Oakley Group 3 (trois). D'autres groupes peuvent être définis en utilisant un nouveau mode de groupe. Ces groupes par défaut ont été générés par Richard Schroeppel à l'Université de l'Arizona. Les propriétés de ces nombres premiers sont décrites dans [ORM96]. 7. Explosion de la charge utile pour un échange IKE complet Cette section illustre comment le protocole IKE est utilisé pour: - établir un canal sécurisé et authentifié entre les processus ISAKMP (phase 1); et - générer du matériel clé pour et négocier un IPSec SA (phase 2). 7.1 phase 1 en mode principal Le diagramme suivant illustre les charges utiles échangées entre les deux parties lors du premier échange aller-retour. L'initiateur peut proposer plusieurs propositions; le répondeur doit répondre avec un. Track Standards Harkins & Carrel [Page 23]
RFC 2409 IKE novembre 1998 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ~ ISAKMP A ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Domaine de l'interprétation ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Situation ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Proposition n ° 1 ! Proto_isakmp ! SPI Size = 0 | # Se transforme ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Isa_Trans ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Transformer # 1 ! Key_oakley | Réservé2 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Attributs SA préférés ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Transformée n ° 2 ! Key_oakley | Réservé2 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Attributs SA alternatifs ~ + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Les attributs du répondeur) mais de sélection, et renvoient, une transformée de transformation (l'attaque Isakmp SA). Le deuxième échange se compose des charges utiles suivantes: 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ~ iSakp , ~ ~ et la prochaine charge utile d'Isa_ke ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ISA_NONCE ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ D-H Valeur publique (g ^ xi de l'initiateur g ^ xr de Responder) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Ni (de l'initiateur) ou nr (de Responder) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Track Standards Harkins & Carrel [Page 24]
RFC 2409 IKE novembre 1998 Les clés partagées, SKEYID_E et SKEYID_A, sont maintenant utilisées pour protéger et authentifier toutes les communications supplémentaires. Notez que SKEYID_E et SKEYID_A sont non authentifiés. 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ~ ISAKMP et le bit de cryptage défini ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ISA_SIG ! RÉSERVÉ ! ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Données d'identification du négociateur isakmp ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Signature vérifiée par la clé publique de l'ID ci-dessus ~ + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +.1. Une fois la signature vérifiée à l'aide de l'algorithme d'authentification négocié dans le cadre de l'ISAKMP SA, les clés partagées, SKEYID_E et SKEYID_A peuvent être marquées comme authentifiées. (Pour Brivity, les charges utiles du certificat n'ont pas été échangées). 7.2 phase 2 en mode rapide Les charges utiles suivantes sont échangées au premier cycle de mode rapide avec la négociation Isakmp SA. Dans cet échange hypothétique, les négociateurs Isakmp sont des procurations pour d'autres parties qui ont demandé l'authentification. 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ~ ISAKMP HADELER avec xchg de rapide, ~ + - + - + ~ ISAKMP HEADER avec xchg de rapide, ~ + - + - + ~ ISAKMP TIDELA et le bit de cryptage défini ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ISA_SA ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Hash clés du message ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! ISA_NONCE ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Domaine de l'interprétation ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Situation ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Standards Harkins & Carrel Track [Page 25]
RFC 2409 IKE novembre 1998 ! Proposition n ° 1 ! Proto_ipsec_ah! Taille SPI = 4 | # Se transforme ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Spi (4 octets) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Isa_Trans ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Transformer # 1 ! Ah_sha | Réservé2 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Autres attributs SA ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Transformée n ° 2 ! AH_MD5 | Réservé2 ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! Autres attributs SA ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! J'AI DIT ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ nonce ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! J'AI DIT ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Id de la source pour laquelle Isakmp est un client ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ID de la destination pour laquelle ISAKMP est un client ~ + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +.5 ci-dessus. Le répondeur répond avec un message similaire qui ne contient qu'une seule transformation - la transformée AH sélectionnée. À la réception, l'initiateur peut fournir le moteur clé avec l'association de sécurité négociée et le matériel de saisie. En tant que chèque contre les attaques de relecture, le répondeur attend jusqu'à la réception du message suivant. 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ~ ISAKMP HADELER avec xchg de rapide, ~ + - + - + ~ ISAKMP HEADER avec xchg de rapide, ~ + - + - + ~ ISAKMP TIDELA et le bit de cryptage défini ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 0 ! RÉSERVÉ ! Durée de charge utile ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Données de hachage ~ + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +.5 ci-dessus. Track Standards Harkins & Carrel [Page 26]
RFC 2409 IKE novembre 1998 8. Exemple de secret avant parfait Ce protocole peut fournir des PF de clés et d'identités. L'identité à la fois de l'ISAKMP négocie le pair et, le cas échéant, les identités pour lesquelles les pairs négocient peuvent être protégés avec PFS. Pour fournir un secret avant parfait des deux clés et de toutes les identités, deux parties effectueraient ce qui suit: o Un échange de mode principal pour protéger l'identité des pairs isakmp. Cela établit un Isakmp SA. o Un échange de mode rapide pour négocier une autre protection du protocole de sécurité. Cela établit une SA à chaque extrémité pour ce protocole. o Supprimer l'ISAKMP SA et son état associé. Étant donné que la clé pour une utilisation dans le non-ISAKMP SA a été dérivée de l'échange éphémère Diffie-Hellman PFS est préservé. Pour fournir un secret avant parfait de simplement les clés d'une association de sécurité non isakp. Un seul mode rapide dans lequel la charge utile KE en option est transmise, et un échange de diffie - Hellman est effectué, est tout ce qui est requis. À ce stade, l'état dérivé de ce mode rapide doit être supprimé de l'ISAKMP SA comme décrit dans la section 5.5. 9. Indices de mise en œuvre L'utilisation d'une seule négociation ISAKMP Phase 1 rend les négociations ultérieures de phase 2 extrêmement rapidement. Tant que l'état de phase 1 reste mis en cache et que la PFS n'est pas nécessaire, la phase 2 peut se dérouler sans aucune exponentiation. Combien de négociations de phase 2 peuvent être effectuées pour une seule phase 1 est un problème de politique locale. La décision dépendra de la force des algorithmes utilisés et du niveau de confiance dans le système de pairs. Une implémentation peut souhaiter négocier une gamme de SAS lors de l'exécution du mode rapide. Ce faisant, ils peuvent accélérer le "re-keying". Le mode rapide définit comment Keymat est défini pour une gamme de SAS. Quand un pair estime qu'il est temps de changer SAS, il utilise simplement celui suivant dans la plage indiquée. Une gamme de SAS peut être établie en négociant plusieurs SAS (attributs identiques, différents SPI) avec un mode rapide. Standards Harkins & Carrel Track [Page 27]
Une optimisation qui est souvent utile est d'établir des associations de sécurité avec les pairs avant d'être nécessaires pour que lorsqu'ils deviennent nécessaires, ils sont déjà en place. Cela garantit qu'il n'y aurait pas de retards en raison de la gestion des clés avant la transmission des données initiales. Cette optimisation est facilement mise en œuvre en mettant en place plus d'une association de sécurité avec un pair pour chaque association de sécurité demandée et en mettant en cache ceux qui ne sont pas immédiatement utilisés. De plus, si une implémentation ISAKMP est alertée qu'une SA sera bientôt nécessaire (E.g. Pour remplacer une SA existante qui expirera dans un proche avenir), il peut établir la nouvelle SA avant que la nouvelle SA soit nécessaire. La spécification ISAKMP de base décrit des conditions dans lesquelles une partie du protocole peut informer l'autre partie d'une activité - soit la suppression d'une association de sécurité ou en réponse à une erreur dans le protocole tel qu'une vérification de signature a échoué ou une charge utile n'a pas réussi à décrypter. Il est fortement suggéré que ces échanges d'information ne soient pas réagis en aucune circonstance. Une telle condition peut entraîner une "guerre d'information" dans laquelle le non-respect d'un message entraîne un avis au pair qui ne peut pas le comprendre et renvoie son propre avis qui n'est pas non plus compris. dix. Considérations de sécurité Toute cette note discute d'un protocole hybride, combinant des parties d'Oakley et des parties de Skeme avec Isakmp, pour négocier et dériver du matériel de saisie pour les associations de sécurité de manière sécurisée et authentifiée. La confidentialité est assurée par l'utilisation d'un algorithme de chiffrement négocié. L'authentification est assurée par l'utilisation d'une méthode négociée: un algorithme de signature numérique; un algorithme clé public qui prend en charge le chiffrement; Ou, une clé pré-partagée. La confidentialité et l'authentification de cet échange ne sont aussi bonnes que les attributs négociés dans le cadre de l'ISAKMP Security Association. La repeulle répétée à l'aide d'un mode rapide peut consommer l'entropie du secret partagé Diffie-Hellman. Les implémentateurs doivent prendre note de ce fait et définir une limite sur les échanges de mode rapides entre les exonentiations. Cette note ne prescrit pas une telle limite. Le secret avant parfait (PFS) du matériel et des identités de keying est possible avec ce protocole. En spécifiant un groupe Diffie-Hellman et en adoptant des valeurs publiques en charges utiles, les pairs isakmp peuvent établir des PF de clés - les identités seraient protégées par SKEYID_E de l'ISAKMP SA et ne seraient donc pas protégées par PFS. Si des PF de matériaux et d'identités de keying sont souhaités, un pair isakmp doit Standards Harkins & Carrel [Page 28]
RFC 2409 IKE novembre 1998 établir une seule association de sécurité non isakp (e.g. Association de sécurité IPSEC) par Isakmp SA. La PFS pour les clés et les identités est accomplie en supprimant l'ISAKMP SA (et en évenant éventuellement un message de suppression) à la création de la seule non-ISAKMP SA. De cette façon, une négociation de phase un est uniquement liée à une négociation en une seule phase deux, et l'ISAKMP SA établie lors de la négociation de phase un n'est jamais utilisé. La force d'une clé dérivée d'un échange de diffie-hellman utilisant l'un des groupes définis ici dépend de la force inhérente du groupe, de la taille de l'exposant utilisé et de l'entropie fournie par le générateur de nombres aléatoires utilisé. En raison de ces entrées, il est difficile de déterminer la force d'une clé pour l'un des groupes définis. Le groupe de diffie-hellman par défaut (numéro un) lorsqu'il est utilisé avec un générateur de nombres aléatoires fort et un exposant pas moins de 160 bits est suffisant à utiliser pour le DES. Les groupes deux à quatre offrent une plus grande sécurité. Les implémentations doivent prendre note de ces estimations conservatrices lors de l'établissement de la politique et de la négociation des paramètres de sécurité. Notez que ces limitations concernent les groupes Diffie-Hellman eux-mêmes. Il n'y a rien dans Ike qui interdit d'utiliser des groupes plus forts et il n'y a rien qui diluera la force obtenue à partir de groupes plus forts. En fait, le cadre extensible d'Ike encourage la définition de plus de groupes; L'utilisation de groupes de courbes elliptiques augmentera considérablement la résistance en utilisant des nombres beaucoup plus petits. Pour les situations où les groupes définis fournissent une force insuffisante, un nouveau mode de groupe peut être utilisé pour échanger un groupe Diffie-Hellman qui fournit la force nécessaire. IN IS INCUMENT lors des implémentations pour vérifier la primalité dans les groupes offerts et arriver indépendamment à des estimations de force. On suppose que les exposants Diffie-Hellman dans cet échange sont effacés de la mémoire après une utilisation. En particulier, ces exposants ne doivent pas être dérivés de secrets à longue durée de vie comme la graine à un générateur pseudo-aléatoire. Les échanges IKE maintiennent des vecteurs d'initialisation en cours d'exécution (IV) où le dernier bloc de texte chiffré du dernier message est le IV du message suivant. Pour empêcher les retransmissions (ou les messages forgés avec des cookies valides) de provoquer les échanges de se désactiver les implémentations IKE ne devrait pas mettre à jour leur exécution IV jusqu'à ce que le message décrypté ait passé un contrôle de base de base et a été déterminé à faire avancer la machine Ike State - I - I.e. ce n'est pas une retransmission. Standards Harkins & Carrel Track [Page 29]
RFC 2409 IKE novembre 1998 Alors que le dernier aller-retour du mode principal (et éventuellement le dernier message de mode agressif) est crypté, ce n'est pas, à proprement parler, authentifié. Une attaque de substitution active sur le texte chiffré pourrait entraîner une corruption de la charge utile. Si une telle attaque corrompt les charges utiles obligatoires, elle serait détectée par une défaillance d'authentification, mais si elle corrompt des charges utiles facultatives (e.g. informer les charges utiles chaînées sur le dernier message d'un échange de mode principal) Il pourrait ne pas être détectable. 11. Considérations IANA Ce document contient de nombreux "numéros magiques" à maintenir par l'IANA. Cette section explique les critères à utiliser par l'IANA pour attribuer des nombres supplémentaires dans chacune de ces listes. 11.1 classes d'attribut Les attributs négociés dans ce protocole sont identifiés par leur classe. Les demandes d'attribution de nouvelles classes doivent être accompagnées d'un RFC de track standards qui décrit l'utilisation de cet attribut. 11.2 classe d'algorithme de chiffrement Les valeurs de la classe d'algorithme de chiffrement définissent un algorithme de chiffrement à utiliser lorsqu'il est appelé dans ce document. Les demandes d'attribution de nouvelles valeurs d'algorithme de cryptage doivent être accompagnées d'une référence à une RFC de track standard ou d'information ou une référence à la littérature cryptographique publiée qui décrit cet algorithme. 11.3 algorithme de hachage Les valeurs de la classe d'algorithme de hachage définissent un algorithme de hachage à utiliser lorsqu'il est appelé dans ce document. Les demandes d'attribution de nouvelles valeurs d'algorithme de hachage doivent être accompagnées d'une référence à une track ou à une RFC informationnelle ou à une référence à la littérature cryptographique publiée qui décrit cet algorithme. En raison de la dérivation clé et des utilisations des principales expansions des formes HMAC des algorithmes de hachage dans IKE, les demandes d'attribution de nouvelles valeurs d'algorithme de hachage doivent prendre en compte les propriétés cryptographiques - E.g sa résistance à la collision - de l'algorithme de hachage lui-même. 11.4 Description du groupe et type de groupe Les valeurs de la classe de description de groupe identifient un groupe à utiliser dans un échange de diffie-hellman. Les valeurs de la classe de type de groupe définissent le type de groupe. Les demandes d'affectation de nouveaux groupes doivent être accompagnées d'une référence à une RFC de track standard ou d'information qui décrit ce groupe. Demandes d'affectation de nouveau groupe Standards Harkins & Carrel Track [Page 30]
RFC 2409 IKE novembre 1998 Les types doivent être accompagnés d'une référence à une RFC de track standard ou d'information ou par une référence à la littérature cryptographique ou mathématique publiée qui décrit le nouveau type. 11.5 Type de vie Les valeurs de la classe de type de vie définissent un type de durée de vie à laquelle l'ISAKMP Security Association s'applique. Les demandes d'attribution de nouveaux types de vie doivent être accompagnées d'une description détaillée des unités de ce type et de son expiration. 12. Remerciements Ce document est le résultat d'une consultation étroite avec Hugo Krawczyk, Douglas Maughan, Hilarie Orman, Mark Schertler, Mark Schneider et Jeff Turner. Il repose sur des protocoles qui ont été écrits par eux. Sans leur intérêt et leur dévouement, cela n'aurait pas été écrit. Remerciements spéciaux Rob Adams, Cheryl Madson, Derrell Piper, Harry Varnis et un tisserand elfed pour les contributions techniques, l'encouragement et divers vérifications de la santé mentale en cours de route. Nous tenons également à remercier les nombreux membres du groupe de travail IPSEC qui a contribué au développement de ce protocole au cours de la dernière année. 13. Les références [Cast] Adams, C., "L'algorithme de cryptage Cast-128", RFC 2144, mai 1997. [Souffler] Schneier, B., "L'algorithme de cryptage Blowfish", Dr. Journal de Dobb, V. 19, n. 4, avril 1994. [Bra97] Bradner, S., "Mots clés à utiliser dans les RFC pour indiquer les niveaux d'exigences", BCP 14, RFC 2119, mars 1997. [DES] ANSI X3.106, "American National Standard for Information Systems-Data Link Encryption", American National Standards Institute, 1983. [Dh] diffie, w., Et Hellman M., "Nouvelles directions en cryptographie", transactions IEEE sur la théorie de l'information, V. It-22, n. 6, juin 1977. Standards Harkins & Carrel [Page 31]
RFC 2409 IKE novembre 1998 [DSS] nist, "Digital Signature Standard", FIPS 186, National Institute of Standards and Technology, U.S. Département de commerce, mai 1994. [Idée] lai, x., "Sur la conception et la sécurité des chiffres de blocs", Série ETH dans le traitement de l'information, V. 1, Konstanz: Hartung- gorre Verlag, 1992 [KBC96] Krawczyk, H., Bellare, m., et r. Canetti, "HMAC: Keyed-Hashing for Message Authentication", RFC 2104, février 1997. [Skeme] Krawczyk, H., "SKEME: un mécanisme d'échange de clés sécurisé polyvalent pour Internet", à partir des actes de l'IEEE du Symposium de 1996 sur le réseau et la sécurité des systèmes distribués. [MD5] Rivest, R., "The MD5 Message Digest Algorithm", RFC 1321, avril 1992. [MSST98] Maughhan, D., Schertler, M., Schneider, m., et J. Turner, "Internet Security Association and Key Management Protocol (ISAKMP)", RFC 2408, novembre 1998. [ORM96] Orman, H., "The Oakley Key Determination Protocol", RFC 2412, novembre 1998. [PKCS1] RSA Laboratories, "PKCS # 1: RSA Encryption Standard", novembre 1993. [Pip98] Piper, D., "Le domaine de sécurité IP Internet de l'interprétation pour ISAKMP", RFC 2407, novembre 1998. [RC5] Rivest, R., "L'algorithme de chiffrement RC5", Dr. Journal de Dobb, V. 20, n. 1, janvier 1995. [RSA] Rivest, R., Shamir, un., et Adleman, L., "Une méthode pour obtenir des signatures numériques et des cryptosystèmes à clé publique", Communications of the ACM, V. 21, n. 2, février 1978. [Sch96] Schneier, B., "Cryptographie appliquée, protocoles, algorithmes et code source dans C", 2e édition. [Sha] nist, "Secure Hash Standard", FIPS 180-1, National Institut of Standards and Technology, U.S. Département de commerce, mai 1994. [Tiger] Anderson, R., et Biham, E., "Fast Software Encryption", Springer LNCS V. 1039, 1996. Track Standards Harkins & Carrel [Page 32]
RFC 2409 IKE novembre 1998 Annexe A Ceci est une liste des touches des faibles et semi-wek. Les clés viennent de [SCH96]. Toutes les clés sont répertoriées en hexidécimal. Des touches faibles 0101 0101 0101 0101 1F1F 1F1F E0E0 E0E0 E0E0 E0E0 1F1F 1F1F FEFE FEFE FEFE FEFE DES DES SEMI-WEAKE CEYY E 010E E0FE E0FE F1FE F1FE FE01 FE01 FE01 FE01 E01F E01F F10E F10E E001 E001 F101 F101 FE1F FE1F FE0E FE0E 1F01 1F01 0E01 0E01 FEA0 FEE0 FE0E. Les attributs de phase deux sont définis dans la spécification DOI applicable (par exemple, les attributs IPSEC sont définis dans l'IPSec DOI), à l'exception d'une description de groupe lorsque le mode rapide comprend un échange éphémère diffie-hellman. Les types d'attribut peuvent être de base (b) ou de longueur variable (v). Le codage de ces attributs est défini dans la spécification ISAKMP de base en tant que type / valeur (de base) et type / longueur / valeur (variable). Les attributs décrits comme basiques ne doivent pas être codés comme variables. Les attributs de longueur variable peuvent être codés en tant qu'attributs de base si leur valeur peut s'adapter à deux octets. Si tel est le cas, un attribut offert comme variable (ou de base) par l'initiateur de ce protocole peut être renvoyé à l'initiateur en tant que base (ou variable). Track Standards Harkins & Carrel [Page 33]
RFC 2409 IKE novembre 1998 Attribut Classes Class Value Type ----------------------------------------------------------------------- ALGorithme de cryptage 1 B Algorithme de hachage 2 B Méthode d'authentification 3 B DESCRIPTION DU GROUPE 4 B TYPE 5 B GRASS 383 sont réservés à Iana. Les valeurs 16384-32767 sont destinées à un usage privé parmi les parties consentantes mutuellement. Valeurs de classe - Algorithme de chiffrement défini dans DES-CBC 1 RFC 2405 IDEA-CBC 2 BLOWFISH-CBC 3 RC5-R16-B64-CBC 4 3DES-CBC 5 CAST-CBC 6 Les valeurs 7-65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. - Algorithme de hachage défini dans MD5 1 RFC 1321 SHA 2 FIPS 180-1 Tiger 3 Voir référence [Tiger] Les valeurs 4-65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. Standards Harkins & Carrel Track [Page 34]
RFC 2409 IKE novembre 1998 - Méthode d'authentification Pré-partage 1 Signatures DSS 2 Signatures RSA 3 Encryption avec le cryptage révisé RSA 4 avec des valeurs RSA 5 6-65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. - DESCRIPTION DU GROUPE PARMIN MODP 768 bits (Section 6.1) 1 groupe MODP alternatif 1024 bits (section 6.2) 2 groupe EC2N sur GP [2 ^ 155] (Section 6.3) 3 groupe EC2N sur GP [2 ^ 185] (Section 6.4) 4 valeurs 5-32767 sont réservées à IANA. Les valeurs 32768-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. - Type de groupe MODP (groupe d'exponentiation modulaire) 1 ECP (groupe de courbe elliptique sur GF [P]) 2 EC2N (groupe de courbe elliptique sur GF [2 ^ n]) 3 Les valeurs 4-65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. - Type de durée de vie secondes 1 kilobytes 2 valeurs 3-65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. Pour un "type de vie" donné, la valeur de l'attribut "durée de vie" définit la durée réelle de la vie SA - soit un certain nombre de secondes, soit un certain nombre de furages protégés. - PRF Il n'y a actuellement aucune fonction pseudo-aléatoire définie. Les valeurs 1 à 65000 sont réservées à IANA. Les valeurs 65001-65535 sont destinées à un usage privé parmi les parties consentantes mutuellement. Track Standards Harkins & Carrel [Page 35]
RFC 2409 IKE novembre 1998 - Longueur de clé Lors de l'utilisation d'un algorithme de chiffrement qui a une clé de longueur variable, cet attribut spécifie la longueur de la clé en bits. (Doit utiliser l'ordre des octets du réseau). Cet attribut ne doit pas être utilisé lorsque l'algorithme de chiffrement spécifié utilise une touche fixe. - Taille de champ La taille du champ, en bits, d'un groupe Diffie-Hellman. - Ordonnance de groupe l'ordre de groupe d'un groupe de courbe elliptique. Remarque La longueur de cet attribut dépend de la taille du champ. Échanges supplémentaires définis - Valeurs XCHG Mode rapide 32 Nouveau mode de groupe 33 Standards Harkins & Carrel Track [Page 36]
RFC 2409 IKE novembre 1998 Annexe B Cette annexe décrit les détails de chiffrement à utiliser uniquement lors du chiffrement des messages isakmp. Lorsqu'un service (comme une transformée IPSec) utilise ISAKMP pour générer du matériel de saisie, tous les détails spécifiques de l'algorithme de cryptage (tels que la génération de la clé et de l'IV, le rembourrage, etc. ) Doit être défini par ce service. ISAKMP ne prétend jamais produire des clés qui conviennent à tout algorithme de chiffrement. ISAKMP produit la quantité demandée de matériel de saisie à partir duquel le service doit générer une clé appropriée. Les détails, tels que les contrôles de clés faibles, sont la responsabilité du service. L'utilisation de PRF négociés peut exiger que la sortie PRF soit étendue en raison du mécanisme de rétroaction du PRF utilisé par ce document. Par exemple, si le (fictif) Doorak-Mac nécessite 24 octets de clé mais ne produit que 8 octets de sortie, la sortie doit être étendue trois fois avant d'être utilisée comme clé pour une autre instance de lui-même. La sortie d'un PRF est élargie en renforçant les résultats du PRF en lui-même pour générer des blocs successifs. Ces blocs sont concaténés jusqu'à ce que le nombre requis d'octets soit atteint. Par exemple, pour l'authentification des clés pré-partagée avec Doorak-Mac en tant que PRF négocié: Block1-8 = PRF (pré-key-key, ni_b | nr_b) Block9-16 = PRF (pré-partage Block9-16 | BLOCK17-24 so therefore to derive SKEYID_d: BLOCK1-8 = prf(SKEYID, g^xy | CKY-I | CKY-R | 0) BLOCK9-16 = prf(SKEYID, BLOCK1-8 | g^xy | CKY-I | CKY-R | 0) BLOCK17-24 = prf(SKEYID, BLOCK9-16 | g^xy | CKY-I | CKY-R | 0) and SKEYID_d = BLOCK1-8 | Block9-16 | BLOCK17-24 Les dérivations PRF suivantes sont effectuées de manière similaire. Les clés de chiffrement utilisées pour protéger l'ISAKMP SA sont dérivées de SKEYID_E d'une manière spécifique à l'algorithme. Lorsque skeyid_e n'est pas assez long pour fournir tous les matériaux de saisie nécessaires qu'un algorithme nécessite, la clé est dérivée de l'alimentation des résultats d'une fonction pseudo-aléatoire en lui-même, de concaténer les résultats et de prendre les bits les plus élevés nécessaires. Track Standards Harkins & Carrel [Page 37]
RFC 2409 IKE novembre 1998 Par exemple, l'algorithme si (fictif) Akula nécessite 320 bits de clé (et n'a pas de vérification de clé faible) et le PRF utilisé pour générer SKEYID_E ne génère que 120 bits de matériel, la clé pour Akula, serait les premiers 320 bits de Ka, où: ka = k1 | K2 | K3 et K1 = PRF (SKEYID_E, 0) K2 = PRF (SKEYID_E, K1) K3 = PRF (SKEYID_E, K2) où PRF est le PRF négocié ou la version HMAC de la fonction de hachage négociée (si aucun PRF n'a été négocié) et 0 est représenté par un seul octobte. Chaque résultat du PRF fournit 120 bits de matériau pour un total de 360 bits. Akula utiliserait les 320 premiers bits de cette chaîne à 360 bits. Dans la phase 1, le matériel du vecteur d'initialisation (matériau IV) pour les algorithmes de chiffrement en mode CBC est dérivé d'un hachage d'une concaténation de la valeur publique de diffie et de la valeur de diffie-hellman du répondeur à l'aide de l'algorithme de hachage négocié du hachage négocié. Ceci est utilisé pour le premier message uniquement. Chaque message doit être rembourré jusqu'à la taille du bloc le plus proche en utilisant des octets contenant 0x00. La longueur du message dans l'en-tête doit inclure la longueur du pavé car cela reflète la taille du texte chiffré. Les messages suivants doivent utiliser le dernier bloc de chiffrement CBC du message précédent comme vecteur d'initialisation. Dans la phase 2, le matériel du vecteur d'initialisation pour le cryptage en mode CBC du premier message d'un échange de mode rapide est dérivé d'un hachage d'une concaténation du dernier bloc de sortie de la phase 1 CBC et de l'ID de message de phase 2 en utilisant l'algorithme de hachage négocié. Le IV pour les messages suivants dans un échange de mode rapide est le bloc de sortie CBC du message précédent. Le rembourrage et les IV pour les messages suivants sont effectués comme dans la phase 1. Une fois que l'ISAKMP SA a été authentifié, tous les échanges d'information sont chiffrés à l'aide de SKEYID_E. Le vecteur d'initiation de ces échanges est dérivé exactement de la même manière que celle pour un mode rapide - i.e. Il est dérivé d'un hachage d'une concaténation du dernier bloc de sortie de la phase 1 CBC et de l'ID de message de l'en-tête ISAKMP de l'échange d'information (et non de l'ID de message du message qui peut avoir provoqué l'échange d'information). Notez que le bloc de sortie de la phase 1 CBC final, le résultat du chiffrement / décryptage du dernier message de phase 1, doit être conservé dans l'état d'Isakmp SA pour permettre la génération d'IV unique pour chaque mode rapide. Chaque échange post-phase 1 (modes rapides et Standards Harkins & Carrel Track [Page 38]
RFC 2409 IKE novembre 1998 Échanges d'information) génère les IV indépendantes pour empêcher les IV de se synchroniser lorsque deux échanges différents sont démarrés simultanément. Dans tous les cas, il y a un seul contexte de chiffre bidirectionnel / IV. Le maintien de chaque mode rapide et d'échange d'information maintient un contexte unique empêche les IV de se synchroniser. La clé pour DES-CBC est dérivée des huit premiers (8) octets non-wak et non-semi (voir l'annexe A) des octets de SKEYID_E. L'IV est les 8 premiers octets du matériau IV dérivés ci-dessus. La clé de l'idée-CBC est dérivée des seize premiers (16) octets de SKEYID_E. L'IV est les huit premiers (8) octets du matériau IV dérivés au-dessus. La clé de Blowfish-CBC est soit la taille de clé négociée, soit les cinquante-six premiers (56) octets d'une clé (si aucune taille de clé n'est négociée) dérivée dans la méthode de rétroaction de la fonction pseudo-aléatoire susmentionnée. L'IV est les huit premiers (8) octets du matériau IV dérivés au-dessus. La clé de RC5-R16-B64-CBC est la taille de clé négociée, ou les seize premiers (16) octets d'une clé (si aucune taille de clé n'est négociée) dérivée de la méthode de rétroaction de la fonction pseudo-aléatoire susmentionnée si nécessaire si nécessaire. L'IV est les huit premiers (8) octets du matériau IV dérivés au-dessus. Le nombre de tours doit être 16 et la taille du bloc doit être 64. La clé pour 3DES-CBC est les vingt-quatre premiers (24) octets d'une clé dérivée dans la méthode de rétroaction de la fonction pseudo-aléatoire susmentionnée. 3DES-CBC est une opération Encrypt-Decrypt-Encrypt en utilisant la première, le milieu et les huit (8) octets de l'ensemble de la clé 3DES-CBC. L'IV est les huit premiers (8) octets du matériau IV dérivés au-dessus. La clé pour Cast-CBC est soit la taille de la clé négociée, soit les seize (16) octets d'une clé dérivée dans la méthode de rétroaction de la fonction pseudo-aléatoire susmentionnée. L'IV est les huit premiers (8) octets du matériau IV dérivés au-dessus. La prise en charge des algorithmes autres que DES-CBC est purement facultatif. Certains algorithmes facultatifs peuvent être soumis à des réclamations de propriété intellectuelle. Track Standards Harkins & Carrel [Page 39]
RFC 2409 IKE novembre 1998 Adresses des auteurs Dan Harkins Cisco Systems 170 W. Tasman Dr. San Jose, Californie, 95134-1706 United States of America Téléphone: +1 408 526 4000 Courriel: dharkins @ cisco.com Dave Carrel 76 Lippard Ave. San Francisco, CA 94131-2947 United States of America Téléphone: +1 415 337 8469 Courriel: carrel @ ipsec.Note des auteurs de l'organisation Les auteurs encouragent la mise en œuvre indépendante et les tests d'interopérabilité de ce protocole hybride. Standards Harkins & Carrel Track [Page 40]
Déclaration complète du droit d'auteur Copyright (c) The Internet Society (1998). Tous les droits sont réservés. Ce document et les traductions peuvent être copiés et fournis à d'autres, et des œuvres dérivées qui commentent ou l'expliquent ou l'assistance ou aident à sa mise en œuvre peuvent être préparées, copiées, publiées et distribuées, en tout ou en partie, sans restriction de toute nature, à condition que le préavis de droit d'auteur ci-dessus et ce paragraphe soient inclus sur tous ces copies et ouvrages dérivés ci-dessus et ce paragraphe. Cependant, ce document lui-même ne peut être modifié de quelque manière que. Les autorisations limitées remises ci-dessus sont perpétuelles et ne seront pas révoquées par la société Internet ou ses successeurs ou aux attributions. Ce document et les informations contenues ici sont fournies sur une base "en ce qui concerne" la société et la société Internet et le groupe de travail d'ingénierie Internet décline toutes les garanties, expresses ou implicites, y compris, mais sans s'y limiter, l'utilisation des informations ici n'enfreindra aucun droit ou des garanties implicites de qualité marchande ou de fitness à un usage particulier. Track Standards Harkins & Carrel [Page 41]
Ipsec utilise-t-il ike ou isakmp?
La suite de protocole IPSec utilise-t-elle Ike ou Isakmp? RFC 2828 États ISAKMP est le protocole utilisé dans IPSEC pour gérer les SAS, la gestion des clés et l’authentification du système. D’autres sources disent qu’Ike est le protocole qui a utilisé. De RFC 2828:
$ Association de sécurité Internet et protocole de gestion des clés (ISAKMP) (i) Un protocole Internet IPSEC [R2408] pour négocier, établir, modifier et supprimer des associations de sécurité, et pour échanger des données de génération et d’authentification de clés, indépendamment des détails de toute technique de génération de clés spécifique, du protocole d’établissement clé, de l’algorithme d’autorisation spécifique, de l’algorithme ou d’un mécanisme d’authentification.
Interrogé le 14 mai 2013 à 6h13
511 2 2 badges d’or 5 5 badges en argent 9 9 badges en bronze
5 réponses 5
Nettoyons d’abord une certaine confusion ici. Internet Key Exchange (IKE) est un protocole hybride, il se compose de 3 “protocoles”
- ISAKMP: Ce n’est pas un protocole d’échange clé en soi, c’est un cadre sur lequel les protocoles d’échange de clés fonctionnent.
- Oakley: décrit les “modes” de l’échange de clés (e.g. Secrécyt avant parfait pour les clés, la protection de l’identité et l’authentification)
- SKEME: fournit une prise en charge de l’échange de clés basé sur des touches publiques, des centres de distribution de clés et de l’installation manuelle, il décrit également les méthodes de rafraîchissement de clé sécurisé et rapide.
Alors oui, ipsec fait Utilisez Ike, mais Isakmp fait partie d’Ike.
Démystifier ike / ikev2
IKEV2 est un protocole de sécurité qui facilite les échanges de clés symétriques cryptographiques entre les points de terminaison.
- Ike / ikev2
- Caractéristiques
- Ikev2 et ipsec
- Méthodologie en 2 phases d’Ike
- La phase 1
- Phase 2
- Isakmp
- Oakley
- Skeme
- Diminuer l’exposition à la vulnérabilité de Skeme
Ike / ikev2
IKEV2 a remplacé Ike fin 2005 et n’est pas en arrière compatible avec Ike. À l’origine définie dans RFC 4306, la dernière version d’IKEV2 est divisée entre RFC 7296, 7427, 7670 et 8247.
Certains forums et articles Internet décrivent IKE / IKEV2 comme un protocole VPN. C’est un terme impropre.
Construit dans IPSec, IKEV2 est défini comme un sécurisé protocole d’échange de clés (un type de protocole de sécurité). IPSEC utilise IKEV2 pour établir un tunnel sécurisé temporaire dans le but d’échanger des paramètres d’association de sécurité et de clés de session cryptographique Diffie-Hellman entre deux Ipsec points de terminaison. Cependant, il devrait vraiment être traité comme un cadre de sécurité. IKEV2 est fondamentalement une fusion de trois (3) autres protocoles de sécurité: Isakmp, Oakley, et Skeme.
IKEV2 est un protocole IPSEC qui tire son comportement d’autres protocoles spécifiques non IPSEC: Isakmp, Oakley et Skeme
Caractéristiques
Ikev2 est pas un protocole de tunneling pour l’échange de données. Il s’agit d’un protocole de sécurité qui établit un tunnel sécurisé éphémère pour le Objectif unique de l’échange solide des clés de chiffrement. IKE / IKEV2 a été conçu et conçu spécifiquement pour IMPLENTATION avec IPSEC. Il définit comment les critères de terminaison à l’aide d’IPSEC s’authentifieront mutuellement via les associations de sécurité (SAS) et exécutent les paramètres de ces SAS en facilitant les calculs, les affectations, les échanges, les remplacements et les révocations de sécurité.
Les méthodologies d’Ike ont été copiées et implémentées dans d’autres protocoles VPN (E.g. OpenSWAN, Strongswan).
OpenIke, OpenIkev2, Racoon et Racoon2 sont des exemples de solutions alternatives et open source IKE / IKEV2 qui peuvent être mises en œuvre par d’autres processus pour profiter de l’architecture d’échange clés robuste d’Ike / IKEV2.
Caractéristiques sélectionnées d’Ike:
- Gère l’authentification, les clés et les associations de sécurité IPSEC (SAS)
- Opération à 2 phases
- Phase 1: Authentification mutuelle à l’aide de X pré-partagée.509 touches (chiffrement et intégrité) et communication de phase de configuration 2
- Phase 2: négocie des méthodes utilisées pour crypter les informations des deux points de terminaison IPSEC; Association de sécurité (SA) pour le tunnel IPSEC est établie
Bien que les processus IKE / IKEV2 puissent être appelés par pratiquement tous les processus de tunneling ou de VPN, ils sont presque toujours appelés par IPSec.
Ikev2 et ipsec
Le principal objectif d’Ike / Ikev2 est de fournir un cadre d’association de clé modulaire pour IPSec. Ike a été spécialement conçu pour faire face aux lacunes dans la gestion d’IPSEC du matériel de saisie. Ikev2 est une évolution de ike.
IPSec peut (et fait souvent) utiliser IKEV2 pour gérer les clés cryptographiques. Quand c’est le cas, IKEV2 est appelé indirectement via les associations de sécurité IPSEC. IKEV2 appelle à son tour Isakmp, passant ses instructions de l’IKEV2 SA (qui a à son tour construit selon l’IPSec SA).
Méthodologie en 2 phases d’Ike
La philosophie d’Ike se résume à la compartimentation. Vous pouvez y penser comme un silo de missile nucléaire. Personne ne peut déclencher un lancement par lui-même. Les garanties sont intégrées qui signifient qu’un processus collectif est requis. Un consensus doit se produire ou rien ne se passe.
N’oubliez pas que le résultat final souhaité d’IKEV2 est de partager en toute sécurité une clé symétrique entre deux (2) pairs réseau qui souhaitent communiquer via un VPN IPSEC. 3 Pour ce faire, IKEV2 utilise un processus en deux phases qui présume que le point de départ de la négociation clé occurcisse sur une connexion réseau peu sûre. Ainsi, la phase 1 établit un tunnel sécurisé par lequel la phase 2 est canalisée. La phase 1 authentifie les pairs du réseau et négocie un SA de style IPSEC (Sécurité) pour la phase 2, lorsque l’échange de clés réel a lieu.
IKEV2 Phase 1
La phase 1 est un processus de négociation qui établit une association de sécurité IKEV2 sécurisée et authentifiée entre deux (2) pairs réseau. La phase 1 gère l’authentification des deux pairs du réseau et établit un accord sur lequel les méthodes de chiffrement seront utilisées pour la phase 2. Une politique de sécurité distincte (sous la forme d’un IKEV2 SA) est mise en œuvre pour chaque pair IKEV2. Normalement, il n’y a que deux (2) pairs.
La phase 1 utilise x.509 Certificats d’authentification et échanges de clés Diffie-Hellman contre le cryptage. Le x.509 Les certificats doivent être organisés à l’avance (pré-partagés) ou peuvent être échangés via DNS ou DNSSEC.
La phase 1 définit:
- Paramètres mondiaux, tels que les noms des certificats de clés publics
- La question de savoir si un secret avant parfait (PFS) doit être utilisé
- Interfaces réseau affectées
- Protocoles de sécurité et leurs algorithmes
- Méthode d’authentification
La phase 1 a deux (2) méthodes de mise en œuvre différentes. “Mode principal” est la configuration par défaut et utilise des clés cryptographiques pour protéger la transmission entre les deux (2) pairs réseau. “Mode agressif” est facultatif et sacrifie la sécurité pour la vitesse. Ce dernier ne doit jamais être utilisé sur Internet.
Mode principal
Le mode principal de phase 1 IKEV2 (par défaut) utilise des touches basées sur PKI pour authentifier les deux pairs réseau.
Mode agressif
La sainteté des clés cryptographiques de la phase 2 IKEV2 est essentielle pour prévenir un effet en cascade des compromis clés.
La phase 1 IKEV2 ne doit pas être exécutée en mode agressive sur un réseau insécurité, comme Internet.
Le mode agressif de la phase 1 IKEV2 est plus rapide que le mode principal par défaut, mais transmet toutes les informations dans le clair (texte brut) sans protection d’authentification. Le mode agressif doit être évité lorsque cela est possible car il est particulièrement vulnérable aux attaques de l’homme au milieu (MITM), offrant à un attaquant la possibilité de modifier les paramètres de l’association de sécurité pour la phase 2. Par exemple, permettant à un attaquant la possibilité de forcer une méthode de chiffrement de niveau inférieur qui est beaucoup plus facile à casser.
La conception d’IKEV2 présume l’opération dans un environnement hostile où il est vulnérable à l’homme au milieu (MITM) et aux vecteurs d’attaque similaires.
Le principal objectif de la phase 1 est de retarder un attaquant assez longtemps pour exécuter la phase 2. 4IKEV2 Phase 2
IKEV2 Phase 2 négocie et implémente le paramètres Pour une nouvelle association de sécurité IKEV2, gérée par Isakmp (Isakmp SA). La phase 2 est l’endroit où la négociation de la SA sous-jacente a lieu (l’AS qui a invoqué IKEV2 pour commencer; normalement, ipsec).
Certaines parties de ce document se réfèrent à la phase 2 IKEV2 comme l’ISAKMP SA.
Quoi qu’il en soit, la phase 2 d’IKEV2 incarne la mise en œuvre du processus parent SA (normalement IPSEC).La phase 1 IKEV2 SA et la connexion sont abandonnées une fois la phase 2 établie. Les politiques de sécurité de la phase 2 et les clés cryptographiques sont indépendantes de celles mises en œuvre dans la phase 1. La mise en œuvre de la phase 2 SA est gérée par Isakmp, qui soucit divers paramètres de sécurité à Oakley et Skeme.
Les trois mousquetaires: Isakmp, Oakley et Skeme
Protocole Ike / ikev2
PhaseFonction Isakmp 1 Définit les politiques SA Oakley 1 + 2 Skeme 1 + 2 Gère la création clé Si vous avez déjà fait des recherches sur IKE ou IKEV2, vous avez probablement remarqué que ces acronymes apparaissent fréquemment dans la documentation IKE / IKEV2. C’est parce que Ike / Ikev2 est une coalescence des cadres de sécurité et des protocoles; Un cadre Uber composé de trois (3) protocoles de sécurité liés et interdépendants.
ISAKMP gère les associations de sécurité (SAS). Oakley gère les paramètres clés et facilite le décaissement clé. Skeme crée des clés et gère les tâches de rafraîchissement des clés.
Coordonnées ISAKMP. Oakley agit comme du middleware entre Isakmp et Skeme. Et Skeme génère de nouvelles clés.
Le matériel de saisie est fourni par Oakley, et transmis à Skeme, qui génère de nouvelles clés. Les clés sont renvoyées de Skeme à Oakley, qui attribue des ID aux clés (appelés keyids) et facilite la distribution des clés aux pairs du réseau via Isakmp, selon le correspondant de l’association de sécurité IKEV2 correspondante.
ISAKMP est le processus de conduit qui établit des canaux de communication sécurisés dans les deux phases IKEV2. Grâce à ISAKMP, la phase 1 établit le SA pour IKEV2 (IKEV2 SA) et met en place les paramètres de canal bidirectionnels nécessaires à la création de la phase 2 IKEV2.
Pendant la phase 2, ISAKMP crée sa propre SA (Isakmp SA) responsable de la coordination de la création et de la mise en œuvre du SA du processus appelant IKEV2 (normalement, IPSEC). La phase 1 et la phase 2 reposent sur Oakley pour distribuer des clés cryptographiques, gérer les keyids pour l’ISAKMP SA, dicter le matériau de saisie pour les clés Diffie-Hellman (D-H) et garder une trace de toutes les clés pré-partagées. Les demandes d’Oakley à leur tour crée de nouvelles clés DH et fournit des informations clés de l’infrastructure des clés publiques (PKI) de Skeme.
Isakmp
ISAKMP gère les associations de sécurité (création, négociation, modification et suppression), la gestion des clés cryptographiques et l’authentification des appareils des pairs.
ISAKMP (Internet Security Association et Key Management Protocol) guide la création et le règlement (processus d’accord entre les pairs du réseau) des associations de sécurité (SAS). Comme un cadre Pour l’authentification et les clés cryptographiques, lorsqu’elles sont déclenchées, il établit sa propre association de sécurité (SA). Les SAS d’Isakmp sont différents d’iPsec SAS. Un ISAKMP SA est un canal sécurisé pour négocier le matériel de saisie, bien que l’essence de l’IPSec SA se rend à Isakmp via l’IPSec et IKEV2 SAS. Ils sont tous gérés par Isakmp.
ISAKMP a été initialement défini indépendamment sous RFC 2408. Lorsque IKEV2 a remplacé Ike (via RFC 4306 fin 2005), plusieurs RFC – y compris RFC 2408 – ont été incorporés dans un. La version actuelle du framework IKEV2 est RFC 7296 et inclut la fonctionnalité ISAKMP. En tant que cadre, ISAKMP définit les procédures et les formats de paquets pour établir, négocier, modifier et supprimer les associations de sécurité. Il nécessite du matériel de saisie en entrée, qui doit être dérivé d’un autre processus, tel que IKEV2, KINK ou un protocole de sécurité de l’accord de clé similaire.
Utilisé par Ike / Ikev2 et Kink, Isakmp ne nécessite ni l’un ni l’autre. C’est, en fait, Échange clé indépendant. De même, Isakmp n’est pas limité à la portée de l’iPsec. Il est agnostique vers les protocoles de sécurité. Étant non lié à tout algorithme cryptographique spécifique, technique de génération de clés ou mécanisme de sécurité, ISAKMP peut mettre à jour les algorithmes et les mécanismes sans changer ses crochets avant connectés par d’autres processus (E.g. Ikev2).
ISAKMP a une pièce jointe spécifique au port 500. Il nécessite un échange de données bidirectionnel via des paquets UDP sur le port 500 (les hôtes source et cible utilisent le port 500), bien que cela puisse être mis en œuvre sur n’importe quel protocole de transport. 5
Les associations de sécurité ISAKMP et IKEV2 sont indépendantes les unes des autres.
Isakmp et ikev2
ISAKMP (Internet Security Association et Key Management Protocol) est un processus indépendant. Cependant, IKEV2 s’en tient fortement en tant que gardien. ISAKMP joue un rôle central dans la coordination de la gestion des associations de sécurité IKEV2.
Invoqué pendant le processus d’authentification par les pairs d’IKEV2 (phase 1 IKEV2), ISAKMP crée un canal sécurisé utilisant des méthodes de cryptage de clés publics pour authentifier le pair IKEV2 opposé et négocier une nouvelle association de sécurité (ISAKMP SA). IKEV2 négocie ensuite le matériel de keying pour ses datagrammes IP – basés sur SA d’IKEV2 – et incorpore cela dans l’ISAKMP SA. Par la suite, la phase 2 de l’IKEV2 commence et un canal bidirectionnel sécurisé est établi sur la base des paramètres convenus pendant la phase 1. Isakmp joue à nouveau le rôle central pendant la phase 2. Cette fois, Isakmp invoque Oakley pour créer des clés de sécurité en fonction des paramètres spécifiés dans l’isakmp SA. Oakley travaille avec Skeme et renvoie les résultats à Isakmp, qui complète ensuite la configuration du canal sécurisé, établissant un nouveau canal sécurisé et renvoie le contrôle de son processus parent (IKEV2). IKEV2 renvoie à son tour le contrôle de la chaîne de commande au processus qui l’a appelé (e.g., Ipsec).
Oakley
Oakley est un protocole de détermination clé: Un protocole de sécurité qui négocie, distribue, échange et surveille les clés cryptographiques entre les pairs du réseau.
Oakley est le couteau à armée suisse de la gestion des clés cryptographiques pour ikev2. Il coordonne la génération de clés et l’authentification des clés. pas responsable de la génération de clés, Oakley gère le provisionnement des clés. C’est le processus incontournable lorsqu’un processus parent (E.g. Isakmp) a besoin d’une clé. Oakley devrait aller le chercher. Vous pouvez considérer Oakley comme un processus de pont ou un middleware. Dans l’ordre des opérations de la phase 2 d’IKEV2, Oakley se trouve entre Isakmp et Skeme, et ses messages de sortie sont codés en charges utiles d’Isakmp.
Comme middleware (e.g. Entre Isakmp et Skeme), Oakley définit:
- Méthode de cryptage
- Méthode de dérivation clé
- Méthode d’authentification
Les fonctions principales d’Oakley sont:
- Faciliter la négociation des algorithmes clés entre deux (2) pairs réseau
- Agissant comme middleware pour faciliter le transfert des clés de sécurité entre un processus parent (comme Isakmp) demandant une clé et un processus d’enfant qui fournit des clés (comme Skeme)
- Effectuer un transformer Fonctionnement sur les critères de l’algorithme clé
- Intégration des métadonnées d’identification clés dans le message renvoyé au processus de demande, qui peut être suivi par les associations de sécurité de type IPSec (E.g. Protocoles AH ou ESP)
Provisioning de clés cryptographiques
Oakley est capable de provisionner une variété de catégories de clés crytographiques: pré-partage.509 (autorité de certificat de 3e partie). Défini par RFC 2142 [1998], Oakley ne crée pas nouvelles clés. Il facilite plutôt leur création et leur transfert, y compris la spécification du matériau de saisie.
Pourquoi Oakley? IKE / IKEV2 ont été modélisés en fonction des lacunes dans IPSEC, et puisque IPSEC utilise des clés symétriques, la phase 2 IKE / IKEV2 présume l’utilisation de clés symétriques. Le comportement de secours à Oakley et Skeme permet d’utiliser des clés symétriques non-diffie-hellman (D-H), mais le protocole IKE / IKEV2 est le plus sécurisé lorsque les clés DH sont appliquées. Qu’en est-il du processus de génération de clés réel? C’est le travail de Skeme.
Caractéristiques d’Oakley
Les responsabilités d’Oakley comprennent:
- Authentification des pairs du réseau et agissant en tant que service de livraison de messager
- Gestion de la distribution (mais pas de la création) des clés pour l’authentification et le cryptage
- Établir des paramètres par lesquels les clés cryptographiques sont choisies
- Middleware entre la création de clés (E.g. SKEME) et la demande de clé (E.g. Isakmp)
- Diriger la sélection du matériel de keying secret lorsque de nouvelles clés Diffie-Hellman (D-H) sont demandées
- Faciliter le secret avant parfait (PFS)
- Attribution d’ID à chaque nouvelle clé (KeyId)
- Négocier des échanges clés
- Mise à jour des clés existantes pour le processus parent
IKEV2 SAS Spécifiez qu’Oakley demande des clés de Skeme et les distribue à Isakmp
Oakley et Ikev2
IKEV2 utilise ISAKMP pour appeler Oakley pendant la phase 2, où il devrait coordonner l’entrée à Skeme (matériau de keying) et le rendement de la sortie à Isakmp (touches). Pourquoi Isakmp ne communique-t-il pas simplement avec Skeme directement? Pourquoi n’y a-t-il pas un seul processus qui s’occupe de toutes ces étapes à la fois? Trois mots: secret avant parfait (PFS).
Les protocoles de sécurité Isakmp, Oakley et Skeme sont conçus pour être modulaires, avec une focalisation délibérément étroite. Bien que Skeme puisse techniquement générer des clés symétriques en utilisant l’algorithme Diffie-Hellman (D-H) en soi, il ne peut le faire qu’avec une classe d’exposants par défaut, qui donne un niveau de sécurité relativement mauvais et ne doit être considéré comme une mesure d’arrêt uniquement. Pendant ce temps, Oakley ne peut pas du tout générer des clés, mais est capable d’attribuer des groupes d’exposants DH intégrés ou personnalisés à Skeme en fonction du niveau de sécurité indiqué par Isakmp. Enfin et surtout, Isakmp ne peut faire ni l’un ni l’autre. Isakmp obtient ses ordres de marche de l’IKEV2 SA, dérivé de son processus parent (généralement IPSec), qui a été à son tour déterminé par le parent SA (E.g. Ipsec sa).
La PFS ne serait pas possible sans une division des pouvoirs entre Isakmp, Oakley et Skeme. Par exemple, la transformation des clés est isolée entre Oakley et Skeme (ce qui empêche Isakmp de connaître les détails; il ne peut voir que les résultats). De même, Isakmp et Oakley sont tous deux conscients des facteurs contribuant à l’attribution du groupe DH d’Oakley à Skeme, mais Skeme n’a aucune connaissance et ne voit que le résultat final (l’instruction réelle de l’affectation de groupe). Skeme n’est pas au courant de tous les facteurs qui ont influencé le numéro de groupe DH qui lui est attribué. Empêcher tout processus unique d’avoir toutes les informations assure que PFS.
Gestion des clés non DH
Oakley régit uniquement les clés symétriques Diffie-Hellman (D-H). Que se passe-t-il quand Isakmp demande un type de clé non DH à Oakley?
- Oakley passe la demande de clé non DH à Skeme sans modification
- Skeme tente de répondre à la demande
- Skeme passe le résultat à Oakley (clé ou nul)
- Si ce n’est pas nul, Oakley attribue KeyId à la clé
- Oakley revient le résultat à Isakmp
Rappelez-vous, Oakley n’est jamais impliqué dans la génération de clés. Il facilite uniquement les transferts de clés et fournit un matériel de saisie mathématique pour les clés symétriques. Skeme est le cheval de bataille des clés cryptographiques.
Oakley Key Transformation Operations
En tant que processus, Oakley est en mesure d’effectuer un transformer Opération sur les critères de groupe Diffie-Hellman et d’exposants. Transformer signifie fournir des détails sur la façon dont un algorithme doit être appliqué aux données (donc transformerles données). Ainsi, dans le cas d’Oakley, cela signifie qu’Oakley contrôle le groupe DH et les critères d’exposant tel qu’il est présenté au processus de l’enfant qui crée la clé DH.
En utilisant IKEV2 comme exemple de processus, SA d’Isakmp doit contenir des informations spécifiant le niveau de cryptage requis et le type de clés requis pour le tunnel sécurisé établi par IKEV2 Phase 2. Cela ne consistera pas nécessairement en une demande de clés symétriques. Jetons un coup d’œil au processus logique de trois scénarios possibles pour les demandes clés à Oakley via IKEV2. La demande clé arrivera à Oakley via un Isakmp SA, qui contiendra les exigences pertinentes qui ont dérivé de la phase 2 IKEV2.
Les champs de messages d’Oakley correspondent aux charges utiles du message ISAKMP ou en charge utile.
Les champs de charge utile pertinents sont les charges utiles SA, Auth, Certificate (S) et Key Exchange.
Scénario n ° 1: Créez une nouvelle clé symétrique à l’aide d’un algorithme Diffie-Hellman
C’est le scénario où Oakley offre le plus grand avantage.
- Oakley prend la tâche de sélectionner le matériel de keying pour l’algorithme DH.
- Oakley fournit le groupe DH ou les informations d’exposant à Skeme.
- Skeme crée la clé symétrique et la renvoie à Oakley.
- Oakley attribue un keyid à la clé.
- Oakley transmet la nouvelle clé DH et KeyId à Isakmp.
- ISAKMP fournit la clé et KeyId à IKEV2.
Scénario n ° 2: Récupérez une clé symétrique pré-partagée
Dans ce scénario, IKEV2 demande à Isakmp d’utiliser une clé pré-partagée et fournit un jeton de référence pour la clé.
- Oakley passe le jeton de référence pour la clé pré-partagée pour Skeme.
- Skeme récupère la clé pré-partagée et la rend à Oakley.
- Oakley attribue un keyid à la clé.
- Oakley transmet la clé et Keyid à Isakmp.
- ISAKMP fournit la clé et KeyId à IKEV2.
Scénario # 3: Récupérer une clé publique
Dans ce scénario, IKEV2 demande à Isakmp de récupérer un certificat PKI public. ISAKMP transmet la demande à Oakley, qui utilise Secdns (DNS sécurisé) pour récupérer la clé publique. Le résultat est renvoyé à Isakmp.
Scénario n ° 4: Récupérez un X.509 Clé de certificat
Quand Oakley reçoit une demande de x.509 Clé de certificat, il est récupéré et validé avant d’attribuer un KeyId et de renvoyer les informations clés au processus parent. Oakley récupère également les certificats auxiliaires pour certifier les autorités ou les co-signes en fonction du Web de la confiance de l’autorité de certificat demandée.
Si Isakmp est le processus parent qui demande Oakley (E.g. IKEV2), ISAKMP fournira des informations de certificat utiles à Oakley. Cela aide à minimiser les informations d’autorité d’autorité de certificat d’Oakley et de retourner des informations sur l’autorité de certificat qui n’est pas nécessaire parce que Isakmp et son processus parent en sont déjà conscients, bien qu’il puisse être utile à Oakley pendant le processus de validation du certificat.
Temps: Némésis des clés symétriques
L’aspect le plus difficile de la création de clés symétriques (e.g. Clés dh) est le temps de calcul requis. . Ce processus prend du temps. Pendant cet “écart”, Oakley doit attendre qu’un autre processus termine le calcul. Afin de se protéger contre un processus malveillant se faisant passer pour l’autre processus, Oakley utilise une forme faible d’authentification source utilisant des jetons (appelés “cookies”) en attendant le processus enfant (E.g. Skeme) pour terminer et retourner un résultat. Par exemple, imaginez que Oakley attend que Skeme termine la création d’une clé symétrique DH, qu’un processus malveillant tente de se déguiser en tant que processus de réponse et de fournir une clé DH à Oakley qui est connue d’un mauvais acteur surveillant une connexion IKEV2. Si Oakley n’a aucune raison de soupçonner que le processus Skeme a été compromis, il acceptera la clé de Skeme et la transmettra à Isakmp, qui la remet au processus de demande (parent) (E.g. Ikev2). Bien que ce scénario soit très improbable, au moins, la méthode d’authentification rudimentaire d’Oakley offre une certaine confiance qu’un tel scénario est encore moins susceptible de réussir.
Skeme
Skeme est un protocole d’échange de clés indépendant responsable de la création, du partage et des clés cryptographiques rafraîchissantes.
Le plus compliqué des trois (3) protocoles qui composent IKEV2 et au cœur de sa robustesse, Skeme est un module de génération de clé indépendant d’Isakmp et d’Oakley.
Ike / ikev2 dépendent de Skeme pour créer des clés symétriques et aller chercher des clés non symétriques. Certaines publications se réfèrent à Skeme comme plus polyvalent qu’Oakley. Cependant, cette comparaison doit être largement ignorée. Bien que ce soit vrai dans le sens, Skeme ne se limite pas. Oakley et Skeme ont des travaux différents à faire. Sous Ike, Skeme dépend de la réussite des processus d’Oakley.
Skeme ne valide pas les clés, bien qu’elle applique l’anonymat et la non-répudiation aux processus de génération et d’échange de clés.
Présentation de Skeme
Voici quelques faits rapides sur Skeme pour vous aider à mieux comprendre ce dont il est responsable:
- Construit des clés symétriques à l’aide d’algorithmes Diffie-Hellman et de hachages Sha / MD5
- Gère le rafraîchissement / remplacement clé
- Promote le secret avant parfait (PFS) dans IKE / IKEV2
- Recherche PKI et X.509 touches
Skeme travaille également avec Kerberos et Kink.
Les environnements Kerberos ont un risque plus élevé que l’échange de clés de Skeme soit compromis (par rapport à IKEV2)
Flux de processus SKEME
Skeme comprend un processus en 3 étapes, décomposé par phases. Ses trois (3) phases sont: Partager, échanger et authentifier.
Phase 1 (partage)
Les pairs du réseau créent une clé partagée ensemble, avec des matériaux de saisie fournis par les deux pairs.
Les pairs commencent par un échange de clés PKI mutuel. Les clés correspondantes sont utilisées pour crypter les messages ultérieurs passés dans les deux sens entre les pairs, qui sont utilisés pour construire conjointement une clé symétrique (partagée).
Chaque homologue fournit la 1/2 des composants clés finaux, qui sont combinés avec un identifiant unique du pair (identifiant d’association de sécurité précédemment échangée à partir de l’ISAKMP, de l’adresse IP ou de la clé de certificat PKI publique du pair;.g. Celui utilisé dans IKE / IKEV2 Phase 1), et a haché à l’aide d’une fonction de hachage à sens unique (MD5 ou SHA) pour produire la clé symétrique finale. 6
- Chaque pair de réseau fournit sa clé publique à l’autre pair.
- Les pairs établissent une connexion sécurisée les unes avec les autres (deux canaux unidirectionnels).
- Chaque pair crée une nouvelle clé cryptographique, mais ne le partage pas.
- Chaque homologue analyse la 1/2 de sa nouvelle clé et crypte la 1/2 clé en conjonction avec l’identifiant de chaque pair, en utilisant sa clé PKI privée, et l’envoie au pair adverse.
- Le pair adverse décrypte la 1/2 clé et l’identifiant de pairs adverses qu’ils viennent de recevoir avec la clé publique de l’autre pair.
- Peer A crée le hachage et le livre à un pair B sur la connexion cryptée (PKI).
- Chaque pair combine ses copies des deux moitiés clés. La clé 1/2 de Peer A est utilisée comme 1/2 première de la clé. La clé 1/2 de Peer B est la seconde moitié.
- Chaque pair applique indépendamment le hachage fourni par le pair A à la clé combinée, résultant en la clé symétrique finale.
Résultat final: À la fin de la phase 1, chaque pair rejoint les deux moitiés de clés pour assembler la clé complète et exécute un hachage dessus (fourni par le pair A). Le résultat est la clé finale dérivée de la phase 1.
Le pair “A” fait toujours référence au réseau de réseau initiant le processus Skeme
Phase 2 (Exch)
Échange de composants Diffie-Hellman.
SKEME PHASE 2 – La phase d’échange – échange des exposants Diffie-Hellman. L’échange n’est pas authentifié, mais comme vous le verrez, cette préoccupation est traitée dans la phase 3. Les composants DH de la phase 2 peuvent être calculés à l’avance. Quand Skeme est appelé dans le cadre d’Ike / Ikev2, c’est exactement ce qui se passe. Le processus d’Oakley est exécuté avant Skeme, et la sortie d’Oakley est les exposants DH requis pour la phase Skeme 2.
Phase 3 (auth)
La phase 3 utilise la clé de la phase 1 pour authentifier les exposants de clés Diffie-Hellman dérivés de la phase 2.
C’est là que les choses deviennent intéressantes et est le nœud de la logique d’authentification intelligente de Skeme. La phase 3 fournit Authentification des messages et est conçu pour exposer la présence d’un attaquant MITM et / ou des tentatives de manipulation clé. Si une ou les deux clés privées de la phase 1 étaient compromises pendant l’échange de clés, ce fait sera révélé dans la phase 3. Comment Skeme accomplit-il cela?
Création de clé de session (post-phase 3)
La génération de la clé de session réelle est la dernière étape de Skeme.
Cela peut sembler étrange, mais le processus de génération de clés réel est en dehors de l’approche phasée de Skeme. Les phases de Skeme ne créent pas réellement les clés de session. Ils accumulent plutôt les informations nécessaires à la création d’une nouvelle session. Cela permet à la génération de clés de session et aux échanges de clés de se produire – sur une base de temps – sans dépendance des phases de validation, tout en fonctionnant sous le parapluie de Skeme. Pendant ce temps, le processus de génération de clés de session réel – qui à ce stade n’est que mathématique – peut être effectué en parallèle avec d’autres fonctions.
. . La seule chose qui reste à faire est d’exécuter l’algorithme propriétaire de Skeme pour créer la clé. Cette dernière étape est en dehors des phases de validation (mais une partie de Skeme).
Surtout, la génération de clés de session peut être exécutée en parallèle avec d’autres processus, et il est certainement possible qu’un hôte donné ait plus d’un processus Skeme en cours d’exécution. La création de clés de session est souvent le retard. De plus, un hôte peut traiter une nouvelle clé de session plus rapidement que son pair. Si les touches de session sont créées en temps réel, il peut y avoir un retard tandis que le pair de réseau plus rapide attend que le pair plus lent se rattrape, plaçant la connexion en animation suspendue jusqu’à ce que les deux pairs soient en mesure de se synchroniser.
Cette flexibilité dans la gestion du temps est particulièrement importante pour les connexions mobiles et les applications à faible latence. Il permet, par exemple, à générer la touche de session suivante bien avant l’expiration de la session actuelle. L’algorithme de génération de clés peut être taxant sur l’appareil hôte. Cela permet à Skeme de se préparer à un échange de clés avant qu’il ne soit réellement nécessaire, empêchant des effets indésirables tels que la suspension d’une connexion car la minuterie s’est épuisée, mais une nouvelle clé n’est pas encore calculée. Étant donné que Skeme est responsable non seulement de la génération de la clé de session, mais aussi du processus d’échange de clé dans Ike, cela a du sens. . De plus, IKEV2 (et par définition Skeme) est souvent responsable de plusieurs connexions simultanées. Permettre à Flexibile Key Management donne une expérience plus fluide tout autour.
Secrectif avant parfait à Skeme
La combinaison de la phase 1 et de la phase 2 SKEME fournit un secret avant parfait (PFS).
La phase 3 utilise l’ID du pair adverse pour générer sa copie de la clé symétrique; Ainsi, si cet identifiant est mauvais (pas comme ce que le pair adverse pense que c’est l’identification), la validation finale de la clé échouera. . Sinon, l’un ou l’autre (ou les deux) pairs ne parviendront pas à authentifier correctement les touches dans la phase 3. La clé partagée de la phase 1 est utilisée pour valider la clé DH créée dans la phase 2. La phase 3 valide essentiellement que les phases 1 et 2 ont réussi et un attaquant de l’intermédiaire n’est pas présent.
En supposant que l’une ou les autres clés PKI privées de la phase 1 ne sont pas compromises par un attaquant MITM, les deux (2) pairs réseau seront les seuls hôtes capables de connaître la clé complète de la phase 1. La phase 2 n’entraînera pas un résultat correct à moins que la phase 1 ne soit réussie.
La phase 3 authentifie l’origine, la fraîcheur et les valeurs des exposants Diffe-Hellman.
Skeme ne fournit pas l’authentification des appareils d’aucune sorte, autre que pour vérifier que les deux appareils échangeant des données clés sont cohérents tout au long de chaque phase. Skeme n’utilise pas de signatures numériques, et ses processus d’authentification sont limités à l’authentification des messages uniquement. Skeme valide ses composants de données ne sont connus que des deux (2) pairs réseau impliqués dans l’échange, et ces appareils n’ont pas changé du début à la fin du processus de Skeme.
SKEME Phase 1 est vulnérable
Du point de vue de la vulnérabilité, la phase 1 de Skeme est son point faible. Les phases 2 et 3 ne sont pas vulnérables à l’attaque à moins que la phase 1 n’ait été compromise.
- La clé de la phase 3 ne peut pas être calculée sans les deux clés 1/2 obtenues pendant la phase 1.
- La phase 2 ne peut être compromise que si la phase 1 est compromise.
Analyse: Vulnérabilités d’échange de clés Skeme
La clé symétrique finale générée par Skeme est sa sortie: la clé de session. La création nécessite la combinaison de six (6) éléments dérivés des phases 1 et 2:
- Clé symétrique haché (phase 1)
- Exposant DH de Peer A (Phase 2)
- Exposant DH de Peer B (Phase 2)
- Identité du pair A (phase 1)
- Identité du pair B (phase 1)
- La valeur de hachage du message (phase 1)
Les pairs A et B valident indépendamment ces valeurs dans la phase 3. Si quelque chose a mal tourné dans les phases 1 ou 2, la clé finale ne sera pas symétrique et la connexion échouera.
La formule clé de session est propriétaire de skème. Il oblige chaque pair à transposer les valeurs reçues de l’autre de manière à ce que si les pairs n’échangent pas correctement les détails identiques dans les phases 1 et 2 (comme si l’un ou les deux flux de pairs étaient compromis en transit), leurs valeurs pour le calcul de la phase 3 seront différentes seront différentes. . Si cela se produit, le processus abandonne avant l’étape de génération de clés de session, la tentative de communication échoue et / ou la connexion sera supprimée.
L’une des nuances intéressantes de l’approche de Skeme est une composante du processus de génération de clés se compose de l’identifiant unique de chaque pair. Ainsi, si un identifiant incorrect est utilisé par un pair ou l’autre (comme si un attaquant modifiait l’un des échanges clés ), le processus d’authentification de la phase 3 échouera, que l’attaquant tente de permettre aux pairs de terminer le processus, ou si l’attaquant tente d’intercepter un pair et de se masquer en tant que. Quoi qu’il en soit, la symétrie de la validation finale échouera et la présence de l’attaquant sera découverte par l’inférence.
Un autre aspect intéressant de la technique de Skeme est le hachage du message. Rappelons que le hachage est généré par Peer A, qui le partage ensuite avec le pair B sur le canal PKI créé dans la phase 1. . Cela signifie également que si les communications hachées de Peer A à Peer B ont été modifiées en cours. Cela indiquerait également que l’hôte de paier B a été compromis par un attaquant ou un attaquant MITM a intercepté la clé privée de Peer B à partir du processus PKI de phase 1.
La beauté de l’approche de Skeme n’est que légitimement authentifiée que les pairs du réseau (A et B) seront capables d’atteindre la dernière étape et de créer des clés de session symétriques identiques. Les trois (3) informations de la phase 1 sont nécessaires pour générer la clé symétrique correcte dans la phase 3: les deux moitiés de clés présentes, assemblées dans le bon ordre et le hachage de pair A. Et en bonus, sous l’uspice d’Ike, la phase 2 oblige Skeme à la sortie d’Oakley. . Si Oakley n’est pas en jeu (e.g. Skème non appelé via ike), Skeme a un mécanisme intégré pour choisir les exposants DH.
La découverte d’autres vecteurs d’attaque est possible grâce à la mise en œuvre séquentielle par IKEV2 de ses protocoles de sécurité sous-jacents (Isakmp / Oakley / Skeme). Comme mentionné ci-dessus, si le processus d’Oakley est compromis pour les pairs A ou B, la production de Skeme est très susceptible d’être affectée; Même si le processus Skeme n’est pas compromis (en raison de la mauvaise correspondance des exposants DH dérivés d’Oakley). De même, Oakley est connecté à Isakmp, mais ce n’est que dans le sens que Oakley ne soit déclenché que si le processus d’authentification de l’appareil Isakmp n’a réussi. Si l’un de ces composants a été modifié au milieu de la circulation entre les pairs, comme par un attaquant MITM, la nouvelle clé symétrique générée dans la phase 3 par l’un ou l’autre des pairs ne correspondra pas, et lorsque IKEV2 tente de traiter un échange de données, le processus échouera en raison de touches symétriques mal appariées entre les pairs du réseau entre les pairs du réseau, le processus.
L’approche innovante en 3 phases de Skeme à la génération de clés est similaire à la philosophie d’Ike / IKEV2. Skeme suppose que le canal de communication actuel n’est pas en sécurité et un attaquant MITM est présent entre les pairs. Il fournit des informations partielles entre les pairs, s’appuie sur un tiers de confiance (serveur CA) et, dans sa dernière étape, termine une phase d’authentification conçue de telle sorte que seuls les pairs du réseau prévus auront toutes les informations pour pouvoir valider correctement la clé partagée finale finale.
Chaque approche de la sécurité a des vulnérabilités potentielles, et malgré sa conception intelligente, Skeme n’est pas différent. Les faiblesses potentielles les plus significatives de Skeme se rapportent à sa dépendance à l’égard des clés PKI dans la phase 1. C’est le pignon de la ligne dans sa conception. Certes, la possibilité est extrêmement rare, car un attaquant MITM devrait gagner les deux clés privées (pour chaque pair) afin de détourner la connexion et d’avoir la possibilité de piratage de la phase 2.
La sainteté des clés privées des pairs est le talon d’Achille de Skeme. Bien qu’ils soient hautement improbables, il y a deux (2) des vecteurs d’attaque particulièrement vulnérables si les circonstances justifiaient:
- Serveur de CA de fiducie de confiance compromis
Une méthode productive de garde contre les deux est pour les deux pairs de mettre en œuvre des certificats PKI auto-signés à usage unique dans la phase 1. Cela élimine le risque d’un attaquant MITM en utilisant une attaque de dictionnaire de clés privées connues corrélées avec les pairs, et la possibilité d’un serveur CA de confiance compromis.
Le premier risque est particulièrement préoccupant si les deux pairs sont à un trafic élevé, des serveurs auxquels le public sont confrontés à ceux utilisés dans le commerce électronique. Diverses études ont montré qu’un véritable petit nombre de clés sont utilisés à plusieurs reprises sur de nombreux serveurs Web orientés publics. Un pirate astucieux avec une attaque MITM bien placée pourrait déduire une clé privée en collectant et en inversant l’ingénierie d’un grand nombre de transactions sur une période prolongée. C’est bien dans le domaine des ordinateurs modernes, avec suffisamment de temps et de données brutes. Si l’un ou l’autre hôte devait améliorer ce processus, cela réduirait considérablement le risque d’une attaque MITM réussie contre les pairs échangeant des clés via Skeme.
Le deuxième scénario est le plus susceptible d’être une menace lorsqu’un serveur Kerberos agit comme le serveur CA de fiducie tiers. Dans ce scénario, il est probable que les deux pairs dérivent leurs clés PKI privées du même serveur. Cela fait de l’utilisation de Skeme dans un environnement Kerberos un risque plus élevé que les autres implémentations, car la menace posée par un serveur d’échange de clés Kerberos compromis est statique.
Ike Key Négociation
Le démon ike, dans.Iked, négocie et authentifie le matériel de saisie pour SAS de manière protégée. Le démon utilise des graines aléatoires pour les clés des fonctions internes fournies par le système d’exploitation Solaris. Ike offre un secret avant parfait (PFS). Dans PFS, les clés qui protégent la transmission des données ne sont pas utilisées pour dériver des clés supplémentaires. De plus, les graines utilisées pour créer des clés de transmission de données ne sont pas réutilisées. Voir le.Iked (1m) Man Page.
Lorsque le démon ike découvre la clé de chiffrement public d’un système distant, le système local peut alors utiliser cette clé. Le système chiffre les messages en utilisant la clé publique du système distant. Les messages ne peuvent être lus que par ce système distant. Le démon Ike effectue son travail en deux phases. Les phases sont appelées des échanges.
Terminologie clé ike
Le tableau suivant répertorie les termes utilisés dans la négociation clé, fournit leurs acronymes couramment utilisés et donne une définition et une utilisation pour chaque terme.
Définition et utilisation
Le processus de génération de clés pour les algorithmes cryptographiques asymétriques. Les deux principales méthodes sont les protocoles RSA et le protocole Diffie-Hellman.
Un protocole d’échange de clés qui implique la génération de clés et l’authentification clé. Souvent appelé Échange de clés authentifié.
Un protocole d’échange de clés qui implique la génération de clés et le transport clé. Le protocole porte le nom de ses trois créateurs, Rivest, Shamir et Adleman.
Secrécyt avant parfait
S’applique à l’échange de clés authentifié uniquement. La PFS garantit que le matériel secret à long terme des clés ne compromet pas le secret des clés échangées des communications précédentes.
Dans PFS, la clé utilisée pour protéger la transmission des données n’est pas utilisée pour dériver des clés supplémentaires. De plus, la source de la clé utilisée pour protéger la transmission des données n’est jamais utilisée pour dériver des clés supplémentaires.
Une méthode pour établir des clés pour la phase 2 de manière sécurisée. Ce protocole est analogue à la méthode Diffie-Hellman d’échange de clés. Semblable à Diffie-Hellman, l’échange de clés du groupe Oakley implique la génération de clés et l’authentification clé. La méthode Oakley est utilisée pour négocier PFS.
Échange de phase 1 IKE
L’échange de phase 1 est connu sous le nom Mode principal. Dans l’échange de phase 1, Ike utilise des méthodes de cryptage de clés publiques pour s’authentifier avec des entités homologues Ike. Le résultat est une association de sécurité sur Internet et une association de sécurité de la gestion des clés (ISAKMP) Association (SA). Un ISAKMP SA est un canal sécurisé pour Ike pour négocier le matériel de keying pour les datagrammes IP. Contrairement à IPSEC SAS, les SAS ISAKMP sont bidirectionnels, donc une seule association de sécurité est nécessaire.
Comment Ike négocie le matériel de keying dans l’échange de phase 1 est configurable. Ike lit les informations de configuration du fichier / etc / inet / ike / config. Les informations de configuration comprennent les éléments suivants:
- Paramètres mondiaux, tels que les noms des certificats de clés publics
- Si le secret avant parfait (PFS) est utilisé
- Les interfaces affectées
- Les protocoles de sécurité et leurs algorithmes
- La méthode d’authentification
Les deux méthodes d’authentification sont des clés préalables et des certificats de clés publics. Les certificats de clés publics peuvent être auto-signés. Ou, les certificats peuvent être délivrés par une autorité de certificat (CA) d’une organisation d’infrastructure clé (PKI). Les organisations incluent la trousse, les fiducités, le géotelle, la sécurité RSA et Verisign.
Échange de phase 2 IKE
L’échange de phase 2 est connu sous le nom Mode rapide. Dans l’échange de phase 2, Ike crée et gère l’iPsec SAS entre les systèmes qui exécutent le démon Ike. Ike utilise le canal sécurisé qui a été créé dans l’échange de phase 1 pour protéger la transmission du matériau de saisie. Le démon Ike crée les touches à partir d’un générateur de nombres aléatoires en utilisant le périphérique / dev / aléatoire. Le démon rafraîchit les touches à un rythme configurable. Le matériau de saisie est disponible pour les algorithmes spécifiés dans le fichier de configuration pour la stratégie IPSec, iPseCinit.confli .
- Précédent: Gestion clé avec Ike
- Suivant: Choix de configuration IKE