Introduction à la Cryptographie Infodays UHBC 2009.

29
Introduction à la Cryptographie Infodays UHBC 2009

Transcript of Introduction à la Cryptographie Infodays UHBC 2009.

Page 1: Introduction à la Cryptographie Infodays UHBC 2009.

Introduction à la Cryptographie

Infodays

UHBC 2009

Page 2: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 2

Introduction

Depuis fort longtemps, les hommes ont tenté de rendre sécuritaires leurs communications confidentielles. Différentes techniques ont été utilisées.

stéganographie. : cacher l’existence du message

Cryptographie : rendre les messages compréhensibles seulement par leurs destinataires légitimes.

Cryptanalyse : briser le code au cour de l’histoire, une difficile bataille eut lieu entre les constructeurs de code (cryptographes) et ceux qui essayaient e les briser . Il n’est toujours pas clair, même aujourd’hui, qui sera le vainqueur.

Page 3: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 3

Les grandes approches

I. Approches classiques Chiffrage par substitution: Jules César, Substitution

mono-alphabétique , ……

Chiffrage par transposition

II. Approches modernes Chiffrage à clé privée (symétrique) DES, IDEA, AES Chiffrage à clé publique (asymétrique) RSA, PGP

Page 4: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 4

Chiffrement de César

Cette technique simple de chiffrement effectuant un décalage est appelé chiffrement de César.

Par exemple, avec un décalage de trois,

ARIDJ MOHAMED = CVLGMBPSKCPHG

Cette technique de chiffrement est-elle sécuritaire?

Page 5: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 5

On intercepte le messageFAGEMYREMPURZV_EMZR_R FMNMDAZR

Essayons différents décalages…

Chiffrement de César

1: E_FDLXQDLOTQYUZDLYQZQZELMLC_YQ

2: DZECKWPCKNSPXTYCKXPYPYDKLKBZXP

3… 4… 5… 6… 7… 8… 9… 10… 11… 12…

13: TOUS_LES_CHEMINS_MENENT_A_ROME

Clairement, le chiffrement de César n’est pas sécuritaire.

Page 6: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 6

Substitution mono-alphabétiqueEssayons autre chose.

_ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z R D O H X A M T C _ B K P E Z Q I W N J F L G V Y U S

TOUS_LES_CHEMINS_MENENT_A_ROME   devient  devientFQLJRPAJRHCAE_ZJREAZAZFRDRNQEA

Le décodage devrait être plus difficile. Peut-on essayer tous les décodages possibles?

Il y a 27!=10 888 869 450 418 352 160 768 000 000 possibilités…

Page 7: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 7

Briser Substitution mono-alphabétique

BQPSNRSJXJNJXLDPCLDLPQBE_QRKJXHNKPKSJPJIKSPUNBDKIQRBKPQPBQPZITEJQDQBTSKPELNIUNPHNKPBKPCKSSQWKPSLXJPSNVVXSQCCKDJPBLDWPXBPSNVVXJPGKPJKDXIPZLCEJKPGKSPSJQJXSJXHNKSPGPLZZNIIKDZKPGKSPGXVVKIKDJKSPBKJJIKS

Comment déchiffrer ce message?

ALKHINDI en IX siècle propose une solution basée sur la fréquence des lettres. Chaque lettre est chiffrée de la même façon…Certaines lettres sont utilisées plus souvent.

Page 8: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 8

Occurrence des lettres

_ 19.3 L 4.7 H 0.8E 13.9 O 4.1 G 0.8A 6.7 D 2.9 B 0.6S 6.3 P 2.5 X 0.4I 6.1 C 2.4 Y 0.3T 6.1 M 2.1 J 0.3N 5.6 V 1.3 Z 0.1R 5.3 Q 1.3 K 0.0U 5.2 F 0.9 W 0.0

P 14.3 D 4.6 W 1.0K 12.8 L 4.1 U 1.0S 9.2 V 3.1 T 1.0J 9.2 Z 2.6 _ 0.5X 5.6 G 2.6 O 0.0Q 5.6 C 2.6 M 0.0N 5.6 E 2.0 F 0.0B 5.1 R 1.5 A 0.0I 4.6 H 1.5 Y 0.0

En françaisEn français Dans le cryptogrammeDans le cryptogramme

Page 9: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 9

Remplaçons P par _ et K par E

BQ_SNRSJXJNJXLD_CLDL_QBE_QREJXHNE_ESJ_JIES_UNBDEIQRBE_Q_BQ_ZITEJQDQBTSE_ELNIUN_HNE_BE_CESSQWE_SLXJ_SNVVXSQCCEDJ_BLDW_XB_SNVVXJ_GE_JEDXI_ZLCEJE_GES_SJQJXSJXHNES_G_LZZNIIEDZE_GES_GXVVEIEDJES_BEJJIES

Remplaçons Q par A et B par L

LA_SNRSJXJNJXLD_CLDL_ALE_AREJXHNE_ESJ_JIES_UNLDEIARLE_A_LA_ZITEJADALTSE_ELNIUN_HNE_LE_CESSAWE_SLXJ_SNVVXSACCEDJ_LLDW_XL_SNVVXJ_GE_JEDXI_ZLCEJE_GES_SJAJXSJXHNES_G_LZZNIIEDZE_GES_GXVVEIEDJES_LEJJIES

Page 10: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 10

Le chiffre Vigenère (16ième siècle)

Principe :

On choisit un mot de code par exemple ALAIN et on l’utilise pour chiffrer.

ALAIN=1,12,1,9,14

Clairement, une attaque statistique simple ne fonctionnera pas. Si le mot de code est suffisamment long (une phrase), essayer toutes les clefs est aussi impossible.

Le chiffre de Vigenère est-il indéchiffrable?

ALAIN ALAIN ALAIN ALAIN ALAIN ALAIN ALAIN ALAIN A

LE_CO DE_DE _VIGE NERE_ EST_I L_IND ECHIF FRABL E

MQALB EQAMS AGJPS OQSNN FDUIW MLJWR FOIRT GCBKZ F

Page 11: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 11

Briser le chiffre indéchiffrable!

Les cryptanalystes furent déjoués pendant près de 3 siècles par le chiffre de Vigenère.

Au 19ième siècle, Charles Babbage réussit à le briser.

Page 12: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 12

Masque jetable VERMAM 1918

Qu’arrive-t-il si on utilise le chiffre de Vigenère avec une clef aussi longue que le message?

Avec une clef aléatoire, on obtient le masque jetable.

Pour être inconditionnellement sécuritaire, la clef doit être choisie aléatoirement et être utilisée une seule fois.

Page 13: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 13

Pour toute interprétation du message, il existe une clef la justifiant.

Avec la clef: 11,4,11,2,25,22,20,22,16,14

BONJOUR___ devient MSYLMKYVPN

Sécurité du masque jetable

C’est Shannon en 1949 qui a démontré formellement que le masque jetable est inconditionnellement sécuritaire.L’inconvénient du masque jetable est la taille nécessaire de la clef.

Page 14: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 14

Crypto système a clef courte

Principe de Kerckhoff (La cryptographie militaire 1883):

La sécurité d’un système de cryptographie ne doit pas dépendre de la préservation du secret de l’algorithme. La sécurité ne repose que sur le secret de la clef.

Le masque jetable n’est pas pratique.

Peut-on chiffrer avec une clef courte de façon sécuritaire?

Page 15: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 15

Enigma

Page 16: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 16

ENIGMALa première version d’ENIGMA était utilisée comme suit.

Agencement des 3 rotors. 123, 132, 213, 231, 312, 321 6 possibilités.

Position des trois rotors, 3 lettres. 26x26x26=17 576 possibilités.

Connexions des fiches (6 connexions). 100 391 791 500 possibilités.

Exemple de clef: (231,DFT,AD,BE,CM,FY,UI,LP)

Nombre total de clefs: 6 * 17 576 * 100 391 791 500=10 586 916 764 424 00010 million de milliard de possibilités…

Page 17: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 17

Briser ENIGMA

Le code ENIGMA fut brisé en décembre 1932 par Marian Rejewski, travaillant pour les services de renseignement polonais. A partir de 1933, les Polonais ont réussi a déchiffrer des milliers de messages allemands.

Les Polonais on réussi là ou les autres services de renseignement ont échoué.

Marian Rejewski

Page 18: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 18

Cryptographie à clé privé

Chiffrement et déchiffrement avec même cléChiffrement et déchiffrement avec fonction mathématiqueRapide Exemple: Data Encryption Standard (DES, IDEA ,AES, ...)

Page 19: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 19

DES(Data Encryption Standard)

En 1973, le National Bureau of Standards des États-Unis lance un appel d’offre pour un système de cryptographie.

En 1975 DES, développé par IBM est adopté.

Cryptosystème le plus utilisé dans le monde.

Chiffrement de blocs de 64 bits.

Clef de 56 bits (72 057 594 037 927 936 clefs).

Page 20: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 20

DESX est le texte clair de 64 bits.

(L0, R0)=IP(X) Pour i=1 à 16

(Li, Ri)=(Ri-1, Li-1+F(Ri-1,Ki)) Y=IP-1(R16,L16)

Y est le texte chiffré de 64 bits.

Chaque ki est une chaîne de 48 bits provenant de K.

Pour déchiffrer, on utilise le même algorithme avec les clefs Ki utilisées dans l’ordre inverse.

Page 21: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 21

DES

Seulement 56 bits de la clef de 64 bits sont utilisées. Les 8 autres sont des bits de vérification.

K1

10 51 34 60 49 17 33 57 2 9 19 42 3 35 26 25 44 58 59 1 36 27 18 4122 28 39 54 37 4 47 30 5 53 23 2961 21 38 63 15 20 45 14 13 62 55 31

K2,…,K16 ont chacun leurs tableau spécifique.

Page 22: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 22

Briser DESDe nos jours, une machine comportant 1024 processeurs de 1 GHz, spécialisée pour le problème peut explorer toutes les clefs en moins d’une journée.

DES n’est plus considéré sécuritaire mais est toujours utilisé. Certains utilisent triple DES, qui paraît plus sûr.

Plusieurs autres cryptosystèmes à clef privée sont aussi utilisés.

BLOWFISH IDEA SEAL RC4

Page 23: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 23

Problème de l’échange de clef

Même avec un cryptosystème très sécuritaire, un problème subsiste. Il faut distribuer les clefs secrètes qui seront utilisées sans qu’elles soient interceptées par des curieux. Ces clefs peuvent être échangées à l’aide d’un courrier diplomatique ou en temps de guerre, elles peuvent être distribuées aux unités avant leur départ.

Qu’arrive-t-il si on manque de clefs?

Pas très pratique sur Internet!

Y a-t-il une solution?

Page 24: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 24

Cryptographie à clef publique

Alice BobÈve

Privé!

Privé!

Privé!

Privé!

Page 25: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 25

• Chiffrement et déchiffrement avec clés différentes• Chiffrement et déchiffrement avec différentes fonctions mathématiques• Lent• Exemple: RSA, Diffie-Hellman,

Cryptographie à clef publique

Page 26: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 26

Cryptographie à clef publique( 1 ) Alice et Bob se mettent d'accord publiquement sur un très grand

nombre premier "p" et sur un nombre n ( 2 ) Alice engendre une clé secrète « a » et Bob une clé secrète "b".

( 3 ) Alice calcul l'élément public ka et Bob l'élément public kb : ka = na mod p kb = nb mod p

( 4 ) Alice transmet sa clé publique ka à Bob, et Bob transmet sa clé publique kb à Alice.

( 5 ) Alice et Bob établent leur secret commun : KAlice = (kb) a = (n b) a mod p

KBob = (ka) b = (n a) b mod p => KAlice = KBob = nab mod p

Page 27: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 27

RSAInventé par Rivest, Shamir et Adleman en 1978.

Page 28: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 28

Briser RSA

La seule technique connue pour briser RSA consiste à calculer l’exposant de déchiffrement.d=e-1mod (p-1)(q-1) où pq=n.Pour ce faire, il faut factoriser n.

Par contre, comme l’algorithme de chiffrement est connu publiquement, si on devine le message, on peut vérifier facilement que c’est le bon.

Page 29: Introduction à la Cryptographie Infodays UHBC 2009.

Iinfodays2009 aridj mohamed Avril 2009 29

Conclusion