Cryprography_cours —Parti 1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 27

Filière Génie des Systèmes de Télécommunications et Réseaux (GSTR)

Cryptographie

Jihane Jebrane Année universitaire 2024/2025


Introduction et Motivation?!
L'interconnexion des réseaux fait référence à la connexion de plusieurs réseaux distincts pour permettre la communication et
l'échange de données. Cette interconnexion facilite l'accès aux ressources et augmente l'efficacité des systèmes, mais elle expose
également les réseaux à des vulnérabilités et à des attaques potentielles.

La sécurité d'un réseau est essentielle pour garantir la protection des données échangées. Pour cela, il est crucial d'utiliser des
protocoles sécurisés —indispensable pour protéger les informations sensibles échangées sur les réseaux.
SSL/TLS (pour le chiffrement des communications web)
IPSec (pour la sécurité des communications réseau)
HTTPS (la version sécurisée du HTTP)

La cryptographie est fondamentale pour renforcer la sécurité des protocoles. En chiffrant les données, la cryptographie permet de :
Prévenir l'accès non autorisé aux informations.
Garantir l'intégrité des données échangées.
Authentifier les parties impliquées dans la communication.

La sécurité des réseaux dépend des protocoles sécurisés, dont l'efficacité est renforcée par la cryptographie, afin de protéger les
données sensibles dans un environnement interconnecté.

Jihane Jebrane 2
Les niveaux de sécurité
La sécurité des données est primordiale, car ces dernières représentent l'élément le plus précieux à protéger. Une fois traitées, les

données deviennent des informations qui sont utilisées au sein d'applications pour diverses opérations. Les applications jouent un

rôle crucial dans la manipulation et le traitement de ces données sensibles.

Ces applications s'exécutent sur des machines (ordinateurs, serveurs, dispositifs IoT, etc.), qui doivent être protégées contre les accès

non autorisés et les attaques malveillantes. Les machines, à leur tour, interagissent entre elles et avec d'autres systèmes via un réseau.

Ce réseau permet le transfert de données entre différents appareils et systèmes.

Pour assurer une protection optimale à chaque niveau, des mesures de sécurité spécifiques doivent être mises en place à chaque

couche.

Où se situe la cryptographie ?
La cryptographie intervient principalement au niveau des données, car elle permet de protéger

la confidentialité et l'intégrité des informations en les chiffrant. Elle joue également un rôle

essentiel dans la protection des applications et dans les communications réseau. Ainsi, la

cryptographie peut être appliquée dans plusieurs niveaux, mais son rôle le plus direct concerne

la sécurisation des données elles-mêmes.

Jihane Jebrane 3
010

Chiffre Pig Pen


Jihane Jebrane Année universitaire 2024/2025
Un peu d’histoire
ü Quelques vieux documents chiffrés
• 1900 ans avant JC, en Egypte, des hiéroglyphes furent transformés sur divers monuments (par
exemple sur la pierre tombale de Khnumhotep II).
• En Irak fut trouvée une tablette d’argile datant du XVI e siècle avant JC. Les consonnes ont été
supprimées et l’orthographe des mots changée.

ü la scytale spartiate
Une forme de transposition utilise le premier dispositif de cryptographie militaire connu, la scytale spartiate,
remontant au Ve siècle avant J.-C. La scytale consiste en un bâton de bois autour duquel est entourée une
bande de cuir ou de parchemin, comme le montre la figure ci-dessous. :

Après avoir enroulé la ceinture sur la scytale, le message était écrit


en plaçant une lettre sur chaque circonvolution (axe).

Question : comment le destinataire déchiffrerait le message sur


le scytale ?

Jihane Jebrane 5
Cryptographie : Terminologie
La cryptologie : est la science du chiffrement et englobe deux sous-disciplines : la cryptographie + la cryptanalyse.
La cryptographie : issue des mots grecs kryptos, qui signifie caché, et graphein, signifie écrire, décrit le processus
impliqué dans le codage et le décodage des messages, afin que les personnes non autorisées ne puissent pas les comprendre.
La cryptanalyse : à partir de l'analyein, qui signifie « to break up », est le processus qui consiste à déchiffrer le message
d’ origine ou le texte en clair à partir du message crypté ou du texte chiffré sans connaître les algorithmes ou les clés utilisés
pour effectuer le chiffrement.
Stéganographie: cacher le message pour que l'ennemi ne le trouve pas.
Ciphertext ou Le chiffrement est le processus qui consiste à convertir un message lisible en une forme qui ne peut être
comprise par des personnes ou des systèmes non autorisés.
Plaintext ou Le déchiffrement est le processus de reconversion d'un message chiffré en une forme lisible.
Clé : paramètre utilisé en entrée d’une opération cryptographique.
Code : Système de chiffrement dans lequel chaque lettre (ou mot, syllabes,...) est remplacé par un -ou plusieurs- symboles
(caractères, dessins, ...), par un processus d'opération.
Décrypter : opération qui consiste à rendre le document chiffré en document lisible sans avoir la clé.
Le texte brut est le formulaire lisible par les individus ou les systèmes.
texte chiffré est le formulaire qui n'est pas lisible par les individus ou les systèmes tant qu'il n'est pas déchiffré, également
appelé Cryptogramme.
Cryptosystème : Il est défini comme l’ensemble des clés possibles, des textes clairs et chiffrés possibles associés à un
algorithme donné.
6
Jihane Jebrane
Principe d’un CryptoSystème
L’information qu’Alice souhaite transmettre à Bob, que l’on appelle texte en clair (ou message) clair, peut être

un texte écrit en certaine langue ou des données numériques.

Alice transforme le texte clair par un procédé de chiffrement, en utilisant une clé prédéterminée, et envoie le

message chiffré au travers du canal (peut être par exemple une ligne de téléphone, Internet, ou autre).

Eve, qui espionne éventuellement le canal, ne peut retrouver le texte clair, mais Bob, qui connaît la clef pour

déchiffrer, peut récupérer le message clair à partir du texte chiffré.

Jihane Jebrane
Qualités d’un Cryptosystème
Protéger un message ne signifie pas seulement de le rendre incompréhensible. En effet, on peut distinguer quatre types de
protection:
Confidentialité: seules les personnes habilitées ont accès au contenu du message.
Intégrité des données: le message ne peut pas être falsifié sans qu’on s’en aperçoive.
Authentification:
L’émetteur est sûr de l’identité du destinataire c’est à dire que seul le destinataire pourra prendre connaissance du
message car il est le seul à disposer de la clef de déchiffrement.
Le receveur est sûr de l’identité de l’émetteur.
Non-répudiation :
Non-répudiation d’origine l’émetteur ne peut nier avoir écrit le message et il peut prouver qu’il ne l’a pas fait si c’est
effectivement le cas.
Non-répudiation de réception le receveur ne peut nier avoir reçu le message et il peut prouver qu’il ne l’a pas reçu si
c’est effectivement le cas.
Les qualités pratiques attendues d’un cryptosystème :
1. Il doit résister aux attaques connues et si possible avoir une sécurité prouvée.
2. Il doit permettre de coder et décoder rapidement (en temps réel pour certaines applications).
Il n’existe pas de codes qui réunissent toutes ces qualités simultanément. Il faut donc un compromis adapté à chaque situation.

Jihane Jebrane 8
Cryptographie
Classique

Jihane Jebrane Année universitaire 2024/2025


Cryptographie Classique
Les deux techniques de base de la cryptographie classiques de chiffrement sont :
Substitution : remplacement d’un élément du texte en clair par un élément du texte chiffré.
Transposition : appelée aussi permutation, modification de l’ordre d’apparence des éléments du texte en clair.

Chiffrement par substitution


Le chiffrement par substitution, consiste à remplacer dans un message une ou plusieurs entités (généralement
des lettres) par une ou plusieurs autres entités.
- Substitution monoalphabétiques : Consiste à remplacer chaque lettre du message par une autre lettre de
l’alphabet.
- Substitution polyalphabétique: consiste à utiliser une suite de chiffres monoalphabétiques réutilisée
périodiquement.

Une des méthodes de cryptographie par substitution les plus anciennes. Consiste a remplacer une lettre par une
autre. Exemples :
Chiffre Pig Pen
Chiffrement de César (décalage)
Chiffrement de Vigenère

Jihane Jebrane 10
Substitution Mono-alphabétique : Chiffrement de César
Ce code est l’un des plus anciens, utilisé par Jules César. Le principe de codage repose sur l’ajout
d’une valeur constante à l’ensemble des caractères du message, ou plus exactement à leur code
ASCII.
Il consiste en une substitution mono-alphabétique : chaque lettre est remplacée ("substitution") par
une seule autre ("mono-alphabétique"), selon un certain décalage dans l'alphabet ou de façon
arbitraire.
D'après Suétone, César avait coutume d'utiliser un décalage de 3 lettres : A devient D, B devient
E, C devient F, etc.
Il écrivait donc son message normalement, puis remplaçait chaque lettre par celle qui lui
correspondait. Lorsque l’ajout de la valeur donne une lettre dépassant la lettre Z, il suffit de
continuer en partant de A, ce qui revient à effectuer un modulo 26.

Jihane Jebrane 11
Chiffrement de César (Conti)
Exemple:
Le message clair est: CECI EST UN CRYPTOGRAMME
On décale les lettres de 3 positions :
Le texte chiffré est: FHFL HVW XQ FUBSWRJUDPPH

Une amélioration de Jules César où le décalage des lettres n’est plus fixe à trois positions. Il peut être représenté
comme suit:
Transformer chaque lettre en un nombre : (A = 0, B = 1,..., Z = 25),
Coder une lettre x avec une clé k en appliquant la formule :
E(x) = (x + k) mod (26)
Le déchiffrement consiste à utiliser la clé opposée:
D (y) = (y - k) mod (26)
Avec k : clé secrète, E : chiffrement, D : déchiffrement Vert message crypté. Rouge message en clair

Si l’algorithme est connu ainsi que le langage utilisé alors le déchiffrement est très simple : 25 clés
à essayer.— Voir Section Cryptanalyse

Jihane Jebrane 12
Substitution Poly-alphabétique : Chiffrement de Vigenère
L’espace des clés du chiffrement mono-alphabétique est immense, mais le fait qu’une lettre soit

toujours cryptée de la même façon représente une trop grande faiblesse. Le chiffrement de Vigenère

remédie à ce problème. On regroupe les lettres de notre texte par blocs.

Ce chiffrement introduit la notion de clé. Une clé se présente généralement sous la forme d’un mot

ou d'une phrase. Pour pouvoir chiffrer notre texte, à chaque caractère nous utilisons une lettre de la

clé pour effectuer la substitution. Évidemment, plus la clé ne sera longue et variée et mieux le texte

sera chiffré.

Pour chaque lettre en clair, on sélectionne la colonne correspondante et pour une lettre de la clé on

sélectionne la ligne adéquate, puis au croisement de la ligne et de la colonne on trouve la lettre

chiffrée. La lettre de la clé est à prendre dans l'ordre dans laquelle elle se présente et on répète la clé

en boucle autant que nécessaire.

Jihane Jebrane 13
Substitution Poly-alphabétique : Chiffrement de Vigenère
Exemple :
Le texte clair CRYPTOGRAMME est chiffré comme
suit avec la clé MINET.

Nous répétons autant de fois le mot MINET pour être


aussi long que le texte clair :

CRYPTOGRAMME
MINETM I NE TMI

En utilisant le carré de Vigenère ci-dessous, Nous


obtenons le cryptogramme suivant :

OZLTMAOEEFYM

La grande force du chiffre de Vigenère par


rapport a César est que la même lettre sera
chiffrée de différentes manières. Si la clé
utilisée pour chiffrer le message est courte par
rapport au texte en clair, elle se répète
plusieurs fois.—Voir Section Cryptanalyse.

Jihane Jebrane 14
Exemple 1

Jihane Jebrane 15
Exercice 1

Exercice 2

Jihane Jebrane 16
Cryptographie
Moderne
« La sécurité d'un système de cryptographie ne doit pas dépendre du secret de

l'algorithme, mais uniquement du secret de la clé utilisée. » — Principe de Kerckhoffs

Jihane Jebrane Année universitaire 2024/2025


Cryptographie Moderne
Introduction
Les Grecs pour envoyer des messages secrets rasaient la tête du messager, tatouaient le message
sur son crâne et attendaient que les cheveux repoussent avant d’envoyer le messager effectuer sa
mission ! Il est clair que ce principe repose uniquement sur le secret de la méthode.

Cette méthode simple ne respecte pas le principe de Kerckhoffs.

Le principe de Kerckhoffs s’énonce ainsi :


«La sécurité d’un système de chiffrement ne doit reposer que sur le secret de la clé.»
Cela se résume aussi par :
«L’ennemi peut avoir connaissance du système de chiffrement.»

Comment protéger la clé ?

Jihane Jebrane 18
Cryptographie Moderne :
Qu’entend-on par clé?
On appelle clé une valeur utilisée dans un algorithme de cryptographie, afin de chiffrer une donnée. Il s’agit en

fait d’un nombre complexe dont la taille se mesure en bits. On peut imaginer que la valeur correspondant à 1024

bits est absolument gigantesque. Voir aussi bits bytes. Plus la clé est grande, plus elle contribue à élever la

sécurité à la solution. Toutefois, c’est la combinaison d’algorithme complexe et de clés importantes qui seront la

garantie d’une solution bien sécurisée.

Les clés doivent être stockées de manière sécurisée et de manière à ce que seul leur propriétaire soit en mesure de

les atteindre et de les utiliser.

Ø La confidentialité est le premier problème posé à la cryptographie. Il se résout par la notion de chiffrement.

Il existe deux grandes familles d’algorithmes cryptographiques à base de clef :

1. les algorithmes à clef publique ou algorithmes asymétriques

2. Les algorithmes à clef secrète ou algorithmes symétriques

Jihane Jebrane 19
1. Cryptographie Asymétrique
Chiffrement asymétrique ou à clef public : avec les algorithmes asymétriques, les clefs de chiffrement et de déchiffrement sont
distinctes et ne peuvent se déduire l’une de l’autre. On peut donc rendre l’une des deux publique tandis que l’autre reste privée.
C’est pourquoi on parle de chiffrement à clef publique. Si la clef publique sert au chiffrement, tout le monde peut chiffrer un
message, que seul le propriétaire de clef privé pourra déchiffrer. On assure ainsi la confidentialité. Certains algorithmes permettent
d’utiliser la clef privée pour chiffrer. Dans ce cas, n’importe qui pourra déchiffrer, mais seul le possesseur de clef privée peut
chiffrer.

Définition et fonctionnement
Dans un tel crypto système, les clés existent en paires d’où l’appellation bi- clés :
• Une clé publique pour le chiffrement.
• Une clé secrète pour le déchiffrement.
L’utilisateur d’un crypto système asymétrique, choisit une clé aléatoire (la clé privé), à partir de cette clé et en appliquant la
fonction à sens unique il calcule la clé publique qu’il diffuse au travers d’un canal non sécurisé.
— Lorsqu’une personne désire lui envoyer un message il lui suffit de chiffrer ce dernier à l’aide de la clé publique.
— Le destinataire sera en mesure de déchiffrer le message à l’aide de sa clé privé.
Ce système est basé sur une fonction facile à calculer dans un sens (appelé fonction à trappe à sens unique) et mathématiquement
très difficile à inverser sans la clé́ privée appelé trappe.

Jihane Jebrane 20
Cryptographie Asymétrique : RSA
Le principe
Le premier système à clé publique solide à avoir été inventé, et le plus utilisé actuellement, est le système RSA. Publié en 1977
par Ron Rivest, Adi Shamir et Leonard Adleman de l'Institution de technologie du Massachusetts, le RSA est fondé sur la
difficulté de factoriser des grands nombres, et la fonction à sens unique utilisée est une fonction "puissance".

Jihane Jebrane 21
Cryptographie Asymétrique : Diffie-Hellman
Parallèlement à leur principe de cryptographie à clé publique, Diffie et Hellman ont proposé un protocole d’ échanges de clés
totalement sécurisé, basé sur des fonctions difficiles à inverser.
1) Alice et Bob se mettent d'accord publiquement sur un très grand nombre premier "p" et sur un nombre "n" inférieur à "p".
2) Alice engendre une clé́ secrète "a" et Bob une clé secrète "b".
3) Alice calcul l’ élément public ka et Bob l’élément public kb
4) Alice transmet sa clé́ publique ka à Bob, et Bob transmet sa clé publique kb à Alice.
5) Alice et Bob profitent ensuite de la commutativité de la fonction exponentielle pour établir leur secret commun

Jihane Jebrane 22
2. Cryptographie symétrique
La cryptographie à algorithmes symétriques utilise la même clé pour les processus de codage et de décodage ; cette clé́ est le plus

souvent appelée « secrète ». le chiffrement consiste à appliquer une opération (algorithme) sur les données à chiffrer à l’aide de la

clé́ privée, afin de les rendre inintelligibles. Ainsi, le moindre algorithme peut rendre le système quasiment inviolable (la sécurité́

absolue n’existant pas).

Toutefois dans les années 40 Claude Shannon démontra qu’être totalement sûre, les systèmes à clefs privées doivent utiliser des

clefs d’une longueur au moins égale à celle du message à chiffrer.

Les algorithmes symétriques sont de deux types :

• Les algorithmes de chiffrement en continu (par flux), qui agissent sur le message en clair un bit à la fois ;

• Les algorithmes de chiffrement par bloc, qui opèrent sur le message en clair par groupes de bits appelés blocs.

Quelques algorithmes de chiffrement symétriques très utilisés :

• Chiffre de Vernam (le seul offrant une sécurité́ théorique absolue, à condition que la clé ait au moins la même longueur

que le message, qu’elle ne soit utilisée qu’une seule fois à chiffrer et qu’elle soit totalement aléatoire)

• DES, 3DES, AES, RC5

Jihane Jebrane 23
La cryptanalyse et
test de sécurité

Jihane Jebrane Année universitaire 2024/2025


Cryptanalyse
La cryptanalyse s’oppose en quelque sorte à la cryptographie, c’est l’ étude des faiblesses des systèmes cryptographiques, elle est
effectuée généralement par un intrus qui met en œuvre des méthodes afin de retrouver des informations secrètes tel que la clé, message
en clair à partir d’informations considérées comme publique (cryptogramme, algorithmes), la cryptanalyse est une des disciplines de la
cryptologie.
En cryptanalyse, on considère que l'humain est vulnérable et peut être facilement corrompu. C'est pourquoi la sécurité d'un système doit
se baser sur la solidité de la méthode utilisée.
Si le but de la cryptographie est d’ élaborer des méthodes de protection, le but de la cryptanalyse est au contraire de casser ces
protections.

Une tentative de cryptanalyse d’un système est appelé une attaque, et elle peut conduire à différents résultats :
§ Cassage complet : le cryptanalyse retrouve la clef de déchiffrement.
§ Obtention globale : le cryptanalyse trouve un algorithme équivalent à l’algorithme de déchiffrement, mais qui ne nécessite pas la
connaissance de la clef de déchiffrement.
§ Obtention locale : le cryptanalyse retrouve le message en clair correspondant à un message chiffrer.
§ Obtention d’information : le cryptanalyse obtient quelque indication sur le message en clair ou la clef (certains bits de la clef, un
renseignement sur la forme du message en clair).
D’une manière générale, on suppose toujours que le cryptanalyste connait le détail des algorithmes, fonctions mathématiques ou
protocoles employés. Même si ce n’est pas toujours le cas en pratique, il serait risqué de se baser sur le secret des mécanismes utilisés
pour assurer la sécurité́ d’un système, d’autant plus que l’usage grandissant de l’informatique rend de plus en plus facile la
reconstitution de l’algorithme à partir du programme.

Jihane Jebrane 25
Cryptanalyse : Les niveaux d’attaques
L’intrus peut effectuer quatre niveaux d’attaques, l’attaque est une tentative de cryptanalyse.
• L’attaque par cryptogramme (par message chiffré seulement) : ou le cryptanalyste ne connait qu’un
ensemble de message chiffrés, il peut soit retrouver seulement les messages en clair, soit retrouver la clef. En
pratique, il est très souvent possible de deviner certaines propriétés du message en clair (format ASCII,
présence d’un mot particulier, ...), ce qui permet de valider ou non le décryptement.
• L’attaque à message en clair connu : ou le cryptanalyste connait non seulement les messages chiffrés mais
aussi les messages en clair correspondants, son but est alors de retrouver la clef. Du fait de la présence, dans la
plupart des messages chiffrés, de parties connue (en-têtes de paquets, champs communs à tous les fichiers d’un
type donné,...).

• L’attaque à message en clair choisi : ou le cryptanalyste peut, de plus choisir des messages en clair à chiffrer
et donc utiliser des messages apportant plus d’informations sur la clef. Si le cryptanalyste peut de plus adapter
ses choix en fonction des messages chiffrés précédents, on parle d’attaque adaptative.
• L’attaque à message chiffré choisi : qui l’inverse de la précédente, le cryptanalyste peut choisir des messages
chiffrés pour lesquels il connaitra le message en clair correspondant ; sa tache est alors de retrouver la clef. Ce
type d’attaques est principalement utilisé contre les systèmes à clef publique, pour retrouver la clef privée.

Jihane Jebrane 26
Fonctions de hachage et
Signature Digitale

Jihane Jebrane Année universitaire 2024/2025

Vous aimerez peut-être aussi