SlideShare une entreprise Scribd logo
1  sur  37
Groupe Ecoles Abidjan
Dr DIALLO Mohamed
diallo.med@gmail.com
Janvier 2017
Cryptologie
Plan de l’intervention
1. Un peu d’histoire
2. Bases théoriques de la cryptologie
3. Questions
Janvier 2017
Janvier 2017
• Les termes cryptographie et cryptologie ont pour étymologie kruptos : caché et
graphein : écrire ou logos : science.
• C'est un domaine qui cultive les paradoxes. Plusieurs fois millénaire, la cryptologie
n’a véritablement acquis un statut de science qu’au sortir de la seconde guerre
mondiale.
• Quelle est sa nature ? un art, une technique, une science ? Pour Jacques Stern,
elle fût successivement les trois :
• l'aire artisanale : des débuts de l’écriture à la première guerre mondiale
• l'aire technique : de l'entre deux guerre jusqu'au années 50/60
• l'aire scientifique : depuis les années 1960
Introduction
Eléments de terminologie
• Les termes cryptologie et cryptographie sont pratiquement équivalents. Les
puristes réservent le premier pour désigner le domaine scientifique alors qu'ils
emploient le second pour désigner les moyens et méthodes mis en œuvre dans
ce cadre.
• Le chiffrement ou chiffrer, est l'action qui permet de passer d'un message
intelligible ou clair à sa forme protégée : le message chiffré.
• Le déchiffrement ou déchiffrer, est l’opération inverse qui permet de passer
d'un message chiffré à un message clair.
• Le décryptement ou décrypter, est une opération qui produit un résultat
similaire au déchiffrement mais qui est réalisé sans disposer initialement du
secret permettant de passer du message chiffré au message en clair. La
cryptanalyse est la branche de la cryptologie dédiée aux opérations de
décryptement.
• Remarque crypter est un anglicisme qui n'existe pas ... officiellement en
Français. Il est cependant de plus en plus utilisé.
Janvier 2017
Un peu d’histoire
Janvier 2017
Une première trace historique
• Environ 500 ans avant J-‐C, Hérote rapporte que Histiée, retenu par Darius à
Suse, envoya un esclave à Aristagoras de Milet. Arrivé à destination l’esclave
avait pour consigne de déclarer : « Rase-moi le crâne ». Aristogoras fit venir un
barbier, sur le crane rasé de l’esclave il put alors lire la phrase tatouée :
«Histiée conseille à Aristogoras de se révolter contre les Perses ».
• Ce procédé présente une certaine fiabilité : l’interception du message par un
tiers est forcément remarquée.
• Mais il demande un temps particulièrement long : il faut raser et tatouer un
esclave puis attendre la repousse de ses cheveux.
Janvier 2017
La scytale: Une première forme de
transposition
• Utilisé dès le Veme siècle avant JC. Elle fonctionne selon un principe de
transposition.
• Le message est rédigé sur une lanière enroulée autour d'un cylindre de
diamètre prédéterminé, la scytale. La lanière est transportée jusqu’à son
destinataire qui peut alors déchiffrer le message grâce à une scytale de même
dimension.
• La cryptanalyse d'une telle méthode de chiffrement s’avère très simple.
Janvier 2017
Sourcewikipédia
Le code César une des premières formes de
substitution
• Le code César doit son nom à Jules César qui l'utilisa abondamment dans ses
correspondances, il repose sur le principe de substitution.
• L’idée est de décaler les lettres de l'alphabet d'une valeur clé il s’agit d’une
substitution mono-‐alphabétique. César utilisait le chiffre 3 transformant les a en
d … et les z en c.
• Les substitutions alphabétiques sont à l'origine de très nombreuses méthodes
de chiffrement. Ce type de code est particulièrement faible, le chiffrement
n’affectant pas réellement les fréquences de distribution des lettres dans un
texte.
Janvier 2017Janvier 2017
Sourcewikipédia
Le chiffre de Vigenère, substitution poly-
alphabétique
• A la fin de la renaissance Trithème, Bellaso, Della Porta et Vigenère décrivent
des systèmes de chiffrement poly-alphabétiques où les substitutions sont
réalisées non plus à partir d’une valeur unique comme avec le code César
mais sur un ensemble de valeurs composant la clé. La description de leur
système est accompagnée d’une table facilitant la mise en œuvre du
mécanisme
• Ce principe demeurera inviolable près de 300 ans.
Janvier 2017
Le chiffre de Vigenère
Janvier 2017
M E S S A G E C L A I R
V I G E N E R E V I G N
H M Y W N K V G G I O V
Chiffré
Clair
Clé Chiffré
Clair
Clé
Chiffrement Déchiffrement
Sourcewikipédia
Procédé autoclave
• Le chiffre de Vigenère sera très rapidement amélioré par le procédé
«autoclave» qui consiste à compléter la clé par le texte clair au lieu de la répéter.
Cette technique complexifie les tentatives de cryptanalyse … pour peu que la clé
ait, de base, une certaine longueur.
• Son principal défaut est que toute erreur de transmission du message chiffré
le rend quasiment indéchiffrable
Janvier 2017
M E S S A G E C L A I R
V I G E N E R E M E S A
H M Y W N K V G X E A R
Babbage: la cryptanalyse du chiffre de
Vigenère
• Au milieu des années 1850 Charles Babbage réalise la crytanalyse du chiffre de
Vigenère … mais ne publie pas sa découverte qui reviendra en 1863 à un
officier prussien Friedrich Kasiski.
• Le chiffre de Vigenère «lisse» les fréquences d’apparition des lettres dans le
texte chiffré.
Janvier 2017
Cryptanalyse du chiffre de Vigenère (Suite)
• Mais Babbage remarque que l’on peut traiter le problème en se basant sur les
répétitions de groupes de lettres pour en déduire le nombre de facteurs de la
clef. Puis par une méthode de fréquence de distribution des lettres chiffrées il
devient ensuite possible de déduire les lettres du texte clair.
Janvier 2017
http://bit.ly/2iqcZrY
Vernam: l’introduction du masque jetable
• Le masque jetable est le seul algorithme de chiffrement indécryptable. C'est
un chiffre de Vigenère réalisé avec une clef aléatoire, à usage unique et de
même longueur que le message clair.
• Le système du masque jetable fut inventé par Gilbert Vernam en 1917, puis
perfectionné par le major Joseph O. Mauborgne.
• Il pose cependant des difficultés particulièrement lourdes de génération, de
diffusion et d’usage des clés
Janvier 2017
http://bit.ly/2iqcZrY
M E S S A G E C L A I R
A S E E X C W L M P Z A
M W W W X I A N X P H R
Sourcewikipédia
Janvier 2017
Shannon: la preuve formelle du masque
jetable
• La notion de sécurité sémantique ou inconditionnelle est introduite par Claude
Shannon, dans son article Communication theory of secrecy systems paru en
1949.
• Shannon prouve que le système du masque jetable est
inconditionnellement sûr : si l’on ne dispose que du message chiffré, il est
impossible de déduire une information quelconque sur le message en clair.
• 60 ans plus tard Le masque jetable demeure le seul système dont la sécurité
inconditionnelle est prouvée. Il jouera, pour cette raison, un rôle important dans
les échanges diplomatiques de la guerre froide au travers du «
téléphone rouge » déployé dès 1963
Janvier 2017Janvier 2017Sourcewikipédia
http://bit.ly/2iShKvw
Principe du chiffrement symétrique
• Utilise la même clé pour chiffrer et déchiffrer le message
• Les méthodes de chiffrement peuvent être extrêmement
efficace, nécessitant un traitement minimal
• Aussi bien l’émetteur et le récepteur doit posséder la clé de
chiffrement
• Si une des copies de la clé est compromise, un intermédiaire
peut déchiffrer et lire les messages
Janvier 2017
Chiffrement Symétrique
Janvier 2017
Canal sûr
Une nouvelle approche du chiffrement
• Depuis l’antiquité le chiffrement symétrique à été
largement utilisé.
• Une approcheradicalement nouvelle à vue le jour à la
fin des années 1970 : le chiffrement asymétrique
Janvier 2017
Chiffrement asymétrique
• Le concept de cryptographie asymétrique ou à clé publique est dû à W. Diffie et à M.
Hellman qui publient en 1976 New Directions in Cryptography. Ils ne proposent
cependant pas de moyen pratique pour la mise en œuvre de cette approche où
chiffrement et déchiffrement ne sont pas réalisés à partir de la même clé.
• Le principe : afin de communiquer avec Bernard, Alice chiffre un message avec la clé
publique de Bernard seul celui-‐cisera alors en mesure de le déchiffrer avec sa clé Privée.
• L’algorithme RSA proposé en 1977 par Ron Rivest, Adi Shamir et Len Adleman met
concrètement en application le principe de cryptologie asymétrique. Il repose sur
l’arithmétique des nombres premiers et des opérations d’exponentiation modulaire
• Aujourd’hui le chiffrement asymétrique est employé quotidiennement. Mais sous
forme mixte, en association avec des procédés symétriques tels que AES. Le chiffrement
asymétrique présente, en effet, un faible rendement et de forts besoins en ressources de
calcul.
Janvier 2017
Principes du chiffrement à clé publique
Janvier 2017
• Chaque individu dispose de deux clés:
– Une clé privée: qui ne doit être connu de personne
– Une clé publique: qui peut être connu de tous
Msg clair
Msg chiffré Msg clair
Msg chiffré
déchiffrement
chiffrement
Private key
Clé publique
Bases théoriques de la
cryptologie
Janvier 2017
Notion de complexité algorithmique
• La sécurité des systèmes cryptographiques modernes repose sur
le fait que les méthodes de cryptanalyses qui leur sont
applicables imposent des calculs qui demeurent, en pratique,
hors de notre portée de par leur complexité.
• Exemples de complexité algorithmique en fonction de la taille des
données n ( durée relative pour n=106 ):
• Θ(1) complexité constante, accès un élément de tableau : 10.10-‐9s,ns
• Θ(log(n)) complexité logarithmique, dichotomie : 60.10-‐9s
• Θ(n) complexité linéaire, parcours liste : 10.10-‐3s,ms
• Θ(nlog(n)) quasi-‐linéaire, quick sort : 60.10-‐3s
• Θ(np) complexité polynomiale, multiplication matricielle d'ordre n, n3 :
1010s ou 316 ans
• Θ(2n) complexité exponentielle, décomposition d’un entier en facteurs
premiers : n≈250 1075s ou 1060 ans
Janvier 2017
Algorithmes de Hachage
• Les algorithmes de hachage sont utilisés afin de calculer une
empreinte ou condensat d’un ensemble de données.
• Ils doivent répondre à des besoins distincts :
•Leur fonctionnement doit être rapide et peu consommateur
en ressources
•Les condensats doivent avoir une taille limitée : quelques
dizaines à centaines d’octets
•Les empreintes produites doivent minimiser les risques de
collisions : deux sources proches doivent produire des
empreintes éloignées.
Janvier 2017
Algorithme de Hachage (Suite)
• MD5 : empreintes de 128 bits, des vulnérabilités avérées depuis
la fin des années 1990. Son utilisation est a proscrire en
cryptologie mais pas forcément dans tous les domines de la
sécurité.
• SHA-‐1 : empreintes de 160 bits, des vulnérabilités récemment
décrites conduisent à privilégier la famille d’algorithmes SHA-‐2 sa
variante 512 voire SHA-‐3 dès qu’il sera disponible.
• La taille du message à traiter est amené, par padding, à un multiple de 512
• Pour chaque bloc de 512 bits 80 rondes de transformations réentrantes suivies de 80
tours de rotations et d’additions.
• Addition du résultat avec le vecteur initial. Lorsque tous les blocs ont été traités, les cinq
variables concaténées (5 × 32 = 160 bits) représentent la signature.
Janvier 2017
Schémas de Feistel
• Un schéma ou réseau de Feistel
est une construction utilisée
dans les algorithmes de
chiffrement par bloc. Utilisée
pour la première fois dans
Lucifer et DES, cette structure
offre divers avantages :
• Les processus de chiffrement et
de déchiffrement ont une
architecture très similaire.
• L'implémentation matérielle est
relativement simple à réaliser.
• Un réseau de Feistel repose sur des
principes simples de
permutations, substitutions,
échanges de blocs et une fonction
prenant en entrée une clé
intermédiaire à chaque étage.
Janvier 2017
Du DES à l’AES
• Dans les années 1960 de nouveaux besoins
d’usage de la cryptographie apparaissent dans
le domaine civil. Au début des années 1970,
Horst Feistel mène des recherches pour IBM
sur un chiffrement par blocs mixant
transpositions et substitutions. La famille des
algorithmes Lucifer sera à l’origine du Data
Encryption Standard, normalisé en 1976, après
des modifications imposées par la NSA.
• Le DES s’appuie sur des clés de chiffrement
symétriques de 56 bits Il sera complété par le
Triple‐DES doté de 3 clés de 56 bits mais d’une
force effective de 112 bits.
• AES sera normalisé en 2000 après un concours
public ouvert en 1997. Cet algorithme de
chiffrement symétrique par blocs peut gérer des
clés de 128, 192 et 256 bits. Il présente
d’importantes garanties sur sa fiabilité
• DES est un algorithme basé sur un
schéma de Feistel, il traite des blocs
de 64 bits avec une clé de 56 bits
complétée par 8 bits de parité (un par
octet).
• AES n'a pas subi, à ce jour, de
cryptanalyse. Rijndael a été conçu afin
de complexifier des méthodes
classiques comme la cryptanalyse
linéaire ou différentielle.
Janvier 2017
Notion de mode d’opération
• Les algorithmes de chiffrement par bloc se focalisent sur le
traitement d’un bloc de données. Or les messages clairs
dépassent majoritairement cette taille.
• Un mode d'opération est la l’algorithme employé afin de traiter la
succession des blocs clairs et chiffrés. Il existe de nombreux modes
d’opération correspondant à des performances et des niveaux de
sécurité différents, les plus couramment implémentés sont :
• Electronic Code Book, ECB
• Cipher Block Chaining, CBC
• Cipher Feedback, CFB
• Output Feedback, OFB
• CounTeR, CTR
Janvier 2017
Mode d’opération (Suite)
• L’exemple ci dessous met en exergue le faiblesses du mode ECB
par rapport au CBC sur le chiffrement simple d’une image
Janvier 2017
Sourcewikipédia ECB CBC
Comparaison modes ECB et CBC
Janvier 2017
ECB
CBC
Principes du RSA
• Choix de p et q deux premiers de grande taille:
• Calcul de n = p.q et de ф(n)=(p‐1).(q‐1) où ф(n) est l'indicatrice d'Euler
• Choix de e tel que e et ф(n) soient premiers entre eux
• Calcul de e.d ≡ 1 mod(ф(n)) ⇔ d ≡ e‐1 mod(ф(n)) , d est l'inverse modulaire de e
• Le couple (e, n) constitue la clé publique et (d, n) la clé privée
• Avec M un message clair et C son chiffre on a C = Me mod(n) et M=Cd mod(n).
• Exemple : Bernard calcule un bi-clé et diffuse sa clé publique
Choix p=31 et q=23 → n=31x23=713 ; ф(n)=(31-1)x(23‐1)=660
Choix e=7 valide car 7 et 660 n'ont pas de facteurs communs
On trouve: d=283
Janvier 2017
Principe du RSA (suite)
Janvier 2017
• Clé publique de Bernard (7, 713), diffusée.
• Clé privée de Bernard (283, 713) , Alice souhaite transmettre un message
protégé à Bernard : 123.
• Elle se procure la clé publique de Bernard (7,713) puis chiffre son message :
1237 mod(713) = 495
Remarque : elle ne PEUT PAS LE DECHIFFRER
• Bernard déchiffre le message avec sa clé́ privée : 495283 mod 713 = 123
La signature numérique
• Alice transmet un message
accompagné de son hachage
qu’elle a préalablement calculé
puis chiffré à l’aide de sa clé
privée. Le condensat ne pourra
être déchiffré qu’avec la clé
publique d’Alice, dont on est
assuré qu’elle est à l’origine du
chiffrement car Alice est la
seule à détenir sa clé privée.
• Si Bernard parvient à vérifier
que le condensat déchiffré, à
l’aide de la clé publique d’Alice,
correspond au condensat
recalculé du message il est,
alors, sûr que le message est
identique à celui qu’Alice à
transmis.
• Alice a réalisé une opération
de signature numérique,
Bernard en a vérifié
l’authenticité.
Janvier 2017
Echange de clé sûr avec Diffie-Hellman
Janvier 2017
Wikipédia.fr
Les risques en cryptologie
• De nombreux experts en cryptologie , dont Bruce Schneier,
distinguent trois niveaux de matérialisation des risques en la
matière:
• L’algorithme: le principe de base sur lequel repose le crypto-système
est-il fiable et éprouvé ?
• L’implémentation: la concrétisation technique de l’algorithme retenu
est-elle exempte d’erreurs ou d’omissions qui en diminuerait la
fiabilité ?
• L’usage: les conditions d’emploi du système ou les pratiques de ses
utilisateurs ne diminuent-elles pas la sécurité du système.
Janvier 2017
Importance de la longueur de clé
Janvier 2017
Pour s’entraîner pour le challenge
• https://cryptopals.com/
• https://uva.onlinejudge.org/
Janvier 2017
Références
Jean-Louis Brunel, Didier Martin, Jean-Pierre Yamin,
Cours CNAM RSX 112 - Sécurité et Réseaux.
Janvier 2017

Contenu connexe

Plus de Mohamed Diallo

Plus de Mohamed Diallo (6)

Cours 70 410 - J3
Cours 70 410 - J3Cours 70 410 - J3
Cours 70 410 - J3
 
Cours 70 410 - J2
Cours 70 410 - J2Cours 70 410 - J2
Cours 70 410 - J2
 
Cours 70 410-1
Cours 70 410-1Cours 70 410-1
Cours 70 410-1
 
Introduction au génie logiciel
Introduction au génie logicielIntroduction au génie logiciel
Introduction au génie logiciel
 
Techniques d’etudes et de recherche
Techniques d’etudes et de rechercheTechniques d’etudes et de recherche
Techniques d’etudes et de recherche
 
Introduction
IntroductionIntroduction
Introduction
 

Crypto-talk-gea-1401

  • 1. Groupe Ecoles Abidjan Dr DIALLO Mohamed diallo.med@gmail.com Janvier 2017 Cryptologie
  • 2. Plan de l’intervention 1. Un peu d’histoire 2. Bases théoriques de la cryptologie 3. Questions Janvier 2017
  • 3. Janvier 2017 • Les termes cryptographie et cryptologie ont pour étymologie kruptos : caché et graphein : écrire ou logos : science. • C'est un domaine qui cultive les paradoxes. Plusieurs fois millénaire, la cryptologie n’a véritablement acquis un statut de science qu’au sortir de la seconde guerre mondiale. • Quelle est sa nature ? un art, une technique, une science ? Pour Jacques Stern, elle fût successivement les trois : • l'aire artisanale : des débuts de l’écriture à la première guerre mondiale • l'aire technique : de l'entre deux guerre jusqu'au années 50/60 • l'aire scientifique : depuis les années 1960 Introduction
  • 4. Eléments de terminologie • Les termes cryptologie et cryptographie sont pratiquement équivalents. Les puristes réservent le premier pour désigner le domaine scientifique alors qu'ils emploient le second pour désigner les moyens et méthodes mis en œuvre dans ce cadre. • Le chiffrement ou chiffrer, est l'action qui permet de passer d'un message intelligible ou clair à sa forme protégée : le message chiffré. • Le déchiffrement ou déchiffrer, est l’opération inverse qui permet de passer d'un message chiffré à un message clair. • Le décryptement ou décrypter, est une opération qui produit un résultat similaire au déchiffrement mais qui est réalisé sans disposer initialement du secret permettant de passer du message chiffré au message en clair. La cryptanalyse est la branche de la cryptologie dédiée aux opérations de décryptement. • Remarque crypter est un anglicisme qui n'existe pas ... officiellement en Français. Il est cependant de plus en plus utilisé. Janvier 2017
  • 6. Une première trace historique • Environ 500 ans avant J-‐C, Hérote rapporte que Histiée, retenu par Darius à Suse, envoya un esclave à Aristagoras de Milet. Arrivé à destination l’esclave avait pour consigne de déclarer : « Rase-moi le crâne ». Aristogoras fit venir un barbier, sur le crane rasé de l’esclave il put alors lire la phrase tatouée : «Histiée conseille à Aristogoras de se révolter contre les Perses ». • Ce procédé présente une certaine fiabilité : l’interception du message par un tiers est forcément remarquée. • Mais il demande un temps particulièrement long : il faut raser et tatouer un esclave puis attendre la repousse de ses cheveux. Janvier 2017
  • 7. La scytale: Une première forme de transposition • Utilisé dès le Veme siècle avant JC. Elle fonctionne selon un principe de transposition. • Le message est rédigé sur une lanière enroulée autour d'un cylindre de diamètre prédéterminé, la scytale. La lanière est transportée jusqu’à son destinataire qui peut alors déchiffrer le message grâce à une scytale de même dimension. • La cryptanalyse d'une telle méthode de chiffrement s’avère très simple. Janvier 2017 Sourcewikipédia
  • 8. Le code César une des premières formes de substitution • Le code César doit son nom à Jules César qui l'utilisa abondamment dans ses correspondances, il repose sur le principe de substitution. • L’idée est de décaler les lettres de l'alphabet d'une valeur clé il s’agit d’une substitution mono-‐alphabétique. César utilisait le chiffre 3 transformant les a en d … et les z en c. • Les substitutions alphabétiques sont à l'origine de très nombreuses méthodes de chiffrement. Ce type de code est particulièrement faible, le chiffrement n’affectant pas réellement les fréquences de distribution des lettres dans un texte. Janvier 2017Janvier 2017 Sourcewikipédia
  • 9. Le chiffre de Vigenère, substitution poly- alphabétique • A la fin de la renaissance Trithème, Bellaso, Della Porta et Vigenère décrivent des systèmes de chiffrement poly-alphabétiques où les substitutions sont réalisées non plus à partir d’une valeur unique comme avec le code César mais sur un ensemble de valeurs composant la clé. La description de leur système est accompagnée d’une table facilitant la mise en œuvre du mécanisme • Ce principe demeurera inviolable près de 300 ans. Janvier 2017
  • 10. Le chiffre de Vigenère Janvier 2017 M E S S A G E C L A I R V I G E N E R E V I G N H M Y W N K V G G I O V Chiffré Clair Clé Chiffré Clair Clé Chiffrement Déchiffrement Sourcewikipédia
  • 11. Procédé autoclave • Le chiffre de Vigenère sera très rapidement amélioré par le procédé «autoclave» qui consiste à compléter la clé par le texte clair au lieu de la répéter. Cette technique complexifie les tentatives de cryptanalyse … pour peu que la clé ait, de base, une certaine longueur. • Son principal défaut est que toute erreur de transmission du message chiffré le rend quasiment indéchiffrable Janvier 2017 M E S S A G E C L A I R V I G E N E R E M E S A H M Y W N K V G X E A R
  • 12. Babbage: la cryptanalyse du chiffre de Vigenère • Au milieu des années 1850 Charles Babbage réalise la crytanalyse du chiffre de Vigenère … mais ne publie pas sa découverte qui reviendra en 1863 à un officier prussien Friedrich Kasiski. • Le chiffre de Vigenère «lisse» les fréquences d’apparition des lettres dans le texte chiffré. Janvier 2017
  • 13. Cryptanalyse du chiffre de Vigenère (Suite) • Mais Babbage remarque que l’on peut traiter le problème en se basant sur les répétitions de groupes de lettres pour en déduire le nombre de facteurs de la clef. Puis par une méthode de fréquence de distribution des lettres chiffrées il devient ensuite possible de déduire les lettres du texte clair. Janvier 2017 http://bit.ly/2iqcZrY
  • 14. Vernam: l’introduction du masque jetable • Le masque jetable est le seul algorithme de chiffrement indécryptable. C'est un chiffre de Vigenère réalisé avec une clef aléatoire, à usage unique et de même longueur que le message clair. • Le système du masque jetable fut inventé par Gilbert Vernam en 1917, puis perfectionné par le major Joseph O. Mauborgne. • Il pose cependant des difficultés particulièrement lourdes de génération, de diffusion et d’usage des clés Janvier 2017 http://bit.ly/2iqcZrY M E S S A G E C L A I R A S E E X C W L M P Z A M W W W X I A N X P H R Sourcewikipédia Janvier 2017
  • 15. Shannon: la preuve formelle du masque jetable • La notion de sécurité sémantique ou inconditionnelle est introduite par Claude Shannon, dans son article Communication theory of secrecy systems paru en 1949. • Shannon prouve que le système du masque jetable est inconditionnellement sûr : si l’on ne dispose que du message chiffré, il est impossible de déduire une information quelconque sur le message en clair. • 60 ans plus tard Le masque jetable demeure le seul système dont la sécurité inconditionnelle est prouvée. Il jouera, pour cette raison, un rôle important dans les échanges diplomatiques de la guerre froide au travers du « téléphone rouge » déployé dès 1963 Janvier 2017Janvier 2017Sourcewikipédia http://bit.ly/2iShKvw
  • 16. Principe du chiffrement symétrique • Utilise la même clé pour chiffrer et déchiffrer le message • Les méthodes de chiffrement peuvent être extrêmement efficace, nécessitant un traitement minimal • Aussi bien l’émetteur et le récepteur doit posséder la clé de chiffrement • Si une des copies de la clé est compromise, un intermédiaire peut déchiffrer et lire les messages Janvier 2017
  • 18. Une nouvelle approche du chiffrement • Depuis l’antiquité le chiffrement symétrique à été largement utilisé. • Une approcheradicalement nouvelle à vue le jour à la fin des années 1970 : le chiffrement asymétrique Janvier 2017
  • 19. Chiffrement asymétrique • Le concept de cryptographie asymétrique ou à clé publique est dû à W. Diffie et à M. Hellman qui publient en 1976 New Directions in Cryptography. Ils ne proposent cependant pas de moyen pratique pour la mise en œuvre de cette approche où chiffrement et déchiffrement ne sont pas réalisés à partir de la même clé. • Le principe : afin de communiquer avec Bernard, Alice chiffre un message avec la clé publique de Bernard seul celui-‐cisera alors en mesure de le déchiffrer avec sa clé Privée. • L’algorithme RSA proposé en 1977 par Ron Rivest, Adi Shamir et Len Adleman met concrètement en application le principe de cryptologie asymétrique. Il repose sur l’arithmétique des nombres premiers et des opérations d’exponentiation modulaire • Aujourd’hui le chiffrement asymétrique est employé quotidiennement. Mais sous forme mixte, en association avec des procédés symétriques tels que AES. Le chiffrement asymétrique présente, en effet, un faible rendement et de forts besoins en ressources de calcul. Janvier 2017
  • 20. Principes du chiffrement à clé publique Janvier 2017 • Chaque individu dispose de deux clés: – Une clé privée: qui ne doit être connu de personne – Une clé publique: qui peut être connu de tous Msg clair Msg chiffré Msg clair Msg chiffré déchiffrement chiffrement Private key Clé publique
  • 21. Bases théoriques de la cryptologie Janvier 2017
  • 22. Notion de complexité algorithmique • La sécurité des systèmes cryptographiques modernes repose sur le fait que les méthodes de cryptanalyses qui leur sont applicables imposent des calculs qui demeurent, en pratique, hors de notre portée de par leur complexité. • Exemples de complexité algorithmique en fonction de la taille des données n ( durée relative pour n=106 ): • Θ(1) complexité constante, accès un élément de tableau : 10.10-‐9s,ns • Θ(log(n)) complexité logarithmique, dichotomie : 60.10-‐9s • Θ(n) complexité linéaire, parcours liste : 10.10-‐3s,ms • Θ(nlog(n)) quasi-‐linéaire, quick sort : 60.10-‐3s • Θ(np) complexité polynomiale, multiplication matricielle d'ordre n, n3 : 1010s ou 316 ans • Θ(2n) complexité exponentielle, décomposition d’un entier en facteurs premiers : n≈250 1075s ou 1060 ans Janvier 2017
  • 23. Algorithmes de Hachage • Les algorithmes de hachage sont utilisés afin de calculer une empreinte ou condensat d’un ensemble de données. • Ils doivent répondre à des besoins distincts : •Leur fonctionnement doit être rapide et peu consommateur en ressources •Les condensats doivent avoir une taille limitée : quelques dizaines à centaines d’octets •Les empreintes produites doivent minimiser les risques de collisions : deux sources proches doivent produire des empreintes éloignées. Janvier 2017
  • 24. Algorithme de Hachage (Suite) • MD5 : empreintes de 128 bits, des vulnérabilités avérées depuis la fin des années 1990. Son utilisation est a proscrire en cryptologie mais pas forcément dans tous les domines de la sécurité. • SHA-‐1 : empreintes de 160 bits, des vulnérabilités récemment décrites conduisent à privilégier la famille d’algorithmes SHA-‐2 sa variante 512 voire SHA-‐3 dès qu’il sera disponible. • La taille du message à traiter est amené, par padding, à un multiple de 512 • Pour chaque bloc de 512 bits 80 rondes de transformations réentrantes suivies de 80 tours de rotations et d’additions. • Addition du résultat avec le vecteur initial. Lorsque tous les blocs ont été traités, les cinq variables concaténées (5 × 32 = 160 bits) représentent la signature. Janvier 2017
  • 25. Schémas de Feistel • Un schéma ou réseau de Feistel est une construction utilisée dans les algorithmes de chiffrement par bloc. Utilisée pour la première fois dans Lucifer et DES, cette structure offre divers avantages : • Les processus de chiffrement et de déchiffrement ont une architecture très similaire. • L'implémentation matérielle est relativement simple à réaliser. • Un réseau de Feistel repose sur des principes simples de permutations, substitutions, échanges de blocs et une fonction prenant en entrée une clé intermédiaire à chaque étage. Janvier 2017
  • 26. Du DES à l’AES • Dans les années 1960 de nouveaux besoins d’usage de la cryptographie apparaissent dans le domaine civil. Au début des années 1970, Horst Feistel mène des recherches pour IBM sur un chiffrement par blocs mixant transpositions et substitutions. La famille des algorithmes Lucifer sera à l’origine du Data Encryption Standard, normalisé en 1976, après des modifications imposées par la NSA. • Le DES s’appuie sur des clés de chiffrement symétriques de 56 bits Il sera complété par le Triple‐DES doté de 3 clés de 56 bits mais d’une force effective de 112 bits. • AES sera normalisé en 2000 après un concours public ouvert en 1997. Cet algorithme de chiffrement symétrique par blocs peut gérer des clés de 128, 192 et 256 bits. Il présente d’importantes garanties sur sa fiabilité • DES est un algorithme basé sur un schéma de Feistel, il traite des blocs de 64 bits avec une clé de 56 bits complétée par 8 bits de parité (un par octet). • AES n'a pas subi, à ce jour, de cryptanalyse. Rijndael a été conçu afin de complexifier des méthodes classiques comme la cryptanalyse linéaire ou différentielle. Janvier 2017
  • 27. Notion de mode d’opération • Les algorithmes de chiffrement par bloc se focalisent sur le traitement d’un bloc de données. Or les messages clairs dépassent majoritairement cette taille. • Un mode d'opération est la l’algorithme employé afin de traiter la succession des blocs clairs et chiffrés. Il existe de nombreux modes d’opération correspondant à des performances et des niveaux de sécurité différents, les plus couramment implémentés sont : • Electronic Code Book, ECB • Cipher Block Chaining, CBC • Cipher Feedback, CFB • Output Feedback, OFB • CounTeR, CTR Janvier 2017
  • 28. Mode d’opération (Suite) • L’exemple ci dessous met en exergue le faiblesses du mode ECB par rapport au CBC sur le chiffrement simple d’une image Janvier 2017 Sourcewikipédia ECB CBC
  • 29. Comparaison modes ECB et CBC Janvier 2017 ECB CBC
  • 30. Principes du RSA • Choix de p et q deux premiers de grande taille: • Calcul de n = p.q et de ф(n)=(p‐1).(q‐1) où ф(n) est l'indicatrice d'Euler • Choix de e tel que e et ф(n) soient premiers entre eux • Calcul de e.d ≡ 1 mod(ф(n)) ⇔ d ≡ e‐1 mod(ф(n)) , d est l'inverse modulaire de e • Le couple (e, n) constitue la clé publique et (d, n) la clé privée • Avec M un message clair et C son chiffre on a C = Me mod(n) et M=Cd mod(n). • Exemple : Bernard calcule un bi-clé et diffuse sa clé publique Choix p=31 et q=23 → n=31x23=713 ; ф(n)=(31-1)x(23‐1)=660 Choix e=7 valide car 7 et 660 n'ont pas de facteurs communs On trouve: d=283 Janvier 2017
  • 31. Principe du RSA (suite) Janvier 2017 • Clé publique de Bernard (7, 713), diffusée. • Clé privée de Bernard (283, 713) , Alice souhaite transmettre un message protégé à Bernard : 123. • Elle se procure la clé publique de Bernard (7,713) puis chiffre son message : 1237 mod(713) = 495 Remarque : elle ne PEUT PAS LE DECHIFFRER • Bernard déchiffre le message avec sa clé́ privée : 495283 mod 713 = 123
  • 32. La signature numérique • Alice transmet un message accompagné de son hachage qu’elle a préalablement calculé puis chiffré à l’aide de sa clé privée. Le condensat ne pourra être déchiffré qu’avec la clé publique d’Alice, dont on est assuré qu’elle est à l’origine du chiffrement car Alice est la seule à détenir sa clé privée. • Si Bernard parvient à vérifier que le condensat déchiffré, à l’aide de la clé publique d’Alice, correspond au condensat recalculé du message il est, alors, sûr que le message est identique à celui qu’Alice à transmis. • Alice a réalisé une opération de signature numérique, Bernard en a vérifié l’authenticité. Janvier 2017
  • 33. Echange de clé sûr avec Diffie-Hellman Janvier 2017 Wikipédia.fr
  • 34. Les risques en cryptologie • De nombreux experts en cryptologie , dont Bruce Schneier, distinguent trois niveaux de matérialisation des risques en la matière: • L’algorithme: le principe de base sur lequel repose le crypto-système est-il fiable et éprouvé ? • L’implémentation: la concrétisation technique de l’algorithme retenu est-elle exempte d’erreurs ou d’omissions qui en diminuerait la fiabilité ? • L’usage: les conditions d’emploi du système ou les pratiques de ses utilisateurs ne diminuent-elles pas la sécurité du système. Janvier 2017
  • 35. Importance de la longueur de clé Janvier 2017
  • 36. Pour s’entraîner pour le challenge • https://cryptopals.com/ • https://uva.onlinejudge.org/ Janvier 2017
  • 37. Références Jean-Louis Brunel, Didier Martin, Jean-Pierre Yamin, Cours CNAM RSX 112 - Sécurité et Réseaux. Janvier 2017

Notes de l'éditeur

  1. Cryptanalyse chiffre Végenère Masque jetable
  2. La clé associée au système verrouille le mécanisme … elle seule peut le déverrouiller