Tutoriel de cryptographie

⚡ Résumé intelligent

La cryptographie protège les informations en les transformant en une forme non lisible par l'homme que seul le détenteur de la clé correcte peut déchiffrer. Cette page aborde ses caractéristiques, ses applications, ses algorithmes et propose un exercice pratique avec CrypTool.

  • (I.e. Idée centrale : Le chiffrement transforme un texte clair en un texte chiffré ; le déchiffrement l'inverse à l'aide d'une clé secrète.
  • 🧩 Trois disciplines : La cryptographie masque le sens, la cryptanalyse le déchiffre, et la cryptologie englobe les deux.
  • (I.e. Familles d'algorithmes : Les fonctions de hachage, les chiffrements symétriques et les systèmes à clé publique résolvent des problèmes différents.
  • ✅ Normes actuelles : Les algorithmes AES et SHA-2 restent approuvés, tandis que les algorithmes MD5, SHA-1 et RC4 sont considérés comme non valides.
  • 🧪 Pratique pratique : CrypTool 1 illustre le chiffrement RC4 et l'analyse par force brute d'une clé de 24 bits.
  • 🔮 Regarder vers l'avant: Le NIST a publié ses premières normes post-quantiques en août 2024.

Tutoriel de cryptographie

L'information joue un rôle crucial dans les opérations commerciales, gouvernementales et militaires, et son utilisation par des personnes mal intentionnées peut entraîner des pertes financières, voire pire. Pour sécuriser les communications, une organisation recourt à la cryptologie afin de chiffrer l'information, en la transformant en un format illisible par l'humain, puis en la reconvertissant en format original.

Dans cet article sur la cryptographie et la sécurité des réseaux, vous apprendrez comment fonctionne la cryptologie et comment empêcher que des informations ne tombent entre de mauvaises mains.

Qu'est-ce que la cryptographie?

La cryptographie est l'étude et l'application de techniques qui masquent le véritable sens de l'information en la transformant en formats non lisibles par l'homme, puis en la reconvertissant.

Prenons un exemple. Pour envoyer « J’AIME LES POMMES », vous remplacez chaque lettre par la troisième lettre suivante de l’alphabet, ce qui donne « K NQXG CRRNGU ». Pour le lire, le destinataire recule de trois lettres, comme indiqué ci-dessous.

Le chiffrement et le déchiffrement consistent à décaler chaque lettre de trois positions.
Chiffrement et décryptage du chiffrement

Transformer l'information en une forme non lisible par l'homme s'appelle chiffrementet son inversion s'appelle DécryptageLe résultat chiffré est appelé un zéro.

Le déchiffrement utilise une clé secrète connue uniquement des destinataires légitimes. L'utilisation de cette clé garantit la sécurité des communications, même en cas d'interception du message chiffré par un attaquant, ce qui serait impossible sans elle.

Caractéristiques de la cryptographie

Un système cryptographique est évalué selon les caractéristiques suivantes.

Fonctionnalité Ce que cela veut dire
Algorithme La procédure mathématique publiée effectuant la transformation.
Confidentialité Seuls les détenteurs de la clé peuvent lire les données protégées.
Integrity Toute modification des données est détectable.
Adaptabilité Le système s'adapte à différentes tailles de clés et à différents niveaux de menace.
Interopérabilité Différents systèmes et fournisseurs échangent des données protégées.
Authentification L'origine d'un message peut être prouvée.
Évolutivité Les performances restent stables malgré l'augmentation des volumes de données.
Gestion des clés Les clés sont générées, stockées, renouvelées et mises hors service en toute sécurité.

Applications de la cryptographie

Ces caractéristiques deviennent des services du quotidien sur lesquels les gens s'appuient sans même s'en rendre compte.

Application Comment la cryptographie est utilisée
Cryptage TLS Protège le trafic entre un navigateur et un site web.
Stockage de mot Stocke les hachages salés au lieu des mots de passe lisibles.
Services bancaires en ligne Sécurise les transactions et vérifie la banque.
crypto-monnaie Signe les transactions et relie les blocs avec des hachages.
email Encrypted Garantit la confidentialité du contenu des messages lors de leur transmission et de leur stockage.
Digisignatures réelles Prouve la paternité du document et son intégrité.
Messagerie sécurisée Applique un chiffrement de bout en bout entre les appareils.
E-Commerce Protège les informations de carte lors du paiement.

Qu'est-ce que la cryptanalyse ?

La cryptanalyse est l'art de déchiffrer des messages sans connaître la clé de chiffrement. Elle applique des analyses mathématiques et des algorithmes pour déchiffrer les messages chiffrés et sert à la fois à compromettre les systèmes et, à titre défensif, à évaluer le niveau de protection offert par un algorithme.

Le succès d'une attaque de cryptanalyse dépend de :

  • Temps disponible
  • Puissance de calcul disponible
  • Capacité de stockage disponible

Voici les attaques de cryptanalyse les plus fréquemment évoquées :

  • Attaque par force brute — essaie toutes les combinaisons possibles du texte clair ou de la clé, en chiffrant chacune d'elles et en la comparant au chiffrement original.
  • Attaque de dictionnaire — utilise une liste de mots pour faire correspondre soit le texte clair, soit la clé. Elle est principalement utilisée lorsqu'on essaie de cracker les mots de passe cryptés.
  • Attaque de la table arc-en-ciel — compare le texte chiffré à des hachages précalculés pour trouver des correspondances. Le salage de chaque mot de passe stocké le rend inviolable.

Qu’est-ce que la cryptologie ?

La cryptologie est le domaine qui englobe la cryptographie et la cryptanalyse. Les deux aspects sont essentiels : un algorithme n’est considéré comme fiable que lorsque des cryptanalystes ont tenté, sans succès, de le casser.

Chiffrement Algorithms

Les algorithmes ci-dessous apparaissent fréquemment dans les travaux sur la sécurité. Notez lesquels sont toujours approuvés et lesquels ne subsistent que dans les systèmes anciens.

  • MD5 MD5, abréviation de Message-Digest 5, produit des valeurs de hachage de 128 bits. MD5 est une fonction de hachage et non une fonction de hachage. chiffrementIl est donc impossible de le déchiffrer par conception. Il n'est pas résistant aux collisions (deux entrées différentes peuvent produire le même hachage) et ne convient pas aux mots de passe ni aux signatures.
  • SHA — abréviation de Secure Hash Algorithm, cette famille génère des représentations condensées d'un message, appelées condensés de message :
    • SHA-0: produit des valeurs de hachage de 160 bits. Il a été retiré en raison d'une faille importante et remplacé par SHA-1.
    • SHA-1: produit des valeurs de hachage de 160 bits. Une collision réelle a été démontrée en 2017 et le NIST l'a interdite pour les signatures numériques ; il est donc conseillé de l'éviter.
    • SHA-2: une famille de six fonctions, dont SHA-256 et SHA-512, fonctionnant respectivement sur des mots de 32 bits et de 64 bits. Ces deux fonctions restent approuvées.
    • SHA-3: normalisé en 2015 et anciennement connu sous le nom de Keccak, il utilise une conception interne différente comme solution de secours à SHA-2.
  • AES L’AES (Advanced Encryption Standard) est le chiffrement par blocs symétrique qui protège aujourd’hui la plupart des données stockées et en transit, avec des clés de 128, 192 et 256 bits. Il a remplacé le DES et est le chiffrement par défaut pour les nouveaux systèmes.
  • RC4 — un chiffrement de flux autrefois courant dans les protocoles SSL (Secure Sockets Layer) et WEP (Wired Equivalent Privacy). Ces deux protocoles sont obsolètes, et la RFC 7465 a interdit l'utilisation de RC4 dans toutes les versions de TLS en 2015. Il est conservé ici à titre d'exemple pédagogique.
  • Blowfish — Un chiffrement par blocs symétrique à clé, historiquement utilisé pour les mots de passe et les fichiers. Sa taille de bloc de 64 bits fait de l'AES le meilleur choix moderne.

Pour l'avenir, le NIST a publié ses premières normes post-quantiques en août 2024 — ML-KEM pour l'échange de clés, ML-DSA et SLH-DSA pour les signatures — qui remplaceront progressivement les algorithmes à clé publique actuels.

Activité de piratage : Comment créer un chiffrement à l’aide de CrypTool

Dans cet exercice pratique avec CrypTool, vous créez un chiffrement simple avec RC4, puis vous le retrouvez par une analyse par force brute, en supposant que la clé est de 24 bits. L'objectif est de démontrer pourquoi une clé courte et un chiffrement vulnérable n'offrent aucune protection réelle.

Création du chiffrement de flux RC4

Étape 1) Téléchargez et installez CrypTool

CrypTool 1 est un outil pédagogique open source de cryptologie. Son développement actif se poursuit avec CrypTool 2, mais la version 1.4.42 est toujours fonctionnelle. Windows et correspond aux captures d'écran ci-dessous. Téléchargez-le depuis cryptool.org.

Étape 2) Ouvrez CrypTool et remplacez le texte

La phrase à chiffrer est Ne sous-estimez jamais la détermination d'un enfant qui a beaucoup de temps et peu d'argent.La clé est 00 00 00.

  • Ouvrir CrypTool 1.

La fenêtre principale de CrypTool 1 avant le remplacement du texte d'exemple

  • Remplacez le texte par la phrase ci-dessus.

Document CrypTool contenant la phrase de remplacement

Étape 3) Chiffrer le texte

  • Cliquez sur le menu Chiffrer/Déchiffrer.

Menu CrypTool Chiffrer/Déchiffrer avec Symétrique moderne sélectionné

  • Pointez sur Symmetric (moderne), puis sélectionnez RC4.

Boîte de dialogue de saisie de clé CrypTool RC4

Étape 4) Sélectionnez la clé de chiffrement

  • Sélectionnez 24 bits comme longueur de clé.
  • Définissez la valeur sur 00 00 00.
  • Cliquez sur « Chiffrer » pour générer le chiffrement de flux ci-dessous.

Chiffrement de flux RC4 résultant affiché dans CrypTool

Attaquer le chiffrement de flux

Étape 5) Démarrer l'analyse

  • Cliquez sur le menu Analyse.

Menu d'analyse de CrypTool avec le chiffrement symétrique moderne mis en évidence

  • Sélectionnez « Chiffrement symétrique (moderne) », puis choisissez RC4.

Boîte de dialogue d'analyse par force brute de CrypTool pour RC4

  • On suppose une clé secrète de 24 bits, il faut donc choisir 24 bits comme longueur de clé.
  • Cliquez sur Démarrer.

Fenêtre de progression de l'analyse par force brute de CrypTool

  • À noter: Le temps nécessaire dépend de la capacité de traitement de la machine utilisée et de la longueur de la clé. Une clé plus longue nécessite plus de temps, c'est pourquoi les clés modernes font 128 bits ou plus.

Étape 6) Analyser les résultats

  • Une fois l'analyse terminée, les clés candidates apparaissent classées comme suit.

Résultats de l'attaque par force brute de CrypTool classés par entropie

  • À noter: Une valeur d'entropie plus faible indique généralement le résultat correct, bien qu'une valeur plus élevée puisse également être correcte.
  • Sélectionnez la ligne qui correspond à un texte compréhensible, puis cliquez sur Accepter la sélection.

FAQ

Le chiffrement symétrique utilise une seule clé partagée et est rapide, ce qui permet de protéger efficacement les données volumineuses. Le chiffrement asymétrique, quant à lui, utilise une paire de clés publique et privée, ce qui résout le problème de la distribution des clés et permet la signature numérique.

Non. Le chiffrement est réversible grâce à une clé ; le hachage est une transformation irréversible qui produit un condensé de longueur fixe. Les systèmes de mots de passe stockent des hachages salés précisément parce que la valeur originale est irrécupérable.

Un sel est une valeur aléatoire unique stockée avec chaque hachage de mot de passe. Il permet de hacher différemment des mots de passe identiques, déjouant ainsi les tables arc-en-ciel précalculées et obligeant un attaquant à traiter chaque compte séparément.

Un certificat numérique associe une clé publique à une identité vérifiée et est signé par une autorité de certification. Les navigateurs vérifient cette signature avant d'établir une connexion chiffrée avec un site web.

Un ordinateur quantique de grande puissance serait capable de casser les clés RSA et à courbe elliptique, tandis que les chiffrements symétriques ne nécessitent que des clés plus longues. Le NIST a réagi en publiant des normes post-quantiques en 2024 afin d'anticiper la transition.

L'apprentissage automatique ne permet pas de casser les chiffrements modernes robustes. Il est plutôt utilisé pour l'analyse des canaux auxiliaires, la détection à grande échelle des clés faibles ou réutilisées et le signalement du trafic chiffré anormal lors de la détection des menaces.

Copilot accélère la génération de code répétitif, mais propose souvent des algorithmes obsolètes ou des clés codées en dur. Considérez chaque suggestion comme une ébauche, privilégiez une bibliothèque éprouvée plutôt que du code développé sur mesure et faites vérifier la gestion des clés par un expert.

Les ingénieurs en sécurité, les testeurs d'intrusion et les analystes judiciaires l'utilisent quotidiennement, et il constitue un domaine à part entière. Certification CISSPLa plupart des rôles consistent à configurer des bibliothèques validées plutôt qu'à concevoir des algorithmes.

Résumez cet article avec :