• Aucun résultat trouvé

Chiffrement des données

Dans le document Td corrigé Cybersécurité - ITU pdf (Page 75-81)

Chapitre III.2 – Outils de la sécurité

III.2.1 Chiffrement des données

La mise en œuvre de techniques de chiffrement permet de réaliser la confidentialité des données, de vérifier leur intégrité et d’authentifier des entités.

Il existe deux grands types de système de chiffrement de données: le chiffrement symétrique (à clé secrète) et le chiffrement asymétrique (à clé publique).

Divers algorithmes de chiffrement existent. Quel que soit leur mode opératoire (symétrique ou asymétrique), ils reposent sur l’usage de clés. Généralement leur degré de robustesse est lié à la capacité à gérer les clés de chiffrement de manière sécurisée, à la longueur de la clé (la longueur minimale de la clé est fonction du type d’algorithme), de la sécurité de la plateforme matérielle et logicielle dans laquelle les algorithmes de chiffrement sont implantés et s’exécutent.

III.2.1.1 Chiffrement symétrique

Pour chiffrer ou déchiffrer un texte, il faut détenir une clé et à un algorithme de chiffrement. S’il s’agit de la même clé pour effectuer ces deux opérations, le système de chiffrement est qualifié de symétrique. L’émetteur et le récepteur doivent posséder et utiliser la même clé secrète pour rendre confidentielles des données et pour pouvoir les comprendre, ceci qui pose le problème de la gestion et de la diffusion des clés secrètes (Figure III.5).

Les principaux algorithmes de chiffrement symétriques sont: DES, RC2, RC4, RC5, IDEA et AES.

Figure III.5 – Le chiffrement symétrique

III.2.1.2 Chiffrement asymétrique ou à clé publique

Un système de chiffrement asymétrique est basé sur l’usage d’un couple unique de deux clés, calculées l’une par rapport à l’autre. Cette bi-clé est constituée d’une clé publique et d’une clé privée.

Seule la clé dite publique peut être connue de tous, tandis que la clé privée doit être confidentielle et traitée comme un secret.

L’émetteur chiffre un message avec la clé publique du destinataire du message et le destinataire le déchiffre avec sa clé privée (Figure III.6).

Les principaux algorithmes de chiffrement à clé publique, dont le nom est celui de leurs inventeurs, utilisent le plus souvent des clés de longueur variant de 512 à 1024 bits, voire 2048 bits. Les principaux algorithmes de chiffrement sont les algorithmes: RSA34 (pour R. Rivest, A. Shamir, L. Adelman), Diffie-Hellman35, El Gamal36.

III.2.1.3 Clés de chiffrement

Une clé de chiffrement est le secret du secret. Les clés secrètes des systèmes de chiffrement, doivent être gérées de manière confidentielle.

La sécurité du processus de chiffrement, repose en grande partie sur la confidentialité et la longueur des clés utilisées, sur la robustesse des algorithmes et sur la sécurité des plates-formes matérielles et logicielles qui les supportent.

Figure III.6 – Le chiffrement asymétrique

III.2.1.4 Infrastructure de gestion de clés

Une infrastructure de gestion de clés – IGC, (PKI – Public Key Infrastructure) permet de mettre en œuvre des systèmes de chiffrement asymétrique. Les principales fonctions supportées sont:

– la génération d’un couple unique de clés (clé privée – clé publique), son attribution à une entité et la sauvegarde des informations nécessaires à sa gestion, archivage des clés, procédures de recouvrement en cas de perte par l’utilisateur ou de demande de mise à disposition par les autorités judiciaires;

– la gestion des certificats numériques, création, signature, émission, validation, révocation, renouvellement des certificats;

– la diffusion des clés publiques aux ressources qui la solliciteraient et qui seraient habilitées à l’obtenir;

– la certification des clés publiques (signature des certificats numériques).

III.2.1.5 Certificat numérique

Un certificat numérique constitue, la carte d’identité numérique d’une entité (personne morale ou physique) ou d’une ressource informatique à qui il appartient. Il contient, entre autres, l’identification de son propriétaire, la clé publique qui lui est attribuée ainsi que l’identification de l’organisme qui l’a délivré.

La norme X.509 «Directory authentification framework» propose un cadre architectural pour la réalisation d’un service d’authentification basé sur l’usage de certificats numériques et spécifie la structure et le format d’un certificat numérique. Cette structure normalisée est à la base de nombreuses solutions du marché (Figure III.7).

RSA (Rivest, Shamir et Adleman) Diffie-Hellman, El Gamal, … Bi-clé

Clé publique: pour tous les interlocuteurs Clé privée: pour le propriétaire

Figure III.7 – Principaux paramètres d'un certificat numérique selon la norme X.509v3

Informations additionnelles concernant le propriétaire ou les mécanismes de chiffrement

Nom de l’organisme qui a généré le certificat

Le couple numéro de série / nom de l’organisme doit être unique

Algorithme utilisé pour signer le certificat Numéro de série

Version du certificat

Signature du certificat

Algorithme et paramètres utilisés pour la signature et signature à proprement parlé

Clé publique du propriétaire Nom du propriétaire du certificat Période de validité

Pour valider le certificat reçu, le client doit obtenir la clé publique de l’organisme qui a créé le certificat relatif à l’algorithme utilisé pour signer le certificat et déchiffrer la signature contenue. A l’aide de ces informations, il calcule la valeur du condensé (résumé ou hash) et compare la valeur trouvée avec celle contenue dans le dernier champ du certificat, si les deux valeurs correspondent, le certificat est authentifié. Ensuite, il s’assure que la période de validité du certificat est correcte.

Le contrôle d’accès basé sur les certificats numériques permet la connexion d’un nombre important d’utilisateurs à un serveur donné. Le contrôle est basé sur les informations contenues dans le certificat numérique du client. Le serveur fait alors confiance à la véracité des certificats et à la façon dont ils sont émis, ce qui constitue une brèche dans la sécurité des systèmes, vu qu’il est possible de corrompre un serveur de certification ou même de créer un certificat numérique falsifié. En outre, le contrôle de validité d’un certificat est difficile à réaliser. En effet, la révocation des certificats reste une tâche très ardue puisque l’information doit être transmise à tous les partenaires et inscrite dans le CRL (Certificate Revocation List). Cette révocation doit être réalisée dès qu’un changement dans le contenu d’un certificat survient (lorsque par exemple les informations du certificat deviennent obsolètes, la clé privée de l’utilisateur a été corrompue, l’utilisateur ne fait plus partie de l’entreprise, etc.). La consultation systématique de cette base de données accentue la lourdeur du contrôle d’accès et réduit la disponibilité des serveurs même pour les utilisateurs autorisés.

III.2.1.6 Tiers de confiance

Quelle que soit son appellation, tiers de confiance, autorité d’enregistrement ou autorité de certification, l’organisme qui met en place une infrastructure à clé publique, a pour fonction principale de produire des certificats établissant la valeur de la clé publique, attribuée à une entité (notion de certificats clients).

Un client, émet une demande d’enregistrement (demande de certification) auprès d’une Autorité de certification (inscription du client via un service web). Des preuves de l’identité du client peuvent être demandées par le serveur d’enregistrement selon les procédures d’identification et d’authentification mises en place par l’autorité. Après validation des données, le serveur de certification génère les clés de chiffrement et construit un certificat numérique au nom du client, signe avec sa clé privée le certificat (certification du certificat numérique) et envoie le certificat au client. Ce dernier utilisera la clé publique de l’autorité pour s’assurer que le certificat est bien produit par l’autorité en question.

Une Autorité de certification est un tiers de confiance qui délivre des certificats numériques et qui permet de vérifier la véracité de certaines informations.

III.2.1.7 Inconvénients et limites des infrastructures de gestion de clés La multiplicité des autorités de certification pose le problème de leur reconnaissance mutuelle, de leur interopérabilité, de la compatibilité des certificats et du champ de leur validité. Toutefois, il n’est pas souhaitable de ne disposer que d'une seule autorité mondiale de certification, du fait du pouvoir étendu et excessif qui lui serait de facto conféré, et du fait de l’importance de l’infrastructure à mettre en place. Il existe un réel manque de confiance des utilisateurs dans les autorités de certification qui sont le plus souvent étrangères (valeur des certificats? garantie de sécurité? protection des données personnelles?, etc.).

Les limites inhérentes aux infrastructures de gestion de clés résident dans:

– la complexité, le coût du déploiement et de la gestion d’une infrastructure;

– le haut niveau de sécurité nécessaire à la réalisation des services des infrastructures de gestion de clés;

– la validité, la durée de vie, la résiliation des certificats.

Parmi les points relatifs à la mise en œuvre de services offerts par une infrastructure de gestion de clés qui peuvent poser problème, retenons:

– Problème politique: la majorité des infrastructures PKI – Autorités de certification, appartient à des entités américaines (USA). Cela soulève la question de la performance et la question de la confiance dans ces entités qui du fait des services offerts: création, sauvegarde, distribution des clés privées et publiques, des données d’identification, notarisation des évènements; du manque de garantie de l’usage non abusif des données, de la neutralité dans les échanges, de moyens de recourt en cas de litige avec l’autorité de certification;

– Problème technologique: les systèmes de chiffrement classiques peuvent être cassés, certains certificats numériques n’ont aucune valeur sécuritaire et ne garantissent rien, des fraudes sont possibles, la sécurité des infrastructures est assurées par des moyens classiques de sécurité qui peuvent être contournés. De plus, l’usage d’une infrastructure de gestion de clés déplace le problème de la sécurité des échanges mais ne le résout pas à proprement parler.

– Problème organisationnel: interopérabilité des infrastructures, déploiement, gestion, maintenance, sécurité, complexité, etc.

III.2.1.8 Signature et authentification

Un émetteur chiffre avec sa clé privée un message. Toute entité connaissant la clé publique de cet émetteur déchiffrera le message, ce qui validera le fait qu’il a bien été créé à l’aide de la clé privée correspondante.

Un document peut être signé électroniquement (notion de signature numérique) via un algorithme de chiffrement à clé publique. Les actions suivantes sont alors réalisées:

– création d’un message de déclaration d’identité qui est la signature (ex. «Je m’appelle Alpha Tango Charlie») qui est chiffrée avec la clé privée de l’émetteur et associée au message à transmettre;

– le message et sa signature sont chiffrés avec la clé publique du destinataire et transmis;

– le destinataire déchiffre le message avec sa clé privée et détache la signature qu’il déchiffre

Attention, rien n’empêche de réutiliser la signature numérique d’un message en lieu et place de l’émetteur réel, on peut également constituer une signature numérique à la place d’un partenaire après lui avoir volé sa clé privée….Pour augmenter le niveau de sécurité de la signature numérique, celle-ci est construite à partir du contenu du message ce qui permet de réaliser l’intégrité et l’au thentification de l’émetteur d’un message.

III.2.1.9 Intégrité des données

Vérifier que les données n’ont pas été modifiées lors de leur transfert est possible en y associant un résumé (condensé) qui est émis en même tant que les données. Celui-ci est le résultat d’une fonction de calcul appliquée aux données. Le destinataire recalcule avec la même fonction la valeur du résumé à partir de données reçues. Si la valeur obtenue diffère, il en déduit que les données ont été modifiées.

Le résumé peut être lui-même chiffré avant que les données ne soient émises ou stockées.

L’un comme l’autre, les systèmes de chiffrement à clé symétrique ou asymétrique permettent de savoir si des données transmises ont été modifiées, car leur déchiffrement devient alors impossible. Cela contribue à réaliser un contrôle d’intégrité, mais ne permet pas de s’assurer que des données n’ont pas été complètement détruites.

Pour un contrôle d’intégrité plus performant, on applique au message original une fonction le transformant en une petite suite aléatoire de bits qui constitue en quelque sorte son empreinte digitale (digest – résumé – condensé).

Une fonction dite fonction digest (ou one-way hash function), génère un message digest, c’est-à-dire son empreinte digitale, plus courte que le message original et incompréhensible. Celle-ci est ensuite chiffrée avec la clé privée de l’émetteur et associée au message à transmettre. Sur réception du message et de son empreinte, le destinataire déchiffre cette dernière avec la clé publique de l’émetteur puis, recalcule à partir du message reçu avec la même fonction hash, l’empreinte et la compare ensuite avec celle reçue. Si le résultat est identique, le destinataire a ainsi vérifié l’identité de l’émetteur et est assuré de l’intégrité du message. En effet, si le message est altéré, même légèrement, son empreinte est alors considérablement modifiée.

Par une utilisation conjointe des techniques de chiffrement, de signature et d’empreinte digitales, on peut estampiller les messages pour garantir l’intégrité des données. Ces procédures sont consommatrices de temps processeur et ralentissent de façon non négligeable les performances d’un environnement d’exécution.

III.2.1.10 Non-répudiation

Le service de non-répudiation consiste à prévenir le refus, le démenti qu’un message ait été émis ou reçu ou qu’une action, transaction ait eu lieu. Cela permet de prouver par exemple qu’une entité est liée à une action ou à un événement.

La non-répudiation est basée sur une signature unique ou sur une identification qui prouve qui a créé le message. Pour assurer ce service, on peut faire appel à un algorithme de chiffrement à clé publique.

On peut également avoir recours à un tiers de confiance pour lui faire jouer un rôle de cybernotaire.

III.2.1.11 Limites des solutions de sécurité basées sur le chiffrement La confiance envers les solutions de chiffrement commercialisées ne peut être que toute relative, dans la mesure ou aucune garantie, aucun moyen de vérification ne sont offerts (existence de portes dérobées (back door) dans les logiciels?, clés secrètes dupliquées, divulguées? etc.). Par ailleurs, aucune preuve n’est donnée quand au fait que les algorithmes actuellement réputés fiables le seront encore dans un futur proche.

Dans le document Td corrigé Cybersécurité - ITU pdf (Page 75-81)