Office de la Formation Professionnelle et de la Promotion du Travail
DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Cryptographie ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Cryptographie Sommaire 1. Introduction .......................................................................................... !. "u#e$t%ce &ue 'a cryptographie( ............................................................... . )a notion de codage de '#in*ormation ........................................................ + +. Chi**rement par $u,$titution .................................................................... - +.1. E.emp'e$ / Chi**rement par $u,$titution mono a'pha,0ti&ue ................... - +.!. Cryptana'y$e du chi**rement par $u,$titution ........................................ 1 +.!.1. Cryptana'y$e du chi**rement par $u,$titution ................................... 1 +.!.!. M0thode empiri&ue de cryptana'y$e ............................................... 1 +.!.. Comment *inir 'a cryptana'y$e ( .................................................... 2 -. Chi**rement par tran$po$ition ................................................................... 2 -.1. Cryptana'y$e du chi**rement par tranpo$ition ........................................ 3 -.1.1. Cryptana'y$e .............................................................................. 3 1. Comment ren*orcer 'a *orce de$ chi**rement$ ( ........................................... 4 2. Cryptographie moderne % )e cryptage 5 c'0 .............................................. 16 2.1. Cryptographie moderne ................................................................... 16 2.!. Chi**rement 5 c'0 $ym0tri&ue ............................................................ 11 2.!.1. 7rincipe .................................................................................... 11 2.. Chi**rement 5 c'0 a$ym0tri&ue .......................................................... 11 2..1. 7rincipe .................................................................................... 11 2.+. )e$ 'imite$ de 'a cryptographie Sym0tri&ue ......................................... 1! 2.-. Chi**rement a$ym0tri&ue .................................................................. 1 Con$truction de$ c'0$ ......................................................................... 1 Chi**rement d#un me$$age ................................................................... 1 Rapport$ entre 'e$ c'0$ ....................................................................... 1 2.1. 7ri$e en en compte de 'a notion d#0change par r0$eau .......................... 1+ 2.2. 8ne approche th0ori&ue ................................................................... 1+ 2.2.1. Cryptage 5 c'0 $ym0tri&ue .......................................................... 1+ 2.3. Chi**rement a$ym0tri&ue .................................................................. 1- 2.4. "ue'&ue$ 0'0ment$ de r0*'e.ion ......................................................... 12 2.16. Id0e de chi**rement 5 c'0 pu,'i&ue / 'e RSA ....................................... 12 3. Chi**rement a$ym0tri&ue / pr0$entation de RSA ........................................ 13 3.1.1. E.emp'e d#uti'i$ation de RSA ....................................................... 13 4. )e cryptage 5 c'0 $ym0tri&ue % 'e DES ..................................................... 14 4.1.1. )a cryptana'y$e ( ....................................................................... !! 16. )e cryptage 5 c'0 $ym0tri&ue % 'e DES .................................................... !! 16.1. DES / '#a'gorithme ......................................................................... ! 16.1.1. )a cryptana'y$e ( ..................................................................... !- 16.!. Chi**rement 5 c'0 $ym0tri&ue % Autre$ a'gorithme$ ............................ !- 16.!.1. AES 9Ad:anced Encryption Standard; ......................................... !- 16.!.!. IDEA 9Internationa' Data Encryption A'gorithm; ........................... !1 16.!.. <'o=*i$h ................................................................................. !1 16.!.+. RC+ 9Ri:e$t Cipher +; ............................................................... !1 16.. Chi**rement 5 c'0 pu,'i&ue :er$u$ chi**rement 5 c'0 $ecr>te ................. !2 16..1. Comparai$on$ entre RSA et DES ................................................ !2 16.+. Comparai$on et com,inai$on .......................................................... !2 16.-. )e chi**rement par ,'oc .................................................................. !3 16.-.1. C<C / Cipher <'oc? Chaining ...................................................... !4 16.-.!. O@< / Output @eed,ac? ............................................................. !4 OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1 % ++ Cryptographie 11. )e chi**rement par *'u. ........................................................................ 6 11.1.1. D0*inition ................................................................................ 6 11.1.!. Echange $0curi$0 ..................................................................... 1 11.!. C'0 de $e$$ion ............................................................................... 1 11.!.1. )a m0thode dA0change de$ c'0$ de Di**ie%He''man ......................... ! 1!. )#authenti*ication ................................................................................ ! 1!.1. @onction de hachage ...................................................................... 1!.1.1. 7rincipau. a'gorithme$ ............................................................. + 1!.!. )a $ignature 0'ectroni&ue ............................................................... + 1!.. )a $ignature 0'ectroni&ue et 'a notion de certi*icat ............................. - 1. SS) ................................................................................................... 1 1.1.1. Introduction ............................................................................ 1 1.1.!. @onctionnement de SS) !.6 ....................................................... 1 1.1.. SS) .6 .................................................................................. 2 1+. )a 7BI ............................................................................................... 2 1+.1.1. Introduction 5 'a notion de certi*icat ........................................... 2 1+.1.!. Structure d#un certi*icat ( .......................................................... 3 1+.1.. Signature$ de certi*icat$ ........................................................... 4 1+.1.+. Type$ d#u$age$ ........................................................................ 4 1+.1.-. )e ,ut de 7BI .......................................................................... +6 1+.!. )e$ di**0rente$ autorit0$ ................................................................. +1 OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 ! % ++ Cryptographie 1.Introduction Depui$ '#Egypte ancienneC '#homme a :ou'u pou:oir 0changer de$ in*ormation$ de *aDon confidentielle. I' e.i$te de nom,reu. domaine$ oE ce ,e$oin e$t :ita' / F militaire 9$ur un champ de ,atai''e ou ,ien pour prot0ger '#acc>$ 5 '#arme atomi&ue; G F commercial 9protection de $ecret$ indu$trie'$; G F bancaire 9protection de$ in*ormation$ 'i0e$ 5 une tran$action *inanci>re; G F de 'a vie prive 9protection de$ re'ation$ entre 'e$ per$onne$; G F dip'omati&ue 9'e *ameu. H t0'0phone rouge I entre Etat$%8ni$ et 8nion $o:i0ti&ue; G 2.Qu'est-ce que la cryptographie? )e mot cryptographie e$t un terme g0n0ri&ue d0$ignant '#en$em,'e de$ techni&ue$ permettant de chi**rer de$ me$$age$C c#e$t%5%dire permettant de 'e$ rendre ininte''igi,'e$ $an$ une action $p0ci*i&ue. )e :er,e crypter e$t par*oi$ uti'i$0 mai$ on 'ui pr0*>rera 'e :er,e chi**rer. )a crypto'ogie e$t e$$entie''ement ,a$0e $ur '#arithm0ti&ue / I' $#agit dan$ 'e ca$ d#un te.te de tran$*ormer 'e$ 'ettre$ &ui compo$ent 'e me$$age en une $ucce$$ion de chi**re$ 9$ou$ *orme de ,it$ dan$ 'e ca$ de '#in*ormati&ue car 'e *onctionnement de$ ordinateur$ e$t ,a$0 $ur 'e ,inaire;C pui$ en$uite de *aire de$ ca'cu'$ $ur ce$ chi**re$ pour / d#une part 'e$ modi*ier de te''e *aDon 5 'e$ rendre incompr0hen$i,'e$. )e r0$u'tat de cette modi*ication 9'e me$$age chi**r0; e$t appe'0 cr!pto"ramme 9en ang'ai$ ciphertext; par oppo$ition au me$$age initia'C appe'0 message en clair 9en ang'ai$ plaintext; G *aire en $orte &ue 'e de$tinataire $aura 'e$ d0chi**rer. )e *ait de coder un me$$age de te''e *aDon 5 'e rendre $ecret $#appe''e chi**rement. )a m0thode in:er$eC con$i$tant 5 retrou:er 'e me$$age origina'C e$t appe'0e d0chi**rement. )e chi**rement $e *ait g0n0ra'ement 5 '#aide d#une clef de chiffrementC 'e d0chi**rement n0ce$$ite &uant 5 'ui une clef de dchiffrement. On di$tingue g0n0ra'ement deu. type$ de c'e*$ / Les cls symtriques/ i' $#agit de c'0$ uti'i$0e$ pour 'e chi**rement ain$i &ue pour 'e d0chi**rement. On par'e a'or$ de c#iffrement s!mtri$ue ou de chi**rement 5 c'0 $ecr>te. Les cls asymtriques/ i' $#agit de c'0$ uti'i$0e$ dan$ 'e ca$ du c#iffrement as!mtri$ue 9au$$i appe'0 chiffrement cl publique;. Dan$ ce ca$C une c'0 di**0rente e$t uti'i$0e pour 'e chi**rement et pour 'e d0chi**rement On appe''e dcryptement 9'e terme de dcryptage peut 0:entue''ement Jtre uti'i$0 0ga'ement; 'e *ait d#e$$ayer de dchiffrer illgitimement 'e me$$age 9&ue 'a c'0 de d0chi**rement $oit connue ou non de '#attaquant;. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 % ++ Cryptographie )or$&ue 'a c'e* de d0chi**rement n#e$t pa$ connue de '#atta&uant on par'e a'or$ de cr!ptanal!se ou cr!ptoanal!se 9on entend $ou:ent au$$i 'e terme p'u$ *ami'ier de cassage;. )a cr!ptolo"ie e$t 'a $cience &ui 0tudie 'e$ a$pect$ $cienti*i&ue$ de ce$ techni&ue$C c#e$t%5%dire &u#e''e eng'o,e 'a cryptographie et 'a cryptana'y$e. )a cryptographie e$t traditionne''ement uti'i$0e pour di$$imu'er de$ me$$age$ au. yeu. de certain$ uti'i$ateur$. Cette uti'i$ation a auKourd#hui un int0rJt d#autant p'u$ grand &ue 'e$ communication$ :ia internet circu'ent dan$ de$ in*ra$tructure$ dont on ne peut garantir 'a *ia,i'it0 et 'a con*identia'it0. D0$ormai$C 'a cryptographie $ert non $eu'ement 5 pr0$er:er 'a con*identia'it0 de$ donn0e$ mai$ au$$i 5 garantir 'eur int0grit0 et 'eur authenticit0 On appe''e cr!ptanal!se 'a recon$truction d#un me$$age chi**r0 en c'air 5 '#aide de m0thode$ math0mati&ue$. Ain$iC tout crypto$y$t>me doit n0ce$$airement Jtre r0$i$tant au. m0thode$ de cryptana'y$e. )or$&u#une m0thode de cryptana'y$e permet de d0chi**rer un me$$age chi**r0 5 '#aide d#un crypto$y$t>meC on dit a'or$ &ue '#a'gorithme de chi**rement a 0t0 H ca$$0 I. On di$tingue ha,itue''ement &uatre m0thode$ de cryptana'y$e /
8ne atta$ue sur te%te c#iffr seulement con$i$te 5 retrou:er 'a c'0 de d0chi**rement 5 partir d#un ou p'u$ieur$ te.te$ chi**r0$ G 8ne atta$ue sur te%te clair connu con$i$te 5 retrou:er 'a c'0 de d0chi**rement 5 partir d#un ou p'u$ieur$ te.te$ chi**r0$C connai$$ant 'e te.te en c'air corre$pondant G 8ne atta$ue sur te%te clair c#oisi con$i$te 5 retrou:er 'a c'0 de d0chi**rement 5 partir d#un ou p'u$ieur$ te.te$ chi**r0$C '#atta&uant ayant 'a po$$i,i'it0 de 'e$ g0n0rer 5 partir de te.te$ en c'air G 8ne atta$ue sur te%te c#iffr c#oisi con$i$te 5 retrou:er 'a c'0 de d0chi**rement 5 partir d#un ou p'u$ieur$ te.te$ chi**r0$C '#atta&uant ayant 'a po$$i,i'it0 de 'e$ g0n0rer 5 partir de te.te$ en c'air. 3.La notion de codage de l'information Hi$tori&uementC '#uti'i$ation d#a'pha,et a permi$ de coder cha&ue mot du 'angage 5 partir de mJme$ $ym,o'e$ 5 'a di**0rence de$ id0ogramme$ chinoi$ par e.emp'e. )#aKout d#un ordre $ur ce$ 'ettre$ 5 permi$ de d0*inir 'e$ premi>re$ m0thode$ Hmathmatiques I de chi**rement d#un me$$age con$titu0 de 'ettre$ 9code C0$arC ROT1L;. Ce$ chi**rement$ partent d#un me$$age contenant de$ 'ettre$ :er$ un cryptogramme contenant 0ga'ement de$ 'ettre$. Ce$ m0thode$ $e d0compo$ent en deu. grande$ *ami''e$ de chi**rement / F Par Substitution F par transposition. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 + % ++ Cryptographie D#autre$ *orme$ de chi**rement ( I' e.i$te 0ga'ement d#autre$ *orme$ comme 'e code mor$e ou ,ien 'e$ $0maphore$ dan$ 'a Marine. Ce $ont de$ techni&ue$ de ,roui''age. 4.hiffrement par su!stitution Cette m0thode corre$pond 5 $u,$tituer un caract>re ou un groupe de caract>re$ par un autre dan$ 'e te.te 5 chi**rer. 7'u$ieur$ type$ de cr!ptos!st&mes par substitution ' F monoalp#abti$ue 9code C0$ar; con$i$te 5 remp'acer cha&ue 'ettre du me$$age par une autre 'ettre de '#a'pha,et G F #omop#oni$ue permet de *aire corre$pondre 5 cha&ue 'ettre du me$$age en c'air un en$em,'e po$$i,'e d#autre$ caract>re$ c'est un peu similaire aux mthodes employes par les mordus de SMS G F pol!alp#abti$ue 9code Migen>re; con$i$te 5 uti'i$er une $uite de chi**rementC monoa'pha,0ti&ue r0uti'i$0e p0riodi&uement G F pol!"rammes con$i$te 5 $u,$tituer un groupe de caract>re$ 9po'ygramme; dan$ 'e me$$age par un autre groupe de caract>re$. 4.1. Exemples : Chiffrement par substitution mono alphabtique (e c#iffrement de Csar Ce code de chi**rement e$t un de$ p'u$ ancien$C dan$ 'a me$ure oE Nu'e$ C0$ar '#aurait uti'i$0. )e principe de codage repo$e $ur '#aKout d#une :a'eur con$tante 5 '#en$em,'e de$ caract>re$ du me$$ageC ou p'u$ e.actement 5 'eur code ASCII 9pour une :er$ion Oin*ormati&ueO de ce codage;. I' $#agit donc $imp'ement de d0ca'er '#en$em,'e de$ :a'eur$ de$ caract>re$ du me$$age d#un certain nom,re de po$ition$C c#e$t%5%dire en &ue'&ue $orte de $u,$tituer cha&ue 'ettre par une autre. 7ar e.emp'eC en d0ca'ant 'e me$$age O )NT O de po$ition$C on o,tient OVMSO. )or$&ue '#aKout de 'a :a'eur donne une 'ettre d0pa$$ant 'a 'ettre PC i' $u**it de continuer en partant de AC ce &ui re:ient 5 e**ectuer un modulo 26. A titre d#e.emp'eC dan$ 'e *i'm L'odysse de l'espaceC '#ordinateur porte 'e nom de !L. Ce $urnom e$t en *ait "#M d0ca'0 de 1 po$ition :er$ 'e ,a$... OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 - % ++ Cryptographie On appe''e c'0 'e caract>re corre$pondant 5 'a :a'eur &ue '#on aKoute au me$$age pour e**ectuer 'e cryptage. Dan$ notre ca$ 'a c'0 e$t CC car c#e$t 'a >me 'ettre de '#a'pha,et. Ce $y$t>me de cryptage e$t certe$ $imp'e 5 mettre en oeu:reC mai$ i' a pour incon:0nient d#Jtre tota'ement $ym0tri&ueC ce'a $igni*ie &u#i' $u**it de *aire une $ou$traction pour connaQtre 'e me$$age initia'. 8ne m0thode primaire peut con$i$ter 5 une ,Jte $ou$traction de$ nom,re$ 1 5 !1 pour :oir $i '#un de ce$ nom,re$ donne un me$$age compr0hen$i,'e. 8ne m0thode p'u$ 0:o'u0e con$i$te 5 ca'cu'er 'e$ *r0&uence$ d#apparition de$ 'ettre$ dan$ 'e me$$age cod0 9ce'a e$t d#autant p'u$ *aci'e 5 *aire &ue 'e me$$age e$t 'ong;. E**ecti:ementC $e'on 'a 'angueC certaine$ 'ettre$ re:iennent p'u$ couramment &ue d#autre$ 9en *ranDai$C par e.emp'eC 'a 'ettre 'a p'u$ uti'i$0e e$t 'a 'ettre E;C ain$i 'a 'ettre apparai$$ant 'e p'u$ $ou:ent dan$ un te.te crypt0 par 'e chi**rage de C0$ar corre$pondra :rai$em,'a,'ement 5 'a 'ettre EC une $imp'e $ou$traction donne a'or$ 'a c'0 de cryptage... Un autre e%emple ' le ROT*+ Dan$ 'e ca$ $p0ci*i&ue du chi**rement de Nu'e$ C0$ar oE 'a c'0 de cryptage e$t N 91 >me 'ettre de '#a'pha,et;C on appe''e ce cryptage ROT1 9'e nom,re 1C 'a moiti0 de !1C a 0t0 choi$i pour pou:oir chi**rer et d0chi**rer *aci'ement 'e$ me$$age$ te.tue'$;. )e ROT1 9rotation de 1; e$t un code C0$ar &ui permet &uand on '#app'i&ue deu. *oi$ de retrou:er 'e me$$age origina'. I' e$t $ou:ent emp'oy0 $ur 8SENET 9'e$ ne=$; pour ma$&uer 'a $o'ution d#une de:inette ou pour par'er au. initi0$. Les lecteurs de ne$s l'int%grent en gnral 4.2. Cryptanalyse du chiffrement par substitution 4.2.1. ryptanalyse du chiffrement par su!stitution Dan$ 'e ca$ de '#uti'i$ation d#un code par $u,$titutionC 'a cryptana'y$e ou d0chi**rement $e *ait par '#uti'i$ation de donn0e$ statisti$ues / En ang'ai$C 'e$ caract>re$ 'e$ p'u$ *r0&uemment uti'i$0$ $ont / eC tC oC aC nC iL )e$ com,inai$on$ de deu. 'ettre$ 9digramme$; 'e$ p'u$ *r0&uente$ $ont / thC inC erC reC et an. )e$ com,inai$on$ de troi$ 'ettre$ 9trigramme$; / theC ingC and et ion. 4.2.2. "#thode empirique de cryptanalyse I' $u**it pour retrou:er 'e te.te en c'air de / F Rechercher 'e$ caract&resC di"rammes et tri"rammes 'e$ p'u$ *r0&uent$ du te.te chi**r0G F @aire de$ suppositions en 'e$ a$$ociant$ 5 ceu. 'e$ p'u$ *r0&uent$ d#un te.te en c'air 9dan$ 'a 'angue choi$i;. 7ar e.emp'e dan$ un te.te crypt0 appartenant 5 une ,an&ue i' e$t pro,a,'e de trou:er de$ mot$ te' &ue *inancierC montantC $o'deL OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1 % ++ Cryptographie 4.2.3. omment finir la cryptanalyse ? Si certain$ mot$ commencent 5 0merger du te.te chi**r0C a'or$ i' y a de fortes probabilits &ue 'e code de chi**rement $oit d0cou:ert. 8n code par $u,$titution ne modifie pas 'e$ proprits statisti$ues de$ caract>re$C digramme$ et trigramme$ $u,$titu0$. I' con$er:e l,ordre des caract&res du te.te en c'airC mai$ ma$&ue ce$ caract>re$. Table des frquences d'apparition des lettres pour un texte franais
$.hiffrement par transposition )e$ m0thode$ de chi**rement par tran$po$ition con$i$tent 5 r0arranger 'e$ donn0e$ 5 chi**rer de *aDon 5 'e$ rendre incompr0hen$i,'e$. I' $#agit par e.emp'e de r0ordonner g0om0tri&uement 'e$ donn0e$ pour 'e$ rendre :i$ue''ement ine.p'oita,'e$ Toute$ 'e$ 'ettre$ du me$$age $ont pr0$ente$C mai$ dan$ un ordre di**0rent. C#e$t un chi**rement de type anagramme& I' uti'i$e 'e principe math0mati&ue de$ permutations 9par co'onne par e.emp'e; OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 2 % ++ Cryptographie )e$ m0thode$ de chi**rement par tran$po$ition con$i$tent 5 r0arranger 'e$ donn0e$ 5 chi**rer de te''e *aDon 5 'e$ rendre incompr0hen$i,'e$. En g0n0ra' / r0arranger g0om0tri&uement 'e$ donn0e$ pour 'e$ rendre :i$ue''ement ine.p'oita,'e$. 7ar e.emp'e / OCeci e$t un te.te 5 chi**rer de 'a p'u$ haute importanceO Ceci e$t un te.te 5 chi**rer de 'a p'u$ haute importance )e te.te e$t regroup0 en ta,'eauC $ui:ant un nom,re de co'onne$ donn0. Ceci est u n te%te - c#iffrer d Cnce#re # atctiluaiefatn. Cha&ue co'onne e$t en$uite copi0e '#une apr>$ '#autre. e 'a p'u$ #aute impo rtance 5.1. Cryptanalyse du chiffrement par tranposition $.1.1. ryptanalyse F D0terminer $i une $u,$titution n#a pa$ 0t0 uti'i$0e / une ana'y$e $tati$ti&ue de$ caract>re$ $u**it 5 d0terminer $i 'e$ caract>re$ ont 0t0 $u,$titu0$ 9$tati$ti&ue$ *r0&uentie''e$ du te.te identi&ue$ 5 ce''e d#un te.te en c'air;. F Si ce n#e$t pa$ 'e ca$C i' y a une *orte pro,a,i'it0 pour &u#un chi**rement par tran$po$ition ait 0t0 emp'oy0. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 3 % ++ Cryptographie F En$uiteC i' *aut *aire une hypoth>$e $ur 'e nom,re de co'onne$ uti'i$0e$ pour r0a'i$er 'a tran$po$ition. )e$ code$ de tran$po$ition contrairement au. code$ par $u,$titution ne cachent pa$ 'e$ caract>re$C mai$ modi*ient '#ordre de$ caract>re$. /istoire ' )#arri:0e de$ ordinateur$ a tota'ement d0mod0 ce$ m0thode$ de chi**rement 9on ne par'e p'u$ d#ai''eur$ de chi**rement car ce$ m0thode$ ne r0$i$te pa$ au traitement in*ormati&ue;. )a machine Eni"ma uti'i$0e par 'e$ naRi$ a 0t0 H ca$$0e I par A'an TuringC pionnier de '#in*ormati&ue. I' *aut attendre 'e$ ann0$ 16 pour :oir 'e$ m0thode$ de chi**rement moderne ,a$0e$ $ur '#u$age de c'0$. %.omment renforcer la force des chiffrements ? Combiner Substitution et Transposition i' e$t po$$i,'e de *aire $u,ir au. caract>re$ du H te.te en c'air I / F une $u,$titution G F p'u$ieur$ op0ration$ de tran$po$ition. C#an"er les param&tres de ces combinaisons tr&s souvent '#uti'i$ation de$ param>tre$ de cha&ue op0ration doit Jtre r0duite au chi**rement de &ue'&ue$ me$$age$ a:ant d#Jtre chang0$ pour de nou:eau. param>tre$. Combiner les param&tres )e$ op0ration$ $ont connue$C 'a $0&uence d#app'ication de$ op0ration$ e$t d0*inie par 'a $0&uence de$ param>tre$ de cha&ue op0ration. )a com,inai$on de$ di**0rent$ param>tre$ de$ di**0rente$ op0ration$ permet de d0*inir un $ecret. Ce $ecret permet de r0a'i$er 'e d0chi**ement et a$$ure 'a $0curit0 du cryptogramme. I' e$t appe'0 c'0 de chi**rement. (e but rendre '#apparence du cryptogramme 'a p'u$ H a'0atoire I po$$i,'eC c%5%d. 0'iminer 'e$ re'ation$ $tati$ti&ue$ de$ caract>re$ du cryptogramme pour 0:iter 'a cryptana'y$e / Tran$po$ition S Su,$titution T Di**u$ion (,actualit 0 'e$ chi**rement$ te'$ &ue DES 9'ata (ncryption System; et 1ES 9!d)anced (ncryption System; $ont uti'i$0$ 5 '#heure actue''e. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 4 % ++ Cryptographie &.ryptographie moderne - Le cryptage ' cl# 7.1. Cryptoraphie moderne Ce type de chi**rement repo$e $ur '#uti'i$ation / F d#un a'gorithme pu,'icC connu de tou$ F d#une c'0. I' corre$pond 5 'a cryptographie moderneC par rapport au. code$ par $u,$titution et tran$po$ition. Aupara:antC 'e$ a'gorithme$ 0taient $imp'e$ mai$ uti'i$aient de$ c'0$ 'ongue$. E.emp'e / un UOR entre 'e me$$age 5 tran$mettre et une c'0 de mJme tai''e $u**it 5 'e rendre ind0chi**ra,'eLtechni&ue du ma$&ue Keta,'e MaintenantC 'e ,ut e$t d#uti'i$er de$ a'gorithme$ $ophi$ti&u0$ et comp'e.e$ a$$oci0$ 5 de$ c'0$ courte$. Ce$ a'gorithme$ repr0$ente de$ in:e$ti$$ement$ 5 'ong termeC c%5%d. &u#i'$ $ont emp'oy0$ pendant de nom,reu$e$ ann0e$ Ku$&u#5 ce &u#i'$ en pui$$ent p'u$ a$$urer 'e mJme ni:eau de $0curit0. I' e.i$te deu. $orte$ de cryptage / F - cl s!mtri$ue F - cl as!mtri$ue2 Hypoth>$e de ,a$e de 'a cryptana'y$e / *rincipe de +erc,hoff -- !uguste +erc,hoff. //La cryptographie militaire''. f)rier 0112 3 )#oppo$ant connaQt 'e $y$t>me cryptographi&ue et Toute 'a $0curit0 d#un $y$t>me cryptographi&ue doit repo$er $ur 'a c'0C et pa$ $ur 'e $y$t>me 'ui%mJme OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 16 % ++ Cryptographie 7.2. Chiffrement ! cl symtrique &.2.1. (rincipe )e cryptage 5 c'0 $ym0tri&ue 9ou $ecr>te; / )a m3me cl doit Jtre emp'oy0e pour chi**rer ou d0chi**rer 'e me$$ageG )e chi**rement con$i$te a'or$ 5 e**ectuer une op0ration entre 'a c'0 pri:0e et 'e$ donn0e$ 5 chi**rer. )e d0chi**rement $e *ait 5 '#aide de cette m3me cl secr&te. Remar$ues )a &ua'it0 d#un crypto $y$t>me $ym0tri&ue $e me$ure par rapport / F 5 de$ propri0t0$ $tati$ti&ue$ de$ te.te$ chi**r0$ G F 5 'a r0$i$tance au. c'a$$e$ d,atta$ues connues. En prati$ue ' tant &u#un crypto $y$t>me $ym0tri&ue n#a pa$ 0t0 ca$$0C i' e$t ,onC apr>$ i' e$t mau:ai$ V 7.". Chiffrement ! cl asymtrique &.3.1. (rincipe I' uti'i$e / F une cl publi$ue connue de tou$ G F une cl prive connue $eu'ement du de$tinataire du cryptogramme. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 11 % ++ Cryptographie Ce$ chi**rement$ a H c'0 pu,'i&ueI ont 0t0 d0cou:ert par Name$ E''i$ 9Ang'eterre; en 1414 et par Whit*ie'd Di**ie 9Etat$ uni$; en 142-. L'ide de la conception de tels algorithmes re)ient 'iffie et ellman en 0456& 7.4. #es limites de la cryptoraphie $ymtrique (a multiplication des cls 7our 0ta,'ir un cana' de communication entre deu. indi:idu$ / F I' *aut &u#i' $oit chi**r0 a:ec une c'0 partag0e entre 'e$ deu. indi:idu$ G F I' e$t ain$i con*identie' pour ceu. &ui ne po$$>de pa$ 'a c'0 de chi**rement. 7our &ue deu. canau. de communication$ $oient ind0pendant$ '#un de '#autreC c%5% d. &u#une per$onne acc>de 5 '#un mai$ pa$ 5 '#autreC i' *aut &ue ce$ deu. canau. uti'i$ent de$ c'0$ di**0rente$. I' e$t po$$i,'e &u#un de$ inter'ocuteur$ connai$$ent p'u$ieur$ c'0$ uti'i$0$ dan$ di**0rent$ canau. 'e re'iant 5 de$ uti'i$ateur$ di**0rent$. E.emp'e / '#uti'i$ateur D po$$>de une c'0 pour cha&ue 'ien 9a:ec NC IC HC GC @ et E;. Probl&me / comment 0changer toute$ ce$ c'0$ ( Pas d,int"rit et d,identification de l,auteur Si A'iceC <o, et C0dric partage 'e mJme 'ien de communication a'or$ i'$ partagent 'a mJme c'0 de chi**rement $ym0tri&ue. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1! % ++ Cryptographie Chacun peut intercepter et modi*er 'e$ me$$age$ &ui $#0changent 7.5. Chiffrement asymtrique Construction des cls )e$ uti'i$ateur$ 9A et <; choi$i$$ent une c'0 a'0atoire dont i'$ $ont $eu'$ connai$$eur$ 9i' $#agit de 'a c'0 pri:0e;. A partir de cette c'0C i'$ d0dui$ent chacun automati&uement par un a'gorithme 'a c'0 pu,'i&ue. )e$ uti'i$ateur$ $#0changent cette c'0 pu,'i&ue au tra:er$ d#un cana' non $0curi$0. C#iffrement d,un messa"e )or$&u#un uti'i$ateur d0$ire en:oyer un me$$age 5 un autre uti'i$ateurC i' 'ui $u**it de chi**rer 'e me$$age 5 en:oyer au moyen de 'a c'0 pu,'i&ue du de$tinataire 9&u#i' trou:era par e.emp'e dan$ un $er:eur de c'0$ te' &u#un annuaire ou ,ien en $ignature d#un courrier 0'ectroi&ue;. )e de$tinataire $era en me$ure de d0chi**rer 'e me$$age 5 '#aide de $a c'0 pri:0e 9&u#i' e$t $eu' 5 connaQtre;. Rapports entre les cls )a recherche de 'a c'0 pri:0e 5 partir de 'a c'0 pu,'i&ue re:ient 5 r0$oudre un pro,'>me math0mati&ue notoirement tr>$ comp'i&u0C c%5%d. demandant un grand nom,re d#op0ration$ et ,eaucoup de m0moire pour e**ectuer 'e$ ca'cu'$ %X in*ai$a,'e V 7ar e.emp'e dan$ RSAC '#a'gorithme 'e p'u$ uti'i$0 actue''ementC 'a d0duction de 'a c'0 pri:0e 5 partir de 'a c'0 pu,'i&ue re:ient 5 r0$oudre un pro,'>me de *actori$ation de grand nom,re &ue 'e&ue' tra:ai''e 'e$ math0maticien$ depui$ p'u$ de !666 an$ V OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1 % ++ Cryptographie )e choi. de$ c'0$ doit Jtre *ait de 'a mani>re 'a p'u$ impr0dicti,'e po$$i,'e / 0:iter 'e$ mot$ du dictionnaireC nom,re$ p$eudo%a'0atoire$ 5 germe de g0n0ration di**ici'e 5 de:inerC etc. 7.%. &rise en en compte de la notion d'chane par rseau Ec#an"e par rseau )#o,Kecti* de 'a cryptographie e$t de permettre 5 deu. per$onne$C 1lice et 4obC de communi&uer au tra:er$ d#un cana' peu $Yr 9t0'0phoneC r0$eau in*ormati&ue ou autre;C $an$ &u#un oppo$antCOscarC pui$$e comprendre ce &ui e$t 0chang0. 1lice $ouhaite tran$mettre 5 4ob un en$em,'e de donn0e$ 9te.teC nom,re$C L;. 1lice tran$*orme ce$ in*ormation$ par un proc0d0 de chi**rement en uti'i$ant une c'0 pr0d0termin0eC pui$ en:oie 'e te.te chi**r0 au tra:er$ du cana' de communication. OscarC &ui e$pionne peut%Jtre 'e cana'C ne peut recon$tituer '#in*ormationC contrairement 5 4ob &ui di$po$e de 'a c'0 pour d0chi**rer 'e cryptogramme 7.7. (ne approche thorique &.&.1. ryptage ' cl# sym#trique Ce cryptage repo$e $ur 'a d0*inition d#une *ormu'e math0mati&ue de 'a *orme / Donn0e chi**r0e$ T @onction 9donn0e$C c'0; A:ec une *onction in:er$e de 'a *orme / Donn0e$ T @onctionZin:er$e 9donn0e$Zchi**r0e$C c'0; Dan$ cette m0thode de chi**rementC on di$tingue deu. type$ dAa'gorithme$ / F 'Aa'gorithme par bloc &ui prend une 'ongueur $p0ci*i0e de donn0e$ comme entr0eC et produit une 'ongueur di**0rente de donn0e$ chi**r0e$ 9e.emp'e / DESC AESL; F 'Aa'gorithme en flu% continu &ui chi**re 'e$ donn0e$ un ,it 5 'a *oi$ 9e.emp'e / IDEAC CASTC RC+C SBI7Kac?L;. 1vanta"es et inconvnients d,un cr!ptos!st&me - cl s!mtri$ue )e principa' incon:0nient d#un crypto$y$t>me 5 c'e*$ $ecr>te$ pro:ient de l,c#an"e de$ cls. )e chi**rement $ym0tri&ue repo$e $ur '#0change d#un $ecret 9'e$ c'0$;. 7our Jtre tota'ement $Yr / 'e$ chi**rement$ 5 c'0$ $ecr>te$ doi:ent uti'i$er de$ c'0$ d#une 'ongueur au moin$ 0ga'e 5 ce''e du me$$age 5 chi**rer 9One Time 7ad ou H Ma$&ue Neta,'e I; En prati$ue / 'e$ c'0$ ont une tai''e donn0eC $u**i$ante. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1+ % ++ Cryptographie )or$ d#0change entre p'u$ieur$ inter:enant$ / une c'0 e$t partag0e &ue par ! inter'ocuteur$C donc pour N inter'ocuteur$ i' *aut N[9N%1;\! c'0$. )a p'upart de$ code$ uti'i$0$ F $ont relativements rapides G F peu:ent $#app'i&uer 5 un fort dbit de donn0e 5 tran$mettre. I' e.i$te de$ proce$$eur$ $p0cia'ement conDu pour r0a'i$er 'e chi**rement et 'e d0chi**rement. 7rincipau. a'gorithme$ uti'i$0$ / F DESC 'ata (ncryption System I<M 1422 G F IDEAC "nternational 'ata (ncryption !lgorithm )ai et Ma$$ey 1446 G F <'o=*i$hC Schneir 144+. Probl&me d,assurer la scurit des cls2 7ro,'>me de 'a distribution des clsC &ui doit $e *aire par un cana' &ui doit Jtre $Yr. La )alise diplomatique dans le cas du tlphone rouge6 7.). Chiffrement asymtrique Cr!pta"e - cl as!mtri$ue I' repo$e $ur 'a connai$$ance d#une *onction math0mati&ue unidirectionne''e 9Oone- $ay functionO;C munie d#une porte arri>re 9Oone-$ay trapdoor functionO;. 8ne *onction unidirectionne''e e$t une *onction y T *9.; te''e &ueC $i '#on connaQt 'a :a'eur yC i' e$t prati&uement impo$$i,'e de ca'cu'er 'a :a'eur . 9c#e$t%5%dire d#in:er$er 'a *onction *;. On dit &ue cette *onction e$t munie d#une porte arri>re $#i' e.i$te une *onction . T g9yC R; te''e &ueC $i '#on connaQt RC i' e$t *aci'e de ca'cu'er . 5 partir de y. P e$t appe'0e trappe. E%emple de scnario d,c#an"e 4ob :eu. rece:oir de$ me$$age$ cod0$ d,1liceC i' $ouhaite &ue ce$ me$$age$ $oient ind0chi**ra,'e$ pour Oscar &ui a acc>$ 5 'eur$ 0change$ / F 4ob et 1lice connai$$ent 'a *onction unidirectionne''e * G F 4ob *ournit 5 1lice $a Oc'0 pu,'i&ueO c. F * et c peu:ent Jtre connu$ de tout 'e monde / i'$ $ont connu$ d,Oscar. A'ice chi**re 'e me$$age M en uti'i$ant '#a'gorithme * et 'a c'0 c G ceci *ournit un te.te T chi**r0 ayant 'e$ apparence$ d#une $uite de caract>re$ choi$i$ au ha$ard / T T *9MC c;. 7omme f est une fonction unidirectionnelle. 8scar est incapable de reconstituer le message m9me si il conna:t l'algorithme f. la cl publique c et le texte ;& <o,C 'uiC po$$>de 'a H c'0 pri:0e I R &ui e$t a,$o'ument $ecr>te. R ou:re 'a porte arri>re de 'a *onction * et permet de d0chi**rer 'e me$$age en app'i&uant 'a *onction g au trip'et 9TC cC R; / M T g9TC cC R;. <o, peut 'ire 'e contenu du me$$age en:oy0 par A'ice V OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1- % ++ Cryptographie Des cl et des cadenas A'ice / F cr0e une c'0 a'0atoire 9'a c'0 pri:0e; G F pui$ *a,ri&ue un grand nom,re de cadena$ 9c'0 pu,'i&ue; &u#e''e met 5 di$po$ition dan$ un ca$ier acce$$i,'e par tou$ 9'e ca$ier Koue 'e r]'e de cana' non $0curi$0;. <o, / F prend un cadena$ 9ou:ert; G F *erme une :a'i$ette contenant 'e document &uAi' $ouhaite en:oyer G F en:oie 'a :a'i$ette 5 A'iceC propri0taire de 'a c'0 pu,'i&ue 9'e cadena$;. Cette derni>re pourra ou:rir 'a :a'i$ette a:ec $a c'0 pri:0e (es contraintes pour un tel al"orit#me I' *aut trou:er un coup'e de *onction$ * 9*onction unidirectionne''e; et g 9*onction de porte arri>re; / 7'est un probl%me mathmatique difficile < Au d0partC 'e $y$t>me 5 c'0 pu,'i&ue n#a d#a,ord 0t0 &u#une id0e dont 'a *ai$a,i'it0 re$tait 5 d0montrer. De$ a'gorithme$ ont 0t0 propo$0$ par de$ math0maticien$ .8n de$ premier$ a'gorithme$ propo$0 repo$e $ur 'a *actori$ation du produit de deu. grand$ nom,re$ entier$. Cette *actori$ation demanderait un temp$ de ca'cu' de p'u$ieur$ mi''ion$ d#ann0e$. Le problme est rsolu ! Cet a'gorithme a 0t0 propo$0 par Ri:e$tC Shamir et Ad'eman en 1422C ce &ui a donn0 nai$$ance 5 RSA. )#id0e g0n0ra'e e$t 'a $ui:ante / F 'a c'0 pu,'i&ue c e$t 'e produit de deu. grand$ nom,re$ entier$G F 'a c'0 pri:0e R e$t '#un de ce$ deu. nom,re$ entier$G F g comporte 'a *actori$ation de c. Seu' <o,C &ui connaQt RC peut *actori$er c et donc d0chi**rer 'e me$$age chi**r0. Un dernier probl&me )e $y$t>me de chi**rement 5 c'0 pu,'i&ue e$t universel $i chacun pu,'ie $a c'0 pu,'i&ue dan$ un annuaire. 7our en:oyer un me$$age chi**r0 5 <o,C i' $u**it de trou:er $a c'0 pu,'i&ue dan$ '#annuaire et de $#en $er:ir pour chi**rer 'e me$$age a:ant de 'e 'ui en:oyer 9$eu' <o, pourra d0chi**rer 'e me$$age;. I' *aut ,ien $Yr &ue l,annuaire $oit s5r. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 11 % ++ Cryptographie O$car peut a:oir $u,$titu0 $a propre c'0 pu,'i&ue 5 ce''e de <o, a*in de pou:oir 'ire 'e$ me$$age$ de$tin0$ 5 <o,. I' peut mJme 'e$ ren:oyer 5 <o, une *oi$ 'u V 7.*. +uelques lments de rflexion (a notion d,inverse Ce &ue *ait '#a'gorithme de chi**rement de:ra Jtre d0*ait p'u$ tard 'or$ du d0chi**rement. En math0mati&ueC '#id0e de d0*aire e$t l,inverse. I' e.i$te de$ fonctions inverses et de$ nombres inverses. )e$ *onction$ in:er$e$ $ont de$ paire$ d #op0ration$ / e.emp'e 'a mu'tip'ication et 'a di:i$ion $ont de$ *onction$ in:er$e$C ce &ue '#une *aitC '#autre 'e d0*ait. E.emp'e / - [ ! T 16C 16 \ ! T - )e$ nom,re$ in:er$e$ $ont de$ paire$ de nom,re$C ce &u#un nom,re *aitC '#autre 'e d0*ait. E.emp'e / ! et ^ a:ec - [ ! T 16C et 16 [ ^ T - A:ec 'e$ nom,re$ in:er$e$C '#op0ration re$te 'a mJme 9iciC 'a mu'tip'ication;. (a notion de nombre premier 8n nom,re premier e$t $imp'ement un nom,re &ui ne po$$>de &ue deu. *acteur$C 1 et 'ui%mJme. 2 e$t premier car aucun nom,re autre &ue 1 et 2 ne donne un r0$u'tat entier en di:i$ant 2. Deu. nom,re$ $ont premier$ entre eu. $#i'$ n#ont pa$ d#autre *acteur &ue 1. 3 et -- $ont premier$ entre eu.C a'or$ &u#aucun n#e$t premier / 3 T ! [ 14 [1 et -- T - [ 11 [ 1 !! et -- ne $ont pa$ premier$ entre eu.C car !! T ! [ 11 et -- T - [ 11 7.1,. -de de chiffrement ! cl publique : le .$/ Euler odifi On $ait &ue m 9 p _ 1 ; 9 & _ 1 ; S 1 mod n T m I' e$t po$$i,'e d#a''er de m :er$ m par 9p _ 1;9& _ 1; S 1C i' ne $u**it p'u$ &ue de d0compo$er cette :a'eur en deu. $ou$ :a'eur$ / F '#une permettant de pa$$er de m 5 une :a'eur interm0diaire G F '#autre permettant de pa$$er de cette :a'eur interm0daire :er$ m G 7o$$i,i'it0 de chi**rement 5 c'0 pu,'i&ue V e [ d T 9p _ 1;9& _ 1; S 1 E.emp'e / e [ d T +1...mai$ +1 e$t premier V Comment faire 0 OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 12 % ++ Cryptographie uti'i$er '#arithm0ti&ue modu'aire / trou:er e [ d te' &ue e [ d T 1 mod ` e [ d _ 1a 7rincipe de RSA uti'i$er deu. modu'e$C '#un pour 'e$ c'>$ et '#autre pour chi**rer. pour 'e$ c'0$ / 9p _ 1; 9& _ 1; pour chi**rer p [ & ).hiffrement asym#trique * pr#sentation de +,- Un al"orit#me simple Soient / F M 'e me$$age en c'air F C 'e me$$age encrypt0 F 9eCn; con$titue 'a c'0 pu,'i&ue F 9dCn; con$titue 'a c'0 pri:0e F n 'e produit de ! nom,re$ premier$ F b '#op0ration de mi$e 5 'a pui$$ance 9ab, / a pui$$ance ,; F mod '#op0ration de modu'o 9reste de la di)ision enti%re; 7our chi**rer un me$$age MC on *ait/ C T Mbe mod n 7our d0chi**rer/ M T Cbd mod n Construction des cls 7our cr0er une paire de c'0$C c#e$t tr>$ $imp'eC mai$ i' ne *aut pa$ choi$ir n#importe comment eCd et n. )e ca'cu' de ce$ troi$ nom,re$ e$t d0'icat. F prendre deu. nom,re$ premier$ p et & 9de tai''e 5 peu pr>$ 0ga'e;. Ca'cu'er n T p&. F prendre un nom,re e &ui n#a aucun *acteur en commun a:ec 9p%1;9&%1;. F ca'cu'er d te' &ue e [ d mod 9p%1;9&%1; T 1 )e coup'e 9eCn; con$titue 'a c'0 pu,'i&ue. 9dCn; e$t 'a c'0 pri:0e. )a pui$$ance du cryptage RSA e$t en e**et ,a$0e $ur 'a di**icu't0 de *actori$er un grand entier. C#e$t pour ce'a &ue '#on choi$it de$ nom,re$ premier$ p et & d#en:iron 166 chi**re$C pour rendre 'a *actori$ation hor$ de port0eC mJme de$ mei''eur$ ordinateur$. ).1.1. ./emple d'utilisation de +,- Cration de la paire de cls' Soient deu. nom,re$ premier$ au ha$ard/ p T !4C & T 2C on ca'cu'e n T p& T !4 [ 2 T 162. On doit choi$ir e au ha$ard te' &ue e n#ai aucun *acteur en commun a:ec 9p%1;9&% 1;/ 9p%1;9&%1; T 9!4%1;92%1; T 1663 On prend e T 21 On choi$it d te' &ue 21[d mod 1663 T 1C on trou:e d T 1624. On a maintenant 'e$ c'0$ / F 'a c'0 pu,'i&ue e$t 9eCn; T 921C162; 9=cl de chiffrement; F 'a c'0 pri:0e e$t 9dCn; T 91624C162; 9=cl de dchiffrement; OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 13 % ++ Cryptographie C#iffrement du messa"e ,/E((O,2 On prend 'e code ASCII de cha&ue caract>re et on 'e$ met ,out 5 ,out/ m T 2!14212124 I' *aut d0couper 'e me$$age en ,'oc$ &ui comportent moin$ de chi**re$ &ue n. n comporte + chi**re$C on d0coupe notre me$$age en ,'oc$ de chi**re$/ 2!1 421 212 466 9on comp'>te a:ec de$ R0ro$; On chi**re chacun de ce$ ,'oc$ / 2!1b21 mod 162 T +1 421b21 mod 162 T 3!! 212b21 mod 162 T 3!- 466b21 mod 162 T --! Le message chiffr est >26 122 12? ??2& On peut le dc#iffrer avec d' +1b1624 mod 162 T 2!1 3!!b1624 mod 162 T 421 3!-b1624 mod 162 T 212 --!b1624 mod 162 T 466 C#e$t 5 dire 'a $uite de chi**re 2!1421212466. On retrou:e notre me$$age en c'air 2! 14 21 21 24 / #HE))O# V Proprit uni$ue )#a'gorithme a 'a propri0t0 $p0cia'e $ui:ante 9utilis pour '#authenti*ication;/ c#iffrement 6 dc#iffrement 6 7 8 8 9 dc#iffrement 6 c#iffrement 6 7 8 8 C#e$t%5%dire &ue '#uti'i$ation de $a c'0 pri:0e pour chi**rer un me$$age M permet de con$truire un me$$age M# &ui peut Jtre d0chi**r0 par $a c'0 pu,'i&ue...ain$i i' e$t po$$i,'e de prou:er &ue '#on di$po$e ,ien de 'a c'0 pri:0e &ui corre$pond 5 'a c'0 pu,'i&ue V Scurit (a force du c#iffrement dpend de la lon"ueur de la cl utilise2 Ce protoco'e a '#a:antage d#uti'i$er de$ c'0$ de 'ongueur :aria,'e de +6 5 ! 6+3 ,it$ G I' *aut actue''ement uti'i$er une c'0 au minimum de -1! ,it$ 9Si. 'a,oratoire$ ont dY unir 'eur$ moyen$ pour ca$$er en aoYt 1444 une c'0 5 -1! ,it$; 0.Le cryptage ' cl# sym#trique - le 1., OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 14 % ++ Cryptographie Un standard de c!iffreent D0:e'opp0 dan$ 'e$ ann0e$ 26 par I<MC 'a m0thode DES *ut adopt0e et rendue $tandard par 'e gou:ernement de$ Etat$ 8ni$. I' de:ait r0pondre 5 'A0po&ue au. crit>re$ $ui:ant$ / F a:oir un haut ni:eau de $0curit0 'i0 5 une c'0 de petite tai''e $er:ant au chi**rement et au d0chi**rementC F Jtre compr0hen$i,'eC F ne pa$ d0pendre de 'a con*identia'it0 de '#a'gorithmeC F Jtre adapta,'e et 0conomi&ueC F Jtre e**icace et e.porta,'e. )a m0thode DES uti'i$e de$ c'0$ d#une tai''e de -1 ,it$ ce &ui 'a rend de no$ Kour$ *aci'e 5 ca$$er a:ec 'e$ nou:e''e$ techno'ogie$ de cryptana'y$e. Mai$ e''e e$t touKour$ uti'i$0e pour de$ petite$ tcche$ te' &ue '#0change de c'0$ de cryptage 9techno'ogie SS);. La cl est sur 6>bits dont 1 sont utiliss comme calcul de l'intgrit des ?6 autres @paritA& )e DES e$t un $tandard uti'i$0 depui$ p'u$ de !6 an$. I' a $u$cit0 de nom,reu$e$ criti&ue$C de$ $u$picion$ de :u'n0ra,i'it0 5 'Aatta&ue de $on a'gorithmeC mai$ nAa pa$ eu dAa'ternati:e$ Ku$&uA5 ce$ derni>re$ ann0e$ / modi*i0 par 'a NSAC tra*i&u0 par I<MC L Principe de l,al"orit#me C#e$t un a'gorithme 5 ,a$e de / F d0ca'age G F H ou e.c'u$i* I G F tran$po$ition\recopie 9appe'0 e.pan$ion;. Ce$ op0ration$ $ont *aci'e$ 5 r0a'i$er par un proce$$eur. (e c#iffrement par DES est tr&s rapide2 Certaine$ puce$ $p0cia'i$0e$ chi**rent Ku$&u#5 1 Go de donn0e$ par $econde ce &ui e$t 0norme / c#e$t p'u$ &ue ce &u#e$t capa,'e de 'ire un di$&ue dur norma'. "rincipe de fonctionneent )#a'gorithme uti'i$e une c'0 de -1 ,it$. D0compo$ition du te.te en c'air en ,'oc F 'e te.te en c'air e$t d0coup0 en ,'oc de 1+ ,it$ &ui $eront chi**r0$ un par un G 8ti'i$ation en di**0rente$ 0tape$C 0:entue''ement r0p0t0e$ 9en tout 14 0tape$; / F 'a premi>re 0tape transpose cha&ue$ ,'oc$ de 1+ ,it$ du te.te en c'air a:ec 'a c'0 de -1 ,it$ G F 11 tapes intermdiaires G F '#a:ant derni>re 0tape intervertit 'e$ ! ,it$ de droite et de gauche G OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !6 % ++ Cryptographie F 'a derni>re 0tape transpose cha&ue$ ,'oc$ de 1+ ,it$ du te.te a:ec 'a c'0 de -1 ,it$ 9e.actement 5 '#in:er$e de 'a premi>re 0tape;. )e$ 11 0tape$ interm0diaire$ $ont identi&ue$ mai$ :arient par di**0rente$ uti'i$ation$ de 'a c'0 Une tape intermdiaire E''e con$i$te 5 couper 'e ,'oc de 1+ ,it$ en ! ,'oc$ de ! ,it$. )e ,'oc de $ortie de gauche $era une recopie du ,'oc de droite en entr0e. )e ,'oc de droite e$t uti'i$0 pour ca'cu'er un nom,re de +3 ,it$ 5 '#aide de r&"les de transposition et de recopie. Ce$ r>g'e $ont stoc:es dan$ de$ tables et 'eur con$truction re$te my$t0rieu$eL'e NSA y a particip0 V )a c'0 de -1 ,it$ e$t di:i$0e en ! ,'oc$ de !3 ,it$C $ur ce$ ,'oc$ de !3 ,it$ un dcala"e circulaire e$t e**ectu0 :er$ 'a gauche d#un nombre de position d0pendant de '#it0ration. 8n H ou e.c'u$i* I e$t ca'cu'0 entre 'e nom,re de +3 ,it$ et 'a c'0 de -1 ,it$. )e r0$u'tat de ce$ H ou e.c'u$i*$ I e$t d0coup0 en ,'oc$ de 1 ,it$. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !1 % ++ Cryptographie 0.1.1. La cryptanalyse ? <rute *orce / e$$ayer toute$ 'e$ c'0$ po$$i,'e$ V )e nombre de cls e$t lev 9!b-1T2C![16 11; et peut Jtre *aci'ement augment0 en changeant 'e nom,re de ,it$ pri$ en compte 9$oit e.actement 2!.6-2.-4-.62.4!2.41 c'0$ di**0rente$ V ;. E.emp'e / $i une per$onne peut te$ter 1 mi''ion de c'0$ par $econde i' 'ui *aut *;;; ans pour tout e$$ayer V )a 'oi de Moore / 0nonc0e par Gordon Moore en 26 / B le nombre de transistors d'une puce doublerait tous les 01 mois coCt constant D 142- / un ordinateur a ,e$oin de 166 666 Kour$ 966 an$; pour te$ter toute$ 'e$ c'0$... !666 / un ordinateur 166 666 *oi$ p'u$ pui$$ant a ,e$oin de 1 Kour 9un ordinateur 5 !66 Bd; V Cha''enge DES / propo$0 par 'a $oci0t0 RSA en Kan:ier 1442 F ca$$age du DES en 41 Kour$ G F *0:rier 43C ca$$age en +1 Kour$ G F Kui''et 43C ca$$age en -1 heure$ $ur une machine de moin$ de 16?d G F Kan:ier 44C ca$$age en moin$ de !+h V )e DES a 0t0 ca$$0 grcce au. m0thode$ de cr!ptanal!se diffrentielle et 5 'a pui$$ance coordonn0e$ de$ machine$ mi$e$ 5 di$po$ition par un 0tat par e.emp'e. (es volutions Si un a'gorithme e$t H us I i' e$t po$$i,'e d#uti'i$er de$ cls plus lon"ues. )e TDES 9;riple '(S; a 0t0 cr00 pour pa''ier 'e$ 'imite$ du DESC par 'Auti'i$ation dAune chaQne de troi$ chi**rement$ DES 5 '#aide de $eu'ement deu. c'0$ di**0rente$ / C#iffrement a:ec une c'0 C1%X dc#iffrement a:ec une c'0 C! %X c#iffement a:ec 'a c'0 C1 (,avenir 0 )e DES et 'e TDES $ont amen0$ 5 Jtre remp'ac0 par un nou:e' a'gorithme / 'e Ri<ndael 9du nom de $e$ in:enteur$; &ui a 0t0 $0'ectionn0 pour de:enir AES. 12. Le cryptage ' cl# sym#trique - le 1., Un standard de c#iffrement D0:e'opp0 dan$ 'e$ ann0e$ 26 par I<MC 'a m0thode DES *ut adopt0e et rendue $tandard par 'e gou:ernement de$ Etat$ 8ni$. I' de:ait r0pondre 5 'A0po&ue au. crit>re$ $ui:ant$ / OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !! % ++ Cryptographie F a:oir un haut ni:eau de $0curit0 'i0 5 une c'0 de petite tai''e $er:ant au chi**rement et au d0chi**rementC F Jtre compr0hen$i,'eC F ne pa$ d0pendre de 'a con*identia'it0 de '#a'gorithmeC F Jtre adapta,'e et 0conomi&ueC F Jtre e**icace et e.porta,'e. )a m0thode DES uti'i$e de$ c'0$ d#une tai''e de -1 ,it$ ce &ui 'a rend de no$ Kour$ *aci'e 5 ca$$er a:ec 'e$ nou:e''e$ techno'ogie$ de cryptana'y$e. Mai$ e''e e$t touKour$ uti'i$0e pour de$ petite$ tcche$ te' &ue '#0change de c'0$ de cryptage 9techno'ogie SS);. )a c'0 e$t $ur 1+,it$ dont 3 $ont uti'i$0$ comme ca'cu' de '#int0grit0 de$ -1 autre$ 9parit0;. )e DES e$t un $tandard uti'i$0 depui$ p'u$ de !6 an$. I' a $u$cit0 de nom,reu$e$ criti&ue$C de$ $u$picion$ de :u'n0ra,i'it0 5 'Aatta&ue de $on a'gorithmeC mai$ nAa pa$ eu dAa'ternati:e$ Ku$&uA5 ce$ derni>re$ ann0e$ / modi*i0 par 'a NSAC tra*i&u0 par I<MC L Principe de l,al"orit#me C#e$t un a'gorithme 5 ,a$e de / F dcala"e G F H ou e%clusif I G F transposition\recopie 9appe'0 expansion;. Ce$ op0ration$ $ont faciles 5 r0a'i$er par un proce$$eur. (e c#iffrement par DES est tr&s rapide2 Certaine$ puce$ $p0cia'i$0e$ chi**rent Ku$&u#5 1 Go de donn0e$ par $econde ce &ui e$t 0norme / c'est plus que ce qu'est capable de lire un disque dur normal. 10.1. DES : l'algorithme Principe de fonctionnement L'algorithme utilise une cl de ?6 bits& D0compo$ition du te.te en c'air en ,'oc / 'e te.te en c'air e$t d0coup0 en ,'oc de 1+ ,it$ &ui $eront chi**r0$ un par un G 8ti'i$ation en di**0rente$ 0tape$C 0:entue''ement r0p0t0e$ 9en tout 04 tapesA E F 'a premi>re 0tape tran$po$e cha&ue$ ,'oc$ de 1+ ,it$ du te.te en c'air a:ec 'a c'0 de -1 ,it$ G F 11 0tape$ interm0diaire$ G F '#a:ant derni>re 0tape inter:ertit 'e$ ! ,it$ de droite et de gauche G F 'a derni>re 0tape tran$po$e cha&ue$ ,'oc$ de 1+ ,it$ du te.te a:ec 'a c'0 de -1 ,it$ 9exactement l'in)erse de la premi%re tape;. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 ! % ++ Cryptographie )e$ 11 0tape$ interm0diaire$ $ont identi&ue$ mai$ :arient par di**0rente$ uti'i$ation$ de 'a c'0 Une tape intermdiaire E''e con$i$te 5 couper 'e ,'oc de 1+ ,it$ en ! ,'oc$ de ! ,it$. )e ,'oc de $ortie de gauche $era une recopie du ,'oc de droite en entr0e. )e ,'oc de droite e$t uti'i$0 pour ca'cu'er un nom,re de +3 ,it$ 5 '#aide de r>g'e$ de tran$po$ition et de recopie. Ce$ r>g'e $ont $toc?0e$ dan$ de$ ta,'e$ et 'eur con$truction re$te my$t0rieu$eL'e NSA y a particip0 V )a c'0 de -1 ,it$ e$t di:i$0e en ! ,'oc$ de !3 ,it$C $ur ce$ ,'oc$ de !3 ,it$ un d0ca'age circu'aire e$t e**ectu0 :er$ 'a gauche d#un nom,re de po$ition d0pendant de '#it0ration. 8n H ou e.c'u$i* I e$t ca'cu'0 entre 'e nom,re de +3 ,it$ et 'a c'0 de -1 ,it$. )e r0$u'tat de ce$ H ou e.c'u$i*$ I e$t d0coup0 en ,'oc$ de 1 ,it$. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !+ % ++ Cryptographie 12.1.1. La cryptanalyse ? <rute *orce / e$$ayer toute$ 'e$ c'0$ po$$i,'e$ V )e nom,re de c'0$ e$t 0'e:0 9!b-1T2C![16 11; et peut Jtre *aci'ement augment0 en changeant 'e nom,re de ,it$ pri$ en compte 9$oit e.actement 2!.6-2.-4-.62.4!2.41 c'0$ di**0rente$ V ;. E.emp'e / $i une per$onne peut te$ter 1 mi''ion de c'0$ par $econde i' 'ui *aut 1666 an$ pour tout e$$ayer V )a 'oi de Moore / 0nonc0e par Gordon Moore en 26 / B le nombre de transistors d'une puce doublerait tous les 01 mois coCt constant D 142- / un ordinateur a ,e$oin de 166 666 Kour$ 966 an$; pour te$ter toute$ 'e$ c'0$... !666 / un ordinateur 166 666 *oi$ p'u$ pui$$ant a ,e$oin de 1 Kour 9un ordinateur 5 !66 Bd; V Cha''enge DES / propo$0 par 'a $oci0t0 RSA en Kan:ier 1442 F ca$$age du DES en 41 Kour$ G F *0:rier 43C ca$$age en +1 Kour$ G F Kui''et 43C ca$$age en -1 heure$ $ur une machine de moin$ de 16?d G F Kan:ier 44C ca$$age en moin$ de !+h V )e DES a 0t0 ca$$0 grcce au. m0thode$ de cryptana'y$e di**0rentie''e et 5 'a pui$$ance coordonn0e$ de$ machine$ mi$e$ 5 di$po$ition par un 0tat par e.emp'e. (es volutions Si un a'gorithme e$t H us I i' e$t po$$i,'e d#uti'i$er de$ c'0$ p'u$ 'ongue$. )e TDES 9;riple '(S; a 0t0 cr00 pour pa''ier 'e$ 'imite$ du DESC par 'Auti'i$ation dAune chaQne de troi$ chi**rement$ DES 5 '#aide de $eu'ement deu. c'0$ di**0rente$ / Chi**rement a:ec une c'0 C1%X d0chi**rement a:ec une c'0 C! %X chi**ement a:ec 'a c'0 C1 (,avenir 0 )e DES et 'e TDES $ont amen0$ 5 Jtre remp'ac0 par un nou:e' a'gorithme / 'e RiKndae' 9du nom de $e$ in:enteur$; &ui a 0t0 $0'ectionn0 pour de:enir AES. 1,.2. Chiffrement ! cl symtrique 0 /utres alorithmes 12.2.1. -., 3-d4anced .ncryption ,tandard5 )#AES e$t un $tandard de cryptage $ym0tri&ue de$tin0 5 remp'acer 'e DES 9Data Encryption Standard; &ui e$t de:enu trop *ai,'e au regard de$ atta&ue$ actue''e$. )#AES F e$t un $tandardC 'i,re d#uti'i$ationC $an$ re$triction d#u$age ni ,re:et G OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !- % ++ Cryptographie F e$t un a'gorithme de chi**rement par ,'oc$ 9comme 'e DES; G F $upporte di**0rente$ com,inai$on$ e'ongueur de c'0f%e'ongueur de ,'ocf / 1!3% 1!3C 14!%1!3 et !-1%1!3 ,it$ )e choi. de cet a'gorithme r0pond 5 de nom,reu. crit>re$ te'$ &ue / F 'a $0curit0 ou '#e**ort re&ui$ pour une 0:entue''e cryptana'y$e G F 'a *aci'it0 de ca'cu' / ce'a entraQne une grande rapidit0 de traitement G F 'e$ *ai,'e$ ,e$oin$ en re$$ource$ / m0moire tr>$ *ai,'e$ G F 'a *'e.i,i'it0 d#imp'0mentation / ce'a inc'ut une grande :ari0t0 de p'ate$%*orme$ et d#app'ication$ ain$i &ue de$ tai''e$ de c'0$ et de ,'oc$ $upp'0mentaire$ 9i' e$t po$$i,'e d#imp'0menter '#AES au$$i ,ien $ou$ *orme 'ogicie''e &ue mat0rie''eC cc,'0; G F 'a $imp'icit0 / 'e de$ign de '#AES e$t re'ati:ement $imp'e. 12.2.2. I1.- 3International 1ata .ncryption -lgorithm5 F conDu dan$ 'e$ ann0e$ 46 par deu. chercheur$ $ui$$e$ 9)ai et Ma$$ey; de '#ETH 9Eidgeng$$i$che Techni$che Hoch$chu'e; de PurichC IDEA 9Internationa' Data Encryption A'gorithm; G F uti'i$e une c'0 de 1!3 ,it$ G F r0$i$tera encore pendant &ue'&ue$ diRaine$ d#ann0e$ au. atta&ue$ cryptana'yti&ue$. Aucune atta&ue e.i$te contre '#IDEA. IDEA e$t ,re:et0 au. Etat$%8ni$ et dan$ de nom,reu. pay$ europ0en$. "'(! est gratuit tant que son utilisation reste non commerciale& 12.2.3. 6lo7fish F d0:e'opp0 par <ruce Schneier G F ,'o=*i$h tra:ai''e par ,'oc de 1+ ,it$ en uti'i$ant une c'0 :aria,'e pou:ant a''er Ku$&uA5 ++3 ,it$ G F i' nAe.i$te aucun moyen de ca$$er cet a'gorithme. #lo$fish est utilis dans diffrents logiciels tel que F!G;"LGS ou *H*I8F( 12.2.4. +4 3+i4est ipher 45 F a'gorithme de cryptage tr>$ rapide G F uti'i$0 dan$ de mu'tip'e$ app'ication$ te''e$ &ue 'e$ communication$ $0curi$0e$ pour crypter 'e tra*ic tran$itant entre de$ inter'ocuteur$ G F RC+ e$t ,a$0 $ur 'Auti'i$ation de permutation$ a'0atoire$. Le gou)ernement des (tats-Gnis autorise lJexportation du K7> a)ec des cls de >L bits& 7ro,'>me / un *'u. chi**r0 a:ec ! c'0$ identi&ue$ $era *aci'ement ca$$a,'e OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !1 % ++ Cryptographie 1,.". Chiffrement ! cl publique 1ersus chiffrement ! cl secr2te Remar&ue$ $ur 'e chi**rement 5 c'0 pu,'i&ue / L'utilisation de tels codes de chiffrement est coCteuse. ils ne peu)ent pas 9tre appliqu sur un grand dbit de donnes transmettre& 7rincipau. a'gorithme$ uti'i$0$ / RSAC Ri:e$tC Shamir et Ade'man 1423. E' Gama' 1431. Remar&ue$ $ur 'e chi**rement 5 c'0 pri:0e Di**icu't0 du partage de$ c'0$C ain$i &ue 'a mu'tip'ication de$ c'0$ &uand p'u$ieur$ inter'ocuteur$ $ont en contact. Dan$ un r0$eau de - per$onne$ communicant entre e''e$ i' *aut n9n%1;\! c'0$C $oient 16 c'0$ di**0rente$.. 12.3.1. omparaisons entre +,- et 1., RS1 F c'0 de +6 ,it$ F chi**rement mat0rie' / 66 B,it$\$ec F chi**rement 'ogicie' / !1C1 B,it$\$ec F Incon:0nient maKeur / un pirate $u,$titue $a propre c'0 pu,'i&ue 5 ce''e du de$tinataireC i' peut a'or$ intercepter et d0crypter 'e me$$age pour 'e recoder en$uite a:ec 'a :raie c'0 pu,'i&ue et 'e ren:oyer $ur 'e r0$eau. H )Aatta&ue I ne $era pa$ d0ce'0e. F u$age / on ne 'e$ emp'oiera &ue pour tran$mettre de$ donn0e$ courte$ 9de &ue'&ue$ octet$; te''e$ &ue 'e$ c'0$ pri:0e$ et 'e$ $ignature$ 0'ectroni&ue$. DES F c'0 de -1 ,it$ F chi**rement mat0rie' / 66 M,it$\$ec F chi**rement 'ogicie' / !C1 M,it$\$ec F Incon:0nient maKeur / atta&ue H ,rute *orce I rendue po$$i,'e par 'a pui$$ance de$ machine$. F 8$age / chi**rement rapideC adapt0 au. 0change$ de donn0e$ de tou$ 'e$ protoco'e$ de communication $0curi$0$. 1,.4. Comparaison et combinaison (a scurit offerte par le c#iffrement - cl )a $0curit0 d#un code 5 c'0 e$t proportionne''e 5 'a tai''e de 'a c'0 emp'oy0eC c%5%d. p'u$ 'a c'0 e$t 'ongue p'u$ i' *aut de ca'cu' et donc de temp$ pour arri:er 5 'e ca$$er. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !2 % ++ Cryptographie C#iffrement par substitution / !1 'ettre$ po$$i,'e$ a$$ocia,'e$C $oit !1V 9*actorie''e !1; $oient !41 +11 / 1!1 16- 1- -3+ 666 666 po$$i,i'it0$ V mai$ '#ana'y$e *r0&uentie''e... (e c#iffrement - cl / i' prot>ge de$ ana'y$e$ *r0&uentie''e$ G Atta&ue H ,rute *orce I / e$$ayer toute$ 'e$ c'0 po$$i,'e$ pour d0chi**rer 'e me$$age chi**r0C donc p'u$ 'a c'0 e$t 'ongue 9nom,re de ,it$; p'u$ i' y a de c'0 5 e$$ayer 9! *oi$ p'u$ de c'0 5 e$$ayer pour cha&ue ,it aKout0 V;. )a *orce de 'a $0curit0 e$t 5 mettre en rapport a:ec 'e type de donn0e$ 5 $0curi$er / _ une tran$action ,ancaire doit Jtre $0curi$0e pendant &ue'&ue$ minute$ _ un document $ecret d#0tat doit pou:oir Jtre prot0g0 p'u$ de -6 an$ par e.emp'e. (a vitesse I' e.i$te un d0ca'age de pui$$ance de ca'cu' pour 'e chi**rement\d0chi**rement de$ code$ 5 c'0 $ecr>te 9a'gorithme de cryptage $ym0tri&ue de type DES; et 5 c'0 pu,'i&ue 9a'gorithme de cryptage a$ym0tri&ue de type RSA;. Code 5 c'0 $ecr>te / app'ica,'e 5 un d0,it de donn0e$ $up0rieur. C#e$t pour&uoi $eu'e '#uti'i$ation de code 5 c'0 $ecr>te e$t Hr0a'i$teI pour $0curi$er une tran$action entre deu. uti'i$ateur$ $ur Internet. R0$o'ution du pro,'>me de '#0change de$ c'0$ $ecr>te$ / uti'i$ation d#une m0thode hy,ride com,inant 5 'a *oi$ chi**rement $ym0tri&ue et a$ym0tri&ue 1,.5. #e chiffrement par bloc )e chi**rement par ,'oc e$t 'a mani>re choi$ie pour chi**rer 'e me$$age d0compo$0 en ,'ocC c%5%d. dan$ &ue' ordre et apr>$ &ue' tran$*ormation cha&ue ,'oc :a Jtre chi**r0. On par'era de mode d#op0ration$. =uatres modes dfinis "uatre mode$ $ont d0*ini$ dan$ @I7S 31C @edera' In*ormation 7roce$$ing Standard$ 7u,'ication 31C 9! d0cem,re 1436; et au$$i dan$ 'a norme ANSI U.161%143. F E'ectronic Code <oo? 9EC<; G F Cipher <'oc? Chaining 9C<C; G F Cipher @eed<ac? 9C@<; G F Output @eed<ac? 9O@<;. EC< / E'ectronic Code,oo? Mode d#op0ration norma' / i' app'i&ue '#a'gorithme au te.te c'air en tran$*ormant norma'ement cha&ue ,'oc de te.te c'air. Tenf T ni>me ,'oc de te.te en c'air. Chi**rement / Cenf T E9Tenf; Cenf T ni>me ,'oc de te.te chi**r0. D0chi**rement / Tenf T D9Cenf; E9m; T *onction de chi**rement du ,'oc m. T et C $ont d#une 'ongueur *i.e. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !3 % ++ Cryptographie D9m; T *onction de d0chi**rement du ,'oc m. Probl&mes / F $i on uti'i$e deu. *oi$ 'e mJme te.te c'air et 'a mJme c'0 de chi**rementC 'e r0$u'tat du chi**rement $era identi&ue. F i' *aut un nom,re $u**i$ant d#octet$ de te.te en c'air 9huit octet$ pour 'e DES par e.emp'e; a:ant de commencer. 12.$.1. 6 * ipher 6loc8 haining C#e$t un de$ mode$ 'e$ p'u$ popu'aire$. I' apporte une $o'ution au premier pro,'>me du mode EC< / F a:ant d#Jtre chi**r0C '#op0ration ,inaire H UOR I e$t app'i&u0e entre 'e ,'oc actue' de te.te en c'air et 'e ,'oc pr0c0dent de te.te chi**r0 G F pour 'e tout premier ,'ocC un ,'oc de contenu a'0atoire e$t g0n0r0 et uti'i$0C appe'0 H :ecteur d#initia'i$ation I 9initia'iRation :ectorC ou IM;. Ce premier ,'oc e$t en:oy0 te' &ue' a:ec 'e me$$age chi**r0. Tenf T ni>me ,'oc de te.te en c'air. E9m; T *onction de chi**rement du ,'oc m. Cenf T ni>me ,'oc de te.te chi**r0. D9m; T *onction de d0chi**rement du ,'oc m. MI T :ecteur d#initia'i$ation C#iffrement / Ce6f T E9Te6f .or MI; Cenf T E9Tenf .or Cen%1f; C $i 9n X 6; Dc#iffrement ' Te6f T D9Cenf; .or MI Tenf T DeCenf; .or Cen%1f C $i 9n X 6; T et C $ont d#une 'ongueur *i.e 12.$.2. 9:6 * 9utput :eed!ac8 Le mode OFB est une solution aux deux problmes relatifs au mode ECB. Au dpart un vecteur d'initialisation est gnr. Ce bloc est ciffr ! plusieurs reprises et cacun des rsultats est utilis successivement dans l'application de l'opration "O# avec un bloc de texte en clair. Le vecteur d'initialisation est envo$ tel %uel avec le message ciffr. &'n( ) nime bloc de texte en clair. *'n( ) nime bloc temporaire C'n( ) nime bloc de texte ciffr. #'n( ) nime bloc temporaire second E+m, ) fonction de ciffrement et de dciffrement du bloc m -* ) vecteur d'initialisation C!iffreent # OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 !4 % ++ Cryptographie *'.( ) -* *'n( ) #'n/0( 1 si +n 2 ., #'n( ) E+*'n(, C'n( ) &'n( xor #'n( Dc!iffreent # *'.( ) -* *'n( ) #'n/0( 1 si +n 2 ., #'n( ) E+*'n(, &'n( ) C'n( 3 #'n( & et C sont d'une longueur fixe Probl&mes # F le texte en clair est seulement soumis ! un "O#. 4i le texte clair est connu1 un tout autre texte en clair peut 5tre substitu en inversant les bits du texte ciffr de la m5me manire %u'inverser les bits du texte clair +bit/flipping attac6,. 7 il existe une petite possibilit %u'une cl et un vecteur d'initialisation soient coisis tels %ue les blocs successifs gnrs puissent se rpter sur une courte boucle. Le mode OFB est souvent utilis comme gnrateur de nombre alatoire. 11. Le chiffrement par flu/ 11.1.1. 1#finition )e$ a'gorithme$ de chi**rement par *'u. peu:ent Jtre :u comme de$ a'gorithme$ de chi**rement par ,'oc oE 'e ,'oc a une dimen$ion unitaire 91 ,itC 1 octetL; ou re'ati:ement petite. I'$ $ont appe'0$ $tream cipher$. 1vanta"es ' F 'a m0thode de chi**rement peut Jtre chang0e 5 cha&ue $ym,o'e du te.te c'air G F i'$ $ont e.trJmement rapide$ G F i'$ ne propagent pa$ 'e$ erreur$ 9di**u$ion; dan$ un en:ironnement oE 'e$ erreur$ $ont *r0&uente$ G F i'$ $ont uti'i$a,'e$ 'or$&ue '#in*ormation ne peut Jtre trait0e &u#a:ec de petite$ &uantit0$ de $ym,o'e$ 5 'a *oi$ 9par e.emp'e $i '#0&uipement n#a pa$ de m0moire phy$i&ue ou une m0moire tampon tr>$ 'imit0e;. Fonctionnement ' I'$ app'i&uent de $imp'e$ tran$*ormation$ $e'on un ?ey$tream uti'i$0. )e ?ey$tream e$t une $0&uence de ,it$ uti'i$0e en tant &ue c'0 &ui e$t g0n0r0e a'0atoirement par un a'gorithme 9?ey$tream generator;. Proprits ' A:ec un ?ey$tream choi$i a'0atoirement et uti'i$0 &u#une $eu'e *oi$C 'e te.te chi**r0 e$t tr>$ $0curi$0. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 6 % ++ Cryptographie )a g0n0ration du ?ey$tream peut Jtre / F ind0pendante du te.te en c'air et du te.te chi**r0C appe'0e chi**rement de *'u. $ynchrone 9$ynchronou$ $tream cipher; G F d0pendante 9$e'*%$ynchroniRing $tream cipher;. )e$ chi**rement$ de *'u. 'e$ p'u$ r0pandu$ $ont $ynchrone$ A'gorithme$ 'e$ p'u$ connu$ / (FSR 9)inear @eed,ac? Shi*t Regi$ter;C rapide mai$ :u'n0ra,'e 5 '#heure actue''e. RC>C in:ent0 par Ron Ri:e$t en 32 9$oci0t0 RSA;C uti'i$0 dan$ 'e protoco'e SS) et Orac'e Secure S"). SE1( 9So*t=are%optimiRed Encryption A'gorithm;C Don Copper$mith et 7hi''ip Roga=ay en 4 9I<M;Cp'u$ rapide &ue RC+. 11.1.2. .change s#curis# )#uti'i$ation d#a'gorithme de chi**rement 5 c'0 $ym0tri&ue n#e$t pa$ r0a'i$te d#un point de :ue de 'a pui$$ance de ca'cu' n0ce$$aire. Cette puissance au$ente en %e teps &u#i' e$t n0ce$$aire d#am0'iorer 'a $0curit0 de ce$ a'gorithme$ 9augmentation de 'a tai''e de$ c'0; / 'e dcala$e reste V I' e.i$te a'or$ $oit 5 trou:er un moyen de partager $ecr0tement une mJme c'0 $ecr>te ou ,ien 5 com,iner 'e$ deu. / '#0change de 'a c'0 $ecr>te d#un a'gorithme de chi**rement $ym0tri&ue e$t H prot0g0 I par un a'gorithme de chi**rement a$ym0tri&ue. A&anta$es # 7 'a c'0 $ecr0te e$t chi**r0e et 0chang0e G 7 apr>$ '#0change on ,a$cu'e 'e chi**rement en uti'i$ant un a'gorithme $ym0tri&ue p'u$ rapide G 7 on d0marre '#0change a:ec '#uti'i$ation d#un a'gorithme a$ym0tri&ue &ui po$$>de '#a:antage d#o**rir un moyen d#identi*ier 'e$ inter'ocuteur$. )#a'gorithme RSA a 'a propri0t0 chi**rement9d0chi**rement9M;; T d0chi**rement9chi**rement9M;;. 'c!an$e scuris d'inforation Cet 0change $e d0rou'e en ! pha$e$ / 7 0change $0curi$0 d#une c'0 $ecr>te pour 'a $e$$ionC appe'0e 0ga'ement Hc'0 de $e$$ionI 7 0change $0curi$0 de$ me$$age$ 5 '#aide d#un a'gorithme 5 c'0 $ecr>te. 8ne pha$e d#authenti*ication de$ inter'ocuteur$ peut Jtre aKout0e$ au d0,ut 11.2. Cl de session C#e$t un compromi$ entre 'e chi**rement $ym0tri&ue et a$ym0tri&ue permettant de com,iner 'e$ deu. techni&ue$. I' e.i$te deu. m0thode$ / 7remi>re po$$i,i'it0 / OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1 % ++ Cryptographie F g0n0rer a'0atoirement une c'0 de tai''e rai$onna,'e uti'i$0e pour un a'gorithme de cryptage $ym0tri&ueG F chi**rer cette c'0 5 '#aide d#un a'gorithme de cryptage 5 c'0 pu,'i&ue 95 '#aide de 'a c'0 pu,'i&ue du de$tinataire; G Ce'a impo$e &ue '#un de$ inter'ocuteur$ po$$>de 'a c'0 pu,'i&ue de '#autre 9pa$ touKour$ *aci'e de $#a$$urer &ue 'a c'0 pu,'i&ue appartient ,ien 5 'a ,onne per$onne;. Seconde po$$i,i'it0 / F con$truire une c'0 de $e$$ion 5 '#aide de 'a m0thode dA0change de$ c'0$ de Di**ie%He''man. F 'e$ inter'ocuteur$ n#ont pa$ ,e$oin de partager une c'0 pu,'i&ue a:ant de commencer 'eur communication chi**r0e V Cette m0thode e$t e.tr0mement emp'oy0e pour initier un cana' de tran$mi$$ion $0curi$0e a:ant tout 0change. )e$ deu. inter'ocuteur$ di$po$ent en$uite / F d#une c'0 commune &u#i'$ $ont $eu'$ 5 connaQtre F de 'a po$$i,i'it0 de communi&uer en chi**rant 'eur donn0e$ 5 '#aide d#un a'gorithme de chi**rement $ym0tri&ue rapide. 11.2.1. La m#thode d;#change des cl#s de 1iffie-<ellman A'ice et <o, $e mettent en accord $ur deu. grand$ nom,re$ premier$ n et g a:ec 9n%1;\! premier et &ue'&ue$ condition$ $ur g. Ce$ nom,re$ $ont pu,'ic$. A'ice prend 'e nom,re n et <o, 'e nom,re g. A'ice choi$it un nom,re de -1! ,it$ $ecret .C <o, *ait de mJme a:ec y. A'ice en:oie 5 <o, un me$$age contenant 'e nom,re nC 'e nom,re g et 'e r0$u'tat de 9gb. mod n; <o, en:oie 5 A'ice 'e r0$u'tat de 9gby mod n; A'ice et <o, ca'cu'ent 9gby mod n;b. et 9gb. mod n;by A et < partagent maintenant 'a mJme c'0 $ecr>te gb.y mod n. Si O$carC '#intru$ capture g et nC i' ne peut pa$ ca'cu'er . et yC car i' n#e.i$te pa$ de m0thode humainement uti'i$a,'e pour ca'cu'er . 5 partir de gb. mod n V "robl(e / O$car peut $#in$0rer entre A'ice et <o, et propo$0 $a :a'eur R en 'ieu et p'ace de . pour <o, et de y pour A'ice / A'ice %%X nC gC gb. mod n %%X O$car _X nC gC gbR mod n _X <o, h_ gbR mod n h%% h_ gby mod n h_ Conclusion / i' *aut une pha$e prliinaire d'aut!entification V 12. L'authentification (,aut#entification est suivie par l,autorisation OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 ! % ++ Cryptographie L'autorisation dfinit les ressources1 services et informations %ue la personne identifie peut utiliser1 consulter ou mettre ! 8our1 exemple 9 son courrier lectroni%ue1 des ficiers sur un serveur F&:; (,approc#e traditionnelle Combinaison d'une identification et d'un mot de passe +code secret personnel,. Le mot de passe doit possder certaines caractristi%ues 9 non trivial1 difficile ! deviner1 rgulirement modifi1 secret; <es outils logiciel ou ard=are de gnration de mots de passe existent1 mais les mots de passe gnrs sont difficiles ! retenir > (,approc#e volue? la notion de c#allen"e@rponse Alice envoie ! Bob un me$$age a'0atoire +callenge, Ciffement ! c'0 $ecr>te 9 7 Alice et Bob partage une m5me cl secrte ? 7 Bob renvoie ! Alice le message chi**r0 ! l'aide de la cl secrte +rponse, ? F Alice peut d0chi**rer le message ciffr avec la cl secrte...C'est Bob > Ciffrement ! c'0 pu,'i&ue 9 7 Bob renvoie ! Alice le message ciffr ! l'aide de sa cl prive +rponse, ? 7 exploitation de la proprit ciffrement+dciffrement+@,, ) dciffrement+ciffrement+@,, ? F Alice peut dciffrer ce message ciffr ! l'aide de la cl publi%ue de Bob; c'est donc Bob > Probl&me 9 cette mtode permet de faire des atta%ues sur la cl prive de Bob en soumettant des messages alatoires bien coisi. Solution 9 calculer un ArsumB du message alatoire initial1 un CdigestD1 et l'utiliser ! la place du message alatoire lors du ciffrement. L'obtention de ce ArsumB se fait ! l'aide d'une fonction de acage 12.1. 3onction de hachae 8ne *onction de hachage e$t une *onction permettant d#o,tenir un r0$um0 d#un te.teC c%5%d. une $uite de caract>re$ a$$eR courte repr0$entant 'e te.te &u#i' r0$ume. )a *onction de hachage doit / F Jtre te''e &u#e''e a$$ocie un et un $eu' r0$um0 5 un te.te en c'air 9ce'a $igni*ie &ue 'a moindre modi*ication du document entraine 'a modi*ication de $on r0$um0;C c%5%d. H $an$ co''i$ion I. F Jtre une *onction 5 $en$ uni&ue 9one%=ay *unction; a*in &u#i' $oit impo$$i,'e de retrou:er 'e me$$age origina' 5 partir du r0$um0. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 % ++ Cryptographie y T @9.;C mai$ i' e$t impo$$i,'e de retrou:er . 5 partir de y V Proprits une *onction de hachage OHO tran$*orme une entr0e de donn0e$ d#une dimen$ion :aria,'e OmO et donne comme r0$u'tat une $ortie de donn0e$ in*0rieure et *i.e OhO 9h T H9m;;. F '#entr0e peut Jtre de dimen$ion :aria,'e G F 'a $ortie doit Jtre de dimen$ion *i.e G F H9m; doit Jtre re'ati:ement *aci'e 5 ca'cu'er G F H9m; doit Jtre une *onction 5 $en$ uni&ue G F H9m; doit Jtre H $an$ co''i$ion I. Utilisation A 1ut#entification et int"rit )e$ a'gorithme$ de hachage $ont uti'i$0$ / F dan$ 'a g0n0ration de$ $ignature$ num0ri&ue$C dan$ ce ca$C 'e r0$u'tat OhO e$t appe'0 OempreinteO G F pour 'a :0ri*ication $i un document a 0t0 modi*i0 9'e changement d#une partie du document change $on empreinte; G F pour 'a con$truction du MACC Me$$age Authentication CodeC ou code d#authenti*ication de me$$ageC i' permet de Koindre '#empreinte du me$$age chi**r0 a:ec une c'0 $ecr>te ce &ui prot>ge contre toute modi*ication du me$$age 9$i '#intru$ modi*ie 'e me$$age et $on empreinteC i' e$t incapa,'e de chi**r0e ce''e%ci pour 'a remp'acer dan$ 'e me$$age;. 12.1.1. (rincipau/ algorithmes I' e.i$te di**0rent$ a'gorithme$ r0a'i$ant de traitement / 7 MD)C MD* et MD+ 9MD $igni*iant Me$$age Dige$t;C d0:e'opp0 par Ron Ri:e$t 9$oci0t0 RSA Security;C cr0ant une empreinte digita'e de 1!3 ,it$ pour MD-. I' e$t courant de :oir de$ document$ en t0'0chargement $ur Internet accompagn0$ d#un *ichier MD-C i' $#agit du r0$um0 du document permettant de :0ri*ier '#int0grit0 de ce dernier F ,-A 9pour Secure Ha$h A'gorithmC pou:ant Jtre traduit par A'gorithme de hachage $0curi$0;C d0:e'opp0 par 'e NIST en 144-. i' cr0e de$ empreinte$ d#une 'ongueur de 116 ,it$. C#e$t un $tandard SHA6 et SHA1 9de:enu 'e $tandard SHS; 7 RACE Integrity 7rimiti:e$ E:a'uation Me$$age Dige$tC d0:e'opp0 par Han$ Do,,ertinC Antoon <o$$e'aer$ et <art 7renee' G 7 R."EMD%1!3 et RI7EMD%116C cr00 entre 33 et 4! G F Ti$erC d0:e'opp0 par Ro$$ Ander$on et E'i <ihamC p'u$ rapide &ue MD- 91!M,\$ contre 2M,\$ $ur une mJme machineC optimi$0 pour proce$$eur 1+,it;. 12.2. #a sinature lectronique )e $ce''ement ou $ceau ou $ignature 0'ectroni&ue *l est possible de 9 OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 + % ++ Cryptographie F Koindre ! un document sa $ignature obtenue ! l'aide d'une fonction de acage en la ciffrant ! l'aide de sa cl prive. )e document peut Jtre identi*i0 comme pro:enant de 'a per$onne 9Authenti*ication; et ce'a a$$ure 0ga'ement 'a non%r0pudiation 9uti'i$ation de 'a c'0 pri:0e;. I' e$t po$$i,'e de d0chi**rer cette $ignature 5 '#aide de 'a c'0 pu,'i&ue de 'a per$onne. Cette $ignature permet de contr]'er '#int0grit0 du document. )a con*identia'it0 e$t a$$urer par un chi**rement du document. I' e$t optionne' car ce'a n0ce$$ite du temp$ 9uti'i$ation d#un chi**rement 5 c'0 pu,'i&ue; Fonctionnement 1. )#e.p0diteur ca'cu'e '#empreinte de $on te.te en c'air 5 '#aide d#une *onction de hachage G !. )#e.p0diteur chi**re '#empreinte a:ec $a c'0 pri:0e G )e chi**rement du document e$t optionne' $i 'a con*identia'it0 n#e$t pa$ n0ce$$aire. . )#e.p0diteur chi**re 'e te.te en c'air et '#empreinte chi**r0e 5 '#aide de 'a c'0 pu,'i&ue du de$tinataire. +. )#e.p0diteur en:oie 'e document chi**r0 au de$tinataire G -. )e de$tinataire d0chi**re 'e document a:ec $a c'0 pri:0e G 1. )e de$tinataire d0chi**re '#empreinte a:ec 'a c'0 pu,'i&ue de '#e.p0diteur 9authenti*ication; G 2. )e de$tinataire ca'cu'e '#empreinte du te.te c'air 5 '#aide de 'a mJme *onction de hachage &ue '#e.p0diteur G 3. )e de$tinataire compare 'e$ deu. empreinte$. Deu. empreinte$ identi&ue$ imp'i&uent &ue 'e te.te en c'air n#a pa$ 0t0 modi*i0 9int0grit0;. )e $tandard am0ricain e$t 'e DSS 9Digita' Signature Standard;C &ui $p0ci*ie troi$ a'gorithme$ / 'e DSA 9Digita' Signature A'gorithm;C RSA et ECDSA 9E''iptic Cur:e$ Digita' Signature A'gorithm;. 12.". #a sinature lectronique et la notion de certificat )e pro,'>me de 'a di**u$ion de$ c'0$ pu,'i&ue$ Le problme est de s'assurer %ue la cl %ue l'on rcupre provient bien de la personne concerne 9 rien ne garantit %ue la cl est bien celle de l'utilisateur ! %ui elle est associe. En pirate peut remp'acer la c'0 pu,'i&ue prsente dans un annuaire par $a cl publi%ue. Ainsi, il peut dchiffrer tous les messages ayant t chiffrs avec cette cl. *l peut m5me ensuite renvo$er ! son vritable destinataire le message +modifi ou non, en ciffrant avec la cl originale pour ne pas 5tre dmas%u > Notion de certi*icat En certi*icat permet d#a$$ocier une c'0 pu,'i&ue ! une entit0 +une personne1 une macine1 ..., afin d'en assurer la :a'idit0. Le certificat est la carte d'identit de la cl publique, dlivr par un organisme appel autorit de certification. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 - % ++ Cryptographie Ces certificats sont mis et sign par une tierce partie1 '#autorit0 de certi*ication ou CA +Certificate Autorit$,. L'autorit de certification est carge de 7 d0'i:rer les certificats ? 7 dFassigner une date de :a'idit0 aux certificats +%uivalent ! la date limite de premption des produits alimentaires, ? 7 r0:o&uer ventuellement des certificats avant cette date en cas de compromission de la cl +ou du propritaire,. 13. ,,L 13.1.1. Introduction SS) 9Secure Soc:ets (a!ersC &ue '#on pourrait traduire par couche de soc,ets scurise; e$t un proc0d0 de $0curi$ation de$ tran$action$ e**ectu0e$ :ia Internet. )e $tandard SS) a 0t0 mi$ au point par FetscapeC en co''a,oration a:ec MastercardC #an, of !mericaC M7" et Silicon Hraphics. I' repo$e $ur un proc0d0 de cryptographie par c'e* pu,'i&ue a*in de garantir 'a $0curit0 de 'a tran$mi$$ion de donn0e$ $ur internet. Son principe con$i$te 5 0ta,'ir un cana' de communication $0curi$0 9chi**r0; entre deu. machine$ 9un c'ient et un $er:eur; apr>$ une 0tape d#authenti*ication. )e $y$t>me SS) e$t ind0pendant du protoco'e uti'i$0C ce &ui $igni*ie &u#i' peut au$$i ,ien $0curi$er de$ tran$action$ *aite$ $ur 'e We, par 'e protoco'e HTT7 &ue de$ conne.ion$ :ia 'e protoco'e @T7C 7O7 ou IMA7. En e**etC SS) agit te''e une couche $upp'0mentaireC permettant d#a$$urer 'a $0curit0 de$ donn0e$C $itu0e entre 'a couche app'ication et 'a couche tran$port 9protoco'e TC7 par e.emp'e;. De cette mani>reC SS) e$t tran$parent pour '#uti'i$ateur 9entendeR par '5 &u#i' peut ignorer &u#i' uti'i$e SS);. 7ar e.emp'e un uti'i$ateur uti'i$ant un na:igateur internet pour $e connecter 5 un $ite de commerce 0'ectroni&ue $0curi$0 par SS) en:erra de$ donn0e$ chi**r0e$ $an$ aucune manipu'ation n0ce$$aire de $a part. )a &ua$i int0gra'it0 de$ na:igateur$ $upporte d0$ormai$ 'e protoco'e SS). Fetscape Fa)igator a**iche par e.emp'e un cadena$ :erroui''0 pour indi&uer 'a conne.ion 5 un $ite $0curi$0 par SS) et un cadena$ ou:ert dan$ 'e ca$ contraireC tandi$ &ue Microsoft "nternet (xplorer a**iche un cadena$ uni&uement 'or$ de 'a conne.ion 5 un $ite $0curi$0 par SS). 13.1.2. :onctionnement de ,,L 2.2 )a $0curi$ation de$ tran$action$ par SS) !.6 e$t ,a$0e $ur un 0change de c'0$ entre c'ient et $er:eur. )a tran$action $0curi$0e par SS) $e *ait $e'on 'e mod>'e $ui:ant / Dan$ un premier temp$C 'e c'ient $e connecte au $ite marchand $0curi$0 par SS) et 'ui demande de $#authenti*ier. )e c'ient en:oie 0ga'ement 'a 'i$te de$ crypto$y$t>me$ &u#i' $upporteC tri0e par ordre d0croi$$ant $e'on 'a 'ongueur de$ c'0$. )e $er:eur a r0ception de 'a re&uJte en:oie un certi*icat au c'ientC contenant 'a c'0 pu,'i&ue du $er:eurC $ign0e par une autorit0 de certi*ication 9CA;C ain$i &ue 'e nom du crypto$y$t>me 'e p'u$ haut dan$ 'a 'i$te a:ec 'e&ue' i' e$t compati,'e 9'a OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 1 % ++ Cryptographie 'ongueur de 'a c'0 de chi**rement % +6 ,it$ ou 1!3 ,it$ % $era ce''e du crypto$y$t>me commun ayant 'a p'u$ grande tai''e de c'0;. )e c'ient :0ri*ie 'a :a'idit0 du certi*icat 9donc '#authenticit0 du marchand;C pui$ cr0e une c'0 $ecr>te a'0atoire 9p'u$ e.actement un ,'oc pr0tenduement a'0atoire;C chi**re cette c'0 5 '#aide de 'a c'0 pu,'i&ue du $er:eurC pui$ 'ui en:oie 'e r0$u'tat 9'a c'0 de $e$$ion;. )e $er:eur e$t en me$ure de d0chi**rer 'a c'0 de $e$$ion a:ec $a c'0 pri:0e. Ain$iC 'e$ deu. entit0$ $ont en po$$e$$ion d#une c'0 commune dont i'$ $ont $eu'$ connai$$eur$. )e re$te de$ tran$action$ peut $e *aire 5 '#aide de c'0 de $e$$ionC garanti$$ant '#int0grit0 et 'a con*identia'it0 de$ donn0e$ 0chang0e$. 13.1.3. ,,L 3.2 SS) .6 :i$e 5 authenti*ier 'e $er:eur :i$%5%:i$ du c'ient et 0:entue''ement 'e c'ient :i$%5%:i$ du $er:eur. 14. La (=I 14.1.1. Introduction ' la notion de certificat )e$ a'gorithme$ de chi**rement a$ym0tri&ue $ont ,a$0$ $ur 'e partage entre 'e$ di**0rent$ uti'i$ateur$ d#une c'0 pu,'i&ue. G0n0ra'ement 'e partage de cette c'0 $e *ait au tra:er$ d#un annuaire 0'ectroni&ue 9g0n0ra'ement au *ormat )DA7; ou ,ien d#un $ite =e,. Toute*oi$ ce mode de partage a une grande 'acune / rien ne garantit &ue 'a c'0 e$t ,ien ce''e de '#uti'i$ateur a &ui e''e e$t a$$oci0e. En e**et un pirate peut corrompre 'a c'0 pu,'i&ue pr0$ente dan$ '#annuaire en 'a remp'aDant par $a c'0 pu,'i&ue. Ain$iC 'e pirate $era en me$ure de d0chi**rer tou$ 'e$ me$$age$ ayant 0t0 chi**r0$ a:ec 'a c'0 pr0$ente dan$ '#annuaire. Ain$i un certi*icat permet d#a$$ocier une c'0 pu,'i&ue 5 une entit0 9une per$onneC une machineC ...; a*in d#en a$$urer 'a :a'idit0. )e certi*icat e$t en &ue'&ue $orte 'a carte d#identit0 de 'a c'0 pu,'i&ueC d0'i:r0 par un organi$me appe'0 autorit0 de certi*ication 9$ou:ent not0e CA pour Certi*ication Authority;. )#autorit0 de certi*ication e$t charg0e de d0'i:rer 'e$ certi*icat$C de 'eur a$$igner une date de :a'idit0 90&ui:a'ent 5 'a date 'imite de p0remption de$ produit$ a'imentaire$;C ain$i &ue de r0:o&uer 0:entue''ement de$ certi*icat$ a:ant cette date en ca$ de compromi$$ion de 'a c'0 9ou du propri0taire;. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 2 % ++ Cryptographie 14.1.2. ,tructure d'un certificat ? )e$ certi*icat$ $ont de$ petit$ *ichier$ di:i$0$ en deu. partie$ / )a partie contenant 'e$ in*ormation$ )a partie contenant 'a $ignature de '#autorit0 de certi*ication )a $tructure de$ certi*icat$ e$t norma'i$0e par 'e $tandard U.-64 de '#8IT 9p'u$ e.actement U.-64:;C &ui d0*init 'e$ in*ormation$ contenue$ dan$ 'e certi*icat / )a :er$ion de U.-64 5 'a&ue''e 'e certi*icat corre$pond G )e num0ro de $0rie du certi*icat G )#a'gorithme de chi**rement uti'i$0 pour $igner 'e certi*icat G )e nom 9DNC pour Di$tingui$hed Name; de '#autorit0 de certi*ication 0mettrice G )a date de d0,ut de :a'idit0 du certi*icat G )a date de *in de :a'idit0 du certi*icat G )#o,Ket de '#uti'i$ation de 'a c'0 pu,'i&ue G )a c'0 pu,'i&ue du propri0taire du certi*icat G )a $ignature de '#0metteur du certi*icat 9thum,print;. )#en$em,'e de ce$ in*ormation$ 9in*ormation$ S c'0 pu,'i&ue du demandeur; e$t $ign0 par '#autorit0 de certi*icationC ce'a $igni*ie &u#une *onction de hachage cr0e une empreinte de ce$ in*ormation$C pui$ ce conden$0 e$t chi**r0 5 '#aide de 'a c'0 pri:0e de '#autorit0 de certi*icationG 'a c'0 pu,'i&ue ayant 0t0 pr0a'a,'ement 'argement di**u$0e a*in de permettre au. uti'i$ateur$ de :0ri*ier 'a $ignature a:ec 'a c'0 pu,'i&ue de '#autorit0 de certi*ication. )or$&u#un uti'i$ateur d0$ire communi&uer a:ec une autre per$onneC i' 'ui $u**it de $e procurer 'e certi*icat du de$tinataire. Ce certi*icat contient 'e nom du de$tinataireC ain$i &ue $a c'0 pu,'i&ue et e$t $ign0 par '#autorit0 de certi*ication. I' e$t donc po$$i,'e de :0ri*ier 'a :a'idit0 du me$$age en app'i&uant d#une part 'a *onction de hachage au. in*ormation$ contenue$ dan$ 'e certi*icatC en d0chi**rant d#autre part 'a $ignature de '#autorit0 de certi*ication a:ec 'a c'0 pu,'i&ue de cette derni>re et en comparant ce$ deu. r0$u'tat$. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 3 % ++ Cryptographie 14.1.3. ,ignatures de certificats On di$tingue di**0rent$ type$ de certi*icat$ $e'on 'e ni:eau de $ignature / )e$ certi*icat$ auto%$ign0$ $ont de$ certi*icat$ 5 u$age interne. Sign0$ par un $er:eur 'oca'C ce type de certi*icat permet de garantir 'a con*identia'it0 de$ 0change$ au $ein d#une organi$ationC par e.emp'e pour 'e ,e$oin d#un intranet. I' e$t ain$i po$$i,'e d#e**ectuer une authenti*ication de$ uti'i$ateur$ grcce 5 de$ certi*icat$ auto%$ign0$. )e$ certi*icat$ $ign0$ par un organi$me de certi*ication $ont n0ce$$aire$ 'or$&u#i' $#agit d#a$$urer 'a $0curit0 de$ 0change$ a:ec de$ uti'i$ateur$ anonyme$C par e.emp'e dan$ 'e ca$ d#un $ite =e, $0curi$0 acce$$i,'e au grand pu,'ic. )e certi*icateur tier$ permet d#a$$urer 5 '#uti'i$ateur &ue 'e certi*icat appartient ,ien 5 '#organi$ation 5 'a&ue''e i' e$t d0c'ar0 appartenir. 14.1.4. >ypes d'usages )e$ certi*icat$ $er:ent principa'ement dan$ troi$ type$ de conte.te$ / )e certi*icat c'ientC $toc?0 $ur 'e po$te de tra:ai' de '#uti'i$ateur ou em,ar&u0 dan$ un conteneur te' &u#une carte 5 puceC permet d#identi*ier un uti'i$ateur et de 'ui a$$ocier de$ droit$. Dan$ 'a p'upart de$ $c0nario$ i' e$t tran$mi$ au $er:eur 'or$ d#une conne.ionC &ui a**ecte de$ droit$ en *onction de '#accr0ditation de '#uti'i$ateur. I' $#agit d#une :0rita,'e carte d#identit0 num0ri&ue uti'i$ant une paire de c'0 a$ym0tri&ue d#une 'ongueur de -1! 5 16!+ ,it$. )e certi*icat $er:eur in$ta''0 $ur un $er:eur =e, permet d#a$$urer 'e 'ien entre 'e $er:ice et 'e propri0taire du $er:ice. Dan$ 'e ca$ d#un $ite =e,C i' permet de garantir &ue '#8R) et en particu'ier 'e domaine de 'a page =e, appartiennent ,ien 5 te''e ou te''e entrepri$e. 7ar ai''eur$ i' permet de $0curi$er 'e$ tran$action$ a:ec 'e$ uti'i$ateur$ grcce au protoco'e SS). )e certi*icat M7N e$t un type de certi*icat in$ta''0 dan$ 'e$ 0&uipement r0$eau.C permettant de chi**rer 'e$ *'u. de communication de ,out en ,out entre deu. point$ 9par e.emp'e deu. $ite$ d#une entrepri$e;. Dan$ ce type de $c0narioC 'e$ uti'i$ateur$ po$$>dent un certi*icat c'ientC 'e$ $er:eur$ mettent en oeu:re un certi*icat $er:eur et 'e$ 0&uipement$ de communication uti'i$ent un certi*icat particu'ier 9g0n0ra'ement un certi*icat I7Sec. OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 4 % ++ Cryptographie 14.1.$. Le !ut de (=I )e ,ut de 'a 7BI e$t de pr0$enter '#autorit0 de certi*icationC 5 $a:oir une entit0 humaine 9une per$onneC un groupeC un $er:iceC une entrepri$e ou une autre a$$ociation; autori$0e par une $oci0t0 5 0mettre de$ certi*icat$ 5 '#attention de $e$ uti'i$ateur$ in*ormati&ue$. Une autorit de certification fonctionne comme un service de contrle des passeports du gouvernement d'un pays. )#autorit0 de certi*ication cre de$ certificats et 'e$ $igne de *aDon num0ri&ue 5 '#aide d#une c'0 pri:0e &ui 'ui appartient. E''e g>re une liste de r&ocation &ui permet d#in:a'ider de$ certi*icat$ d0Ka di**u$0$. /rification d'un certificat On peut :0ri*ier 'a $ignature num0ri&ue de '#AC 0mettrice du certi*icatC 5 '#aide de 'a c'0 pu,'i&ue de '#AC. Si c#e$t 'e ca$ a'or$ i' garantit '#int0grit0 du contenu du certi*icat 9'a c'0 pu,'i&ue et '#identit0 du d0tenteur du certi*icat;. L'utilisation que fait le titulaire du certificat ne concerne plus la P!, mais les diverses applications qui sont compatibles. Confiance dans le "0. )#en$em,'e de$ per$onne$ et de$ $er:ice$ doi:ent *aire con*iance 5 'a 7BI / % $ignature de$ courrier$C % chi**rementC % authenti*ication $ur de$ app'ication$ mai$onL I'$ doi:ent 0ga'ement $a:oir d0chi**rer un certi*icat et Jtre capa,'e de contacter ' iAutorit0 de Certi*ication a*in de :0ri*ier 'a :a'idit0 du certi*icat aupr>$ de 'a 'i$te de r0:ocation. )a 7BI nAe$t &uAune $imp'e couche de$tin0e 5 *aci'iter 'a ge$tion de$ identit0$ num0ri&ue$ 5 grande 0che''e. E''e e$t tota'ement ind0pendante de$ app'ication$ 0:entue''e$ &ui uti'i$ent ce$ identit0$. (Bmission de certificat nBest pas le seul service de lBICC F :0ri*ie 'Aidentit0 du titu'aire 'or$ de 'A0mi$$ion de certi*icat F pu,'ie 'e certi*icatC F a$$ure 'e renou:e''ementC F r0:o&ue 'e$ certi*icat$ in:a'id0$C a$$ure par*oi$ 'e recou:rement de 'a c'e* pri:0e. (a rvocation AccepterieR :ou$ dAuti'i$er une carte ,ancaire $i :ou$ ne pou:ieR par y *aire oppo$itionC mJme en ca$ de :o' ( )e$ CR) / 'a 'i$te de$ certi*icat$ r0:o&u0$C 'i$te $ign0e par 'a CA Ma' imp'0ment0 dan$ 'e$ na:igateur$ 7a$ encore de CR) incr0menta'e. A'ternati:e / OCS7 )a r0:ocation e$t une 'imite th0ori&ue au mod>'e de$ 7BI$. (es composants OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 +6 % ++ Cryptographie On di$tingue di**0rent$ compo$ant$ dan$ une IGC / F Autorit0 de certi*ication AC 9certi*icat authority; F Autorit0 dAenregi$trement AE 9regi$try authority; F Inter*ace uti'i$ateur 9Enro'ment Entity; 14.2. #es diffrentes autorits )#autorit0 de certi*ication /CFest une organisation %ui dlivre des certificats ! une population. *l existe des 7 autorits prives +intranet dFune entreprise,1 7 organisationnelles +C#E1 CG#4,1 7 corporative +notaires,1 7 commerciales +&a=te1 -erisign1 ;,1 7 trs commerciales +@icrosoft,1 F institutionnelles1 etc (es tDc#es de l,1C 7 :rotge la cl prive de la AC +bun6er informati%ue, 7 -rifie les demandes de certificats +Certificat 4igning #e%uest, provenant des AE 7 Hnre les certificats et les publie F Hnre les listes de certificats rvo%us +Certificat #evocation List, (,autorit d,enre"istrement -rifie lFidentit des demandeurs de certificats et les lments de la demande. Exemple 9 7 L"email prsent dans le #$ est%il l"email canonique & 7 Le demandeur a%t%il le droit de disposer d"un certificat de signature & &ransmet les demandes valides par un canal sIr ! lFAC +demandes signes par lFoprateur de la AC, #ecueille et vrifie les demandes de rvocation OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 +1 % ++ Cryptographie )e$ compo$ant$ du 7BI OFPPT @ Document Mi''0$ime 7age !1!1-+1.doc no:em,re 62 +! % ++