Chap Intro
Chap Intro
Chap Intro
M. Mahmoud TOUNSI
2023
1
Organisation du module
Volume horaire : 42h, cours intégré.
Modalité d’examen …..
Objectifs:
◦ Introduction à la cryptographie (pré-requis : mathématiques
élémentaires).
◦ Application de concepts cryptographiques aux protocoles de
communication (prot. d’authentification, de confidentialité, à
connaissance zéro…).
2
À méditer
3
Problèmes de sécurité
Indiscrétion (Eavesdropping)
– l’information n’est pas altérée, mais sa confidentialité
est compromise.
– espionnage passif.
– Ex : récupération du N° d’une carte de crédit et de son
code confidentiel.
Falsification (Tampering)
– l’information en transit est modifiée ou remplacée avant
d’être remise à son destinataire.
– espionnage actif.
– ex : changer le montant d’un virement bancaire.
4
Problèmes de sécurité
Imitation (Impersonation)
– Mystification (Spoofing)
✓ une personne ou une entité se fait passer pour une autre.
✓ ex : utilisation frauduleuse de l’adresse e-mail d’une
personne.
– Imposture (Misrepresentation)
✓ une personne ou une organisation prétend être ce qu’elle
n’est pas.
✓ ex : un site prétend commercialisé des
fournitures informatiques alors qu’il ne fait qu’encaisser
les paiements par cartes de crédit sans jamais livrer de
marchandises.
5
Plan
Introduction
Définitions et concepts de base
Cryptosystèmes à clés symétriques
Cryptosystèmes à clés asymétriques
Fonctions de hashage
Protocoles cryptographiques
Cryptanalyse
6
Introduction (1)
Une longue histoire, un art et une activité mystérieuse.
Facteurs de changements :
◦ Introduction des ordinateurs, intérêt commercial, consolidation
mathématique.
◦ Une variété d’ingrédients techniques : théorie des nombres, probabilités,
théorie de l’information et codage, théorie de la complexité du calcul.
La cryptographie est de plus en plus utilisées dans:
◦ Confidentialité des e-mails.
◦ Protection des accès aux réseaux (LAN).
◦ Sécurité des transactions bancaires.
◦ Cartes à puces.
◦ Réseaux privés virtuels.
◦ ...
7
Introduction (2)
Cryptographie : Science mathématique permettant d’effectuer
des opérations sur un texte intelligible afin d’assurer une ou
plusieurs propriétés de la sécurité de l’information.
But : fournir aux messages/communications les propriétés
suivantes:
◦ La Confidentialité : afin d'assurer le secret du message qui
ne peut être lu que par le destinataire légitime.
◦ L’Authentification : afin de s'assurer de l'identité de
l'expéditeur.
◦ L’Intégrité : afin d'assurer que le message n'a pas été
modifié ou corrompu durant la communication.
◦ La Non-répudiation : afin de ‘lier’ l'expéditeur authentifié
au message.
8
Introduction (3)
Place du chiffrement : trois niveaux possibles,
◦ Liaison : mise en place de boîtes noires sur les supports de
transmission ;
◦ Réseau : des équipements spécialisés sont placés sur chacun
des sites, au niveau des routeurs ;
◦ De bout en bout : seules les données constituant l’information
transmise sont chiffrées. Il est mis en œuvre dans les
applications du modèle TCP/IP.
L’ensemble repose, dans tous les cas, sur un algorithme
donné, une clé ou un couple de clés associées et un
mécanisme de distribution des clés.
9
Définitions générales
Chiffrer : transcrire, à l’aide d’un algorithme paramétrable un message
clair en une suite incompréhensible de symboles.
Texte en clair : le message à chiffrer.
Texte chiffré : le résultat du chiffrement.
Déchiffrer : retrouver le texte en clair à partir du texte chiffré à l’aide
d’un algorithme paramétrable.
Clé : le paramètre des algorithmes de chiffrement et de déchiffrement.
Décrypter : retrouver le texte en clair à partir du texte chiffré sans la clé.
Cryptographie : science du chiffrement.
Cryptanalyse : science du décryptage
Cryptologie : cryptographie et cryptanalyse
Cryptosystème : ensemble des méthodes de chiffrement et de
déchiffrement utilisables en sécurité.
10
Modèle de chiffrement
Notation:
M: Texte clair,
C: Texte chiffré
E(M): Opération de chiffrement de M,
D(C): Opération de déchiffrement de C.
Il faut évidemment que D(E(M))=M
11
Principe de Kerckhoff
Kerckhoff a introduit plusieurs principes :
1) Le système doit être matériellement, sinon
mathématiquement, indéchiffrable.
2) Il faut qu’il n’exige pas le secret, et qu’il puisse sans
inconvénient tomber entre les mains de l’ennemi.
3) La clé doit pouvoir en être communiquée et retenue sans le
secours de notes écrites, et être changée ou modifiée au gré
des correspondants.
4) Il faut qu’il soit applicable à la correspondance télégraphique.
5) Il faut qu’il soit portatif et que son maniement ou son
fonctionnement n’exige pas le concours de plusieurs
personnes.
6) Il est nécessaire, que le système soit d’un usage facile, ne
demandant ni tension d’esprit, ni la connaissance d’une longue
série de règles à observer.
12
Principes de Shannon
Un chiffrement doit apporter de la confusion et de la
diffusion :
Confusion : Il n’y a pas de relation algébrique simple entre le
clair et le chiffré. En particulier, connaître un certain nombre
de couples clair-chiffré ne permet pas d’interpoler la fonction
de chiffrement pour les autres messages.
Tout le contraire d’un chiffrement affine.
Diffusion : La modification d’une lettre du clair doit modifier
l’ensemble du chiffré. On ne peut pas casser le chiffrement
morceau par morceau.
Tout le contraire d’un chiffrement mono-alphabétique.
13
En résumé : principes de la
cryptographie moderne
14
Cryptosystèmes
15
Le théorème du secret parfait
• Pour étudier un cryptosystème, Shannon introduit un modèle de
sécurité probabiliste : un attaquant peut tomber par hasard sur la
bonne clé.
=> L’essentiel est que les interceptions de messages n’augmentent
pas ses chances.
• Définition : Un cryptosystème est dit à secret parfait si la
réception d’un chiffré ne donne aucune information sur le clair
dont il est issu :
m, c, Pr(m c)=Pr(m)
Pr(m c), la probabilité d’obtenir m le texte en clair sachant le texte
chiffré c.
16
Cryptosystèmes à clés symétriques (1)
Caractéristiques:
◦ Clés identiques: clé de chiffrement=clé de déchiffrement= clé
secrète.
◦ Clé secrète !
17
Cryptosystèmes à clés symétriques (2)
Chiffrement par substitution : chaque lettre ou groupe
de lettres est remplacé par une autre lettre ou un autre
groupe de lettres.
Chiffrement par transposition : on modifie l’ordre des
lettres d’un texte en clair.
La plupart des algorithmes de chiffrement symétriques
ne sont qu’un mélange savant de substitutions et
transpositions (ex : DES, AES).
18
Cryptosystèmes à clés symétriques (3)
Algorithmes :
◦ Chiffrement en continu / par flux / par flot / à la volée (Stream
Cipher)
Agissant sur un bit à la fois (en général XOR entre le texte en clair et la
clé), ex. RC4.
◦ Chiffrement par bloc (Bloc Cipher)
Opère sur le texte en clair par blocs de taille fixe (64b, 80b, 128b…)
Ex. DES, 3DES, IDEA, AES, CAST, etc.
Performances: Chiffrement très rapide.
Problèmes
◦ Nombre de clés: pour n entités ? Réponse ………….
◦ Distribution des clés:
Opération critique.
Doit s'effectuer de manière sécurisée (voire manuellement).
19
Cryptosystèmes à clés asymétriques (1)
Pour chaque entité : une clé publique (diffusée), une clé privée
(gardée secrète).
Algorithmes :
◦ Diffie & Hellman (1976), RSA (1978), ELGAMEL…
◦ Basés sur des problèmes mathématiques difficiles à résoudre (log. Discret,
factorisation de grands nombres en entiers premiers).
Performances: Chiffrement beaucoup lent.
Nombre de clés (pour n entités) : 2n clés (n paires).
Distribution des clés :
◦ Facilitée car il n’y a plus d'échange de clés.
◦ Secret nécessaire : la clé privée est conservée par les entités.
◦ Seule la clé publique est échangée. Sa connaissance ne permet pas de déduire
la clé privée
20
Cryptosystèmes à clés asymétriques (2)
21
Cryptosystèmes à clés asymétriques (3)
23
Algorithmes de hashage
24
Paradoxe des anniversaires (1)
25
Paradoxe des anniversaires (2)
P(deux personnes ont le même anniversaire) = 1 – P(k personnes ont des anniversaires
différents)
= 1 – 365/365 x 364/365 x ….x (365 – k)/365
= 1 – A(365, k)/365k
=1 – 365! /((365 – k)! x 365k )
27
Protocoles cryptographiques
Dès que plusieurs entités sont impliquées dans un échange
de messages sécurisés, des règles doivent déterminer
l'ensemble des opérations cryptographiques à réaliser, leur
séquence, afin de sécuriser la communication : C'est ce que
l'on appelle les protocoles cryptographiques.
Que signifie sécuriser un échange?
◦ Assurer les 4 propriétés fondamentales :
Confidentialité
Authentification
Intégrité
Non-répudiation
28
A l'aide de cryptosystèmes à clés symétriques:
◦ La même clé secrète est utilisée pour E(M) et D(C)
◦ Échange préalable et sécurisé de la clé K entre A et B.
29
Confidentialité
A l'aide de cryptosystèmes à clés symétriques:
◦ La même clé secrète est utilisée pour E(M) et D(C)
◦ Échange préalable et sécurisé de la clé K entre A et B.
30
A l'aide de cryptosystèmes à clés publiques.
◦ Chaque entité possède sa paire de clés PKA, SKA/ PKB, SKB.
31
Confidentialité
A l'aide de cryptosystèmes à clés publiques.
◦ Chaque entité possède sa paire de clés PKA, SKA/ PKB, SKB.
32
A l'aide de cryptosystèmes hybrides.
◦ Cryptosystème à clés publiques pour l'échange confidentiel
de la clé (de session) K.
◦ Cryptosystème à clés symétriques pour l'échange
confidentiel du message.
33
Confidentialité
A l'aide de cryptosystèmes hybrides.
◦ Cryptosystème à clés publiques pour l'échange confidentiel
de la clé (de session) K.
◦ Cryptosystème à clés symétriques pour l'échange
confidentiel du message.
34
Vérification qu’un message n’a pas été altéré durant
la communication.
On utilise les fonctions de hashage.
35
Intégrité
Vérification qu’un message n’a pas été altéré durant
la communication.
On utilise les fonctions de hashage.
36
Des parties de la communication.
◦ A l’aide d’un cryptosystème à clés symétriques.
Si on suppose que A et B partagent une même clé secrète K
37
Authentification
Des parties de la communication.
◦ A l’aide d’un cryptosystème à clés symétriques.
Si on suppose que A et B partagent une même clé secrète K
38
A l’aide d’un cryptosystème à clés publiques.
◦ Chaque partie possède une paire de clés publique/privée
(PKA/SKA, PKB/SKB).
39
Authentification
A l’aide d’un cryptosystème à clés publiques.
◦ Chaque partie possède une paire de clés publique/privée
(PKA/SKA, PKB/SKB).
40
Authentification
Du message :
◦ À l’aide d’un MAC (Message
Authentication Code).
◦ Un MAC peut être généré de
deux manières:
A l'aide d’un
cryptosystème symétrique.
41
Authentification
Du message.
◦ A l'aide d’une signature
électronique.
◦ Propriétés :
Authentique
Infalsifiable
Non-réutilisable
Inaltérable
Non-répudiable
42
Enfin tous les services de sécurité garantis !
43
Cryptanalyse : les attaques (1/4)
• L’attaque à texte chiffré seulement (cipher text only):
• Le cryptanalyste dispose du texte chiffré de plusieurs
messages, avec le même algorithme.
• Objectif : retrouver le plus grand nombre de messages clairs
possibles, ou retrouver la ou les clés qui ont été utilisées.
• L’attaque à texte clair connu (known plaintext):
• Le cryptanalyste a accès aux textes chiffrés de plusieurs
messages, et aux textes clairs correspondants.
• Objectif : retrouver la ou les clés utilisées pour chiffrer ces
messages ou un algorithme qui permet de déchiffrer d’autres
messages chiffrés avec ces mêmes clés.
44
Cryptanalyse : les attaques (2/4)
• L’attaque à texte clair choisi (chosen plain text):
• Le cryptanalyste a accès aux textes chiffrés et aux textes
clairs correspondants, et peut choisir les textes en clair.
• Cette attaque est plus efficace que l’attaque à texte clair
connu, car le cryptanalyste peut choisir des textes en clair
spécifiques qui donnent plus d’informations sur la clé.
• L’attaque à texte chiffré connu (chosen cipher text)
• Le cryptanalyste peut choisir différents textes chiffrés à
déchiffrer. Les textes déchiffrés lui sont alors fournis.
• Exemple: le cryptanalyste a un dispositif qui ne peut être
désassemblé et qui fait du déchiffrement automatique. Sa
tâche est de retrouver la clé.
45
Cryptanalyse : les attaques (3/4)
46
Cryptanalyse : les attaques (4/4)
Attaques physiques:
Essayer de reconstituer la clé secrète par exemple en
espionnant la transmission entre le clavier de l’ordinateur et
l’unité centrale ou en mesurant la consommation électrique
du microprocesseur qui effectue le décodage du message ou
encore en mesurant son échauffement. Ensuite, on essaye de
remonter de ces données physiques aux clés de chiffrement
et déchiffrement.
Une méthode pour résister à ce type d’attaque sont les
protocoles de preuve sans transfert de connaissance (zero-
knowledge proof).
47
Travaux demandés
• Schéma de Feistel.
48