Sciences de l'ingénieur1ère

Cryptographie basique
Exercices corrigés

Maîtrisez la cryptographie basique : chiffrement symétrique, asymétrique, algorithmes, sécurité et applications en transfert d'information grâce à ces 5 exercices détaillés.

Concepts & Exercices
\(\text{Chiffrer}(M, K) = C \Rightarrow \text{Déchiffrer}(C, K) = M\)
Principe de base
Symétrique
AES, DES
Même clé pour chiffrer/déchiffrer
Asymétrique
RSA, ECC
Clé publique/privée
Hachage
SHA-256, MD5
Empreinte unique
🔒
Objectif : Protéger la confidentialité des données
🔄
Méthodes : Chiffrement, hachage, signature numérique
📊
Algorithmes : AES, RSA, SHA-256 pour la sécurité
🛡️
Applications : Communications sécurisées, authentification
Exercice 1
Chiffrer un message avec le chiffre de César (clé = 3)
Exercice 2
Expliquer le fonctionnement de l'algorithme AES
Exercice 3
Décrire le processus de chiffrement RSA
Exercice 4
Analyser la fonction de hachage SHA-256
Exercice 5
Expliquer la signature numérique avec RSA
Corrigé : Exercices 1 à 3
1 Chiffre de César
Définition :

Chiffre de César : Méthode de substitution où chaque lettre est décalée de n positions

Méthode de chiffrement :
  1. Convertir chaque lettre en nombre (A=0, B=1, ..., Z=25)
  2. Ajouter la clé de décalage modulo 26
  3. Reconvertir en lettre
  4. Appliquer la même méthode pour le déchiffrement (soustraction)
Message
BONJOUR
Clé
3
Chiffré
ERQMRXU
Étape 1 : Conversion en nombres

B(1), O(14), N(13), J(9), O(14), U(20), R(17)

Étape 2 : Application du décalage (clé = 3)

(1+3)%26 = 4 → E

(14+3)%26 = 17 → R

(13+3)%26 = 16 → Q

(9+3)%26 = 12 → M

(14+3)%26 = 17 → R

(20+3)%26 = 23 → X

(17+3)%26 = 20 → U

Étape 3 : Reconstruction du message

Le message chiffré est : ERQMRXU

BONJOUR → ERQMRXU
Réponse finale :

Le message "BONJOUR" chiffré avec le chiffre de César (clé = 3) donne "ERQMRXU"

Règles appliquées :

• Formule : C = (M + K) mod 26

• Modulo : Assure que le résultat reste dans l'alphabet

• Déchiffrement : M = (C - K) mod 26

2 Algorithme AES
Définition :

AES (Advanced Encryption Standard) : Algorithme de chiffrement symétrique moderne

Bloc
128 bits
Clés
128/192/256 bits
Étape 1 : Structure d'AES

AES est un chiffre par bloc qui traite des blocs de 128 bits :

  • Prend en entrée un bloc de 128 bits
  • Utilise une clé de 128, 192 ou 256 bits
  • Effectue plusieurs tours de transformation
  • Retourne un bloc chiffré de 128 bits
Étape 2 : Opérations de base d'AES
AddRoundKey

XOR avec clé

SubBytes

Substitution

ShiftRows

Décalage

MixColumns

Mélange

Étape 3 : Nombre de tours selon la clé
Taille de la clé Nombre de tours Niveau de sécurité
128 bits 10 tours Standard
192 bits 12 tours Élevé
256 bits 14 tours Très élevé
AES : 10/12/14 tours
Réponse finale :

AES est un algorithme de chiffrement symétrique robuste qui effectue plusieurs transformations itératives

Règles appliquées :

• Chiffrement symétrique : Même clé pour chiffrer et déchiffrer

• Popularité : Standard mondial pour le chiffrement

• Sécurité : Résistant aux attaques connues

3 Chiffrement RSA
Définition :

RSA : Algorithme de chiffrement asymétrique basé sur la factorisation de grands nombres

Clé publique
(n, e)
Clé privée
(n, d)
Chiffrement
C = M^e mod n
Étape 1 : Génération des clés RSA
  1. Choisir deux nombres premiers distincts p et q
  2. Calculer n = p × q (module RSA)
  3. Calculer φ(n) = (p-1) × (q-1) (fonction d'Euler)
  4. Choisir un exposant e tel que 1 < e < φ(n) et pgcd(e, φ(n)) = 1
  5. Calculer d, l'inverse modulaire de e modulo φ(n)
Étape 2 : Exemple de génération de clés

Prenons p = 11 et q = 13 :

  • n = 11 × 13 = 143
  • φ(n) = (11-1) × (13-1) = 10 × 12 = 120
  • Choisissons e = 7 (pgcd(7, 120) = 1)
  • Calculons d tel que (7 × d) ≡ 1 (mod 120) → d = 103

Clé publique : (143, 7), Clé privée : (143, 103)

Étape 3 : Processus de chiffrement/déchiffrement

Pour chiffrer un message M (représenté comme un nombre) :

  • Chiffrement : C = Me mod n
  • Déchiffrement : M = Cd mod n

Exemple : Si M = 9, alors C = 97 mod 143 = 48

RSA : M^e mod n
Réponse finale :

Le chiffrement RSA repose sur la difficulté de factoriser de grands nombres premiers

Règles appliquées :

• Sécurité : Basée sur la complexité de la factorisation

• Clés : Une paire publique/privée

• Applications : Échange de clés, signatures numériques

Corrigé : Exercices 4 à 5
4 Fonction de hachage SHA-256
Définition :

SHA-256 : Fonction de hachage cryptographique qui produit un condensé de 256 bits

Entrée
Variable
Sortie
256 bits
Étape 1 : Propriétés d'une fonction de hachage

SHA-256 possède plusieurs propriétés importantes :

  • Résistance à la préimage : Impossible de retrouver le message original à partir du haché
  • Résistance à la seconde préimage : Impossible de trouver un second message avec le même haché
  • Résistance aux collisions : Impossible de trouver deux messages avec le même haché
Étape 2 : Processus de hachage SHA-256

Le processus comprend plusieurs étapes :

  1. Padding : Ajout de bits pour que la taille soit multiple de 512
  2. Découpage en blocs de 512 bits
  3. Itération de transformations complexes sur chaque bloc
  4. Combinaison des résultats pour produire le haché final
Étape 3 : Applications de SHA-256
Intégrité :
Vérification que les données n'ont pas été modifiées
Mots de passe :
Stockage sécurisé des mots de passe
Blockchain :
Preuve de travail dans les crypto-monnaies
Signatures :
Complément des algorithmes de signature
SHA-256 : 256 bits
Réponse finale :

SHA-256 est une fonction de hachage cryptographique essentielle pour la sécurité des données

Règles appliquées :

• Unidirectionnel : Impossible de retrouver le message original

• Déterministe : Même entrée → même sortie

• Diffusion : Petit changement → grand changement dans le haché

5 Signature numérique avec RSA
Définition :

Signature numérique : Technique qui garantit l'authenticité et l'intégrité d'un document

Signature
S = H(M)^d mod n
Vérification
H(M) ?= S^e mod n
Étape 1 : Processus de signature

Pour signer un message M avec RSA :

  1. Calculer le haché du message H(M) avec SHA-256
  2. Appliquer la clé privée pour chiffrer le haché : S = H(M)d mod n
  3. La signature S est attachée au message
Étape 2 : Processus de vérification

Pour vérifier la signature :

  1. Calculer le haché du message reçu H(M)
  2. Appliquer la clé publique à la signature : Se mod n
  3. Comparer les deux hachés : H(M) ?= Se mod n
  4. Si égaux, la signature est valide
Étape 3 : Propriétés de la signature numérique

La signature numérique assure :

  • Authenticité : Le signataire est bien l'expéditeur
  • Intégrité : Le message n'a pas été modifié
  • Non-répudiation : Le signataire ne peut nier avoir signé
Signature : H(M)^d mod n
Réponse finale :

La signature numérique avec RSA garantit l'authenticité et l'intégrité des documents

Règles appliquées :

• Clé privée : Pour la création de la signature

• Clé publique : Pour la vérification de la signature

• Hachage : Accélère le processus et assure l'intégrité

Cours bien détaillé
\(\text{RSA} : C = M^e \bmod n\)
Algorithme RSA
🔒
Chiffrement symétrique : Même clé pour chiffrer et déchiffrer
🔄
Chiffrement asymétrique : Paire de clés publique/privée
📊
Fonction de hachage : Transformation unidirectionnelle
🛡️
Signature numérique : Preuve d'origine et d'intégrité
💡
Conseil : Utilisez AES pour le chiffrement des données et RSA pour l'échange de clés
🔍
Attention : La sécurité dépend de la longueur des clés
⚡
Astuce : Combinez chiffrement et hachage pour une sécurité maximale
📋
Méthode : Toujours utiliser des algorithmes éprouvés
✅
Vérification : Testez toujours la validité des signatures
Algorithmes principaux :
  • AES (Advanced Encryption Standard) : Chiffrement symétrique, très sûr
  • RSA (Rivest-Shamir-Adleman) : Chiffrement asymétrique, basé sur la factorisation
  • SHA-256 (Secure Hash Algorithm) : Fonction de hachage cryptographique
  • DES (Data Encryption Standard) : Ancien algorithme symétrique
  • ECC (Elliptic Curve Cryptography) : Asymétrique basé sur les courbes elliptiques
  • Blowfish : Chiffrement symétrique à clé variable
Règles importantes :
  • La cryptographie ne remplace pas une bonne politique de sécurité
  • Les clés doivent être générées avec suffisamment d'entropie
  • Les algorithmes obsolètes doivent être remplacés (comme DES)
  • La gestion des clés est aussi importante que l'algorithme choisi
  • Les attaques par force brute deviennent plus faciles avec l'évolution technologique
Cryptographie basique Réseau de données et sécurité