Memoire Nathan Mukula l2 Si Uac 2024

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

1

CHAPITRE I : INTRODUCTION GENERALE

1. Contexte

Depuis quelques années déjà, le monde assiste à une mutation fulgurante


des techniques d’échange de données, qu’il s’agisse des techniques visant à sécuriser
l’échange des données ou des techniques de mises au point pour contourner les
systèmes sécurisés. Les Systèmes d’Informations sont présents dans les entreprises
depuis de nombreuses décennies, d’abord sous forme de papier puis sous forme
électronique. Les technologies de l’Information et de la communication prennent
chaque jour une place plus grande dans les entreprises, ils regroupent les techniques
utilisées dans le traitement et la transmission des informations, principalement de
l'informatique, de l'Internet et des télécommunications et couvrent un large éventail de
services, applications, technologies, équipements et logiciels, c'est-à-dire les outils
comme la téléphonie et l'Internet, l'apprentissage à distance, les télévisions, les
ordinateurs, les réseaux et les logiciels nécessaires pour employer ces technologies.

Avec le développement de l’informatique, la sécurité de l’information


s’articule autour de trois principes clés : la confidentialité, l’intégrité et la
disponibilité ; mais la confidentialité des informations est primordiale pour la sécurité
de nos données, elle empêche tout accès non autorité à accéder aux informations
sensibles.

Dans ce contexte, la cryptographie et le chiffrement demeurent une partie


indispensable de la sécurité informatique moderne. Néanmoins, tout utilisateur non
averti peut ne pas comprendre l'utilité du chiffrement et risque de s'en passer. Le
recours à la cryptographie, une technologie essentielle dans la sécurité, s'impose dès
qu'une opération symbolique peut être détournée de son objet. La cryptographie se
scinde en deux parties nettement différenciées : D’une part la cryptographie à clef
secrète, encore appelée symétrique ou bien classique et d’autre part la cryptographie à
clef publique, dite également asymétrique ou moderne.
2

C’est dans ce cadre s’inscrit notre projet de mémoire qui consiste à la mise
en place d’un crypto-système pour la sécurité de données.

2. Problématique

Le développement rapide des réseaux de communication numériques, ainsi


que l'augmentation du nombre de ses utilisateurs, posé aujourd’hui le problème de
sécurité lors de l'échange de données.

L'utilisation massive des ordinateurs, de base de données, des réseaux


informatiques dans le quotidien de nos entreprises sont sources des plusieurs
vulnérabilités d'où il est plus qu’important aux utilisateurs de se protéger. Les
systèmes et réseaux informatiques contiennent diverses formes de vulnérabilité, donc
la sécurité est de nos jours devenue un problème majeur dans la gestion des réseaux
d’entreprise ainsi que pour les particuliers toujours plus nombreux à se connecter à
Internet.

3. Hypothèse

Pour faire face à ces problèmes de sécurité informatique, différents


mécanismes ont été mis en place pour prévenir toute sort d’attaque. Pour pouvoir
échanger des informations secrètement, les deux parties doivent déjà partager un
secret, le problème d'échange de clés prend une tout autre dimension à l'heure
d'internet et de son milliard d'usagers. C’est pour répondre à ce problème qu'a été
inventée la cryptographie à clé publique, le principe de la cryptographie à clé publique
est d'utiliser non plus une clé pour chiffrer et déchiffrer mais un couple de clés.

Pour résoudre les problèmes soulevés au niveau de la problématique, la


réalisation d’une application utilisant l’algorithme de cryptographie RSA basé sur la
cryptographie asymétrique sera indispensable, ce système aura comme impact de
réduire les attaques concernant la confidentialité des données. Le RSA, est un très bon
algorithme de cryptographie asymétrique qui utilise deux clés, une clé publique pour le
chiffrement et une clé privée pour le déchiffrement.
3

4. Objectif

L’objectif principal de ce projet de mémoire est de mettre en place une


application capable d’assurer la confidentialité des informations des données
échangées en les chiffrant de manière à ce qu’elles ne puissent être comprises que par
ceux ayant les clés nécessaires pour les déchiffrer.

5. Choix et Intérêt du Sujet

Notre choix a été porté sur ce sujet car étant un étudiant finaliste, il est de
notre devoir de trouver un sujet qui nous permettra d’appliquer toutes les notions
apprises durant notre cursus académique. Le choix de ce sujet a été fait dans la mesure
nous avons bien voulu étudier des notions ayant trait à la sécurité de système
d’information.

L’intérêt de ce travail réside à 3 niveaux :

 Intérêt personnel : ce travail va sanctionner la fin de notre cycle de licence


pour l’obtention d’un diplôme de licencié en sciences informatiques et il va
aussi nous permettre de concilier les notions théoriques apprises durant notre
cursus à la pratique.
 Intérêt scientifique : Il s’agit ici pour nous, de démontrer l’apport de
l’utilisation des méthodes de cryptage lors d’un échange des données. Cette
étude servira de guide à d’autres chercheurs dans le même domaine.
 Intérêt pratique : cette étude va permettre aux utilisateurs d’assurer la
confidentialité et l’intégrité les données échangées.

6. Méthodologie

Il existe une multitude de techniques pour la récolte des données. Dans le


cadre de notre étude, nous avons optés pour la technique suivante :
4

 La technique documentaire : Cette technique nous a permis de récolter les


informations sur base des documents utilisés.

Pour l’élaboration du présent travail, nous avons fait recours aux méthodes
suivantes :

 La méthode processus unifié : C’est un processus de développement logiciel «


itératif et incrémental, centré sur l’architecture, conduit par les cas d’utilisation
et piloté par les risques.
 La méthode synthétique : Elle procède par réunion et composition des
éléments. On passe des éléments constitutifs à l’ensemble qui les regroupe. On
passe du simple au composé, c’est-à-dire des éléments constitutifs d’un
ensemble au tout qui les réunit.

7. Etat de la Question

Vu l’expansion de la technologie du monde informatique, il est plutôt rare


de trouver un sujet qui n’ait jamais fait l’objet d’une étude, d’une recherche, ou même
d’une publication antérieure.

Le fait de mettre en place un crypto système basé sur la sécurité des


données est une question d’actualité, qui a déjà fait l’objet de plusieurs études et
implémentation à travers le monde. Nous ne sommes pas le premier a abordé ce sujet,
il y a eu des personnes qui ont abordé ce sujet avant nous suivant différentes
orientations ; il s’agit de :

Landry Ndjate : « Mise en place d’un crypto système pour la sécurité des
donnée et la détection d’intrusion dans un supermarché » qui s’est focalisé sur le
système de détection d’intrusion (IDS).

Mohamed BOUTOBA et DJOUBER BEN AMI : « conception, étude et


réalisation d’un crypto système hybride de transmission d’images. Son travail a
consisté dans un contexte de la transmission sécurisée d’images. Il a proposé un crypto
système hybride associant trois algorithmes qui sont les DES, le RSA et le SHA-1.
5

Pour ce qui nous concerne, il sera question de réaliser une application avec
le langage de programmation C# utilisant l’algorithme de cryptographie RSA basé sur
la cryptographie asymétrique capable de crypter et décrypter les fichiers textes.

8. Difficultés rencontrées

Nous avons rencontré plusieurs difficultés lors de la récolte de nos données, entre
autres :

9. Subdivision du travail

Notre mémoire est organisé en quatre chapitres :

Le premier chapitre l’introduction générale : ce chapitre porte sur


l’aperçu générale de notre mémoire.

Le deuxième chapitre Généralités sur la cryptographie : ce chapitre


présente les concepts fondamentaux de la cryptographie comme ils sont définis par les
standards internationaux de la sécurité.

Le troisième chapitre Introduction au cryptosystème RSA, présente les


algorithmes à clef publique RSA, la description du protocole du chiffrement, le
déroulement de l’algorithme ainsi que la force de l’algorithme.

Le quatrième chapitre la modélisation : ce chapitre est consacré à


l’analyse et la conception de notre système à travers son architecture globale puis
détaillée en définissant les différentes fonctionnalités attendues du système avec l’aide
de la méthode Processus Unifié (UP). Ce chapitre expliquera donc toutes les étapes à
suivre pour modéliser le nouveau système.

Le cinquième chapitre Implémentation et déploiement, Ce chapitre


présente les différentes technologies utilisées, les différentes interfaces et expose
l’application réalisée en montrant ses différentes fonctionnalités et les scénarios
possibles.
6

CHAPITRE II : GENERALITES SUR LA CRYPTOGRAPHIE

1. INTRODUCTION

Depuis les hiéroglyphes égyptiens jusqu'aux algorithmes complexes


d'aujourd'hui, la cryptographie a toujours été essentielle pour protéger les secrets, les
données sensibles et les communications confidentielles. Même si de tels procédés
existent depuis fort longtemps, ils se sont considérablement multipliés depuis l'essor
des télécommunications modernes. Dans son sens le plus large, la cryptographie se
traduit par une manipulation de chiffres, de codes ou de messages cachés.

Au long de l'histoire, la cryptographie a été utilisée exclusivement à des fins


militaires. Aujourd'hui, les réseaux informatiques exigent une phase de cryptographie
comme mécanisme fondamental afin d'assurer la confidentialité de l'information
numérique. Au jour d'aujourd'hui, la cryptographie a progressé pour garantir la
confidentialité, l’intégrité et l'authenticité des informations échangées à l'ère
numérique.

Dans ce chapitre nous présentons les concepts fondamentaux de la


cryptographie moderne.

2. HISTORIQUE DE LA CRYPTOGRAPHIE [1]

Dès l'Antiquité, les peuples employèrent des codes secrets dans certains de
leurs textes : Vers 1900 av. J.-C., un scribe égyptien a employé des hiéroglyphes non
conformes à la langue correcte dans une inscription. Kahn le qualifie de premier
exemple documenté de cryptographie écrite.

II a fallu attendre l'époque de Jule César, vers 50 avant J-C, pour voir
apparaître de véritables systèmes cryptographiques. Le plus célèbre d’entre eux est le
chiffre de César, qui consistait simplement à décaler les lettres d’un message de trois
positions vers la droite dans l’alphabet latin.

Plus tard Blaise de Vigenère (1586) introduit un nouveau chiffrement dans


lequel on ne se contente pas d’un seul décalage comme pour César mais de plusieurs.
7

En 1883, Auguste Kerckhoffs énonce un principe fondateur de la


cryptographie moderne « les mécanismes de chiffrement et de déchiffrement doivent
pouvoir être rendus publics, la confidentialité des messages doit être garantie
uniquement par le secret d'une clé ».

Le bond technologique suivant survient au XXème siècle lors des deux


guerres mondiales. Avec les besoins militaires des différentes armées de protéger leurs
communications ont permis de voir l’apparition de machines spécialement conçues
pour le chiffrement et le déchiffrement, on peut citer par exemple, Enigma, la C-36, la
machine de Lorenz. Dans la deuxième moitié du vingtième siècle, la cryptographie est
devenue beaucoup plus mathématique et a été grandement facilité par l’apparition des
premiers ordinateurs. Cette cryptographie moderne est initiée par le travail de Claude
Chanson en 1948 sur la théorie mathématique de l'information.

Aujourd'hui, en plus de l’amélioration des méthodes classiques, de


nouvelles techniques de chiffrement sont introduites, telles que la cryptographie
quantique qui consiste à chiffrer une clé en utilisant des photons envoyés par fibre
optique, et toute tentative d’interception de la clé modifie la polarisation des photons.
Et la cryptographie chaotique qui se base sur des instabilités de natures inhabituelles
des systèmes non linéaires, ce fut alors la découverte des signaux chaotiques, qui ont
un comportement déterministe mais qui font penser à des allures pseudo aléatoires. Le
principe de la cryptographie chaotique est alors de noyer le message en clair dans un
signal chaotique.

Pour le chiffrement et le déchiffrement, on doit alors disposer au niveau de


l'émetteur et du récepteur du même signal chaotique pour pouvoir récupérer le
message chiffré.
8

3. CRYPTOGRAPHIE

3.1. Définition

Etymologiquement, le mot « cryptographie » vient du mot grecs « kruptos


», qui signifie caché, et « graphein », qui signifie écrire. Par définition, la
cryptographie est l’ensemble des techniques permettant de dissimuler une information
à l'aide d'un code secret.

La cryptographie est l’étude des techniques mathématiques pour le cryptage


et le décryptage de données pour réaliser un certain nombre d’objectif afin d’assurer la
sécurité de communication. Elle permet ainsi de stocker des informations
confidentielles ou de les transmettre sur les réseaux non sécurisés (tels que l’internet),
afin qu’aucune personne autre que le destinataire ne puisse les lire.

Le cryptage ou chiffrement (encryption) peut être défini comme une


fonction réversible de transformation des données en considération de la protection
d’information contre toute acquisition ou modification des connaissances de contenu.
Le décryptage ou déchiffrement (decryption) est l’opération inverse du chiffrement,
qui vise à récupérer des informations cachées [2].

Figure 1.1 : Schéma général de la cryptographie

Le chiffrement se fait généralement à l'aide d'une clé de chiffrement, le


déchiffrement avec une clé de déchiffrement. On distingue généralement deux types de
clés :
9

 Les clés symétriques: on utilise des clés identiques à la fois pour le chiffrement
et pour le déchiffrement. On parle alors de chiffrement symétrique ou de
chiffrement à clé secrète. Il s'agit de la cryptographie à clé privée.
 Les clés asymétriques: on utilise de clés différentes pour le chiffrement et le
déchiffrement. On parle alors de chiffrement asymétrique. Il s'agit de la
cryptographie à clé publique.

Au cours des années soixante-dix, un système de sécurisation basé sur la


polarisation des photons est apparu: la cryptographie quantique. Cette technique est
différente des autres cryptosystèmes à clé puisqu'elle fonctionne sur des propriétés
physiques intrinsèques au système.

3.2. Vocabulaire de base

 Cryptologie : étymologiquement « la science du caché » par extension « la


science du secret », est composée de deux disciplines complémentaires : la
cryptographie et la cryptanalyse.
 Cryptographie : Est l’étude des méthodes donnant la possibilité d’envoyer des
données de manière confidentielle sur un support donné.
 Cryptanalyse : Opposée à la cryptographie, elle a pour but de retrouver le texte
clair à partir de textes chiffrés en déterminant les failles des algorithmes utilisés,
la cryptanalyse est la technique qui consiste à déduire un texte en clair d’un
texte chiffré sans posséder la clé de chiffrement. Le processus par lequel ou
tente de comprendre un message en particulier est appelé une attaque [4].
 Cryptosystème : C’est l’algorithme de chiffrement, Il est défini comme
l’ensemble des clés possibles (espace de clés), des textes clairs et chiffrés
possibles associés à un algorithme donné.
 Chiffrement ou Cryptage : Le chiffrement consiste à transformer une donnée
(texte, message, ...) afin de la rendre incompréhensible par une personne autre
que celui qui a créé le message et celui qui en est le destinataire. La fonction
permettant de retrouver le texte clair à partir du texte chiffré porte le nom de
déchiffrement.
10

 Déchiffrement : C’est la méthode ou l’algorithme utilisé pour transformer un


texte chiffré en un texte en clair
 Texte chiffré : c’est le résultat du chiffrement du texte en clair.
 Clé de chiffrement : Il s’agit d’un paramètre constitué d’une séquence de
symboles et utilisé, avec un algorithme cryptographique, pour transformer,
valider, authentifier, chiffrer ou déchiffrer des données [5].

La cryptographie est l’étude des techniques qui sont utilisées pour


accomplir plusieurs objectifs pour garantir la sécurité de communication, ces objectifs
sont :

 La confidentialité permet de protéger les informations contre tout accès non


autorisé. Une partie indésirable de communication, appelée ennemi ne doit pas
accéder au matériel de communication. Ceci nécessite une identification précise
du destinataire, et une méthodologie permettant de rendre inutilisable
l’information à tout autre qu’à ce destinataire. Cet objectif de la cryptographie
est une base qui a toujours été traitée et exécutée dans toute l’histoire de la
pratique cryptographique.
 L'intégrité des données garantit que les informations n'ont pas été manipulées
de manière non autorisée. Si l'information est modifiée pendant son passage
dans le réseau, toutes les parties communicantes peuvent détecter cette
modification.
 L’authentification permet d'assurer que les données reçues et envoyées
proviennent bien des entités déclarées. Les méthodes d'authentification sont
étudiées en deux groupes ; l’authentification de l'entité et l'authentification des
messages.
 La non répudiation consiste à éviter que, par la suite, les communicants nient
leurs actions : l’émetteur nie avoir envoyé un message et le récepteur nie avoir
reçu un message. Ce mécanisme se décompose:
- Non-répudiation d’origine l’émetteur ne peut nier avoir écrit le message.
- Non-répudiation de réception le receveur ne peut nier avoir reçu le message.
11

- Non-répudiation de transmission l’émetteur du message ne peut nier avoir


envoyé le message. [02]
La cryptographie moderne a développé des techniques pour traiter tous les
quatre buts de la cryptographie.

4. CRYPTOGRAPHIE MODERNE

La cryptographie moderne est un domaine complexe et crucial en matière


de sécurité des communications et des données. Elle repose sur des algorithmes
sophistiqués qui permettent de chiffrer les informations de manière à ce qu'elles ne
puissent être comprises que par des personnes autorisées. De nos jours, les systèmes de
cryptographie modernes utilisent des techniques avancées telles que le chiffrement
asymétrique, le chiffrement symétrique, le chiffrement par blocs, le chiffrement par
blocs et le hachage cryptographique pour garantir la confidentialité, l'authenticité et
l'intégrité des données. Ces techniques jouent un rôle essentiel dans de nombreux
domaines, tels que les transactions financières en ligne, les communications
gouvernementales sécurisées et la protection de la vie privée des individus. En résumé,
la cryptographie moderne constitue un pilier fondamental de la sécurité informatique
dans le monde d'aujourd'hui. La cryptographie entre dans son ère avec l’utilisation
intensive des ordinateurs, c’est-à-dire à partir des années septante. Dans la
cryptographie moderne, on utilise aussi des problèmes mathématiques que l’on ne sait
pas (encore) résoudre, par exemple factoriser des grands nombres (chiffre RSA) ou
résoudre le problème général du sac à dos.

La cryptographie moderne s’intéresse généralement aux problèmes de


sécurité des communications. Les méthodes utilisées aujourd'hui sont plus complexes,
mais le concept reste le même. La différence fondamentale est que la méthode
moderne manipule des bits, tandis que l'ancienne méthode manipule les caractères
alphabétiques. Elle recouvre aujourd’hui également l’ensemble des procédés
informatiques devant résister à des adversaires. Pour assurer les objectifs de la
cryptographie moderne nous pouvons utiliser des algorithmes basés sur des clés. Ces
12

algorithmes sont définis par plusieurs types de cryptographie moderne, on distingue


deux approches [6] :

 La cryptographie à clé secrète ou cryptographie symétrique. C’est la plus


ancienne.
 La cryptographie à clé publique ou cryptographie asymétrique. C’est la
plus récente : on considère généralement qu’elle est née en 1976 avec l’article
de Diffie et Hellman : “New directions in cryptography”.

La cryptographie moderne

La cryptographie à clé La cryptographie à clé


secrète ou symétrique publique ou asymétrique

Figure 1.3 : les méthodes de la cryptographie moderne. [7]

4.1. CRYPTOGRAPHIE A CLE SECRETE OU SYMETRIQUE

La cryptographie à clé secrète utilise pour les échanges entre deux


correspondants, une seule clé. Cette clé est utilisée à la fois pour le chiffrement du
texte clair et pour le déchiffrement du texte chiffré. Pour cette raison un tel système est
aussi appelé un cryptosystème symétrique. La clé, appelée clé secrète ne doit être
connue que par les deux interlocuteurs. En conséquence, il faut une clé différente par
couple de correspondants. L’échange de la clé secrète est la principale difficulté de la
mise en œuvre de ces systèmes.

La cryptographie ancienne, depuis le système de Jules César, jusqu’à la


machine enigma utilisée durant la dernière guerre mondiale de 1939-1945 est une
cryptographie à clé secrète. Si la clé est unique, elle sert à chiffrer et à déchiffrer le
message ; on parle alors de chiffrement symétrique. Les algorithmes symétriques
actuels utilisent une succession de transpositions et de substitutions complexes des
valeurs du message, basées sur des opérations mathématiques et réalisées en plusieurs
13

passes. La clé faisant partie intégrante de la fonction, il est impossible d'inverser


l'algorithme sans elle, et les seules attaques envisageables consistent souvent à essayer
toutes les valeurs de clés possibles. C'est la raison pour laquelle une clé symétrique
suffisamment importante (128 bits) et bien choisie est considérée comme sûre.

Le cryptage à clé privée ou symétrique est basé sur une clé (ou algorithme)
partagée entre les deux parties communicantes. Cette même clé sert à crypter et
décrypter les messages. Les algorithmes de chiffrement les plus connus sont :
L'algorithme symétrique le plus célèbre est le DES (Data Encryption Standard, qui
fonctionnait avec des clés de 64 bits) remplacé depuis par l'AES (Advanced
Encryption
System, qui fonctionne avec des clés allant jusqu'à 256 bits). Les chiffrements
symétriques exigent toutefois que les deux correspondants échangent au préalable la
clé secrète par un canal sûr, ce qui est quasiment impossible à grande échelle [8].

Le principal problème est le partage de la clé : Comment une clé utilisée


pour sécuriser peut-être transmise sur un réseau insécurisé ? La difficulté engendrée
par la génération, le stockage et la transmission des clés (on appelle l’ensemble de ces
trois processus le management des clés : Key management) limite le système des clés
privées surtout sur Internet. (Figure I.4).

Clé de chiffrement Clé de déchiffrement

Texte chiffré
Texte Algorithme Algorithme Texte
ou
clair Cryptographique Cryptographique clair
cryptogramme

Figure 1.4: Algorithme de chiffrement symétrique

4.1.1. CATEGORIES
14

La cryptographie à clé secrète peut se classer en deux catégories :

 Les systèmes de chiffrement par bloc [block ciphers].


 Les systèmes de chiffrement à flot [stream ciphers].

4.1.1.1. Chiffrement par bloc (Block Cipher)

C’est une des deux grandes catégories de chiffrements modernes en


cryptographie symétrique. Il consiste à un découpage des données en blocs de taille
généralement fixe (souvent une puissance de deux comprise entre 32 et 512 bits). Les
blocs sont ensuite chiffrés les uns après les autres. Il est possible de transformer un
chiffrement de bloc en un chiffrement par flot en utilisant un mode d'opération comme
ECB (chaque bloc chiffré indépendamment des autres) ou CFB (on chaîne le
chiffrement en effectuant un XOR entre les résultats successifs). Un exemple de taille
de bloc et de clé utilisés par les algorithmes les plus connus:

 DES : blocs de 64 bits, clé de 56 bits.


 IDEA : blocs de 64 bits, clé de 128 bits.
 AES : blocs de 128 bits, clé de 128 à 256 bits.

Pour cette catégorie, nous allons présenter deux algorithmes très connus
DES et AES en mettant l’accent sur l’AES car il est devenu le standard recommandé
pour le chiffrement symétrique [05].

DES (Data Encryption Sandard)

DES a été développé à la fin des années 1970s comme un standard du


gouvernement US pour protéger l’information sensible. Le DES est officiellement
défini dans la publication FIPS 46-3 et il est public. DES est encore supporté dans des
outils de cryptographie pour les O.S des dispositifs mobiles et les cartes à puce. C'est
un chiffrement qui transforme des blocs de 64 bits avec une clé secrète de 56 bits. Il a
une conception basée sur le schéma de Feistel au moyen de permutations et de
substitutions. L’attaque de force brute est possible sur une clé DES. Cette attaque a été
15

réalisée par DES Cracker de EFF-Electronic Frontier Fondation en juin 1998 (Elle a
trouvé une clé DES dans moins de 3 jours).

Avec la technologie actuelle (des CPU très rapides et moins chers), il est
hautement possible de cracker DES. La solution a été au premier temps d’adopter le
triple DES (TDES ou 3DES) : 3 applications de DES à la suite avec 2 clés différentes
(112 bits) (Figure I.3).

Figure I.3: Algorithme TDES

TDES utilise une taille de blocs est 64 bits et de clé comprise entre 128 bits
et 192 bits. TDES est suffisant en sécurité mais il est trois fois plus lent que DES. Un
nouvel algorithme remplace DES, c’est l’AES (Advanced Encryption Standard). [06]

AES (Advanced Encryption Standard)

En 1997, le NIST (National Institue of Standards and Technology) a lancé


un appel d’offre pour un algorithme de chiffrement symétrique avec un bloc de taille
128 bits et supporte des clés de 128, 192 et 256 bits. Les critères d’évaluation de
l’offre comprenaient la sécurité, la puissance de calcul, les contraintes de la mémoire
des petits dispositifs (comme la carte à puce), la plateforme logicielle et matérielle et la
flexibilité. Un total de 15 algorithmes ont été envoyés et 5 ont été sélectionné parmi
ces 15 algorithmes [07].

L’algorithme de Rijndael a été sélectionné pour devenir l’AES en 2001.


Rijndael a été conçu par Joan Daemen et Vincent Rijmen, deux chercheurs de la
Belgique. Les autres algorithmes sont : Serpent, Twofish, RC6, et MARS. L’AES
n’utilise pas le schéma de Feistel mais il utilise des opérations mathématiques comme
des substitutions, des permutations et des XORs. Il a plusieurs rounds identiques (de
10 à 14) et leur nombre dépend de la taille de la clé. L’AES opère au niveau octet ce
qui permet une implémentation efficace au niveau matérielle et logicielle. L'AES est
16

un standard, donc libre d'utilisation, sans restriction d'usage ni brevet. NIST spécifie
actuellement AES dans le document FIPS 197, comme le nouveau standard de
chiffrement symétrique. AES est approuvé pour utilisation par les organisations du
gouvernement U.S pour protéger l’information sensible non classifiée.

AES a trois niveaux forts de sécurité : 128 bits, 192 bits et 256 bits. La
sécurité 128 bits fournira au mois 30 ans de protection. AES ne fournit pas seulement
une sécurité supérieure à TDES mais il délivre aussi une meilleure performance. Une
meilleure sécurité et une meilleure performance rendent l’AES une alternative plus
attractive que TDES et un bon choix pour un algorithme de chiffrement symétrique
[07].

AES est également un candidat particulièrement approprié pour les


dispositifs mobiles limités en ressources de calcul et de stockage. Le monde de la 3G
(3ème génération de dispositifs mobiles) a adopté l'algorithme AES pour son schéma
d'authentification.

4.1.1.2. Chiffrements de flux (Stream Cipher)

Les algorithmes de chiffrement de flux peuvent être définis comme étant


des algorithmes de chiffrement par blocs, où le bloc a une dimension unitaire (1 bit, 1
octet, etc.) ou relativement petite. Leurs avantages principaux viennent du fait que la
transformation (méthode de chiffrement) peut être changée à chaque symbole du texte
clair et du fait qu'ils soient extrêmement rapides. De plus, ils sont utiles dans un
environnement où les erreurs sont fréquentes car ils ont l'avantage de ne pas propager
les erreurs (diffusion). Ils sont aussi utilisés lorsque l'information ne peut être traitée
qu'avec de petites quantités de symboles à la fois [09]. Quelques algorithmes de
cryptographie symétrique par flot:

 A5 : utilisé dans les téléphones mobiles de type GSM pour chiffrer la


communication par radio entre le mobile et l'antenne-relais la plus proche.
17

 RC4, le plus répandu, conçu par Ronald Rivest, utilisé notamment par le
protocole WEP, un algorithme récent de Eli Biham – E0 utilisé par le protocole
Bluetooth.

4.2. CRYPTOGRAPHIE A CLE PUBLIQUE OU ASYMETRIQUE

La cryptographie asymétrique se base sur des problèmes mathématiques


complexes (factorisation de grands nombres entiers ou équation de logarithme
discrète). La cryptographie asymétrique se base sur le principe de deux clés: clé
publique, clé privée (Figure I.4). La clé publique est mise à la disposition de
quiconque désire chiffrer un message (cette clé peut être connu par tout le monde). Ce
dernier ne pourra être déchiffré qu'avec la clé privée, qui doit être confidentielle et
connue seulement par son propriétaire.

Figure 1.5 : Chiffrement asymétrique

Un chiffrement asymétrique est défini par trois algorithmes

 Algorithme de génération des clés;


 Algorithme de chiffrement;
 Algorithme de déchiffrement ;

Certains algorithmes asymétriques comme RSA offre aussi des opérations


pour la génération de signature numérique et sa vérification. L’utilisation d’une paire
de clés publique/privée permet d’assurer la confidentialité, l’authentification,
l’intégrité et l’échange de la clé secrète. Cependant les algorithmes asymétriques ne
réalisent tous ces fonctions. La Table I.1 donne un résumé des opérations
cryptographiques pouvant être réalisés par les algorithmes asymétriques les plus
connus.
18

La cryptographie asymétrique est largement utilisée pour sécuriser les


communications sur Internet, y compris pour les protocoles tels que SSL/TLS (utilisés
pour sécuriser les transactions en ligne) et SSH (utilisé pour les connexions sécurisées
aux serveurs). Elle joue un rôle crucial dans la protection des données sensibles et dans
la sécurisation des échanges numériques. La crypto-système asymétrique est basée sur
des problèmes mathématiques complexes (Décomposition de grands entiers ou
d'équations logarithmiques discrètes).

Elle repose sur le principe de deux clés : une privée et n’est connue que par
l’utilisateur, l’autre publique et donc tout le monde tout le monde peut y accéder. Ce
type de cryptage élimine la problématique de la transmission de la clé. Ce mode de
cryptage est également nommé le cryptage à clé publique. Il est essentiel que l'on ne
puisse pas déduire la clé privée de la clé publique [10].

Algorithme Chiffrement/déchiffrement Signature numérique Echange de clé


RSA Oui Oui Oui
Diffie-Hellman Non Non Oui
DSA Non Oui Non
EC-Elliptic Oui Oui Oui
Curves
Table I.1 : Les applications des crypto systèmes asymétriques

L'un des principaux avantages de la cryptographie de clé publique est


qu'elle offre une méthode d'utilisation des signatures numériques. [11]

4.2.1. Cryptage RSA

Le cryptage RSA, du nom de ses concepteurs, Ron Rivest, Adi Shamir et


Leonard Adleman, est le premier algorithme de chiffrement asymétrique. Il a été
découvert en 1977 au Massachusetts Institute of Technology . Le principe de ce
cryptage est d’utiliser une clé publique pour crypter les données et une clé privée qui
servira à les décrypter [11].
19

4.2.2. Protocole d'échange de clés DH (Diffie-Hellman)

Algorithme à clé publique d’échange de clé, basé sur le problème de


logarithme discret, développé par Diffie et Hellman en 1976.ce protocole permet à
deux tiers de générer un secret partagé sans avoir aucune information préalable l’un
sur l’autre et en échangeant uniquement leurs clés publiques.

4.2.3. DSA (Digital Signature Algorithm)

Diffie-Hellman permet de crée un secret commun (et donc de chiffrer des


communications) mais contrairement à RSA, il ne permet pas de signer des
documents. C'est pour cette raison que Diffie-Hellman est souvent associé à DSS
(Digital Signature Standard, un autre algorithme) ou DSA. DSS permet de signer les
documents. DSA est une norme promulguée par le NIST. Il est uniquement utilisé
pour les signatures numériques. DSA génère des signatures plus rapides, et peut
vérifier les signatures RSA.

4.2.4. Logarithme Discret pour les courbes elliptiques

Il est également possible de définir des problèmes de logarithme discret


dans des structures plus complexes pour lesquels aucun algorithme plus efficace que
les méthodes génériques de calcul de logarithme discret n’est connu. C’est en
particulier aujourd’hui le cas des courbes elliptiques qui sont définies sur un corps de
base pouvant être, en pratique, premier kl(m) ou binaire kl (2n).
20

4.3. LES AVANTAGES ET LES INCONVENIENTS DE


CRYPTOGRAPHIES SYMETRIQUES ET ASYMETRIQUES

Cryptographie Avantages Inconvénient


 Système rapide de  Gestion des clés difficiles
chiffrement /déchiffrement. (nombreux clés).
 Clés relativement courtes (128  Point faible : l’échange de
ou 256 bits). la clé secrète.
 Primitive de mécanismes  Dans un réseau de N entités
Symétrique
cryptographiques, et Bonne susceptibles de
 Performances et sécurité bien communiquer secrètement
étudié. il faut distribuer N ∗ (N-
 Assure la confidentialité des 1) /2 clés.
données
 Pas de secret à transmettre.  Les algorithmes à clé
 Nombre clés à distribuer est publique nécessitent une
réduit par rapport aux clés capacité de traitement
symétriques. importante, ce qui n’est pas
 Très utile pour échanger des raisonnable pour les
messages facilement. systèmes à ressources
 La distribution est simplifiée : limitées.
La clé privée n’est jamais  La relation clés
révélée ou transmise et la clé publique/clés privée impose
Asymétrique publique est disponible à tous :
les utilisateurs.  La taille de clés et
relativement longue
(généralement entre 512 et
2048 bits).
 Gestion de certificats de
clés publiques.
 Lenteur de calcul.
 Pas d’authentification de la
source.

Tableau 1.2 : Les avantages et les inconvénients symétriques/asymétrique. [6]

4.4. Fonctions de hachage


21

Une fonction de hachage est aussi appelée fonction de hachage à sens


unique ou "one-way hash function" en anglais est une fonction qui associe à un grand
ensemble de données un ensemble beaucoup plus petit. Le résultat de cette fonction est
par ailleurs aussi appelé somme de contrôle, empreinte, résumé de message, condensé
ou encore empreinte cryptographique lorsque l'on utilise une fonction de hachage
cryptographique. Les fonctions de HASH peuvent être utilisées pour l’authentification
de message, dérivation de clé, génération de nombre pseudo aléatoire et génération de
la signature numérique.

4.4.1. Algorithme de hachage sécurisé SHA

L’algorithme SHA a été conçu par NSA, standardisé par NIST et publié
comme FIPS PUB 180 en 1993. Une version révisée a été délivrée en 1995 comme
FIPS PUB 180-1. La version actuelle est FIPS PUB 180-2 avec une notice de
changement pour SHA-224 en février 2004[12].

La liste des algorithmes SHA est : SHA-1, SHA-256, SHA-384 et SHA-


512. A cause des calculs intensifs dans SHA-384 et SHA-512, ces deux algorithmes ne
sont pas recommandés pour être utilisés sur les dispositifs mobiles. SHA-1 est
l’algorithme le plus utilisé dans la famille des algorithmes SHA. SHA-1 prend en
entrée un message de taille inférieure à 2st bits et produit une empreinte de 160 bits.
SHA-256 prend aussi en entrée un message de taille inférieure à 2st bits mais produit
une empreinte de 256 bits.

Il y a une nouvelle attaque sur SHA-1 sans utiliser la force brute, qui trouve
des collisions à l’intérieur de 269 opérations hash[13]. A cause de l’avancement
technologique et les attaques, NIST a planifié d’abandonner SHA-1 la fin 2010, et
recommande des fonctions HASH plus fortes comme SHA-256. Les algorithmes
SHA-256, SHA-384 et SHA-512 sont relativement nouveaux et sont aussi standardisés
par NIST mais ils sont plus intensifs en calcul et crypto analyses.
22

Il y a d’autres algorithmes de hachage comme MD4, MD5 et SHA-0, mais


ils sont plus exposés aux attaques de collision. Il est donc recommandé d’utiliser SHA-
256 comme fonction de hachage [13].

4.5. La cryptographie dans le modèle OSI [5]

L’implémentation de la cryptographie dans le modèle OSI peut s’effectuer


en deux types : dans les couches basses et dans les couches hautes

Si le chiffrement a lieu dans les couches basses, on parle de chiffrement lien


par lien, les données qui passent par le lien seront chiffrés. Si le chiffrement a lieu dans
les couches hautes, on parle de chiffrement de bout en bout. Les données restent
chiffrées jusqu’à ce que le destinataire le déchiffre.

4.5.1. Chiffrement lien par lien

L’endroit le plus simple pour effectuer le chiffrement se trouve dans la


couche physique. Le dispositif de chiffrement est placé à cet endroit. Il chiffre ensuite
toutes les informations qui passent entre lui et l’autre dispositif reversent. La sécurité
de cette méthode réside sur le fait que les données qui circulent dans le réseau sont
cryptées, l’interception des données ne peut corrompre personne (on ne connait ni le
contenu ni sa destination).

4.5.2. Le chiffrement de bout en bout

Dans ce cas, on place le dispositif de chiffrement entre la couche réseau et


la couche transport. Les données chiffrées sont les unités de transport.
23

4.6. Cryptanalyse [6] [7] [8] [9]

C’est l’étude des systèmes cryptographiques, en particulier de leurs


faiblesses, dans le but de retrouver des messages clairs correspondant à des messages
chiffrés dont on n’est pas destinataire.

Un attaquant est donc une personne qui tente de décrypter des messages,
c'est-à-dire de retrouver des clairs à partir de chiffrés sans connaitre la clé. On réserve
généralement le verbe déchiffrer à l’action du destinataire légitime qui effectue
l’opération inverse de chiffrement.

Si le but de la cryptographie est d’élaborer des méthodes de protections, le


but de la cryptanalyse est au contraire de casser ces protections. Une tentative de
cryptanalyse d’un système est appelée une attaque, et elle eut conduire à différents
résultats :

 Cassage complet : le cryptanalyste retrouve la clé de chiffrement.


 Obtention globale : il retrouve un algorithme de déchiffrement, mais qui ne
nécessite pas la connaissance de la clé de chiffrement.
 Obtention locale : il retrouve le texte en clair correspondant à un message
chiffré.
 Obtention d’information : il obtient quelques indications sur le texte en clairs ou
la clé (certains bits de la clé, un renseignement sur la forme du texte en clair,…)

4.6.1. Attaques des fonctions de chiffrements

Les fonctions de chiffrements sont supposées rendre impossible le


déchiffrement par un cryptanalyste, c'est-à-dire la récupération d’un message clair sans
clé. A fortiori, elles doivent protéger le secret des clés.
24

On distingue plusieurs types d’attaques suivant les informations que peut


obtenir le cryptanalyste :

 L’attaque à texte chiffré seulement, où le cryptanalyste ne connait qu’un


ensemble de textes chiffrés. Il peut soit retrouver seulement les textes en clair,
soit retrouver la clé. En pratique, il est très souvent possible de deviner certaines
propriétés du texte en clair, ce qui permet de valider ou non le déchiffrement
d’un cryptanalyste.
 L’attaque à texte en clair connu, où la cryptanalyste connait non seulement les
textes chiffrés, mais aussi les textes en clair correspondants, son but est alors de
retrouver la clé.

Du fait de la présence, dans la plupart des textes chiffrés, de parties


connues, ce type d’attaque est très courant.

 L’attaque à texte en clair choisi, où le cryptanalyste peut choisir des textes en


clair à chiffrer et donc utiliser des textes apportant plus d’informations sur la
clé. S’il peut de plus adapter ses choix en fonction des textes chiffrés
précédents, on parle aussi d’attaque adaptive.
 L’attaque à texte chiffré choisi, qui est l’inverse de la précédente : le
cryptanalyste peut choisir des textes chiffrés pour lesquels il connaitra le texte
en clair correspondant, sa tâche est alors de retrouver la clé. Ce type d’attaque
est principalement utilisé contre les systèmes à clé publiques, pour retrouver la
clé privée.

4.6.2. Attaques sur les algorithmes symétriques


4.6.2.1. Attaques au niveau des clés

 L’attaque la plus simple sur le plan conceptuel est l’attaque exhaustive ou


attaque en force brute, ce qui consiste à essayer toutes les clés possibles. Le
nombre de test à effectuer est dépendant de la longueur de la clé.
25

 L’attaque par dictionnaire est la méthode par laquelle le cryptanalyste se


constitue un dictionnaire de mots à tester. Ce type d’attaque est beaucoup plus
rapide qu’une attaque exhaustive.

4.6.2.1. La cryptanalyse différentielle

Elle utilise une attaque à texte clair choisi et basé sur l’observation de
l’évolution des différences entre deux textes lorsqu’ils sont chiffrés avec la même clé.
A force d’analyser des paires de textes, on finit par trouver la clé recherchée en
réduisant suffisamment le nombre de clés possibles pour pouvoir mener une attaque
exhaustive rapide.

Elle peut également être utilisée pour attaquer d’autres types d’algorithmes
comme les fonctions de hachages.

4.6.2.2. La cryptanalyse linéaire

La cryptanalyse linéaire utilise une attaque à texte clair connu et consiste à


spécifier l’algorithme de chiffrement par blocs par une approximation linéaire. Avec
un nombre suffisant de paires (texte en clair, texte chiffré), on peut deviner certains
bits de la clé.

4.6.3. Attaques sur les algorithmes asymétriques

4.6.3.1. Attaques au niveau des clés

Avec les algorithmes asymétriques, le problème n’est pas de trouver la


bonne clé par attaque exhaustive, mais de dériver la clé secrète à partir de la clé
publique. La plupart des algorithmes asymétriques reposent sur des problèmes
mathématiques difficiles à résoudre. C’est pourquoi les paramètres qui influencent la
difficulté de la résolution du problème déterminent la sécurité. Généralement, cela se
traduit par la nécessité d’utiliser de grands nombres, la taille de ces nombres ayant une
26

répercussion sur la longueur des clés. Cela explique que les clés utilisées par la
cryptographie à clé publique soient généralement bien plus longues que celles utilisées
par la cryptographie à clé secrète.

4.6.3.2. L’attaque à texte clair deviné

Un point faible des algorithmes à clé publique est le caractère public de la


clé de chiffrement : le cryptanalyste ayant connaissance de cette clé peut mener une
attaque à texte clair deviné, qui consiste à tenter de deviner le texte en clair et à le
chiffrer pour vérifier son exactitude.

En effet, un attaquant pourrait se constituer une liste exhaustive des textes


en clairs possible et des textes chiffrés correspondants. Il n’aurait alors aucun mal à
retrouver le texte en clair correspondant à un cryptogramme donné.

4.6.3.3. Attaque à texte chiffré choisi

La plupart des algorithmes asymétriques sont sensibles aux attaques à texte


chiffré choisi.

Il convient donc de, si on utilise le même algorithme pour le chiffrement et


pour la signature, s’assurer que les protocoles employés, ne permettent pas à un
adversaire de faire signer n’importe quel texte. Mieux, on peut avoir recours à des
couples distincts pour ces deux opérations.

4.6.3.4. Attaque temporelle

Ce type d’attaque utilise la mesure du temps pris par des opérations


cryptographiques pour retrouver les clés privées utilisées. Une recherche s’est
intéressée à l’introduction délibérée d’erreurs dans les processeurs cryptographiques
pour tenter d’obtenir des informations sur la clé.
27

Conclusion

La cryptographie est une technique qui change progressivement en fonction


des conditions politiques, économiques et des législations des pays (loi concernant la
protection de la vie privée etc...). On peut aussi dire que la cryptographie n’évoluerait
pas si personne n’essayait de casser les codes de cryptages, car il n’y aurait plus
aucune raison de les améliorer étant donné que personne ne parviendrait à les casser.
Les méthodes de cryptage seraient donc jugées sûres à 100% et elles le resteraient en
attendant que quelqu'un réussisse à passer les mesures de sécurités. L’usage ancien du
chiffrement et l’usage actuel en informatique ont conduit aux contraintes suivantes :

 Réalisation simple et rapide du chiffrement et du déchiffrement.


 Eviter un encombrement important des clés.
 Un crypto systèmes dépend de paramètres (clés).

Des nouveaux services de sécurité ont été ajoutés grâce aux primitives de
hachage, mac et signature numérique, la crypto moderne ajoute donc des services
d’authentification, d’intégrité et de non-répudiation en plus de la confidentialité. Ces
nouveaux services permettent une meilleure sécurité dans les communications et les
transactions utilisant les infrastructures réseaux et Internet.
28

REFERENCES BIBLIOGRAPHIQUES

[1] J. Jean, « Cryptanalyse de Primitives Symétriques Basées Sur le Chiffrement


AES » Thèse de Doctorat, université Paris Diderot (Paris 7), 2013.
[2] Z. DAHMANE, L.ABDELLI, « Implémentation d’un algorithme de cryptage sur
un circuit FPGA », Mémoire de Master en Electronique, Option : Instrumentation et
Maintenance Industrielle, Université de M’sila, 2017.
[3] B. Scheier, Cryptographie appliquée : Algorithme, protocoles et codes sources en
C, Vuibert Informatique, deuxième édition, janvier 2001.
[4] Ruffin-Benoît NGOIE MPOY, note du cours sécurité informatique, Université de
l’alliance chrétienne, 2020.
[5] H. Khouildat, Methode de cryptage d’image basée sur la permutation et la matrice
de house holder, Université Kasdi-Merbah ouargla, 2019.
[6] A.BEN AMMAR, K.HADDOUCHE, Amélioration de la génération des sous clés
de l’algorithme cryptographique DES, Mémoire de Master en Systèmes électroniques
complexes, Université de Bouira , 2017.
[7] Boutiouta. A, "sécurité et géstion de la mobilité dans le réseau GSM". Thèse
d’ingéniorat Institue de télécommunication d’ORAN 2006.
[8] Rapport sur l’étude et l’implémentation de quelques algorithmes de chirement et
de signature, Nasser Yassine et Ouyous Mina, Master Informatique et Télé
communications, UNIVERSITÉMOHAMMED V-AGDAL, Faculté des Sciences
RABAT, 2013-2014 ;
[9] Cryptographie et Sécurité informatique, Renaud Dumont, Université de Liège,
2009 – 2010 ;
[10] A.BEN AMMAR, K.HADDOUCHE, Amélioration de la génération des sous
clés de l’algorithme cryptographique DES, Mémoire de Master en Systèmes
électroniques complexes, Université de Bouira , 2017.
[11] Rapport sur l’étude et l’implémentation de quelques algorithmes de chirement et
de signature, Nasser Yassine et Ouyous Mina, Master Informatique et Télé
communications, UNIVERSITÉ MOHAMMED V-AGDAL, Faculté des Sciences
RABAT, 2013-2014 ;

Vous aimerez peut-être aussi