Académique Documents
Professionnel Documents
Culture Documents
Diapositive 2
• Décrire la cryptanalyse.
• Décrire la cryptologie.
Diapositive 4
Diapositive 5
Pour garantir des communications sécurisées entre les infrastructures publiques et privées,
le premier objectif de l'administrateur réseau est de sécuriser l'infrastructure réseau, y
compris les routeurs, les commutateurs, les serveurs et les hôtes. Cela peut être accompli en
utilisant le durcissement de l'appareil, contrôle d'accès AAA, ACL, firewalls, surveillance des
menaces en utilisant IPS, sécurisation des périphériques finaux en utilisant AMP, ESA et WSA.
Le prochain objectif est de sécuriser les données lors de leurs déplacements sur différents
liens. Cela peut inclure le trafic interne, mais le plus important est de protéger les données
qui se déplacent à l'extérieur de l'organisation vers des sites de filiales, des sites de
télétravailleurs et des sites partenaires.
Il y a trois objectifs principaux de sécurisation des communications :
• Authentification - Garantit que le message n'est pas une contrefaçon et qu'il vient
réellement de qui la envoyer.
• Intégrité - Garantit que personne n'a intercepté le message et l'a modifié; similaire à une
fonction de somme de contrôle dans une trame.
• Confidentialité - Garantit que si le message est capturé, il ne peut pas être déchiffré.
De nombreux réseaux modernes assurent l'authentification avec des protocoles, tels que
HMAC. L'intégrité est assurée en implémentant des algorithmes de génération de hachage
MD5 ou SHA. La confidentialité des données est assurée par des algorithmes de chiffrement
symétrique, notamment la norme DES (Encryption Data), 3DES et Advanced Encryption
Standard (AES). Les algorithmes de chiffrement symétrique reposent sur le principe que
chaque partie communicante connaît la clé pré-partagée. La confidentialité des données
peut également être assurée en utilisant des algorithmes asymétriques, notamment Rivest,
Shamir et Adleman (RSA) et l'infrastructure à clé publique (PKI). Les algorithmes de
chiffrement asymétriques sont basés sur l'hypothèse que les deux parties communicantes
n'ont jamais partagé un secret et doivent établir une méthode sécurisée pour le faire.
Diapositive 6
Il existe deux méthodes principales pour valider une source dans les communications réseau:
les services d'authentification et les services de non-répudiation de données.
L'authentification garantit qu'un message provient de la source dont il prétend
provenir. L'authentification est similaire à la saisie d'un numéro d'identification personnel
(NIP) sécurisé pour les opérations bancaires dans un guichet automatique, comme le montre
la figure. Le NIP ne devrait être connu que de l'utilisateur et de l'institution financière. Dans
les communications réseau, l'authentification peut être accomplie en utilisant des méthodes
cryptographiques.
La non-répudiation de données est un service similaire qui permet à l'expéditeur d'un
message d'être identifié de manière unique. Avec les services de non-répudiation, un
expéditeur ne peut pas nier avoir été la source de ce message.
La partie la plus importante de la non-répudiation est qu'un dispositif ne peut pas répudier
ou réfuter la validité d'un message envoyé. La non-répudiation repose sur le fait que seul
l'expéditeur a les caractéristiques ou la signature uniques pour la façon dont ce message est
traité. Même le dispositif de réception ne peut pas savoir comment l'expéditeur a traité ce
message pour prouver l'authenticité, car le destinataire pourrait alors prétendre en être la
source.
Diapositive 7
L'intégrité des données garantit que les messages ne sont pas modifiés pendant le
transport. Avec l'intégrité des données, le récepteur peut vérifier que le message reçu est
identique au message envoyé et qu'aucune manipulation ne s'est produite.
La noblesse européenne a assuré l'intégrité des données des documents en créant un sceau
de cire pour fermer une enveloppe, comme le montre la figure. Le sceau a souvent été créé à
l'aide d'une chevalière. Ceux-ci portaient la crête de la famille, les initiales, un portrait, ou un
symbole personnel ou une devise du propriétaire de la chevalière. Un sceau ininterrompu sur
une enveloppe garantissait l'intégrité de son contenu. Il a également garanti l'authenticité
basée sur l'impression unique d'anneau de chevalière.
Diapositive 8
• Substitution
Dans les chiffrements par transposition, aucune lettre n'est remplacée; ils sont simplement
réarrangés. Un exemple de ce type de chiffrement consiste à prendre le message FLANK EAST
ATTACK AT DAWN et à le transposer pour lire NWAD TAKCATTA TSAE KNALF. Dans cet
exemple, la clé est d'inverser les lettres.
Un autre exemple de chiffrement par transposition est connu sous le nom de chiffrement de
clôture de rail. Dans cette transposition, les mots sont épelés comme s'ils étaient une clôture
de rail. Ils sont décalés, certains à l'avant, d'autres au milieu et d'autres à l'arrière, sur
plusieurs lignes parallèles. Par exemple, reportez-vous au message en texte brut de la figure
1. La figure 2 montre comment transposer le message à l'aide d'un chiffrement de clôture de
rail avec une clé de trois. La clé spécifie que trois lignes sont requises lors de la création du
code chiffré. Le texte chiffré résultant est affiché à la figure 3.
Les algorithmes de cryptage modernes, tels que le DES et le 3DES, utilisent encore la
transposition dans le cadre de l'algorithme.
Diapositive 12
xxxx
Les chiffrements par substitution remplacent une lettre par une autre. Dans leur forme la
plus simple, les chiffrements de substitution conservent la fréquence des lettres du message
original.
Le chiffre de César était un simple chiffrement par substitution. Par exemple, reportez-vous
au message en texte brut de la Figure 1. Si la clé utilisée était 3, la lettre A a été déplacée de
trois cases vers la droite, ce qui a entraîné un message codé utilisant la lettre D à la place de
la lettre A dans la Figure 2. La lettre E serait le substitut de la lettre B, et ainsi de suite. Le
texte chiffré qui en résulte est affiché à la Figure 3. Si la clé utilisée était 8, alors A devient I, B
devient J et ainsi de suite.
Parce que le message entier reposait sur le même changement de clé, le chiffrement de
César est appelé un chiffrement de substitution monoalphabétique. Il est également assez
facile à craquer. Pour cette raison, des chiffrements polyalphabétiques, tels que le
chiffrement de Vigenère, ont été inventés. La méthode a été décrite à l'origine par Giovan
Battista Bellaso en 1553, mais le schéma a été par la suite misattribué au diplomate et
cryptographe français, Blaise de Vigenère.
Diapositive 13
Gilbert Vernam était un ingénieur chez AT & T Bell Labs qui, en 1917, a inventé, puis breveté,
le chiffrement de flux. Il a également co-inventé le chiffrement de pad unique. Vernam a
proposé un code de télétype dans lequel une clé préparée consistant en une séquence de
nombres arbitrairement longue et non répétitive était conservée sur une bande de papier. Il
a ensuite été combiné caractère par caractère avec le message en clair pour produire le texte
chiffré. La figure montre un exemple de dispositif de télétype à chiffrement de Vernam.
Pour déchiffrer le texte chiffré, la même clé de bande de papier a été de nouveau combinée
caractère par caractère, produisant le texte en clair. Chaque bande n'a été utilisée qu'une
seule fois; par conséquent, le nom de tampon à usage unique. Tant que la clé ne se répète
pas ou n'est pas réutilisée, ce type de chiffre est immunisé contre les attaques
cryptanalytiques. En effet, le texte chiffré disponible n'affiche pas le motif de la clé.
Plusieurs difficultés sont inhérentes à l'utilisation de tampons à usage unique dans le monde
réel. Une difficulté est le défi de créer des données aléatoires. Les ordinateurs, parce qu'ils
ont une base mathématique, sont incapables de créer de vraies données aléatoires. De plus,
si la clé est utilisée plus d'une fois, elle est facile à casser. RC4 est un exemple de ce type de
chiffrement largement utilisé sur Internet. Encore une fois, parce que la clé est générée par
un ordinateur, ce n'est pas vraiment aléatoire. En plus de ces problèmes, la distribution des
clés est également difficile avec ce type de chiffrement.
Diapositive 18
• Ciphertext method
• Known-Plaintext method
• Chosen-Plaintext method
• Chosen-Ciphertext method
• Meet-in-the-Middle method
Méthode brute-force - L'attaquant essaie toutes les clés possibles en sachant que l'une
d'entre elles fonctionnera.
Méthode Ciphertext - L'attaquant a le texte chiffré de plusieurs messages cryptés mais
aucune connaissance du texte en clair sous-jacent.
Méthode Known-Plaintext - L'attaquant a accès au texte chiffré de plusieurs messages et
connaît quelque chose sur le texte en clair sous-jacent à ce texte chiffré.
Méthode Chosen-Plaintext - L'attaquant choisit les données chiffrées par le périphérique de
chiffrement et observent la sortie du texte chiffré.
Méthode Chosen-Ciphertext - L'attaquant peut choisir un texte chiffré différent à déchiffrer
et a accès au texte brut déchiffré.
Méthode Meet-in-the-Middle - L'attaquant connaît une partie du texte en clair et le texte
chiffré correspondant.
La méthode la plus simple à comprendre est la méthode brute-force. Par exemple, si un
voleur tente de voler une bicyclette sécurisée avec la serrure à combinaison représentée sur
la figure, il devra tenter un maximum de 10 000 possibilités différentes (de 0000 à
9999). Tous les algorithmes de chiffrement sont vulnérables à cette attaque. En moyenne,
une attaque de type brute-force réussit environ 50% de l'espace de clé, soit l'ensemble de
toutes les clés possibles.
L'objectif des cryptographes modernes est d'avoir un espace de clé assez grand pour qu'il
prenne trop de temps et d'argent pour accomplir une attaque brute-force.
Diapositive 24
Analyse de fréquence de
l'alphabet anglais (Frequency
Analysis of the English
Alphabet).
Décryptage à l'aide de
l'analyse de fréquence
(Deciphering Using Frequency
Analysis).
Lorsque vous choisissez une méthode de cryptanalyse, considérez le code chiffré César. La
meilleure façon de casser le code est d'utiliser la force brute. Parce qu'il n'y a que 25
rotations possibles, l'effort est relativement faible pour essayer toutes les rotations possibles
et voir lequel retourne quelque chose qui a du sens.
Une approche plus scientifique consiste à utiliser le fait que certains caractères de l'alphabet
anglais sont utilisés plus souvent que d'autres. Cette méthode est appelée analyse de
fréquence. Par exemple, le graphique de la figure 1 indique la fréquence des lettres en
anglais. Les lettres E, T et A sont les lettres les plus populaires en anglais. Les lettres J, Q, X et
Z sont les moins populaires. Comprendre ce modèle peut aider à découvrir quelles lettres
sont probablement incluses dans le message chiffré.
Dans le message chiffré César IODQN HDVW DWWDFN DW GDZQ, représenté sur la figure 2,
la lettre chiffrée D apparaît six fois tandis que la lettre chiffrée W apparaît quatre fois. Il y a
une bonne possibilité que les lettres chiffrées D et W représentent soit le texte en clair E, T
ou A. Dans ce cas, le D représente la lettre A, et le W représente la lettre T.
Diapositive 25
Diapositive 26
Les hachages sont utilisés pour assurer l'intégrité. Comme le montre la figure, une fonction
de hachage prend des données binaires, appelées le message, et produit une représentation
condensée de longueur fixe, appelée hachage. Le hachage qui en résulte est parfois appelé
digestion du message, empreinte numérique ou empreinte digitale.
Le hachage est basé sur une fonction mathématique unidirectionnelle relativement facile à
calculer, mais beaucoup plus difficile à inverser. Le café moulu est une bonne analogie avec
une fonction à sens unique. Il est facile de moudre des grains de café, mais il est presque
impossible de reconstituer tous les petits morceaux pour reconstituer les grains d'origine.
La fonction de hachage cryptographique est conçue pour vérifier et assurer l'intégrité des
données. Il peut également être utilisé pour vérifier l'authentification. La procédure prend un
bloc de données variable et renvoie une chaîne de bits de longueur fixe appelée la valeur de
hachage ou le résumé du message.
Le hachage est similaire au calcul des sommes de contrôle de redondance cyclique (CRC),
mais il est beaucoup plus fort sur le plan cryptographique. Par exemple, étant donné une
valeur CRC, il est facile de générer des données avec le même CRC. Avec les fonctions de
hachage, il est impossible de calculer deux ensembles de données différents pour obtenir la
même sortie de hachage. Chaque fois que les données sont modifiées, la valeur de hachage
change également. Pour cette raison, les valeurs de hachage cryptographiques sont souvent
appelées empreintes numériques. Ils peuvent être utilisés pour détecter des fichiers de
données en double, des modifications de version de fichier et des applications similaires. Ces
valeurs sont utilisées pour se prémunir contre une modification accidentelle ou
intentionnelle des données et une altération accidentelle des données.
La fonction de hachage cryptographique est appliquée dans de nombreuses situations
différentes :
• Fournir une preuve d'authenticité lorsqu'elle est utilisée avec une clé d'authentification
secrète symétrique, telle que IP Security (IPsec) ou l'authentification par protocole de
routage;
• Fournir une authentification en générant des réponses ponctuelles et unidirectionnelles
aux problèmes rencontrés dans les protocoles d'authentification tels que le protocole
d'authentification PPP (Challenge Handshake Authentication Protocol);
• Fournir une preuve de vérification de l'intégrité des messages, comme celles utilisées dans
les contrats signés numériquement, et des certificats d'infrastructure à clé publique (PKI),
comme ceux acceptés lors de l'accès à un site sécurisé à l'aide d'un navigateur.
Diapositive 32
Mathématiquement, une fonction de hachage H prend une entrée x et renvoie une chaîne de
taille fixe appelée la valeur de hachage h . L'équation indique: h = H ( x ).
Une fonction de hachage cryptographique devrait avoir les propriétés suivantes:
• L'entrée peut être de n'importe quelle longueur.
• La sortie a une longueur fixe.
• H ( x ) est relativement facile à calculer pour un x donné.
• H ( x ) est à sens unique et non réversible.
• H ( x ) est sans collision, ce qui signifie que deux valeurs d'entrée différentes donneront
des valeurs de hachage différentes.
• Si une fonction de hachage est difficile à inverser, elle est considérée comme un hachage
unidirectionnel. Difficile à inverser signifie que, étant donné une valeur de hachage de h ,
il est impossible de trouver une entrée pour x telle que h = H ( x ).
Diapositive 33
Les fonctions de hachage sont utiles pour garantir que les données ne sont pas modifiées
accidentellement, par exemple en cas d'erreur de communication. Par exemple, l'expéditeur
veut s'assurer que le message n'est pas modifié sur le chemin du destinataire. Le dispositif
d'envoi entre le message dans un algorithme de hachage et calcule son résumé ou empreinte
digitale de longueur fixe.
Dans l'exemple de la figure, le hachage calculé est 4ehiDx67NMop9. Le message et le
hachage sont en clair. Cette empreinte est ensuite attachée au message et envoyée au
destinataire. Le dispositif de réception sépare l'empreinte digitale du message et introduit le
message dans le même algorithme de hachage. Si le hachage calculé par le périphérique de
réception est égal à celui qui est attaché au message, le message n'a pas été modifié pendant
le transit. Si les hachages ne sont pas égaux, comme le montre la figure, l'intégrité du
message ne peut plus être fiable.
Alors que le hachage peut être utilisé pour détecter des changements accidentels, il ne peut
pas être utilisé pour se prémunir contre des changements délibérés. Il n'y a aucune
information d'identification unique de l'expéditeur dans la procédure de hachage. Cela
signifie que n'importe qui peut calculer un hachage pour toutes les données, tant qu'elles
ont la bonne fonction de hachage. Par exemple, lorsque le message traverse le réseau, un
attaquant potentiel peut intercepter le message, le modifier, recalculer le hachage et
l'ajouter au message. Le périphérique de réception ne validera que contre le hachage
éventuellement ajouté. Par conséquent, le hachage est vulnérable aux attaques man-in-the-
middle et ne garantit pas la sécurité des données transmises.
Diapositive 34
Diapositive 35
L'algorithme MD5 est un algorithme de hachage développé par Ron Rivest et utilisé
aujourd'hui dans de nombreuses applications Internet.
MD5 est une fonction unidirectionnelle qui facilite le calcul d'un hachage à partir des
données d'entrée, mais rend très difficile le calcul de données d'entrée avec seulement une
valeur de hachage. MD5 est essentiellement une séquence complexe d'opérations binaires
simples, telles que des opérations OU exclusif (XOR) et des rotations, qui sont effectuées sur
des données d'entrée et produisent un condensé de message haché de 128 bits.
MD5 est maintenant considéré comme un algorithme faible et doit être évité. MD5 ne doit
être utilisé que lorsqu'aucune autre solution de rechange n'est disponible, par exemple en
cas d'interopérabilité avec un équipement existant. Il est recommandé de supprimer
progressivement MD5 et de le remplacer par un algorithme plus puissant tel que SHA-2.
Diapositive 36
L'Institut National Américain des Normes et de la Technologie (NIST) a mis au point SHA,
l'algorithme spécifié dans le Secure Hash Standard (SHS). SHA-1, publié en 1994, a corrigé
une faille non publiée dans SHA. Le design SHA est très similaire aux fonctions de hachage
MD5 développées par Ron Rivest.
L'algorithme SHA-1 prend un message de longueur inférieure à 2 ^ 64 bits et produit un
résumé de messages de 160 bits. L'algorithme est légèrement plus lent que MD5, mais le
résumé plus important du message le rend plus sûr contre les attaques de collision et
d'inversion par force brute.
Note: 2 ^ 64 représente le nombre exponentiel de 2 élevé à la 64ème puissance.
SHA-1 est maintenant considéré comme un algorithme hérité. Par conséquent, le NIST a
publié quatre fonctions de hachage supplémentaires dans la famille SHA, qui sont
collectivement connues sous le nom de SHA-2 :
• SHA-224 (224 bits)
• SHA-256 (256 bits)
• SHA-384 (384 bits)
• SHA-512 (512 bits)
Les algorithmes SHA-2 sont les algorithmes de hachage sécurisés que le gouvernement
américain exige par la loi pour une utilisation dans certaines applications. Cela inclut
l'utilisation dans d'autres algorithmes et protocoles cryptographiques, pour la protection
d'informations sensibles non classifiées.
Remarque : Les algorithmes SHA-256, SHA-384 et SHA-512 sont considérés comme des
algorithmes de nouvelle génération et doivent être utilisés dans la mesure du possible.
Diapositive 37
La figure affiche les hachages résultants des différents algorithmes de hachage. Plus les
valeurs de hachage sont longues, plus elles sont sécurisées.
MD5 et SHA-1 sont basés sur une version précédente de l'algorithme de résumé de
message. Cela rend MD5 et SHA-1 similaires à bien des égards. SHA-1 et SHA-2 sont plus
résistants aux attaques par force brute car leur digestion est au moins 32 bits plus longue
que le digest MD5.
SHA-1 implique 80 étapes, et MD5 implique 64 étapes. L'algorithme SHA-1 doit également
traiter un tampon de 160 bits au lieu du tampon de 128 bits de MD5. Parce qu'il y a moins
d'étapes, MD5 s'exécute généralement plus rapidement sur le même périphérique.
Lorsque vous choisissez un algorithme de hachage, utilisez SHA-256 ou plus, car ils sont
actuellement les plus sécurisés. Des failles de sécurité ont été découvertes dans SHA-1 et
MD5. Par conséquent, il est maintenant recommandé que ces algorithmes soient évités.
Remarque : En particulier, seul SHA-256 ou supérieur doit être implémenté dans les réseaux
de production.
Diapositive 38
Diapositive 39
KHMAC est un type de code d'authentification de message (MAC). Les HMAC utilisent une clé
secrète supplémentaire en entrée de la fonction de hachage. Cela ajoute une
authentification à l'assurance de l'intégrité. Un HMAC est calculé à l'aide d'un algorithme
spécifique qui combine une fonction de hachage cryptographique avec une clé secrète,
comme indiqué sur la figure. Les fonctions de hachage sont à la base du mécanisme de
protection des HMAC.
Seuls l'expéditeur et le destinataire connaissent la clé secrète, et la sortie de la fonction de
hachage dépend maintenant des données d'entrée et de la clé secrète. Seules les parties
ayant accès à cette clé secrète peuvent calculer le résumé d'une fonction HMAC. Cette
caractéristique défait les attaques de l'intercepteur et fournit une authentification de
l'origine des données.
Si deux parties partagent une clé secrète et utilisent des fonctions HMAC pour
l'authentification, un résumé HMAC correctement construit d'un message reçu par une
partie indique que l'autre partie était l'expéditeur du message. C'est parce que l'autre partie
est la seule autre entité possédant la clé secrète.
La force cryptographique du HMAC dépend de la force cryptographique de la fonction de
hachage sous-jacente, de la taille et de la qualité de la clé et de la taille de la longueur du
hachage en bits.
Les technologies Cisco utilisent deux fonctions HMAC bien connues:
Keyed MD5 (HMAC-MD5) - Basé sur l'algorithme de hachage MD5, il fournit un niveau de
sécurité marginal mais acceptable. Il ne doit être utilisé que lorsqu'aucune autre solution de
rechange n'est disponible, par exemple en cas d'interopérabilité avec un équipement
existant.
Keyed SHA-1 (HMAC-SHA-1) - Basé sur l'algorithme de hachage SHA-1, il fournit une sécurité
adéquate.
Lorsqu'un condensé HMAC est créé, les données d'une longueur arbitraire et la clé secrète
sont entrées dans la fonction de hachage. Le résultat est un hachage de longueur fixe qui
dépend des données et de la clé secrète.
Il faut veiller à ne distribuer les clés secrètes qu'à ceux qui en ont besoin. Si la clé secrète est
compromise, les paquets peuvent être falsifiés; violant ainsi l'intégrité des données.
Diapositive 40
Considérons un exemple où un expéditeur veut s'assurer que le message n'est pas modifié
pendant le transport et veut fournir au destinataire un moyen d'authentifier l'origine du
message.
Le dispositif d'envoi introduit des données (telles que le salaire de Terry Smith de 100 $ et la
clé secrète) dans l'algorithme de hachage et calcule le condensé ou l'empreinte digitale
HMAC de longueur fixe. Cette empreinte authentifiée est ensuite attachée au message et
envoyée au destinataire.
Le dispositif de réception supprime l'empreinte digitale du message et utilise le message en
clair avec sa clé secrète comme entrée pour la même fonction de hachage. Si l'empreinte
digitale calculée par le périphérique de réception est égale à l'empreinte digitale envoyée, le
message n'a pas été modifié. De plus, l'origine du message est authentifiée car seul
l'expéditeur possède une copie de la clé secrète partagée. La fonction HMAC a assuré
l'authenticité du message.
Les VPN IPsec s'appuient sur les fonctions HMAC pour authentifier l'origine de chaque
paquet et assurer la vérification de l'intégrité des données.
Diapositive 41
Diapositive 42
La gestion des clés est souvent considérée comme la partie la plus difficile de la conception
d'un système cryptographique. De nombreux systèmes cryptographiques ont échoué en
raison d'erreurs dans la gestion de leurs clés, et tous les algorithmes cryptographiques
modernes nécessitent des procédures de gestion des clés. En pratique, la plupart des
attaques sur les systèmes cryptographiques visent le niveau de gestion des clés plutôt que
l'algorithme cryptographique lui-même.
Comme le montre la figure, il existe plusieurs caractéristiques essentielles de la gestion des
clés à prendre en compte.
Diapositive 43
L'espace de clé d'un algorithme est l'ensemble de toutes les valeurs de clé possibles. Une clé
qui a n bits produit un espace de clé qui a 2 ^ n Valeurs possibles. En ajoutant un bit à la clé,
l'espace de clé est effectivement doublé. Par exemple, DES avec ses clés de 56 bits a un
espace de clé de plus de 72 000 000 000 000 000 (2 ^ 56) de clés possibles. En ajoutant un bit
à la longueur de la clé, l'espace de clés double et l'attaquant a besoin de deux fois plus de
temps pour rechercher l'espace de clé. La figure résume le nombre de clés possibles créées
en ajoutant des bits supplémentaires. Par exemple, l'ajout de 1 bit à 56 bits (ie, 57 bits)
double le nombre de clés. L'ajout d'un bit supplémentaire à une taille de clé de 57 bits
signifie qu'il faudrait maintenant à un attaquant quatre fois plus de temps pour rechercher
dans l'espace de clé. Ajouter 4 bits de plus à 56 bits créerait une clé de 60 bits. Une clé de 60
bits prendrait 16 fois plus de temps à craquer qu'une clé de 56 bits.
Remarque : les clés plus longues sont plus sécurisées. Cependant, ils sont aussi plus
gourmandes en ressources. Des précautions doivent être prises lors de l'utilisation de clés
plus longues, car leur manipulation peut ajouter une charge importante au processeur dans
les produits bas de gamme.
Presque tous les algorithmes ont des clés faibles dans leur espace de clés qui permettent à
un attaquant de casser le cryptage via un raccourci. Les clés faibles montrent les régularités
dans le cryptage. Par exemple, DES a quatre clés pour lesquelles le cryptage est le même que
le décryptage. Cela signifie que si l'une de ces clés faibles est utilisée pour crypter le texte en
clair, un attaquant peut utiliser la clé faible pour déchiffrer le texte chiffré et révéler le texte
en clair.
Les clés faibles DES sont celles qui produisent 16 sous-clés identiques. Cela se produit
lorsque les bits de clé sont:
• Alternant les uns et les zéros (0101010101010101)
• Alternance F et E (FEFEFEFEFEFEFEFE)
• E0E0E0E0F1F1F1F1
• 1F1F1F1F0E0E0E0E
Il est très improbable que de telles clés soient choisies, mais les administrateurs réseau
doivent toujours vérifier toutes les clés implémentées et empêcher l'utilisation de clés
faibles. Avec la génération manuelle des clés, veillez à ne pas définir l’une de ces clés faibles.
Diapositive 45
• Clés asymétriques
• Signatures numériques
• Clés de hachage
La performance est un autre problème qui peut influencer le choix d'une longueur de clé. Un
administrateur doit trouver un bon équilibre entre la vitesse et la force de protection d'un
algorithme, car certains algorithmes, tels que l'algorithme Rivest, Shamir et Adleman (RSA),
s'exécutent lentement en raison des longueurs de clé importantes. Efforcez-vous d'une
protection adéquate, tout en permettant la communication sur des réseaux non fiables.
Le financement estimé de l'attaquant devrait également affecter le choix de la longueur de la
clé. Lors de l'évaluation du risque que quelqu'un brise l'algorithme de chiffrement, estimez
les ressources de l'attaquant et la durée de protection des données. En raison des progrès
rapides de la technologie et des méthodes cryptanalytiques, la longueur de clé nécessaire
pour une application particulière augmente constamment. Par exemple, une partie de la
force de l'algorithme RSA est la difficulté de factoriser de grands nombres où les facteurs
sont les nombres qui sont multipliés ensemble pour obtenir un autre nombre. Par exemple,
les facteurs de 12 seraient 1 x 12, 2 x 6 et 3 x 4. Par conséquent, un nombre de 1024 bits est
un nombre inimaginablement grand avec de nombreux facteurs. L'augmentation de ce
nombre à 2048 bits crée encore plus de facteurs. Bien sûr, cet avantage est perdu si un
moyen facile de factoriser les grands nombres est trouvé, mais les cryptographes considèrent
cette possibilité peu probable. La règle "plus la clé est longue, mieux c'est", sauf pour
d'éventuelles raisons de performance.
Diapositive 47
Pour aider à comprendre les différences entre les deux types d'algorithmes, considérons un
exemple où Alice et Bob vivent dans des endroits différents et veulent échanger des
messages secrets entre eux par le biais du système de messagerie. Dans cet exemple, Alice
veut envoyer un message secret à Bob.
Dans l'exemple d'algorithme symétrique de la figure 1, Alice et Bob ont des clés identiques à
un seul cadenas. Ces clés ont été échangées avant d'envoyer des messages secrets. Alice
écrit un message secret et le met dans une petite boîte qu'elle verrouille en utilisant le
cadenas avec sa clé. Elle envoie la boîte à Bob. Le message est verrouillé en toute sécurité à
l'intérieur de la boîte pendant que la boîte se fraye un chemin à travers le système de bureau
de poste. Lorsque Bob reçoit la boîte, il utilise sa clé pour déverrouiller le cadenas et
récupérer le message. Bob peut utiliser la même boîte et le même cadenas pour envoyer une
réponse secrète à Alice.
Dans l'exemple d'algorithme asymétrique de la figure 2, Bob et Alice n'échangent pas de clés
avant d'envoyer des messages secrets. Au lieu de cela, Bob et Alice ont chacun un cadenas
séparé avec des clés correspondantes séparées. Pour qu'Alice envoie un message secret à
Bob, elle doit d'abord le contacter et lui demander de lui envoyer son cadenas ouvert. Bob
envoie le cadenas mais conserve sa clé. Quand Alice reçoit le cadenas, elle écrit son message
secret et le met dans une petite boîte. Elle met également son cadenas ouvert dans la boîte
mais conserve sa clé. Elle verrouille ensuite la boîte avec le cadenas de Bob. Quand Alice
verrouille la boîte, elle ne peut plus entrer parce qu'elle n'a pas de clé pour ce cadenas. Elle
envoie la boîte à Bob. Comme la boîte est envoyée via le système de messagerie, personne
n'est en mesure d'ouvrir la boîte. Quand Bob reçoit la boîte, il peut utiliser sa clé pour
déverrouiller la boîte et récupérer le message d'Alice. Pour envoyer une réponse sécurisée,
Bob met son message secret dans la boîte avec son cadenas ouvert et verrouille la boîte en
utilisant le cadenas d'Alice. Bob renvoie la boîte sécurisée à Alice.
Diapositive 51
Les techniques les plus couramment utilisées dans la cryptographie à chiffrement symétrique
sont les chiffrements par bloc et les chiffrements par flux.
Chiffrement par Blocs
Les chiffrements par blocs transforment un bloc de texte clair de longueur fixe en un bloc
commun de texte chiffré de 64 ou 128 bits, comme le montre la Figure 1. La taille du bloc
désigne la quantité de données chiffrées à la fois. Actuellement, la taille du bloc, également
connue sous le nom de longueur fixe, pour de nombreux chiffrements de bloc est de 64 bits
ou de 128 bits. Ce texte chiffré est déchiffré en appliquant la transformation inverse au bloc
de texte chiffré, en utilisant la même clé secrète.
Les chiffrements par blocs aboutissent généralement à des données de sortie plus grandes
que les données d'entrée, car le texte chiffré doit être un multiple de la taille du bloc. Par
exemple, DES crypte les blocs en segments de 64 bits en utilisant une clé de 56 bits. Pour ce
faire, l'algorithme de bloc prend les données un morceau à la fois, par exemple, 8 octets par
bloc, jusqu'à ce que la taille du bloc entier soit pleine. S'il y a moins de données d'entrée
qu'un bloc complet, l'algorithme ajoute des données artificielles, ou des blancs, jusqu'à ce
que les 64 bits complets soient utilisés.
Les chiffrements par blocs communs incluent DES avec une taille de bloc de 64 bits et AES
avec une taille de bloc de 128 bits.
Chiffrement par flux
Contrairement aux chiffrements par blocs, les chiffrements par flux chiffrent le texte clair
octet par octet ou bit par bit, comme le montre la figure 2. Les chiffrements par flux peuvent
être considérés comme un chiffrement par bloc d'un bit. Les chiffrements par flux peuvent
être beaucoup plus rapides que les chiffrements par bloc, et n'augmentent généralement pas
la taille des messages, car ils peuvent chiffrer un nombre arbitraire de bits.
Le chiffrement de Vigenère est un exemple de chiffrement par flux. Ce chiffrement est
périodique car la clé est de longueur finie et la clé est répétée si elle est plus courte que le
message.
Les chiffrements par flux courants comprennent A5, qui est utilisé pour chiffrer les
communications de téléphonie cellulaire GSM, et le chiffrement RC4. DES peut également
être utilisé en mode de chiffrement par flux.
Diapositive 53
Le choix d'un algorithme de cryptage est l'une des décisions les plus importantes qu'un
professionnel de la sécurité réseau prend lors de la construction d'un système
cryptographique.
La figure résume les deux principaux critères à prendre en compte lors de la sélection d'un
algorithme de chiffrement pour une organisation:
• L'algorithme est approuvé par la communauté cryptographique - La plupart des
nouveaux algorithmes sont rompus très rapidement, de sorte que les algorithmes qui ont
résisté aux attaques pendant un certain nombre d'années sont préférés.
• L'algorithme protège efficacement contre les attaques par force brute - Un bon
algorithme cryptographique est conçu de telle sorte qu'il résiste aux attaques
cryptographiques courantes. La meilleure façon de casser les données protégées par
l'algorithme est d'essayer de déchiffrer les données en utilisant toutes les clés possibles. Si
l'algorithme est considéré comme fiable, il n'y a pas de raccourci pour le rompre, et
l'attaquant doit chercher dans l'espace-clé pour deviner la bonne clé. L'algorithme doit
permettre des longueurs de clé qui satisfont aux exigences de confidentialité d'une
organisation. Par exemple, le DES n'offre pas une protection suffisante pour les besoins les
plus modernes en raison de sa courte clé.
Autres critères à prendre en compte:
• L'algorithme prend en charge les longueurs de clé variables et longues et l'évolutivité -
Les longueurs de clé variable et l'évolutivité sont également des attributs souhaitables
d'un bon algorithme de chiffrement. Plus la clé de cryptage est longue, plus il faut du
temps à un attaquant pour la casser. L'évolutivité fournit une longueur de clé flexible et
permet à l'administrateur de sélectionner la force et la vitesse du cryptage requis.
• L'algorithme n'a pas de restrictions d'exportation ou d'importation. - Examinez
soigneusement les restrictions d'exportation et d'importation lors de l'utilisation du
chiffrement international. Certains pays n'autorisent pas l'exportation d'algorithmes de
chiffrement ou autorisent uniquement l'exportation de ces algorithmes avec des clés plus
courtes. Certains pays imposent des restrictions à l'importation sur les algorithmes
cryptographiques.
Diapositive 54
Diapositive 55
Data Encryption Standard (DES) est un algorithme de chiffrement symétrique hérité qui
fonctionne généralement en mode bloc en chiffrant les données dans des blocs de 64
bits. L'algorithme DES est essentiellement une suite de permutations et de substitutions de
bits de données associée à une clé de chiffrement. Le même algorithme et la même clé sont
utilisés pour le chiffrement et le déchiffrement.
• DES a une longueur de clé fixe. La clé a une longueur de 64 bits, mais seulement 56 bits
sont utilisés pour le chiffrement. Les 8 bits restants sont utilisés pour la parité afin de
vérifier l'intégrité de la clé. Le bit le moins significatif de chaque octet de la clé est utilisé
pour indiquer la parité impaire.
• Une clé DES a toujours une longueur de 56 bits. Lorsque DES est utilisé avec un cryptage
plus faible d'une clé de 40 bits, la clé de cryptage est de 40 bits secrets et de 16 bits
connus, ce qui fait que la longueur de la clé est de 56 bits. Dans ce cas, le DES a une force
de clé de 40 bits.
Diapositive 56
DES ne devrait plus être utilisé pour protéger les réseaux de production. Toutefois, si les
périphériques ne peuvent pas prendre en charge des algorithmes de chiffrement plus
sécurisés, plusieurs points doivent être pris en compte lors de la sécurisation des données
cryptées avec DES:
Remarque : En raison de sa longueur de clé courte, DES est acceptable pour protéger les
données pendant une très courte période. Lorsque cela est possible, utilisez 3DES ou AES car
ils offrent plus de sécurité pour protéger les données.
Diapositive 57
Avec les progrès de la puissance de traitement informatique, la clé DES originale à 56 bits est
devenue trop courte pour résister à une attaque de la part de ceux qui avaient un budget de
taille moyenne pour la technologie de piratage. Une façon d'augmenter la longueur de clé
DES, sans modifier l'algorithme bien analysé lui-même, consiste à utiliser le même
algorithme avec des clés différentes plusieurs fois de suite.
La technique consistant à appliquer le DES trois fois de suite à un bloc de texte en clair
s'appelle 3DES. Aujourd'hui, les attaques par force brute sur 3DES sont considérées comme
infaisables car l'algorithme de base a été testé sur le terrain depuis plus de 35 ans. Il est
considéré comme très digne de confiance.
Bien que 3DES soit très sécurisé, il nécessite également beaucoup de ressources. Pour mieux
gérer les ressources, l'algorithme de chiffrement AES a été développé. AES est aussi sécurisé
que 3DES et beaucoup plus rapide.
Diapositive 59
En 1997, l'initiative AES a été annoncée et le public a été invité à proposer des systèmes de
cryptage pour remplacer le DES. Après un processus de normalisation de cinq ans au cours
duquel 15 conceptions concurrentes ont été présentées et évaluées, l'Institut national
américain des normes et de la technologie (NIST) a choisi le chiffrement par blocs de Rijndael
comme algorithme AES.
Le chiffre Rijndael, développé par Joan Daemen et Vincent Rijmen, a une longueur de bloc
variable et une longueur de clé variable. Rijndael est un chiffrement de bloc itéré, ce qui
signifie que le bloc d'entrée initial et la clé de chiffrement subissent plusieurs cycles de
transformation avant de produire une sortie. L'algorithme peut fonctionner sur un bloc de
longueur variable en utilisant des clés de longueur variable. Une clé de 128, 192 ou 256 bits
peut être utilisée pour chiffrer des blocs de données de 128, 192 ou 256 bits, et les neuf
combinaisons de longueur de clé et de bloc sont possibles.
L'implémentation AES acceptée de Rijndael ne contient que quelques-unes des capacités de
l'algorithme de Rijndael. L'algorithme est écrit de sorte que la longueur du bloc, ou la
longueur de la clé, ou les deux, peuvent facilement être étendus par multiples de 32 bits, et
le système est spécifiquement conçu pour une implémentation efficace dans une gamme de
processeurs.
L'algorithme AES a été analysé intensivement et est maintenant utilisé dans le monde
entier. Bien qu'il n'ait pas été prouvé dans l'utilisation quotidienne au même degré que 3DES,
AES avec le chiffre de Rijndael est l'algorithme le plus efficace des deux. Il peut être utilisé
dans des environnements à haut débit et à faible latence, en particulier lorsque 3DES ne peut
pas gérer les exigences de débit ou de latence. AES devrait gagner la confiance au fil du
temps, et plus d'attaques ont été tentées contre lui.
Diapositive 60
AES a été choisi pour remplacer le DES pour plusieurs raisons. La longueur de clé d'AES rend
la clé beaucoup plus forte que DES. AES s'exécute plus rapidement que 3DES sur un matériel
comparable. AES est plus efficace que DES et 3DES sur un matériel comparable,
généralement par un facteur de cinq lorsqu'il est comparé à DES. AES est plus approprié pour
les environnements à haut débit et à faible latence, en particulier si un cryptage logiciel pur
est utilisé.
Malgré ces avantages, AES est un algorithme relativement jeune. La règle d'or de la
cryptographie stipule qu'un algorithme mature est toujours plus fiable. 3DES est donc un
choix plus fiable en termes de force car il a été testé et analysé pendant 35 ans.
Diapositive 61
Diapositive 62
L'algorithme de chiffrement optimisé par logiciel (SEAL) est un algorithme alternatif au DES,
3DES et AES basé sur logiciel. Phillip Rogaway et Don Coppersmith ont conçu SEAL en 1993. Il
s'agit d'un chiffrement de flux qui utilise une clé de chiffrement de 160 bits. Comme il s'agit
d'un chiffrement de flux, les données à chiffrer sont cryptées en permanence. Cela le rend
beaucoup plus rapide que le chiffrement par blocs.
SEAL a un impact plus faible sur le CPU par rapport à d'autres algorithmes
logiciels. Cependant, il a une phase d'initialisation plus longue au cours de laquelle un grand
ensemble de tables est créé en utilisant SHA.
Diapositive 63
Les algorithmes RC ont été conçus en tout ou en partie par Ronald Rivest, qui a également
inventé MD5. Les algorithmes RC sont largement déployés dans de nombreuses applications
de réseau en raison de leur vitesse favorable et de leurs capacités de longueur de clé
variable.
Il existe un certain nombre d'algorithmes RC largement utilisés:
• RC2 - Il s'agit d'un chiffrement de bloc de taille de clé variable qui a été conçu comme un
remplacement «drop-in» pour DES.
• RC4 - C'est le chiffrement de flux le plus utilisé au monde. Cet algorithme est un
chiffrement de flux Vernam à taille de clé variable qui est souvent utilisé dans les produits
de chiffrement de fichiers et pour les communications sécurisées, telles que SSL. Il n'est
pas considéré comme un tampon unique car sa clé n'est pas aléatoire. On peut s'attendre
à ce que le chiffrement fonctionne très rapidement dans le logiciel et soit considéré
comme sécurisé, bien qu'il puisse être mis en œuvre de manière non sécurisée, comme
dans WEP (Wired Equivalent Privacy).
• RC5 - C’est un chiffrement de bloc rapide qui a une taille de bloc variable et une longueur
de clé varaible. RC5 peut être utilisé comme remplacement de DES si la taille du bloc est
définie sur 64 bits.
• RC6 - Il a été développé en 1997. RC6 était un finaliste d'AES. Il s'agit d'un chiffrement de
bloc de 128 bits à 256 bits conçu par Rivest, Sidney et Yin. Il est basé sur RC5 et a été
conçu pour répondre aux exigences d'AES.
Remarque : En général, les algorithmes RC sont considérés comme faibles et doivent être
évités.
Diapositive 64
Diapositive 65
Whitfield Diffie et Martin Hellman ont inventé l'algorithme Diffie-Hellman (DH) en 1976.
L'algorithme DH est la base de la plupart des méthodes modernes d'échange de clés
automatiques, et est l'un des protocoles les plus couramment utilisés dans les réseaux
aujourd'hui. Diffie-Hellman n'est pas un mécanisme de chiffrement et n'est généralement
pas utilisé pour chiffrer les données. Au lieu de cela, c'est une méthode pour échanger en
toute sécurité les clés qui chiffrent les données.
Dans un système à clé symétrique, les deux côtés de la communication doivent avoir des clés
identiques. L'échange sécurisé de ces clés a toujours été un défi. Les systèmes de clés
asymétriques répondent à ce défi car ils utilisent deux clés. Une clé est appelée clé privée et
l'autre est la clé publique. La clé privée est secrète et connue uniquement de l'utilisateur. La
clé publique est ouvertement partagée et facilement distribuée.
DH est un algorithme mathématique qui permet à deux ordinateurs de générer un secret
partagé identique sur les deux systèmes, sans avoir préalablement communiqué. La nouvelle
clé partagée n'est jamais réellement échangée entre l'expéditeur et le
destinataire. Cependant, parce que les deux parties le savent, la clé peut être utilisée par un
algorithme de cryptage pour crypter le trafic entre les deux systèmes.
La sécurité de DH est basée sur le fait qu'il utilise des nombres incroyablement grands dans
ses calculs. Par exemple, un nombre DH 1024 bits est à peu près égal à un nombre décimal
de 309 chiffres. Considérant qu'un milliard est de 10 chiffres décimaux (1 000 000 000), on
peut facilement imaginer la complexité de travailler avec pas un, mais plusieurs nombres
décimaux de 309 chiffres.
DH est couramment utilisé lorsque les données sont échangées à l'aide d'un VPN IPsec,
lorsque les données sont cryptées sur Internet en utilisant SSL ou TLS, ou lorsque des
données SSH sont échangées.
Malheureusement, les systèmes de clés asymétriques sont extrêmement lents pour tout type
de cryptage en masse. C'est pourquoi il est courant de chiffrer la majeure partie du trafic en
utilisant un algorithme symétrique, tel que 3DES ou AES, et d'utiliser l'algorithme DH pour
créer des clés qui seront utilisées par l'algorithme de chiffrement.
Diapositive 66
Étape 1. Pour commencer un échange DH, Alice et Bob doivent se mettre d'accord sur deux
nombres non-secrets. Le premier nombre, g, est un nombre de base, également appelé le
générateur. Le deuxième nombre, p, est un nombre premier qui est utilisé comme
module. Ces nombres de base et nombres premiers sont généralement publics et sont
choisis parmi une table de valeurs connues. Généralement, g est un très petit nombre, et p
est un nombre premier plus grand. Dans le graphique g = 5 et p = 23. Notez que dans notre
exemple, nous utilisons de petits nombres pour le rendre plus facile à comprendre. DH utilise
des nombres beaucoup plus grands.
Étape 2. Alice génère un nombre secret 6 et Bob génère son numéro secret 15.
Étape 3. Basé sur g, p, et le nombre secret d'Alice, Alice calcule en utilisant l'arithmétique
modulaire qui crée une valeur publique de 8 en utilisant l'algorithme DH. Elle envoie sa
valeur publique à Bob.
Étape 4. Bob calcule une valeur publique en utilisant g, p et son numéro secret. Bob envoie
sa valeur publique de 19 à Alice. Notez que ces valeurs ne sont pas identiques.
Étape 5. Alice exécute un deuxième algorithme DH en utilisant la valeur publique de Bob
comme nouveau numéro de base.
Étape 6. Bob exécute un deuxième algorithme DH en utilisant la valeur publique d'Alice
comme nouveau numéro de base.
Alice et Bob arrivent au même résultat (2). Cette nouvelle valeur est maintenant un secret
partagé entre Alice et Bob et peut être utilisée par un algorithme de chiffrement comme une
clé secrète partagée entre eux.
Toute personne écoutant sur le canal ne peut pas calculer la valeur secrète car seules les
valeurs publiques sont connues, et au moins une valeur secrète est nécessaire pour calculer
le secret partagé. À moins que les attaquants ne puissent calculer l'algorithme discret de
l'équation pour récupérer le nombre secret d'Alice ou de Bob, ils ne peuvent pas obtenir le
secret partagé.
Bien que DH soit utilisé avec des algorithmes symétriques pour créer des clés partagées, il
est important de se rappeler qu'il s'agit en fait d'un algorithme asymétrique.
Diapositive 67
Les algorithmes asymétriques, également appelés algorithmes à clé publique, sont conçus
pour que la clé utilisée pour le chiffrement soit différente de la clé utilisée pour le
déchiffrement.
Dans l'exemple d'Alice et Bob, ils n'ont pas échangé de clés pré-partagées avant la
communication. Au lieu de cela, ils avaient chacun des cadenas séparés et des clés
correspondantes, comme le montre la figure. De la même manière, des algorithmes
asymétriques sont utilisés pour échanger des messages secrets sans avoir jamais eu un
secret partagé avant l'échange.
Quatre protocoles utilisent des algorithmes à clés asymétriques:
• Internet Key Exchange (IKE), qui est un composant fondamental des VPN IPsec.
• Secure Socket Layer (SSL), qui est maintenant implémenté en tant que TLS standard IETF.
• Secure Shell (SSH), qui est un protocole qui fournit une connexion d'accès à distance
sécurisée aux périphériques réseau.
• Pretty Good Privacy (PGP), qui est un programme informatique qui fournit une
confidentialité et une authentification cryptographiques et qui est souvent utilisé pour
augmenter la sécurité des communications par courrier électronique.
Les algorithmes asymétriques utilisent deux clés: une clé publique et une clé privée. Les deux
clés sont capables du processus de cryptage, mais la clé correspondante complémentaire est
requise pour le déchiffrement. Par exemple, si une clé publique crypte les données, la clé
privée correspondante déchiffre les données. L'inverse est également vrai. Si une clé privée
crypte les données, la clé publique correspondante déchiffre les données.
Ce processus permet aux algorithmes asymétriques d'assurer la confidentialité,
l'authentification et l'intégrité.
Ce sont les caractéristiques des clés asymétriques:
• La longueur de clé typique est de 512 à 4096 bits.
• Les longueurs de clé supérieures ou égales à 1 024 bits peuvent être approuvées.
• Les longueurs de clé inférieures à 1 024 bits sont considérées comme non fiables pour la
plupart des algorithmes.
Diapositive 70
Lorsque la clé privée est utilisée pour chiffrer les données, la clé publique correspondante
doit être utilisée pour déchiffrer les données. Parce qu'un seul hôte a la clé privée, seul cet
hôte aurait pu crypter le message, fournissant l'authentification de l'expéditeur. Lorsqu'un
hôte déchiffre un message avec succès à l'aide d'une clé publique, il est sûr que la clé privée
a crypté le message, ce qui vérifie qui est l'expéditeur. C'est une forme d'authentification.
Par exemple, Alice crypte un message en utilisant sa clé privée. Alice envoie le message
crypté à Bob. Bob doit s‘assurer que le message vient effectivement d'Alice. Par conséquent,
Bob demande la clé publique d'Alice. Ensuite Bob utilise la clé publique d'Alice pour
déchiffrer le message.
Diapositive 72
Dans la figure 1, Bob utilise la clé publique d'Alice pour vérifier que le message n'a pas été
modifié. Le hachage reçu est égal au hachage déterminé localement basé sur la clé publique
d'Alice. En outre, cela vérifie qu'Alice est définitivement l'expéditeur du message car
personne d'autre n'a la clé privée d'Alice. Enfin, sur la figure 2, Bob utilise sa clé privée pour
déchiffrer le message.
En envoyant un message qui a été chiffré en utilisant la clé publique de Bob et un hachage
chiffré qui a été chiffré en utilisant la clé privée d'Alice, la confidentialité, l'authentification et
l'intégrité sont assurées.
Diapositive 74
Bien que les mathématiques diffèrent, ces algorithmes ont tous une chose en commun; ils
nécessitent des calculs compliqués. Leur conception est basée sur des problèmes de calcul,
tels que l'affacturage de nombres extrêmement grands ou le calcul de logarithmes discrets
de très grands nombres. En conséquence, le calcul prend plus de temps pour les algorithmes
asymétriques. En fait, les algorithmes asymétriques peuvent prendre jusqu'à 1000 fois plus
de temps à calculer que les algorithmes symétriques. Parce qu'ils manquent de rapidité, les
algorithmes asymétriques sont généralement utilisés dans les transactions à faible volume,
comme lorsqu'un utilisateur se connecte à sa banque en ligne pour vérifier son solde ou
lorsqu'il effectue des achats en ligne. Ils sont également utilisés pour créer des signatures
numériques.
La gestion des clés des algorithmes asymétriques a tendance à être plus simple que celle des
algorithmes symétriques parce que généralement l'une des deux clés de chiffrement ou de
déchiffrement peut être rendue publique.
Remarque : Ne comparez pas la longueur de clé des algorithmes asymétriques et
symétriques car la conception sous-jacente des deux familles d'algorithmes diffère
grandement. Par exemple, une clé de cryptage RSA de 2 048 bits est à peu près équivalente à
une clé RC4 de 128 bits en termes de résistance contre les attaques par force brute.
Diapositive 75
Diapositive 76
● Clés obtenues
– Clé publique : (e,n)
– Clé privée : (d,n)
● Cryptage et décryptage
– Cryptage : y = xe mod n
– Décryptage : x = yd mod n
Diapositive 79
● p = 7 et q = 19
● n = 7 * 19 = 133
● m = (p-1) * (q-1) = 6 * 18 = 108
● Choix de e premier avec m PGCD(2,108) = 2 ; PGCD(3,108) = 3 ;
PGCD(4,108) = 4 ; PGCD(5,108) = 1 → e = 5
● Détermination de d tel que d.e mod m = 1 Autrement dit, il existe
k tel que d = (1+km) / e k = 0 → d = 1/5 ; k = 1 → d = 109/5 ; k = 2
→ d = 217/5 ; k = 3 → d = 325/5 = 65
● Clé publique : (n = 133 ; e = 5)
● Clé privée : (n = 133 ; d = 65)
Diapositive 80
● n = 133 ; e = 5 ; d = 65
● Supposons qu'on cherche à transmettre x = 6
● Cryptage y = xe mod n = 65 mod 133 = 7776 mod 133 = 62
● Décryptage x = yd mod n = 6265 mod 133 = 62 * 6264 mod 133
= 62 * (622 )32 mod 133 = 62 * (3884)32 mod 133 = 62 * (3884
mod 133)32 mod 133 = 62 * 12032 mod 133 = 62 * 3616 mod
133 = 62 * 998 mod 133 = 62 * 924 mod 133 = 62 * 852 mod 133 =
62 * 43 mod 133 = 2666 mod 133 = 6