master 2 isc - page d’accueil du lama
TRANSCRIPT
INFO913 - Cryptologie et Sécurité InformatiqueMaster 2 ISC
Jacques-Olivier Lachaud1
1Laboratoire de Mathématiques Université de Savoie
septembre 2008
J.-O. Lachaud (LAMA) INFO913 1 / 205
Introduction
INFO913 : Cryptologie et sécurité informatique
Deux points de vue1 cryptologie, application à la sécurité informatique et réseaux2 sécurité informatique et réseaux, utilisation de la cryptologie
Evaluation1 contrôle continu : TPs2 exposé sur un thème précis
Déroulement : Cours (9× 1, 5h), TD (2× 1, 5h), TP (3× 3h)
Plan général1 Introduction à la sécurité et à la cryptologie2 Cryptologie3 Sécurité informatique et réseaux
http ://www.lama.univ-savoie.fr, et rajouter /wiki, suivre INFO913
J.-O. Lachaud (LAMA) INFO913 2 / 205
Plan
1 Introduction à la sécurité et à la cryptologieDénitions et exemplesSécuritéCriminalité informatiqueApports de la cryptographie à la sécurité
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 3 / 205
Plan
1 Introduction à la sécurité et à la cryptologieDénitions et exemplesSécuritéCriminalité informatiqueApports de la cryptographie à la sécurité
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 4 / 205
Sécurité informatique
Ensemble des moyens techniques, organisationnels, juridiques ethumains nécessaires et mis en place pour conserver, rétablir, etgarantir la sécurité de l'information, du système d'information et dessystèmes et ressources informatiques.
Notamment, on veut préserverI l'intégrité de l'informationI la condentialité de l'informationI la disponiblité des systèmes
Systèmes informatiques soumis à des menacesI utilisateur du systèmeI personne malveillanteI programme malveillantI sinistre (vol, incendie, dégât des eaux)
J.-O. Lachaud (LAMA) INFO913 5 / 205
Cryptographie et cryptanalyse
[Source Wikipedia]
Denition (Cryptographie)
La cryptographie est une des disciplines de la cryptologie s'attachant àprotéger des messages (assurant condentialité, authenticité et intégrité)en s'aidant souvent de secrets ou clés.
Denition (Cryptanalyse)
La cryptanalyse s'oppose, en quelque sorte, à la cryptographie. En eet, sidéchirer consiste à retrouver le clair au moyen d'une clé, cryptanalyserc'est tenter de se passer de cette dernière.
Cryptographie : outil pour la sécurité informatique
J.-O. Lachaud (LAMA) INFO913 6 / 205
Plan
1 Introduction à la sécurité et à la cryptologieDénitions et exemplesSécuritéCriminalité informatiqueApports de la cryptographie à la sécurité
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 7 / 205
Critères de sécurité
Mise en place de solutions de sécurité pour satisfaire
disponibilité : probabilité de bon fonctionnement, accessibilité, continuitéde service
intégrité : certication de la non-altération des données, traitements etservices
condentialité : protection des données contre une divulgation nonautorisée
authentication : vérication de l'identité de l'utilisateur et de sesautorisations
non-répudiation : imputabilité, traçabilité, auditabilité
J.-O. Lachaud (LAMA) INFO913 8 / 205
Domaines d'intervention de la sécurité
sécurité physique
environnement humain (politique de sécurité, éducation, charte)
environnement matériel (incendie, dégâts des eaux, protection dessalles, sauvegardes, alimentations électriques)
sécurité de l'exploitation
hôte (système d'exploitation à jour, authentication)
sécurité logique
données (accès aux chiers, autorisations, chirements, sauvegarde)
sécurité applicative
applications (virus, chevaux de troie, espiogiciels, spam, restrictions etlocalisations des applications)
sécurité des télécommunications
réseau interne (protocoles sécurisés, dimensionnement)
alentours (pare-feu, vpn, nomadisme)
J.-O. Lachaud (LAMA) INFO913 9 / 205
Menaces informatiques
menace : action susceptible de nuire
vulnérabilité ou faille : niveau d'exposition face à une menace dans uncertain contexte
contre-mesure ou parade : ensemble des actions mises en oeuvres enprévention d'une menace
attaque : exploitation d'une faille (d'un syst info) à des ns nonconnus de l'exploitant du système et généralementpréjudiciables
en permanence sur Internet par machines infectéesrarement pirates
J.-O. Lachaud (LAMA) INFO913 10 / 205
Motivations des attaques
intrusion dans le système
vol d'informations industrielles (brevets), personnelles (bancaires),commerciales (contrats), organisationnelles
troubler le bon fonctionnement d'un service (déni de service, defacing)
utiliser le système comme rebond pour une autre attaque
utiliser les ressources d'un système (ex : bonne bande passante)
J.-O. Lachaud (LAMA) INFO913 11 / 205
Plan
1 Introduction à la sécurité et à la cryptologieDénitions et exemplesSécuritéCriminalité informatiqueApports de la cryptographie à la sécurité
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 12 / 205
Crime informatique, cybercrime
Crime informatique : délit où le système informatique est l'objet dudélit et/ou le moyen de le réaliser.
Cybercrime : forme du crime informatique qui utilise Internet
en 2007, la cybercriminalité pèse 7,1 milliards de dollars aux USA
Typologie : malveillance, erreur, accident
Cibles : états, organisations, individus
Vol d'identité, Chantage, Fraude nancière, détournements de fonds,vol de biens virtuels, atteinte à la dignité, dénonciation calomnieuses,espionnage, cyberterrorisme, désinformation, apologies de crimes,escroqueries, atteinte aux mineurs, atteinte à la vie privée, incitation àla haine raciale, . . .
J.-O. Lachaud (LAMA) INFO913 13 / 205
Internet : un facteur aggravant
dématérialisation des acteurs du délit, des objets du délit
vulnérabilité : complexité des infrastructures informatique et réseaux
automatisation, réalisation à grande échelle ⇒ ubiquité, anonymat
immatérialité : information numérique peut être détruite, modiée,usurpée
disponibilité d'outils, paradis numériques
dépendance des états/organisations à l'informatique ⇒ facteur derisque ⇒ cyberterrorisme
J.-O. Lachaud (LAMA) INFO913 14 / 205
Typologie des attaques
accès physique : coupure électricité, vol de disque dur, écoute tracréseau, récupération de matériels
interception de communications : vol de session, usurpation d'identité,détournement de messages
polupostage ou spam (98 % des mails)
dénis de services : faiblesse de protocoles TCP/IP, vulnérabilité delogiciels serveurs
intrusions : maliciels (virus, vers, chevaux de Troie), balayage de ports,élévation de privilèges, débordements de tampon
trappes : porte dérobée dans un logiciel
ingénierie sociale : contact direct de l'utilisateur
attention aux attaques par rebond : l'utilisateur complice peut voirsa responsabilité engagée.
J.-O. Lachaud (LAMA) INFO913 15 / 205
Logiciels malveillants : Virus, Vers, troyens I
Virus Tout programme capable d'infecter un autre programme en lemodiant de façon à ce qu'il puisse se reproduireBrain (premier sur PC en 1986), Netsky (2004, lit chiersEML, HTML pour se propager par email), Sobig-F (2003,contient un serveur SMTP)Infecte : Programmes, documents, secteurs de boot
Ver (Worm) Programme se propageant à travers le réseauBlaster (Août 2003, faiblesse RPC Windows), Welchia (qqsjours après, élimine Blaster)
Troyen ou Cheval de Troie Programme à l'apparence utile mais cachant ducode pour créer une faille dans le système (backdoor)BackOrice, GrayBird (soi-disant nettoyeur de Blaster)
Porte dérobée (ou backdoor) Fonctionnalité inconnue de l'utilisateur, quidonne un accès secret au logiciel/systèmeTrusting Trust (1984), noyau Linux (2003)
J.-O. Lachaud (LAMA) INFO913 17 / 205
Logiciels malveillants : Virus, Vers, troyens II
Machine zombie ordinateur contrôlé à l'insu de son utilisateur par un pirateinformatique (suite à une infection par ver/cheval de troie).Sert de rebond.
Botnet Réseau de machines zombies. Utile pour lancer des attaquesde déni de service ou spams
Bombes logiques Programme se déclencheant suite à un événementparticulier (date, signal distant)CIH/Chernobyl (déclenchement 26 avril 1999, 26 avril 1986)
Virus mutants réécriture de virus existants
Virus polymorphes modie son apparence, pour ne pas être reconnu
Rétro-Virus attaque les signatures des antivirus
Virus boot Virus s'installant sur un secteur d'amorçage (disquette,disque)
J.-O. Lachaud (LAMA) INFO913 18 / 205
Logiciels malveillants : Virus, Vers, troyens III
Virus d'applications (ou de document/macros) Programme infectant undocument contenant des macros, exécutable par uneapplication : VBScriptConcept (1995), Bubbleboy (1999, achage du mail)
Antivirus Logiciel de détection et d'éradication de virus et vers
Méthodes : dictionnaires, heuristiques, comportementssuspects, émulation (bac-à-sable)
scanneurs sur accès : examine les chiers/programmes àchaque accès
scanneurs à la demande : examine lesdisques/chiers/programmes suite à une demande
J.-O. Lachaud (LAMA) INFO913 19 / 205
Spywares : espiogiciels I
Espiogiciel Programme collectant des données sur un utilisateur, lesenvoyant à une société en général pour du prolage
souvent avec des freewares ou sharewares
intégrés (PKZip, KaZaA, Real Player) ou externes
souvent légaux (dans la licence)
parades : ne pas installer de logiciels ( !), antisypwares,rewall
keylogger enregistreur de touches : enregistrement des touches à l'insude l'utilisateur. dispositif d'espionnage. Souvent un logiciel.
J.-O. Lachaud (LAMA) INFO913 21 / 205
Spywares : espiogiciels II
dongle version hardware (ex : KeyKatch)
J.-O. Lachaud (LAMA) INFO913 22 / 205
Logiciels malveillants : Quelques statistiques I
[Source Rapport Sophos 2005 sur la gestion des menaces à la sécurité]I vandalisme ludique cède la place à la criminalité organiséeI 1 message sur 44 infecté par un virus (n nov 2005, 1 sur 12, ver
Sober-Z)I Fin décembre 2005 : BD Virus Sophos a 114000 virus, vers et autres,
15900 nouveaux en 2005I Méthodes de propagation : connexion directe via le réseau 66,8 %,
pièces jointes 15,1%, chat 9,2 %, poste à poste (P2P) 4,5%,navigation web 2,4%
I Windows est la cible (plus que) majoritaireI Ordinateur équipé de Windows sans protection : risque de
contamination 95% au bout d'une heure (SOPHOS)
http://www.sophos.com/security/top-10/
http://www.symantec.com/
J.-O. Lachaud (LAMA) INFO913 24 / 205
Quelques questions relatives à la sécurité I
Quels sont vos droits et devoirs vis-à-vis du système informatique del'université ? Participez-vous à sa sécurité ?
Quelles sont les données ou applications les plus critiques del'université ?
Y a-t-il un risque d'infection en laissant simplement son ordinateurallumé connecté par Internet ?
Pourquoi ne peut-on fermer une machine à toute communicationextérieure ?
Est-ce qu'un téléphone mobile peut être infecté ?
Comment un programme malicieux fait-il pour se rendre invisible aprèsinfection ?
Comment un virus fait-il pour ne pas infecter deux fois le mêmechier ?
Quelles sont les motivations qui conduisent une personne à écrire unlogiciel malveillant ?
J.-O. Lachaud (LAMA) INFO913 25 / 205
Menaces nouvelles I
Social engineering usage de ressorts psychologiques pour obtenir d'un tiersinformation ou données ⇒ fraude, intrusion réseau,espionnage industriel, vol d'identité.
Phishing/hameçonnage Arnaques via internet, usurper une identité able(genre banque), redirection vers site pirate ⇒ donnéesbancaires, mots de passe
J.-O. Lachaud (LAMA) INFO913 27 / 205
Menaces nouvelles II
http://[email protected]/
http://www.mabanque.com.unsite.net/
Pharming (empoisonnement DNS) exploite une vulnérabilité pourrediger le trac Internet d'un site Web vers un autre.Complémentaire de chevaux de Troie, spywares et phishing.Exemple : americanexpress.com, fedex.com, msn.com,Trendmicro.com (vulnérabilités dans le serveur DNS deWindows NT4 et Windows 2000, depuis corrigées).
Slamming fausse facture de renouvellement de nom de domaine etcontrainte pour l'achat de noms de domaines proches, fauxannuaires professionnels
J.-O. Lachaud (LAMA) INFO913 28 / 205
Menaces nouvelles III
Vishing (VoIP + phishing). Serveurs VoIP appelant des numérosxes, redirection vers boîte vocale informant d'anomalie,invitation à contacter un serveur vocal où il donnera sescoordonnées bancaires.
Ransomwares code malveillant (virus ou cheval de troie) cryptant certainesdonnées, exige une rançon après pour le déchirement.Exemple : Gpcode, scanne .xls .doc .txt .rtf ...
Cross Site Scripting (XSS) vulnérabilités dans serveur/app WEB pourinsérer du code dans une page html renvoyée dynamiquementRedirection vers un autre site, vol d'identiant de session
Injection de code vulnérabilités dans serveurs/apps (SQL, WEB/XSS,LDAP
SELECT * FROM utilisateurs WHERE nom="\$nom";
// Saisie de : "toto" OR 1=1 OR nom="titi"
SELECT * FROM utilisateurs WHERE nom="toto" OR 1=1 OR nom="titi";
J.-O. Lachaud (LAMA) INFO913 29 / 205
Chires et évolutions des menaces I
Pertes et typologie des plaintes référencées par l'I3C (USA)
J.-O. Lachaud (LAMA) INFO913 31 / 205
Chires et évolutions des menaces II
I Plus de 85% des plaintes portent sur moins de 1000 $ (en 2004)I Plus de 86% des plaintes portent sur moins de 5000 $ (en 2006)
J.-O. Lachaud (LAMA) INFO913 32 / 205
Chires et évolutions des menaces III
Evolution des menaces informatiques dans le monde de 2004 à 2005Menaces Attaques 2004 Attaques 2005
Phishing 18,0 % 25,0 %Virus et vers 68,6 % 66,6 %
[Source CompTIA]
Nombres d'incidents rapportés au CERT1998 1999 2000 2001 2002 2003
5000 11000 22000 53000 85000 138000
Parades :I Formation utilisateursI Antivirus et/ou antispywareI Filtre antiphishingI Contrôler les certicats des sites
J.-O. Lachaud (LAMA) INFO913 33 / 205
Plan
1 Introduction à la sécurité et à la cryptologieDénitions et exemplesSécuritéCriminalité informatiqueApports de la cryptographie à la sécurité
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 34 / 205
Cryptographie et critères de sécurité
Satisfaire les objectifs de sécurité via la cryptographie : condentialité,intégrité, Authentication, non-répudiation, disponibilité ?
Outils : chirement, signature, fonction de hachage
J.-O. Lachaud (LAMA) INFO913 35 / 205
Chirement symétrique ou à clé secrète I
Chirement de données avec une clé secrète KI chirer : transforme un message clair M en un message chiré
C = dK (M) avec une clé KI déchirer : transforme un message chiré C en un message clair
M = eK (C )I contraintes : dicile de déduire M de C sans KI condentialité des données pour une personneI condentialité d'un message entre 2 personnes partageant cette clé
en clair chiré
I authentication de l'expéditeur si K est resté secret
J.-O. Lachaud (LAMA) INFO913 36 / 205
Chirement symétrique ou à clé secrète II
Avantages : rapidité du chirement/déchirement
Inconvénients : échange de K par un autre canal, dialogue entre n
personnes nécessitent bcp de clés
Exemples : DES, 3DES, blowsh, IDEA, AES
Utilisés dans : SSH, SSL/TLS, WiFi (IEEE 802.11i), VPN/IPsec
J.-O. Lachaud (LAMA) INFO913 37 / 205
Cryptographie asymétrique ou à clé publique I
Chirement asymétrique : une communication non secrète permet devéhiculer une information que seul le destinataire peut comprendreidée [Die-Hellman 1976], RSA [Rivest, Shamir, Adleman 1977]
Chirement de données avec (clé publique ≈ eK , clé secrète ≈ dK )
I La clé publique eK , connue de tous, sert à chirerI Le message eK (M) peut être véhiculé au vu et au su de tout le mondeI La clé privée dK , tenue secrète, sert à déchirerI Contrainte : dicile de déduire dK de eKI condentialité
J.-O. Lachaud (LAMA) INFO913 38 / 205
Cryptographie asymétrique ou à clé publique II
Avantages : une seule clé secrète, communication secrète dans unsecond temps
Très utile pour échanger les clés pour ouvrir un tunnel decommunication chiré (VPN, TLS/SSL). Uilisés aussi dans PGP.
Inconvénients : lenteur, pas d'authentication de la source, attaqueMan-In-The-Middle
Nécessité de protocoles d'échanges de clé (IKE pour IPsec)
Exemples : RSA [1977] (factorisation), chirement ElGamal [1985](logarithme discret), Merkle-Hellman [1978] (sac-à-dos)
J.-O. Lachaud (LAMA) INFO913 39 / 205
Signatures numériques I
introduite par Die et Hellman (1976)
signature : sceau, prouver l'identité de l'expéditeur (non-répudiation)et l'intégrité du message
contraintes : empêcher l'usurpation, la non-reconnaissanceI calculable par le signataire ∀MI le destinataire (et tout individu) peut vérier la signatureI non falsiableI non imitable
signer sigK (privé) : S ← sigK (M) où M est un message ou un dé
vérier verK (public) : verK : (M, S) 7→ vrai , fauxExemple : signature RSA
I signer sigK est le déchirement dKL'expéditeur donne M et S = sigK (M).
I vérier verK est le chirement eKLe destinataire calcule M ′ ← verK (S) = eK (dk(M)) et vérie M = M ′
J.-O. Lachaud (LAMA) INFO913 40 / 205
Signatures numériques II
Exemples : PGP, RSA, signature ElGamal/DSA
Utilisation : SSL, S-MIME
en théorie, découpage en blocs d'un message + signatures de chaquebloc garantit l'intégrité. Trop coûteux en pratique.
J.-O. Lachaud (LAMA) INFO913 41 / 205
Fonctions de hachage et empreinte I
garantir l'intégrité d'un message M
signer tout M est trop coûteux
calcul d'une empreinte de M par hachage h, de taille xée
signature de l'empreinte Z ← sigK (h(M))
vérication de l'intégrité par le destinataire1 Recevoir M ′,2 le hacher h(M ′),3 puis vérier verK (h(M ′),Z ) = vrai
contraintes : hachage rapide, à sens unique et à collision dicile
Exemples : MD5, SHA-1, DSA
Utilisation : garantir l'intégrité d'une communication (SSL), de mails(S-MIME), de chiers ou du système (antivirus)
J.-O. Lachaud (LAMA) INFO913 42 / 205
Authentication I
Attaque Man-in-the-Middle
légitimer la clé publique cleA d'une personne
autorité de certication (AC)
émetteur A émet sa clé publique à une AC (qui vérie) et retourne uncerticat signé par l'AC : ZA,AC ← signAC (h(IdA, cleA))
le recepteur B vérie le certicat de A en calculant
J.-O. Lachaud (LAMA) INFO913 43 / 205
Authentication II
1 ce qu'il reçoit : h(Id ′A, cle′A)2 et l'autorité de certication : verAC (ZA,AC )3 et teste l'égalité
évite Man-in-the-Middle
Mais quid de l'autorité de certication ?
J.-O. Lachaud (LAMA) INFO913 44 / 205
Disponibilité I
cryptologie : inuence indirecte sur la disponibilité
Contraintes fortes peu conciliablesI architecture sécurisée transparente : condentialité sans mot de passe !I QoS implique rapidité des mécanismes de chirement et déchirement
Gains possibles de qualité de service :I en identiant mieux les sources/demandeurs de ressource
J.-O. Lachaud (LAMA) INFO913 45 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 46 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 47 / 205
cryptosystème I
J.-O. Lachaud (LAMA) INFO913 48 / 205
cryptosystème II
Denition (cryptosystème)
Un système cryptographique est un quintuplet (P, C,K, E ,D) où
1 P : ensemble des textes clairs possibles,
2 C : ensemble des textes chirés possibles,
3 K : espace des clés, ensemble des clés possibles,
4 Pour toute clé K dans K, il existe une règle de chirement eK ∈ E etune règle de déchirement correspondante dK ∈ D.
I eK : P → CI dK : C → PI Pour tout texte clair x ∈ P, dK (eK (x)) = x .
Chaque fonction de chirement doit être injective. Pourquoi ?
Si P = C, chaque fonction de chirement est une permutation.
J.-O. Lachaud (LAMA) INFO913 49 / 205
Principe de la cryptographie, cryptanalyse I
Considérations pratiquesI les fonctions eK et dK doivent pouvoir se calculer ecacementI un opposant observant les messages chirés y ne peut déterminer K ou
xI cryptanalyse : rechercher K à partir de y. Donnera aussi x
algorithme public, clé cachée : principe de Kerckhos (1883)I la sécurité d'un cryptosystème ne repose que sur le secret de la clé.I autres paramètres connus (e et d)I exprimé aussi par Shannon : l'adversaire connaît le systèmeI chires civils suivent le principe de Kerckhos. Militaires utilisent des
systèmes secrets. NB : chirage A5/1 des mobiles GSM non divulguéau début (1987), divulgué en 1994.
le nombre de clés possibles doit être grand.
Pourquoi de tels principes pour la sécurité informatique ?
J.-O. Lachaud (LAMA) INFO913 50 / 205
Résumé des outils I
arithmétique modulo (ex : caractères modulo 26, bits modulo 2)
chirement eK , déchirement dK à clé secrète K
chirement public eK , déchirement privé dK
signature privée sigK , vérication publique verK
fonction de hachage h publique, empreinte privée sigK (h(x))
J.-O. Lachaud (LAMA) INFO913 51 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 52 / 205
Chirements monoalphabétiques I
quelques grands noms : Al-Kindi (801-873), Alberti (1404-1472),Vigenère (1523-1596), Porta (1535-1615), Babbage (1792-1872),Kerckhos (1835-1903), Turing (1912-1954)
chire de substitution : remplacer les lettres ou les mots par d'autressymboles
On appelle chirement monoalphabétique ou substitution simple, unchire où chaque lettre est remplacée par une autre lettre ou symbole.
chire de César (cf. Vies des douze Césars de Suétone)
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
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
chiffredecesar
FKLIIUHGHFHVDU
J.-O. Lachaud (LAMA) INFO913 54 / 205
Chirements monoalphabétiques II
Si on code A− Z dans Z26, alors y = x + 3 mod 26 et x = y − 3mod 26.
Denition (Cryptosystème par décalage)
Soient P = C = K = Z26. Pour 0 ≤ K < 26, on déniteK (x) = x + K mod 26, dK (y) = y − K mod 26.
Exercices :
I Quelle est l'espace des clés du chire par décalage ?I Quel est le texte clair de TMKBM CZXIQ AQJTM MBJCK WTQYC
M?
J.-O. Lachaud (LAMA) INFO913 55 / 205
Chirements monoalphabétiques III
Chirement par substitution
Denition (Cryptosystème par substitution)
Soient P = C = Z26. Soit K l'ensemble des permutations sur les nombres0, 1, . . . , 25. Pour chaque π ∈ K, on déniteK (x) = π(x), dK (y) = π−1(y).
Exercices :
I Quelle est l'espace des clés de ce chirement ?I Est-ce qu'une recherche exhaustive est envisageable ?
Un autre exemple est le chirement ane eK (x) = ax + b mod 26,pour des clés K = (a, b) avec pgcd(a, 26) = 1.
I Montrez que résoudre ax + b ≡ y(mod 26) est équivalent à résoudreax ≡ y(mod 26)
I Supposez pgcd(a, 26) = d > 1 et montrez que ax ≡ 0(mod 26) a aumoins deux solutions. eK peut-il être alors injectif ?
J.-O. Lachaud (LAMA) INFO913 56 / 205
Chirements monoalphabétiques IV
I Supposez pgcd(a, 26) = 1 et supposez ∃x1, x2 tq ax1 ≡ ax2(mod 26).En déduire 26 divise (x1 − x2), ce qui montre que x1 ≡ x2(mod 26). ekest-il alors injectif ?
I En déduire que l'équation ax ≡ y(mod 26) admet une solution unique.Le chirement ane est bien un cryptosystème.
I Si a−1 est l'inverse de a, en déduire que dK (y) ≡ a−1(y − b)(mod 26)
Exercices :
I Montrer que K = (7, 3) induit un chirement ane dans Z26. Quel estsa fonction de déchirement ?
I Combien y a-t-il de clés possibles ?
J.-O. Lachaud (LAMA) INFO913 57 / 205
Chirements polyalphabétiques I
Un chirement polyalphabétique peut remplacer une lettre par une autrelettre qui n'est pas toujours la même. Cryptanalyse plus dicile.
Denition
Chirement de Vigenère Soit m > 0 et P = C = K = (Z26)m. Pour la clé
K = (k1, k2, . . . , km), on dénit
eK (x1, x2, . . . , xm) = (x1 + k1, x2 + k2, . . . , xm + km)
dK (y1, y2, . . . , ym) = (y1 − k1, y2 − k2, . . . , ym − km)
On note que le message clair est découpé en bloc de m lettres. Les cléscomme les messages sont traduits de l'alphabet a-z vers les nombres 0-25.
J.-O. Lachaud (LAMA) INFO913 59 / 205
Chirements polyalphabétiques II
jadoree couterl aradiot outelaj ournee
+ MUSIQUE MUSIQUE MUSIQUE MUSIQUE MUSIQU
= VUVWHYI OIMBULP MLSLYIX AOLMBUN AOJVUY
chirement par permutation (mélange de m lettres consécutives parune permutation/clé)
chirement de Hill (multiplication par une matrice m ×m inversibledans Z26)
J.-O. Lachaud (LAMA) INFO913 60 / 205
Cryptanalyse et analyse des fréquences I
Cryptanalyse : déterminer la clé K connaissant l'algorithme
I texte chiré connu (y) : écouteI texte clair connu (x ,y) : écoute + message connu (ex : protocole de
communication)I texte clair choisi (accès à la machine chirante émettrice)I texte chiré choisi (accès à la machine déchirante réceptrice)
Cryptanalyse par analyse des fréquences (Al Kindi)
A B C D E F G H I08,40 01,06 03,03 04,18 17,26 01,12 01,27 0,92 07,34J K L M N O P Q R
0,31 0,05 06,01 02,96 07,13 05,26 03,01 0,99 06,55S T U V W X Y Z
08,08 07,07 05,74 01,32 0,04 0,45 0,30 0,12
Fig.: Fréquences des lettres en français (non accentué)
I lettres (fr) : E, (A, S), (I,N,T,R), LUODCPMVGFBQHXJYZKW
J.-O. Lachaud (LAMA) INFO913 62 / 205
Cryptanalyse et analyse des fréquences II
I bigrammes (fr) : ES, (DE, LE, EN), (RE, NT, ON, ER, TE), . . .I trigrammes (fr) : ENT, LES, (EDE, DES, QUE), AIT, . . .I S'applique aux chirements mono-alphabétiquesI Chire par décalage en deux trois essaisI Chire ane en quelques essais aussi.I Chire par substitution si texte susamment long. On utilise aussi les
bigrammes, trigrammes pour orienter la recherche.
J.-O. Lachaud (LAMA) INFO913 63 / 205
Cryptanalyse du chire de Vigenère I
KQOWE FVJPU JUUNU KGLME KJINM WUXFQ MKJBG WRLFN FGHUD WUUMB SVLPS
NCMUE KQCTE SWREE KOYSS IWCTU AXYOT APXPL WPNTC GOJBG FQHTD WXIZA
YGFFN SXCSE YNCTS SPNTU JNYTG GWZGR WUUNE JUUQE APYME KQHUI DUXFP
GUYTS MTFFS HNUOC ZGMRU WEYTR GKMEE DCTVR ECFBD JQCUS WVBPN ...
[Test de Kasiski (1863)]
Si m est la longueur de la clé, alors une même partie du texte à δd'intervalle est chirée de la même manière ssi δ ≡ 0(mod m).
On cherche des paires de segments de taille susante (≥ 3) : δ1, δ2, . . .
Il est probable que leur pgcd est m ou un multiple de m.
On peut vérier a posteriori cette valeur par l'indice de coïncidence.
J.-O. Lachaud (LAMA) INFO913 65 / 205
Cryptanalyse du chire de Vigenère II
[Source http ://www.apprendre-en-ligne.net]
J.-O. Lachaud (LAMA) INFO913 66 / 205
Cryptanalyse du chire de Vigenère III
J.-O. Lachaud (LAMA) INFO913 67 / 205
Cryptanalyse du chire de Vigenère IV
Souvent pour s'amuser les hommes d'équipage prennent des albatros, vastes oiseaux des mers, qui suivent, indolents
compagnons de voyage, le navire glissant sur les goures amers. A peine les ont-ils déposés sur les planches que ces
rois de l'azur, maladroits et honteux, laissent piteusement leurs grandes ailes blanches, comme des avirons, traîner à
côté d'eux. Ce voyageur ailé, comme il est gauche et veule, lui naguère si beau, qu'il est comique et laid. L'un agace
son bec avec un brûle-gueule, l'autre mime en boitant l'inrme qui volait. Le poète est semblable au prince des
nuées, qui hante la tempête et se rit de l'archer.
J.-O. Lachaud (LAMA) INFO913 68 / 205
Cryptanalyse du chire de Vigenère V
Denition (Indice de coïncidence (Friedman 1920))
Soit x = x1x2 . . . xn une chaîne de n lettres. L'indice de coïncidence de x,noté Ic(x) est la probabilité que deux lettres aléatoires de x soit identique.
Espace des tirages X = xi , xj, i 6= jCard(X ) =
(n2
)Evénement Ea : xi et xj valent la même lettre a
Si le nombre d'occurence de a dans x est fa, alors Card(Ea) =(fa2
)Probabilité de Ea : Pr[Ea] =
∑xi ,xj∈Ea
Pr[xi , xj] =(fa2
)× 1
(n2)
D'où Ic(x) =∑25
a=0 Pr[Ea] =∑25
a=0fa(fa−1)n(n−1) .
En utilisant les tables de fréquences, fa ≈ nPr[a]
fr : Ic(x) = 0.074, en : Ic(x) = 0.065
J.-O. Lachaud (LAMA) INFO913 69 / 205
Cryptanalyse du chire de Vigenère VI
Si texte aléatoire uniforme : Ic ≈ 26( 126)
2 ≈ 0, 038
Invariance de Ic(x) par tout chirement mono-alphabétique
Attaque du chire de Vigenère
Soit le texte chiré y. Pour tout m, on forme
y1 = y1ym+1y2m+1 . . .
y2 = y2ym+2y2m+2 . . .
. . .
ym = ymy2my3m . . .
Si m est la longueur de la clé, alors ∀i , 1 ≤ i ≤ m, Ic(yi ) ≈ Ic(langue)
Sinon Ic(yi ) ≈ 0, 038
Détermine la longueur de la clé
J.-O. Lachaud (LAMA) INFO913 70 / 205
Cryptanalyse du chire de Vigenère VII
Denition (Indice de coïncidence mutuel)
L'indice de coïncidence mutuel de deux chaînes x et x' de même longueur
n est Ic(x, x') =∑25
a=0fanf ′an.
Clé de Vigenère à m connu
Soit ei (x) = x + i mod 26
On forme M(i) = Ic(ei (y), y')
y' est un texte clair (fr)
Si y est un texte chiré par décalage K , alors e26−K (y) est un texteclair (fr)
L'indice M(26− K ) vaut à peu près Ic(fr). Les autres sont inférieures
Calcul de 26− Kl pour chaque yl : K1 . . .Km est la clé de Vigenère
J.-O. Lachaud (LAMA) INFO913 71 / 205
Cryptanalyse du chire de Vigenère VIII
Note historique : machines ENIGMA de la seconde guerre mondiale
Machines à 3 rotors (ou plus)
Les rotors codent une substitution des lettres.
A chaque frappe, le premier avance. Tous les 26, le deuxième, Tous les676, le troisième.
autres dispositifs : reecteurs, connecteurs
chire de Vigenère avec très longue période
J.-O. Lachaud (LAMA) INFO913 72 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 73 / 205
Sûreté d'un chirement I
Sécurité sémantique : un attaquant ne récupère aucune informationsur le texte clair à partir du texte chiré. (attaque passive)
Sécurité calculatoire : système sûr au sens de la théorie de lacomplexité si le meilleur algorithme pour le casser nécessite N
opérations, où N est un nombre trop grand.
Sécurité prouvée : la sécurité se réduit à un problème réputé dicile.Exemple : ls système X est sûr si un entier n donné ne peut êtrefactorisé.
J.-O. Lachaud (LAMA) INFO913 75 / 205
Sécurité sémantique ou inconditionnelle I
L'éventualité texte clair choisi = x a une probabilité a priori Pr[x ].L'éventualité clé choisie = K a une probabilité a priori Pr[K ].
Denition (Secret parfait)
La condition du secret parfait est que ∀x ∈ P, y ∈ C,Pr[x |y ] = Pr[x ].
Un tel cryptosystème est dit sémantiquement sûr ou de sécuritéinconditionnelle.
ie. si l'attaquant dispose de deux textes chirés de même taille etqu'on lui présente les deux textes clairs correspondants mais dans unordre quelconque, il se trompera ou devinera correctement avec uneprobabilité de 1/2.
cryptosystème soumis à une attaque passive.
J.-O. Lachaud (LAMA) INFO913 77 / 205
Sécurité sémantique ou inconditionnelle II
Pour un message d'une lettre, le chirement par décalage assure unsecret parfait.NB : on utilise Pr[Y = y ] =
∑k:y∈C(k) Pr[K = k]Pr[X = dK (y)], si
C (K ) est l'ensemble des textes chirés par K .
Theorem (Secret parfait)
Si C = P = K, alors ce système assure un secret parfait ssi chaque clé est
utilisée avec la même probabilité 1/|K| et ∀x ∈ P, y ∈ C, il existe une clé
unique K telle que eK (x) = y.
Denition (Chire de Vernam (1917) ou à masque jetable)
Soit n ≥ 1 et C = P = K = (Z2)n. Pour tout K ∈ K, on dénit eK et dK
comme le ou-exclusif de x ∈ P et K .
J.-O. Lachaud (LAMA) INFO913 78 / 205
Sécurité sémantique ou inconditionnelle III
Le Théorème 10 assure le secret parfait de ce cryptosystème, si la clén'est utilisée qu'une fois et n'est pas plus courte que le message.
Utilisée au niveau diplomatique (téléphone rouge).
J.-O. Lachaud (LAMA) INFO913 79 / 205
Théorie de Shannon, Entropie I
X est une vad (à nombre ni n de valeurs xi ), de probabilitésPr[X = xi ] = pi .
Denition (Entropie)
L'entropie (ou incertitude) d'une vad X est H(X ) =∑
i pi log2 pi .Mesure l'incertitude sur l'issue avant une observation de X . Approche aussile nombre de bits moyen pour coder les éléments de X .
0 ≤ H(X ) ≤ log2 n.
H(X ) = 0 ssi un seul pi vaut 1 : incertitude minimale
H(X ) = log2 n ssi ∀i , pi = 1n: incertitude maximale
Codage de Human : la longueur moyenne l du codage d'une chaîneà valeurs dans xi , tirée aléatoirement selon X , est entre H(X ) etH(X ) + 1.
J.-O. Lachaud (LAMA) INFO913 80 / 205
Théorie de Shannon, Entropie II
Denition (Entropie jointe, conditionnelle)
entropie jointe :H(X ,Y ) = −
∑x ,y Pr[X = x ,Y = y ] log2 Pr[X = x ,Y = y ].
H(X |Y = y) = −∑
x Pr[X = x |Y = y ] log2 Pr[X = x |Y = y ].entropie conditionnelle : H(X |Y ) =
∑y Pr[Y = y ]H(X |Y = y).
H(X |Y ) mesure l'incertitude restant sur X sachant l'observation de Y
H(X |Y ) ≥ 0 et H(X |X ) = 0
H(X ,Y ) = H(X ) + H(Y |X ) = H(Y ) + H(X |Y )
H(X |Y ) ≤ H(X ) avec égalité seulement si X et Y indépendant
J.-O. Lachaud (LAMA) INFO913 81 / 205
Théorie de Shannon, Entropie III
Corollary
Si X est une vad sur P et Y une vad sur C, la condition du secret parfaitest que H(X |Y ) = H(X ).
Theorem
Soit un cryptosystème muni des vads X sur P, K sur K, Y sur C.
H(K |Y ) = H(K ) + H(X )− H(Y ).
On développe H(K ,X ,Y ) = H(Y |K ,X )︸ ︷︷ ︸0
+H(K ,X ) et
H(K ,X ,Y ) = H(X |K ,Y )︸ ︷︷ ︸0
+H(K ,Y ).
J.-O. Lachaud (LAMA) INFO913 82 / 205
Entropie d'une langue, clés parasites, distance d'unicité I
Entropie d'un texte quelconque∑
x∈a−z126 log2
126 ≈ 4, 76
Entropie d'une lettre dans texte anglaish(P) =
∑x∈a−z Pr[x ] log2 Pr[x ] ≈ 4, 19
lettres non indépendantes
Denition (Entropie d'une lettre d'une langue donnée)
Soit un langage naturel L. Son entropie est HL = limn→+∞H(Pn)
n.
La redondance de L : RL = 1− HL
log2 |P|.
Pour l'anglais, 1 ≤ HL ≤ 1, 5, redondance 75%. Pour une langue aléatoire,redondance nulle.
J.-O. Lachaud (LAMA) INFO913 83 / 205
Entropie d'une langue, clés parasites, distance d'unicité II
Denition
On appelle clé parasite une clé qui déchire un texte chiré y sous formed'un message compréhensible, alors que la clé utilisée était autre.
WNAJW, codé par décalage a deux clés F(5) et W(22) tels qued22(WNAJW ) = river et d5(WNAJW ) = arena : une est parasite.
Theorem
Le nombre moyen sn de clés parasites sur un texte chiré de longueur n (n
assez grand) vérie
sn ≥|K||P|nRL
− 1.
distance d'unicité n0 : plus petite valeur de n telle que sn ≈ 0
J.-O. Lachaud (LAMA) INFO913 84 / 205
Entropie d'une langue, clés parasites, distance d'unicité III
Chirement par substitution : |P| = 26, |K| = 26!. Avec RL = 0, 75,n0 ≈ 88, 4/(0, 75 ∗ 4, 7) ≈ 25.
Chirement de vigenère de taille m : n0 ≈ m/0, 75.
On peut donc tenter des attaques par recherche exhaustive sur desmessages de longueur ≥ n0. Si on tombe sur un clair, c'est le bon.
J.-O. Lachaud (LAMA) INFO913 85 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 86 / 205
Système cryptographique produit I
Soient deux cryptosystèmes S1 = (P,P,K1, E1,D1) etS2 = (P,P,K2, E2,D2), tels que P = C.
Denition (Système cryptographique produit)
Le système cryptographique produit S1 × S2 est le cryptosystème(P,P,K1 ×K2, E ,D) et
chirement e(K1,K2)(x) = eK2(eK1)(x)
déchirement d(K1,K2)(x) = dK1(dK2)(x)
sert à fabriquer des cryptosystèmes plus complexes à partir decryptosystèmes simples
Si S × S × · · · × S , on le note Sn (cryptosystème itéré)
Si S2 est équivalent à S , alors S idempotent. Itéré S ne complexiepas S .
J.-O. Lachaud (LAMA) INFO913 87 / 205
Système cryptographique produit II
Chirement par décalage, par substitution, ane, Hill, Vigenère,permutation sont idempotents !
Montrez que si S1 et S2 sont tels que S1 × S2 est équivalent à S2 × S1et sont tous deux idempotents, alors S1 × S2 est idempotent.
Chirements par substitution et par permutation ne commutent pas :AES
J.-O. Lachaud (LAMA) INFO913 88 / 205
Algorithme de chirement itéré par bloc I
chirement par bloc à clé secrète K (longueur xée)
systèmes cryptographiques produits (permutation, substitution)
chirement par Ne étages successifs identiques
diversication de K en Ne clés (d'étage)
algorithme de chirement xé et public
w0 ← x
w1 ← g(w0,K 1)
w2 ← g(w1,K 2)
. . .
wNe ← g(wNe−1,KNe )
déchirement en sens inverse, g injective
J.-O. Lachaud (LAMA) INFO913 89 / 205
Algorithme de chirement itéré par bloc II
Exemples :I réseaux de substitution/permutation
F substitution par blocs
F permutation entre bits
I schéma de Feistel, DES (1976)I AES/Rijndael (2001)I IDEA (dans PGP), blocs de 64b, clé 128b (⊕, + et · modulo 216 + 1)
J.-O. Lachaud (LAMA) INFO913 90 / 205
Data Encryption Standard (DES) I
créé par IBM en 1975 pour la NSA, standard en 1976
Caractéristiques :I système à clef secrète (clef de 56 bits)I chirage itéré 16 fois par blocs (64 bits)I standard communications gouvernementales non secrètes (USA)
J.-O. Lachaud (LAMA) INFO913 91 / 205
Data Encryption Standard (DES) II
permutation initiale
étage i , (Li ,Ri ) = g(Li−1,R i−1,K i )où Li = R i−1,R i = Li−1 ⊕ f (R i−1,K i )
clé K diversiée (56b) en 16 clés (48b)
déchirement : f n'a même pas besoind'être inversible !
J.-O. Lachaud (LAMA) INFO913 92 / 205
Data Encryption Standard (DES) III
E : Expansion de 32b à 48b
on ajoute la clé d'étage
Sj : réduction par blocs 6 bits vers 4bits.
on permute le résultat par P
J.-O. Lachaud (LAMA) INFO913 93 / 205
Critiques de DES I
seules les Sj ne sont pas linéaires
espace des clés faibles : 256 ≈ 7, 2 · 1016
attaque à texte clair par force brut1 machine de Wiener 1993 : 5e7 clés/s2 DES cracker 1998 : 88e9 clés/s, 1536 puces, 1 clé en 56h3 DES cracker + réseau mondial (100000 machines) : 1 clé en 22h
cryptanalyse diérentielle (Biham, Shamir)1 attaque à texte clair choisi2 grand nombre de quadruplets (x , x∗, y , y∗), avec x ⊕ x∗ = x ′ xé3 fabriquer des diérentiels ∆x = x ⊕ x∗ qui maximise des diérentiels
∆y = y ⊕ y∗
4 par S-boîte, on analyse le nombre de paires avec ou-exclusif d'entréeégal à x ′ et ou-exclusif de sortie égal à y ′
5 indépendant de la clé par S-boîte car K s'élimine avec ⊕.6 on choisit la paire de diérentiels la plus fréquente7 on construit une piste de diérentiels en reliant les S-boîtes.
J.-O. Lachaud (LAMA) INFO913 94 / 205
Critiques de DES II
8 avec beaucoup de couples, on estime quelques bits de la clé, le restepar balayage exhaustif
9 pas eectif pour DES : 258 paires, soit plus que l'attaque exhaustive.
J.-O. Lachaud (LAMA) INFO913 95 / 205
Critiques de DES III
cryptanalyse linéaire (Matsui 1994)1 attaque à texte clair choisi
J.-O. Lachaud (LAMA) INFO913 96 / 205
Critiques de DES IV
2 analyse les biais entre les probabilités d'avoir une sortie étant donnéune entrée.
3 sur une S-boîte, observe Xi1 ⊕ · · · ⊕ Xim ⊕ Yj1 ⊕ · · · ⊕ Yjn
4 si espérance 6= 1
2, alors il y a un biais
5 trace ainsi un chemin de l'entrée vers la sortie, dont les variablesaléatoires ont un biais (qui dépend de la clé).
6 on chire beaucoup de messages, pour retrouver les bits de clé7 eectif : 243 paires, 40 jours pour génération, 10 jours pour trouver K .
Evolution de DES : 3DES. Surchirement avec deux clés K1, K2.I y = eK1,K2(x) = eK1(eK2(eK1(x))).I y = dK1,K2(x) = dK1(dK2(dK1(y))).I ecace car DES n'est pas idempotent !
Nouveaux algorithmes (qualiés de sûr)I IDEA (128bits)I AES (ou Rijndael) (128, 192, 256 bits ; 10, 12 ou 14 étages)
J.-O. Lachaud (LAMA) INFO913 97 / 205
Critiques de DES V
I caractéristiques : taille de la clé plus grande, boîtes de substitutionsobtenues par inversion dans un corps ni plus grand (8bits), mélangede colonnes pour diuser les pistes diérentielles
J.-O. Lachaud (LAMA) INFO913 98 / 205
Modes opératoires I
Soit K une clé secrète initiale, IV un nombre
ECB electronic codebook modesimple chirement indépendant desblocs
CBC cipher block chaining mode :y0 = IV , yi+1 = eK (yi ⊕ xi+1)Chirement à clé constante. Texteclair additionné à la sortie précédente.
J.-O. Lachaud (LAMA) INFO913 99 / 205
Modes opératoires II
original DES ECB DES CBC
CFB cipher feedback mode : Initialisa-tion y0 = IV puis yi+1 = eK (yi )⊕xi+1
Chirement par addition du chire-ment de la sortie précédente.
J.-O. Lachaud (LAMA) INFO913 100 / 205
Modes opératoires III
OFB output feedback mode : cléssuccessives indépendantes de l'entrée,z0 = IV , zi+1 = eK (zi ), yi = zi ⊕ xiSuite de clés successives obtenue parchirement par clé K . Addition deces clés au texte clair. Chirement dutexte indépendant du chirement dutexte précédent.
J.-O. Lachaud (LAMA) INFO913 101 / 205
Modes opératoires IV
Exemples d'utilisation
formation de Message Authentication Code (MAC).Dans un échange entre deux programmes A et B, les modes CBC ouCFB permettent d'avoir une communication secrète où le chirementdépend non seulement d'une clé secrète mais d'un paramètresupplémentaire sur lequel les deux parties se sont mises d'accord (unIV donné).
le calcul d'une empreinte MD5 ou SHA d'un chier suit le principeCBC, où l'empreinte se calcule par une séquence de chirement parblocs de 512 bits, par addition de l'empreinte du bloc précédent autexte clair suivant.
J.-O. Lachaud (LAMA) INFO913 102 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 103 / 205
Principe des cryptosystèmes à clé publique I
Alice Oscar Bob
Message M (K ,K ′)
y = eK (M)y−→ M = dK ′(y)
RSA, système El Gamal, Merkle Hellman
J.-O. Lachaud (LAMA) INFO913 104 / 205
Principe des cryptosystèmes à clé publique II
fonction à sens unique : fonction pour laquelle le problème préimage
ne peut être résolu de manière ecace.
Problème de la préimage
Soient une fonction f : P 7→ C et y ∈ C.Trouver x ∈ P tel que f (x) = y .
I fonctions pas à sens unique : f (x) = a ∗ x + b mod n, f (x) = x−1
mod nI fonctions à sens unique : f (x) = ax mod n (logarithme discret)
Problème : dicile de déchirer !
fonction à sens unique à trappe : la fonction à sens unique devientfacile à déchirer avec une information secrète supplémentaire
clé publique : fonction à sens unique, clé privée : la trappe de cettefonction.
J.-O. Lachaud (LAMA) INFO913 105 / 205
Principe des cryptosystèmes à clé publique III
NB : chirement public ⇒ attaque passive toujours possible avectexte clair choisi.
J.-O. Lachaud (LAMA) INFO913 106 / 205
Chirement RSA I
Denition (Cryptosystème RSA)
Soit n = pq, p et q premiers. Soit P = C = Zn. Soit
K = (n, p, q, a, b) tq ab ≡ 1(mod φ(n)).
Pour K = (n, p, q, a, b)
1 (n, b) forment la clé publique.
2 (p, q, a) forment la clé privée.
3 chirement : eK (x) = xb mod n
4 déchirement : dK (y) = ya mod n
5 entiers premiers p et q de l'ordre de 10100
6 NB : φ(n) = (p − 1)(q − 1), et pgcd(a, φ(n)) = 1
7 typiquement le message x est un mot de 512 bits (≤ n)
J.-O. Lachaud (LAMA) INFO913 107 / 205
Chirement RSA II
Exemple
Bob choisit p = 17, q = 11, n = 187, φ(n) = 160 = 25 × 5.Il prend a = 39 = 3× 13, b = 119 ≡ a−1(mod 160) car39× 119 = 4641 = 29× 160 + 1.
Alice Bob Kbob = (n, p, q, a, b)
x = 100
eKbob(x) = xb mod n
= 100119 mod 187 = 144⇒ y = 144 reçudKbob(y) = ya mod n
= 14439 mod 187 = 100
J.-O. Lachaud (LAMA) INFO913 108 / 205
Mise en ÷uvre de RSA I
Génération des paramètres RSA
1 Générer deux grands nombres premiers p et q.
2 n← pq, et φ(n)← (p − 1)(q − 1).
3 Choisir b aléatoire (1 < b < φ(n)) avec pgcd(b, φ(n)) = 1
4 a← b−1 mod φ(n)
5 La clé publique est (n, b) et la clé privée est (p, q, a).
J.-O. Lachaud (LAMA) INFO913 109 / 205
Mise en ÷uvre de RSA II
Dicultés pratiques
1 Primalité. Trouver des grands nombres premiers (≈ 512bits)I plus grand nombre factorisé environ 200 chiresI n ≈ 1024bits ≈ 300 chires
2 Calculs rapides. +,−,×,÷, pgcd, exp, inverse
3 tout algorithme linéaire en n est trop lent
4 algorithmes polynomiaux en k = log2 n
J.-O. Lachaud (LAMA) INFO913 110 / 205
Tests de primalité I
Primalité ou non Factorisabilité
Primalité : problème de décision 6= Trouver une factorisation
Inversement, factorisation de n résoud primalité de n
Primalité par tests de√n diviseurs en Ω(2
k2 )
Crible d'Eratosthène, trop lent, trop de mémoire
Denition (Algorithme de Monte-Carlo positif)
Algorithme probabiliste qui résout un problème de décision tel que oui esttoujours correct et si non peut être incorrect avec probabilité max ε.
J.-O. Lachaud (LAMA) INFO913 111 / 205
Tests de primalité II
Test de Miller Rabin
J.-O. Lachaud (LAMA) INFO913 112 / 205
Tests de primalité III
Miller-Rabin : Monte-Carlo positif pour primalité avec ε = 1/4probablement premier composite
n premier 1 0n composite 1
434
Algorithme peut répondre premier alors que le nombre est en faitcomposite ⇒ a est un menteur
Algorithme ne peut répondre composite si le nombre est premier
Pour n composite, moins d'un 14 des valeurs a entre 1 et n − 1 sont
des menteurs
On appelle plusieurs fois l'algorithme pour être de plus en plus sûr
On calculeI a : nombre n de taille donnée est compositeI b : l'algorithme se trompe m fois en disant n premierI Pr[a|b] ≤ 353
353+22m+1 , pour n de 512 bitsI Probabilité de se tromper 44 fois est 2−80.
J.-O. Lachaud (LAMA) INFO913 113 / 205
Tests de primalité IV
Autres test : Test de Solovay-Strassen, basé sur les symboles deLegendre et Jacobi
J.-O. Lachaud (LAMA) INFO913 114 / 205
Calculs rapides sur grands entiers I
k = log2 n
addition, soustractionI naïf. Somme bit à bit plus retenue. O(k)
multiplication, division O(k2)I naïf. On pose k sommes bit à bit plus retenue. O(k2)
I Karatsuba. O(klog 3log 2 ) = O(k1.584)
(a×2m+b)(c×2m+d) = ac×22m+(ac+bd−(a−b)(c−d))×2m+bd
I Toom Cook O(k(1+ε))I Transformée de Fourier Rapide, Fühler, proche de O(k log k)
J.-O. Lachaud (LAMA) INFO913 116 / 205
Calculs rapides sur grands entiers II
pgcd O(k3)I Algorithme d'Euclide. O(k3) (en fait O(k2))
int pgcd(int m, int n)
while ( n != 0 )
int r = m mod n;
m = n;
n = r;
return m;
J.-O. Lachaud (LAMA) INFO913 117 / 205
Calculs rapides sur grands entiers III
inverse modulo nI Algorithme d'Euclide étendu. O(k3) (en fait O(k2))
Fct EuclideEtendu( a, b : entier )
r[0] = a; r[1] = b;
s[0] = 1; s[1] = 0;
t[0] = 0; t[1] = 1;
q = r[0] div r[1];
r[2] = r[0] - q*r[1];
i = 2;
Tant que r[i] > 0
s[i] = s[i-2] - q*s[i-1];
t[i] = t[i-2] - q*t[i-1];
q = r[i-1] div r[i];
i = i+1;
r[i] = r[i-2] - q*r[i-1];
Fin tant que
Retourner r[i-1],s[i-1],t[i-1]
// r[i-1]=pgcd(a,b)
// et a*s[i-1]+b*t[i-1]=r[i-1]
pgcd(120, 23) ? et 23−1
mod 120 ?
r = s ∗a+ t ∗b120 1 120 0 2323 0 120 1 235 1 120 -5 233 -4 120 21 232 5 120 -26 231 -9 120 47 23
Montrez ∀i , ri = asi + bti
J.-O. Lachaud (LAMA) INFO913 118 / 205
Calculs rapides sur grands entiers IV
Exp. modulaire rapide de c . O(log2 c × k2)
c =∑
i ci2i alors bc = b
Pi ci2
i= Πi (b
2i )ci, ssi
bc = (b)c0 · (b2)c1 · (b4)c2 · · · · · ·(b(2k−1))ck−1
Fonction Exp( b, c, n : entier ) : entier
r = 1;
Tant que c > 0
si c & 1 > 0 r = (r*b) mod n;
c = c >> 1;
b = (b*b) mod n;
Fin tant que
retourner r;
RSA peut donc être mis en ÷uvre ecacement.
J.-O. Lachaud (LAMA) INFO913 119 / 205
Sécurité de RSA I
Attaques possibles sur RSA
Factorisation de n
I Si n factorisé en pq par Oscar, alors φ(n) se calcule immédiatement, etdonc l'inverse de b se calcule par Euclide étendu
I algorithme naïf trop lent O(√n)
I Algorithme p − 1 de Pollard et B-friabilité.Un nombre x est B-friable si ses facteurs sont inférieurs à B.
Fct Fact_Pollard_p-1( n, B )
a = 2^(B!) mod n;
d = pgcd( a-1, n );
Si 1<d<n alors retourner d;
sinon Echec;
⇒ Bien choisir ses p et q non B-friables !I Algorithme ρ de Pollard O(n1/4) : on cherche une collision x 6= x ′
tq le pgcd x − x ′ et n est diérent de 1.si x ≡ x ′(mod p) alors p ≤ pgcd(x − x ′, n) < n
J.-O. Lachaud (LAMA) INFO913 121 / 205
Sécurité de RSA II
I Algorithme de Dixon x2 ≡ y2(mod n) alors (x − y) ou (x + y)peuvent être des facteurs de n
I crible quadratique O(e(1+o(1))√ln n ln ln n)
I courbes elliptiques O(e(1+o(1))√2 ln p ln ln p)
I crible algébrique O(e(1,92+o(1))(ln n)1/3(ln ln n)2/3)
Attaque à φ(n) connu
Résoudre
n = pq
φ(n) = (p − 1)(q − 1)
Ou p2 − (n − φ(n) + 1)p + n = 0Les deux racines sont p et q
Attaque à a connu. On peut trouver p,q
J.-O. Lachaud (LAMA) INFO913 122 / 205
Sécurité de RSA III
Attaque de Wiener. Trouve a dès que a < n1/4 et q < p < 2qab ≡ 1(mod φ(n))⇔ ∃t, ab − tφ(n) = 1De plus, n = pq > q2, d'où 0 < n − φ(n) < 3
√n
D'où∣∣bn− t
a
∣∣ < 3ta√n
Comme t < a et hypothèse 3t < 3a < n1/4,∣∣bn− t
a
∣∣ < 1an1/4 < 1
3a2
Et donc t/a est une réduite du dvp en fraction continue de b/n.
Moralité
Choisir n grand ≈ 21024
Choisir p et q, ni trop proches, ni trop éloignés
Rejeter les p et q tels que p − 1 et q − 1 ont des petits facteurs
Choisir a pas trop petit devant n
J.-O. Lachaud (LAMA) INFO913 123 / 205
OAEP Système à clé publique sûr I
Denition
OAEP / Optimal Asymmetric Encryption Padding [Bellare, Rogaway 94]
standard OAEP / IEEE P1363
P = C = 0, 1m, k0 = k −m
f un chirement publique sur 0, 1k , f −1 son déchirement privé.
G : 0, 1k0 → 0, 1m et H : 0, 1m → 0, 1k0 fonctions aléatoires
clé K = (f , f −1,G ,H), r aléatoire sur 0, 1k0
eK (x) = f (x ⊕ G (r)‖r ⊕ H(x ⊕ G (r)))
f −1(y) = x1‖x2, avec x1 ∈ 0, 1m, x2 ∈ 0, 1k0puis r = x2 ⊕ H(x1) et dK (y) = G (r)⊕ x1
Lorsque f et f −1 sont le chirement RSA, on parle de RSA-OAEP.Chaque clair a 2k0 chirement distincts.
J.-O. Lachaud (LAMA) INFO913 125 / 205
OAEP Système à clé publique sûr II
Theorem
RSA-OAEP est sémantiquement sûr ssi les fonctions aléatoires G et H sont
des oracles aléatoires.
G est un oracle aléatoire si le fait d'avoir fait déjà N calculs de G
n'augmente pas la probabilité Pr[G (x) = y ] pour tout x non déjà calculé ety .
OAEP : prétraitement à RSA
peu coûteux : de l'ordre de 128 bits supplémentaires
G et H sont par exemple SHA-1
théoriquement beaucoup plus sûr car r induit un bruit considérable
J.-O. Lachaud (LAMA) INFO913 126 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 127 / 205
Fonction de hachage et intégrité I
1 Fonction de hachage h simpleI donnée x stockée/transmise dans/par un endroit peu sûrI fonction h transformant x en un nombre court y (empreinte, condensé,
digest)I y stocké/transmis dans/par un endroit sûrI intégrité : comparaison h(x) = y ?
2 famille de fonction de hachage hKI paramétrée par clé secrète KI donnée x et y = hK (x) stockée/transmise dans/par un endroit peu sûrI intégrité : comparaison hK (x) = y ?I code d'authentication de message ou MACI authentie aussi l'émetteurI fonction de hachage h = famille à une seule clé possible
J.-O. Lachaud (LAMA) INFO913 128 / 205
Sécurité des fonctions de hachage I
Soient une fonction h : P 7→ C. M = |C| Trois problèmes doivent êtrediciles à résoudre
Problème de la préimage
Soit y ∈ C. Trouver x ∈ P tel que h(x) = y .
Problème de la seconde préimage
Soit x ∈ P. Trouver x ′ ∈ P tel que x ′ 6= x et h(x ′) = h(x).
Problème de la collision
Trouver x , x ′ ∈ P tel que x ′ 6= x et h(x ′) = h(x).
J.-O. Lachaud (LAMA) INFO913 130 / 205
Sécurité des fonctions de hachage II
Denition (Oracle aléatoire / hachage idéal)
Le fait d'avoir fait déjà N calculs de h n'augmente pas la probabilitéPr[h(x) = y ] = 1/M pour tout x non déjà calculé et y .
Algorithme PreImage sur h : X → Y
Fonction Trouver_PreImage(h,y,q)
Choisir un X0 sous-ensemble de X, |X0|=q
Pour tout x dans X0 Faire
Si h(x)==y alors retourner x;
retourner ``Echec''
En moyenne, Pr[Succès] = 1− (1− 1/M)q
Algorithme 2ndPreImage
J.-O. Lachaud (LAMA) INFO913 131 / 205
Sécurité des fonctions de hachage III
Fonction 2ndPreImage(h,x,q)
y=h(x)
Choisir un X0 sous-ensemble de X, |X0|=q-1
Pour tout x dans X0 Faire
Si h(x)==y alors retourner x;
retourner ``Echec''
En moyenne, Pr[Succès] = 1− (1− 1/M)q−1
Algorithme Collision
J.-O. Lachaud (LAMA) INFO913 132 / 205
Sécurité des fonctions de hachage IV
Fonction Collision(h,q)
Choisir un X0 sous-ensemble de X, |X0|=q
Pour tout x dans X0 Faire
y_x = h(x)
Si y_x == y_x' pour x != x' alors
retourner (x,x')
retourner ``Echec''
En moyenne, Pr[Succès] = 1− (M−1M
)(M−2M
) . . . (M−q+1M
)
Nb : Paradoxe des anniversaires. Pour ε = 0.5, q ≈ 1.17√M
Borne minimale sur la taille minimale de l'empreinte. Il faut observer√M
J.-O. Lachaud (LAMA) INFO913 133 / 205
Construction de Merkle-Damgård I
MD5, SHA-0, SHA-1, SHAx , . . . , RIPEMD
Fonction de hachage itérée, avec zip : 0, 1m+t → 0, 1m1 Soit x , |x | > m + t + 1. On construit y tq |y | ≡ 0(mod t)
y = y1‖y2‖ · · · ‖yry souvent construit par bourrage de x : y = x‖pad(x)
2 Soit IV public de longueur m
z0 ← IV
z1 ← zip(z0‖y1)z2 ← zip(z1‖y2)
. . .
zr ← zip(zr−1‖yr ).
J.-O. Lachaud (LAMA) INFO913 135 / 205
Construction de Merkle-Damgård II
3 Parfois g : 0, 1m → 0, 1l publique, alors
h(x) = g(zr )
Construction de Merkle-Damgård1 On divise x en k blocs de t − 1, le dernier complété par des 0. On
rajoute un bloc donnant le nombre de zero rajouté.2 z1 ← zip(0m+1‖y1)3 Pour i de 1 à k , zi+1 ← zip(zi‖1‖yi+1)4 Retourner h(x) = zk+1
J.-O. Lachaud (LAMA) INFO913 136 / 205
Construction de Merkle-Damgård III
Theorem
si zip résistante aux collisions, t ≥ 2 alors h est résistante aux collisions.
Conclusion
Il sut donc de dénir une fonction de compression de0, 1m+t → 0, 1m résistante aux collisions pour avoir une fonction dehachage résistante aux collisions.
J.-O. Lachaud (LAMA) INFO913 137 / 205
Un exemple : SHA-1 I
Empreinte ou condensat de 160 bitsBourrage SHA : message M découpé en blocs de 512 bitsM1 . . . Mk−1 Mk 10 · · · 0 l(M)
Compression 512 bits vers 160 bits16 mots de Mi Wt = ROTL1(Wt−3 ⊕Wt−8 ⊕Wt−14 ⊕Wt−16)
W0 · · · W15 W16 · · · · · · · · · · · · · · · W79
I 80 itérations du calcul
I Les fonctions Ft(B,C ,D) sont dela forme
0 ≤ t ≤ 19 (B∧C )∨((¬B)∨D)20 ≤ t ≤ 39 B ⊕ C ⊕ D
40 ≤ t ≤ 59 (B ∧ C ) ∨ (B ∧D) ∨(C ∧ D)
60 ≤ t ≤ 79 B ⊕ C ⊕ D
I Ki constantes
I A,B,C,D,E initialisés à desconstantes
J.-O. Lachaud (LAMA) INFO913 139 / 205
Un exemple : SHA-1 II
chaque condensat de bloc est l'initialisation du bloc suivant
J.-O. Lachaud (LAMA) INFO913 140 / 205
Hachage et génération aléatoire I
bonnes fonctions de hachage = bons générateurs aléatoires
$$> let x=0; \
while test $x -le 9; do \
echo $x | sha1; let x=x+1; \
done
09d2af8dd22201dd8d48e5dcfcaed281ff9422c7
e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e
7448d8798a4380162d4b56f9b452e2f6f9e24e7a
a3db5c13ff90a36963278c6a39e4ee3c22e2a436
9c6b057a2b9d96a4067a749ee3b3b0158d390cf1
5d9474c0309b7ca09a182d888f73b37a8fe1362c
ccf271b7830882da1791852baeca1737fcbe4b90
d3964f9dad9f60363c81b688324d95b4ec7c8038
136571b41aa14adc10c5f3c987d43c02c8f5d498
J.-O. Lachaud (LAMA) INFO913 142 / 205
Hachage et génération aléatoire II
$> let x=1; let y=0; \
while test $x -le 10; do \
y=`echo $y | sha1`; echo $y; let x=x+1; \
done
09d2af8dd22201dd8d48e5dcfcaed281ff9422c7
00f7c7d8a69f4228724ce25e4993aa87b789433b
1e4dab666517568b861e1ebd3749405916e48506
46f4d6c2a816fb7dc6a7686dbb3d7f1f27ee5d12
1d9c4099519d4feea51d97bc33a265be5c41f1a7
7d5c9566dd41309b057f4dee18dbe65942eb2ef3
3aa4393fd13818fa130441b16303ed6ab6dbd94d
f9057849c84eadd1e33b80b73b8461c8ec017434
b052986d891ae86a7606f5cf195b03961b1411c8
bb5ab12bf139a43f44ec2f1a1c679a11fb34cd46
les fonctions de hachage se conduisent statistiquement comme desgénérateurs aléatoires
J.-O. Lachaud (LAMA) INFO913 143 / 205
Schémas de signature I
Signature numérique 6= signature conventionnelleI pas de lien physique message/signature ⇒ collageI vérication beaucoup plus sûreI un document électronique signé = ∞ copies signées ⇒ dater les
documents/signatures
Objectifs : authentication, non-répudiation, intégrité
Denition (Schéma de signature)
2 Familles de fonctions paramétrées par une clé K
I signer sigK (privé) : S ← sigK (M) où M est un message ou un dé
I vérier verK (public) : verK : (M,S) 7→ vrai , faux
Il fautI non-répudiation : s'assurer qu'il est dicile de forger une fausse
signature sur un document (image et préimage)
J.-O. Lachaud (LAMA) INFO913 145 / 205
Schémas de signature II
I non-répudiation : vérier qu'on ne peut créer deux documents ayantmême signature valide (collision)
I intégrité : vérier qu'on ne peut falsier les données signées (secondepréimage)
I authentication : s'assurer que personne numérique et personnephysique sont les mêmes (certicats)
J.-O. Lachaud (LAMA) INFO913 146 / 205
Quelques schémas de signature I
Signature RSA
1 Alice signe M, sa clé K = (n, p, q, a, b)2 signer S = sigK (M) = dK (M) = Ma mod n3 Bob vérie que S est la signature de M avec clé publique d'Alice4 vérier verK (M,S) = (eK (S) == M) = ((Sb mod n) == M)
Défauts1 Tout le monde peut forger une signature d'Alice !2 Signature déterministe ⇒ favorise les collisions
J.-O. Lachaud (LAMA) INFO913 148 / 205
Quelques schémas de signature II
Signature ElGamal1 Alice signe M, sa clé K = (p, α, β, a), β ≡ αa(mod p)2 Alice tire k au hasard dans Z?
p−1
3 signer S = sigK (M, k) = (γ, δ), avecF γ = αk mod p,F δ = (M − aγ)k−1 mod (p − 1)
4 Bob vérie que S = (γ, δ) est la signature de M avec clé publiqued'Alice
5 vérier verK (M, (γ, δ)) = (βγγδ ≡ αM(mod p)).
Défauts1 On peut fabriquer de faux couples (message, fausse signature)2 l'entier aléatoire ne doit pas être révélé3 l'entier aléatoire ne doit pas être utilisé plusieurs fois
Néanmoins pas d'attaque à message choisi
J.-O. Lachaud (LAMA) INFO913 149 / 205
Quelques schémas de signature III
Principes généraux de signature
On ne signe qu'une empreinteI car signature longue en temps et mémoireI et rend dicile la forge de signature
Toujours signer avant le chirement
Mélange intégrité, et non-répudiation,
J.-O. Lachaud (LAMA) INFO913 150 / 205
Quelques schémas de signature IV
Communication d'un message chiré sous gpg
J.-O. Lachaud (LAMA) INFO913 151 / 205
Quelques schémas de signature V
Communication d'un message chiré et signé sous gpg
J.-O. Lachaud (LAMA) INFO913 152 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologieDénitions et objectifsCryptographie historiqueSûreté d'un chirement, Théorie de Shannon, secret parfaitCryptosystèmes à clé secrète partagéeCryptosystèmes à clé publiqueHachages et schémas de signaturesCerticats, gestion des clés
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 BibliographieJ.-O. Lachaud (LAMA) INFO913 153 / 205
Certicats et authentication I
S'assurer que personne physique et numérique sont les mêmes
Principe : infrastructure de gestion de clés (IGC, PKI) quiI stockent les clés publiquesI garantissent la conformité clé/personneI gère la durée de vie de la clé, sa révocationI autorité de certication : signe les demandes de certicats et les
révocationsI autorité d'enregistrement : génère certicats, vérie identité/unicitéI autorité de dépôt : stocke les certicats et les listes de révocations
certicats X509, PGP/OpenPGP/GnuPG
AC : Thawte, Certinomis, Baltimore, Certplus, Entrust.net, Verisign,GlobalSign, Cybertrust
J.-O. Lachaud (LAMA) INFO913 155 / 205
Certicats et authentication II
Structure d'un certificat
* Version
* Numéro de série
* Algorithme de signature du certificat
* Signataire du certificat
* Validité (dates limite)
o Pas avant
o Pas après
* Détenteur du certificat
* Informations sur la clé publique
o Algorithme de la clé publique
o Clé publique
* Identifiant unique du signataire (Facultatif)
* Identifiant unique du détenteur du certificat (Facultatif)
* Extensions (Facultatif)
J.-O. Lachaud (LAMA) INFO913 156 / 205
Cas d'étude : GnuPG I
PGP [Zimmermann 1991], OpenPGP (RFC4880)
Implémentation Gnu Privacy Guard (GnuPG)
Chirement symétrique/asymétrique
Signatures
Certicats, Certication par réseau social
S'associe bien avec toute application de messagerie (e.g. thunderbird)
J.-O. Lachaud (LAMA) INFO913 158 / 205
Cas d'étude : GnuPG II
1 Informations sur gpg$ gpg version
...
Home: ~/.gnupg
Algorithmes supportés:
Clé publique: RSA, RSA-E, RSA-S, ELG-E, DSA
Chiffrement: 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
Hachage: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Non-compressé, ZIP, ZLIB, BZIP2
J.-O. Lachaud (LAMA) INFO913 159 / 205
Cas d'étude : GnuPG III
2 Créer sa clé publique
$ gpg gen-key
...
Sélectionnez le type de clé désiré:
(1) DSA et Elgamal (par défaut)
(2) DSA (signature seule)
(5) RSA (signature seule)
Votre choix ?
1
La paire de clés DSA fera 1024 bits.
les clés ELG-E peuvent faire entre 1024 et 4096 bits de longueur.
...
Vous avez besoin d'un nom d'utilisateur pour identifier votre clé; le
programme le construit à partir du nom réel, d'un commentaire et d'une
adresse e-mail de cette manière:
Heinrich Heine (Der Dichter) <[email protected]>
J.-O. Lachaud (LAMA) INFO913 160 / 205
Cas d'étude : GnuPG IV
Nom réel : Jean Bon
Adresse e-mail : [email protected]
Commentaire : Comme du bon pain
Vous avez sélectionné ce nom d'utilisateur:
"Jean Bon (Comme du bon pain) <[email protected]>"
Un grand nombre d'octets aléatoires doit être généré.
...
gpg: clé AAF48B9E marquée comme ayant une confiance ultime.
les clés publique et secrète ont été créées et signées.
gpg: vérifier la base de confiance
gpg: 3 marginale(s) nécessaires, 1 complète(s) nécessaires, modèle
de confiance PGP
gpg: profondeur: 0 valide: 2 signé: 0
confiance: 0-. 0g. 0n. 0m. 0f. 2u
gpg: la prochaine vérification de la base de confiance aura lieu le 2013-02-04
pub 1024D/AAF48B9E 2008-02-06
Empreinte de la clé = 8B59 5F66 F3E0 28F3 15FF 20DF 10BC 6865 AAF4 8B9E
uid Jean Bon (Comme du bon pain) <[email protected]>
sub 2048g/85B0C9A7 2008-02-06
J.-O. Lachaud (LAMA) INFO913 161 / 205
Cas d'étude : GnuPG V
clé publique de Jean Bon (8 derniers octets) : AAF48B9E
3 Voir les clés que l'on connait
$ gpg list-keys
/home/lachaud/.gnupg/pubring.gpg
--------------------------------
pub 1024D/C294834D 2008-02-06 [expire: 2013-02-04]
uid Jacques-Olivier Lachaud <[email protected]>
sub 2048g/31BC7EF2 2008-02-06 [expire: 2013-02-04]
pub 1024D/FE3AAF25 2007-03-15 [expire: 2008-10-07]
uid David Coeurjolly <[email protected]>
sub 2048g/DF839ABF 2007-03-15 [expire: 2008-03-19]
...
pub 1024D/AAF48B9E 2008-02-06
uid Jean Bon (Comme du bon pain) <[email protected]>
sub 2048g/85B0C9A7 2008-02-06
J.-O. Lachaud (LAMA) INFO913 162 / 205
Cas d'étude : GnuPG VI
4 Créer un certicat de révocation$ gpg gen-revoke bon
sec 1024D/AAF48B9E 2008-02-06 Jean Bon (Comme du bon pain) <[email protected]>
Générer un certificat de révocation pour cette clé ? (o/N) o
choisissez la cause de la révocation:
0 = Aucune raison spécifiée
1 = La clé a été compromise
...
Vous avez besoin d'une phrase de passe pour déverrouiller la
clé secrète pour l'utilisateur: Jean Bon (Comme du bon pain) <[email protected]>
***************
J.-O. Lachaud (LAMA) INFO913 163 / 205
Cas d'étude : GnuPG VII
clé de 1024 bits DSA, ID AAF48B9E, créée le 2008-02-06
sortie avec armure ASCII forcée.
Certificat de révocation créé.
Déplacez-le dans un support que vous pouvez cacher ; si Mallory a
accès à ce certificat il peut l'utiliser pour rendre votre clé
inutilisable.
Une bonne idée consiste à imprimer ce certificat puis à le stocker
ailleurs, au cas où le support devient illisible. Mais attention :
le système d'impression de votre machine pourrait stocker ces
données et les rendre accessibles à d'autres personnes !
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: A revocation certificate should follow
iFsEIBECABsFAkeq4MIUHQJNb3QgZGUgcGFzc2UgcGVyZHUACgkQELxoZar0i548
FwCgoHbQzsn9/CKYcbJPe9ooWvCnoGEAnjrXsgyUQQsAW2d7oupgr7VQ63VG
=utF/
-----END PGP PUBLIC KEY BLOCK-----
J.-O. Lachaud (LAMA) INFO913 164 / 205
Cas d'étude : GnuPG VIII
5 S'enregistrer auprès d'un serveur de clés$ gpg keyserver pool.sks-keyservers.net send-keys AAF48B9E
gpg: envoi de la clé AAF48B9E au serveur hkp pool.sks-keyservers.net
6 Quelques public key servers
J.-O. Lachaud (LAMA) INFO913 165 / 205
Cas d'étude : GnuPG IX
pool.sks-keyservers.net
pgp.mit.edu
pgp.nic.ad.jp
keyserver.veridis.com
pgp.uni-mainz.de
J.-O. Lachaud (LAMA) INFO913 166 / 205
Cas d'étude : GnuPG X
7 Chercher une clé sur un serveur$ gpg keyserver pool.sks-keyservers.net search-keys sarkozy
(1) Csongor Sarkozy <[email protected]>
1024 bit DSA key C3507937, créé: 1999-10-10
Keys 1-1 of 1 for "sarkozy". Entrez le(s) nombre(s), S)uivant, ou Q)uitter >
gpg: requête de la clé C3507937 du serveur hkp pool.sks-keyservers.net
gpg: clé C3507937: clé publique \T1\guillemotleft Csongor Sarkozy <[email protected]> \T1\guillemotright importée
gpg: 3 marginale(s) nécessaires, 1 complète(s) nécessaires, modèle
de confiance PGP
gpg: profondeur: 0 valide: 1 signé: 0
confiance: 0-. 0g. 0n. 0m. 0f. 1u
gpg: la prochaine vérification de la base de confiance aura lieu le 2013-02-04
gpg: Quantité totale traitée: 1
gpg: importée: 1
J.-O. Lachaud (LAMA) INFO913 167 / 205
Cas d'étude : GnuPG XI
8 Chirer un message$ gpg -a encrypt -r bon message.txt
$ cat message.txt.asc
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.6 (GNU/Linux)
hQIOA+DxU5+FsMmnEAf/ZDPOVmVlsfTCi578OwWz+uxxexTBYQxmBDBzDob7B+8P
MWAMC6S1GYBfiwagch+GFCtZQwiBkUT4USJ8mV1XB4ScuCWJAsmoP1wV+p07j7n/
3WaiHglmWZKb0cPJe9zPP+XFDsWX8KNafuBtlUq3KRVb68giohlDDbb3yT/+JYQG
7Lq1k71czSlebKrtk1Hf5vw/mpCEN3Ig/JR8jGlHcGaR3n/RHLykvs8s0dSiyOa9
TfZ1snn3LQFWGauRm3Ylbw6dp9NPXTVpJHxCNZzFzTEllXKuwqP8iSvP7XCIaJzI
ZXdJl36GL+iEPPOgzl2LqIrCVeLrRLVRTiQ6/JVBOwf/TxSV+ZrUlw+7fXGIAPb8
8eqleP4OLDZ+9NG2jaSZDyQxuycg4aOlvsFWP4mraIHD0TItulLkz+171hl96I6X
rK4ezOjdPSLN13dQjf2+PP7dti/hylxgOfOLiMqI7MN524JxA+g/BCcwcY08FB+P
lF8lIeyZvhrPweC8b31Cb2mKQA6w10+CbUAEtugJ3H3tx0vuW0W20d45qKcfy06r
CBd8+oBBYMvw6Lmr3u9iNd46pC5ESHKv7jPn92Th9/ML2EEz3UV8gjtKUMlOCgD3
Cbk7vhmORxtsPX8Zc52zSa7D3Ma93PObb1a04YdP6JuR60/8/dcTgwXs6bbh6X4P
uNJ7AY8xk2Nu8T1SBdkbqRYFj7PrL/uLg6q7th6Y6KxGkahTESfGQ+wZuRwGwSaH
2I/IRgDBQ0lR8hxKUUGsE876RLfgfb6eQOdMr87G8pCIZPo9cZJKZ5D7K8J4IMlx
KwVAg3rG+Ih4qZ+RfReh7jupcgvOkouRwot+lSau
=Q3L9
J.-O. Lachaud (LAMA) INFO913 168 / 205
Cas d'étude : GnuPG XII
-----END PGP MESSAGE-----
J.-O. Lachaud (LAMA) INFO913 169 / 205
Cas d'étude : GnuPG XIII
9 Déchirer un message$ gpg message.txt.asc
Vous avez besoin d'une phrase de passe pour déverrouiller la
clé secrète pour l'utilisateur: Jean Bon (Comme du bon pain) <[email protected]>
clé de 2048 bits ELG-E, ID 85B0C9A7, créée le 2008-02-06 (ID clé principale AAF48B9E)
gpg: chiffré avec une clé de 2048 bits ELG-E, ID 85B0C9A7, créée le 2008-02-06
Jean Bon (Comme du bon pain) <[email protected]>
*****************
$ cat message.txt
Ceci est mon message.
--JOL
J.-O. Lachaud (LAMA) INFO913 170 / 205
Cas d'étude : GnuPG XIV
10 Signer le message message.txt$ gpg -a detach-sign -u bon message.txt
Vous avez besoin d'une phrase de passe pour déverrouiller la
clé secrète pour l'utilisateur: Jean Bon (Comme du bon pain) <[email protected]>
clé de 1024 bits DSA, ID AAF48B9E, créée le 2008-02-06
*****************
$ cat message.txt.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQBHqy2TELxoZar0i54RAsC3AKCyGjvMsOHw/lZ4WjQD2j/MRpiRtACdHe69
EMjIUL4ZYw47NfkXVkADqlw=
=KJCN
-----END PGP SIGNATURE-----
J.-O. Lachaud (LAMA) INFO913 171 / 205
Cas d'étude : GnuPG XV
11 Vérier que message.txt.asc est bien la signature de message.txt$ gpg verify message.txt.asc message.txt
gpg: Signature faite le jeu 07 fév 2008 17:10:59 CET avec la clé DSA ID AAF48B9E
gpg: Bonne signature de Jean Bon (Comme du bon pain) <[email protected]>
$ gpg verify message.txt.asc message2.txt
gpg: Signature faite le jeu 07 fév 2008 17:10:59 CET avec la clé DSA ID AAF48B9E
gpg: MAUVAISE signature de Jean Bon (Comme du bon pain) <[email protected]>
J.-O. Lachaud (LAMA) INFO913 172 / 205
Cas d'étude : GnuPG XVI
12 Chirer pour lachaud et signer par Bon le message message.txt$ gpg -a sign -u bon encrypt -r lachaud message.txt
Vous avez besoin d'une phrase de passe pour déverrouiller la
clé secrète pour l'utilisateur: Jean Bon (Comme du bon pain) <[email protected]>
clé de 1024 bits DSA, ID AAF48B9E, créée le 2008-02-06
*****************
On note que Jean Bon ne peut pas déchirer son propre message, et que seul JO Lachaudpeut le faire :
$ gpg message.txt.asc
Vous avez besoin d'une phrase de passe pour déverrouiller la
clé secrète pour l'utilisateur: Jacques-Olivier Lachaud <[email protected]>
clé de 2048 bits ELG-E, ID 31BC7EF2, créée le 2008-02-06 (ID clé principale C294834D)
*****************
gpg: chiffré avec une clé de 2048 bits ELG-E, ID 31BC7EF2, créée le 2008-02-06
Jacques-Olivier Lachaud <[email protected]>
gpg: Signature faite le jeu 07 fév 2008 17:41:24 CET avec la clé DSA ID AAF48B9E
gpg: Bonne signature de Jean Bon (Comme du bon pain) <[email protected]>
J.-O. Lachaud (LAMA) INFO913 173 / 205
Cas d'étude : GnuPG XVII
13 Lorsquevotre clé ne sert plus, on la révoque en utilisant le certicat de révocation$ gpg import
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: A revocation certificate should follow
iFsEIBECABsFAkeq4MIUHQJNb3QgZGUgcGFzc2UgcGVyZHUACgkQELxoZar0i548
FwCgoHbQzsn9/CKYcbJPe9ooWvCnoGEAnjrXsgyUQQsAW2d7oupgr7VQ63VG
=utF/
-----END PGP PUBLIC KEY BLOCK-----
gpg: clé AAF48B9E: Jean Bon (Comme du bon pain) <[email protected]>
certificat de révocation importé
$ gpg list-keys
J.-O. Lachaud (LAMA) INFO913 174 / 205
Cas d'étude : GnuPG XVIII
...
pub 1024D/AAF48B9E 2008-02-06 [revoqué: 2008-02-07]
uid Jean Bon (Comme du bon pain) <[email protected]>
$ gpg keyserver pool.sks-keyservers.net send-keys AAF48B9E
gpg: envoi de la clé AAF48B9E au serveur hkp pool.sks-keyservers.net
$ gpg delete-secret-keys bon
$ gpg delete-keys bon
J.-O. Lachaud (LAMA) INFO913 175 / 205
Cas d'étude : GnuPG XIX
J.-O. Lachaud (LAMA) INFO913 176 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 177 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologieArithmétiques moduloThéorème de Fermat ; Algorithme(s) d'EuclideProbabilités discrètes
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 178 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologieArithmétiques moduloThéorème de Fermat ; Algorithme(s) d'EuclideProbabilités discrètes
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 179 / 205
Congruence, anneau Zm I
Denition (Congruence, module)
Si a, b et m sont des entiers, m > 0, on écrit a ≡ b(mod m) si m diviseb − a (noté m|(b − a)). C'est une relation d'équivalence appeléecongruence modulo m. L'entier m est appelé module.
Si on divise a et b par m, on obtient des quotients et des restes. On vérieque a et b sont congrus ssi leurs restes sont égaux. Leurs restes sont entre0 et m − 1.Le reste de la division de a par m sera noté a mod m.
Montrer que la congruence est une relation d'équivalence
Montrer que les 4 dénitions ci-dessous sont équivalentes :1 la diérence a− b est divisible par m ;2 le reste de la division euclidienne de a par m est égal à celui de la
division de b par m, ie a mod m = b mod m3 il existe un entier k tel que a− b = km,
J.-O. Lachaud (LAMA) INFO913 180 / 205
Congruence, anneau Zm II
4 a− b ∈ nZ, l'idéal de tous les entiers divisibles par n.
Montrer que 101 ≡ 3(mod 7)
La congruence modulo n étant une relation d'équivalence sur l'ensembledes entiers, on peut donc diviser cet ensemble en classes d'équivalences.La classe d'équivalence de l'entier a est l'ensemble des entiers a′ tels quea ≡ a′(mod m). On la note [a]m, ou a + mZ, ou encore, tout simplement,a quand on sait de quel m on parle.L'ensemble quotient de Z par la congruence modulo m est l'ensemble[a]m|a ∈ Z, noté encore Z/mZ ou Zm.
Denition (Anneau commutatif Zm, m > 0)
On dénit une addition et une multiplication sur Zm ainsi
[a]m + [b]m = [a + b]m
[a]m × [b]m = [a × b]m
J.-O. Lachaud (LAMA) INFO913 181 / 205
Congruence, anneau Zm III
On obtient ainsi les propriétés d'un anneau commutatif : addition interne,commutative, associative, 0 neutre pour +, opposé de a est m − a,multiplication interne, commutative, associative, 1 neutre pour ×,distributivité de × sur +.On peut faire des soustractions par addition d'opposéExemple : [8]12 × [3]12 + [6]12 = [6]12
Calculer ab mod 26, pour b = 2, 3, 4, 5, . . . et a quelconque entre 0 et25.
Quand est-ce que tous les entiers de Z26 sont générés ?
Vérier que (a mod m)(b mod m) ≡ ab(mod m). En déduire que (amod m)n ≡ an(mod m).
J.-O. Lachaud (LAMA) INFO913 182 / 205
Inverse dans Zm, corps Zp avec p premier I
Theorem
L'équation ax ≡ b(mod m) admet une solution unique x ∈ Zm pour tout
b ∈ Zm ssi pgcd(a,m) = 1.
Soit a ∈ Zm. Un inverse de a est un élément a−1 ∈ Zm tel queaa−1 ≡ a−1a ≡ 1(mod m).Exercices :
S'il existe, cet inverse est unique.
D'après le théorème précédent, a admet un inverse modulo m ssipgcd(a,m) = 1.
Vérier que pour m premier, Zm est alors un corps.
J.-O. Lachaud (LAMA) INFO913 183 / 205
Inverse dans Zm, corps Zp avec p premier II
Denition (fonction indicatrice d'Euler φ)
Soient des entiers a ≥ 1 et m ≥ 2. Si pgcd(a,m) = 1, on dit que a et msont premiers entre eux. Le nombre des entiers de Zm qui sont premiersavec m est noté φ(m), et φ est la fonction indicatrice d'Euler.
Fig.: 1000 premières valeurs de φ.
J.-O. Lachaud (LAMA) INFO913 184 / 205
Inverse dans Zm, corps Zp avec p premier III
On rappelle que tout nombre m > 1 se factorise de manière unique enproduits de puissances de nombres premiers [Théorème fondamental del'arithmétique] (e.g. 98 = 2× 72).
Theorem
Si m = Πni=1p
eii , où les pi sont premiers distincts. Alors
φ(m) = Πni=1(p
eii − pei−1i ).
Démonstration.
On utilise le fait que si u et v sont premiers entre eux et strictementspositifs, alors φ(uv) = φ(u)φ(v). On montre ensuite par récurrence sur mque φ(m) = Πn
i=1φ(peii ), en utilisant le caractère multiplicatif de φ. Puis
φ(peii ) = peii − pei−1i , car les entiers 1× pi , 2× pi , . . . , pei−1i × pi sont les
seuls entiers non premiers avec peii , ce qui conclut.
J.-O. Lachaud (LAMA) INFO913 185 / 205
Inverse dans Zm, corps Zp avec p premier IV
Exercices :
φ(40) = φ(5 · 23) = (5− 1)(23 − 22) = 16 = 40(1− 1/5)(1− 1/2) =160/10.
Si m premier, que vaut φ(m) ?
Montrez que φ(m) = mΠni=1(1−
1pi
).
J.-O. Lachaud (LAMA) INFO913 186 / 205
Quelques propriétés asymptotiques de primalité I
il y a une innité de nombres premiers.
Soit π(n) le nombre de nombres premiers inférieurs à n.
limn→+∞
π(n)
n/ ln n= 1.
∀n ≥ 5, φ(n) ≥ n6 ln ln n
J.-O. Lachaud (LAMA) INFO913 187 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologieArithmétiques moduloThéorème de Fermat ; Algorithme(s) d'EuclideProbabilités discrètes
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 188 / 205
Théorème de Fermat et autres
Z∗n : Ensemble des résidus modulo n premiers avec n. (|Z∗n| = φ(n))
Z∗5 = 1, 2, 3, 4, Z∗6 = 1, 5L'ordre d'un élément g dans un groupe multiplicatif est le plus petit m > 0tel que gm = 1.
Theorem (Lagrange)
Si G est un groupe multiplicatif à n éléments et si g ∈ G, alors l'ordre de g
divise n.
Corollary (Petit théorème de Fermat)
Si a ∈ Z et p premier, alors ap ≡ a(mod p).
Corollary (Euler)
Si b ∈ Z∗n, alors bφ(n) ≡ 1(mod n).
Exemples : 46 mod 7 = 1, 36 mod 7 = 1, 52 mod 6 = 1, etcJ.-O. Lachaud (LAMA) INFO913 189 / 205
Calcul du pgcd
Algorithme d'Euclide de calcul du pgcd
INPUT: a, b dans Z, a >= b >= 0
OUTPUT: pgcd(a,b)
1. Tant que b != 0 faire
1.1 r := a mod b, a := b, b := r
2. Retourner a
Complexité : O((log n)3) opérations de bits.(analyse précise : O((log n)2))
J.-O. Lachaud (LAMA) INFO913 191 / 205
Algorithme d'Euclide étendu
Algorithme d'Euclide étendu
INPUT: a, b dans Z, a >= b >= 0
OUTPUT: d = pgcd(a,b), x et y tq a*x+b*y=d.
1. Si b = 0 alors
1.1 d := a, x := 1, y := 0.
1.2 retourner (d,x,y)
2. x2 := 1, x1 := 0, y2 := 0, y1 := 1.
3. Tant que b > 0, faire
3.1 q := a div b, r := a - q*b.
3.2 x := x2 - q*x1, y := y2 - q*y1.
3.3 a := b, b := r.
3.4 x2 := x1, x1 := x, y2 := y1, y1 := y.
4. d := a, x := x2, y := y2.
5. retourner (d, x, y );
Complexité : O((log n)2) opérations de bits
Montrez qu'à tout passage de 3.4, on a r = a0x + b0y . (point xe dela boucle, a0 et b0 sont les valeurs initiales de a et b. Indicez lesvariables avec le numéro de l'itération.)Montrez que si pgcd(a, b) = 1, alors b−1 mod a = y mod a.Cet algorithme calcule ecacement l'inverse d'un entier dans Za.
J.-O. Lachaud (LAMA) INFO913 193 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologieArithmétiques moduloThéorème de Fermat ; Algorithme(s) d'EuclideProbabilités discrètes
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 194 / 205
Expérience, probabilité I
expérience : procédure qui a une issue (événement simple s1, s2, . . . ) parmiun ensemble d'issues possibles (univers S)distribution de probabilités P sur S : suite de nombres positifs pi associée àchaque si , de somme 1. pi est la probabilité que l'événement si soit l'issuede l'expérimentation.
Denition (Evénement)
événement E : sous-ensemble de S . La probabilité de E est la somme desprobabilités de chaque événement élémentaire de E , i.e. Pr[E ] =
∑si∈E pi .
O ≤ Pr[E ] ≤ 1. Pr[S ] = 1 et Pr[∅] = 0.
Pr[E ] = 1− Pr[E ].
Si les pi sont identiques, Pr[E ] = |E ||S| .
J.-O. Lachaud (LAMA) INFO913 195 / 205
Expérience, probabilité II
Pr[E1 ∩ E2] est la probabilité mutuelle de E1 et E2. Deux événements sontmutuellement exclusifs ssi Pr[E1 ∩ E2] = 0
si E1 ⊆ E2 alors Pr[E1] ≤ Pr[E2]
Pr[E1 ∪ E2] + Pr[E1 ∩ E2] = Pr[E1] + Pr[E2].
Montrez que l'événement deux jets de pièces donnent un pile et unface a une probabilité 1/2.
Montrez que l'événement la somme de deux jets de dés vaut 3 a uneprobabilité 1/12. On utilisera une expérience dénie sur1, 2, 3, 4, 5, 6 × 1, 2, 3, 4, 5, 6.En déduire que la somme d'une paire de dés est une expérience. Quelleest sa distribution de probabilités ?
J.-O. Lachaud (LAMA) INFO913 196 / 205
Expérience, probabilité III
Denition (Probabilité conditionnelle)
Si E1 et E2 sont deux événements, Pr[E2] > 0. La probabilité conditionnelle
de E1 étant donné E2 est
Pr[E1|E2] =Pr[E1 ∩ E2]
Pr[E2].
Cela mesure la probabilité que E1 se réalise, sachant que E2 s'est réalisé.
Les événements E1 et E2 sont indépendants ssi Pr[E1 ∩E2] = Pr[E1]Pr[E2].
Theorem (Théorème de Bayes)
Soient E1 et E2 deux événements. Si Pr[E2] > 0, on a
Pr[E1|E2] = Pr[E1]Pr[E2|E1]Pr[E2]
.
En déduire que E1 et E2 sont indépendants ssi Pr[E1|E2] = Pr[E1].
J.-O. Lachaud (LAMA) INFO913 197 / 205
Variable aléatoire I
Denition (Variable aléatoire discrète)
Une variable aléatoire discrète X est une fonction de S vers un espace T
(souvent R).
La probabilité que X se réalise en x est la probabilité de l'événement E telque E = s ∈ S ,X (s) = x.
Pr[X = x ] = Pr[X−1(x)] =∑
si∈S,X (si )=x
Pr[si] =∑
si∈S,X (si )=x
pi
.
La fonction valeur d'un dé est une vad de 1, 2, 3, 4, 5, 6 vers R(qui prend seulement 6 valeurs)
La fonction somme de deux dés est une vad de1, 2, 3, 4, 5, 6 × 1, 2, 3, 4, 5, 6 vers R (qui prend seulement 11valeurs). Que vaut Pr[X = 11] ?
J.-O. Lachaud (LAMA) INFO913 198 / 205
Variable aléatoire II
Soit X la vad somme de deux dés et soit Y la vad qui prend lavaleur 1 si les dés forment un double, 0 sinon. Déterminez d'abordPr[Y = 1] et Pr[Y = 0]. Calculer ensuite Pr[Y = 1|X = 4] etPr[X = 4|Y = 1]. Vérier la relation de Bayes.
Denition (Espérance)
Si X est une vad sur S , l'espérance de X (ou moyenne de X ) estE (X ) =
∑si∈S X (si )Pr[si ].
Montrez que E (X ) =∑
x∈T xPr[X = x ].
Quelles sont les espérances de valeur d'un dé, somme de deux dés,double vaut 1, sinon 0 ?
Montrez la linéarité de l'espérance, i.e. si X1 et X2 sont des vad sur S ,alors E (a1X1 + a2X2) = a1E (X1) + a2E (X2).
J.-O. Lachaud (LAMA) INFO913 199 / 205
Variable aléatoire III
Denition (Evénement identié d'une expérience)
Une expérience sur un espace des échantillons X sera souvent noté X. Parabus, l'événement l'expérience X a eu pour issue l'éventualité x sera notépar X = x , où x ∈ X . Sa probabilité est PrX = x = Pr x .
Ainsi si X = 1, 2, 3, 4, 5, 6, les expériences premier jet de dé vaut jet deuxième jet de dé vaut 7− j sont notées X1 = j et X2 = 7− j .Leur probabilités sont 1/6 pour tout j .
Par abus, on peut les voir comme des variables aléatoires discrètestriviales, qui sont des fonctions identité (cf plus loin).
J.-O. Lachaud (LAMA) INFO913 200 / 205
Plan
1 Introduction à la sécurité et à la cryptologie
2 Cryptosystèmes et science de la cryptologie
3 Sécurité informatique et réseaux
4 Mathématiques utiles pour la cryptologie
5 Bibliographie
J.-O. Lachaud (LAMA) INFO913 201 / 205
Références et lectures I
Cryptologie
D. Stinson.
Cryptographie Théorie et pratique.
Vuibert, Paris, 2003.
B. Martin.
Codage, cryptologie et applications.
Presses Polytechniques Universitaires Romandes, Lausanne, 2004.
Sécurité informatique
J.-F. Pillou.
Tout sur la sécurité informatique.
Dunod, Paris, 2005.
J.-O. Lachaud (LAMA) INFO913 202 / 205
Références et lectures II
L. Bloch and C. Wolfhugel.Sécurité informatique Principes et méthodes.Eyrolles, Paris, 2007.
B. Favre and P.-A. Goupille.Guide pratique de sécurité informatique Mise en ÷uvre sous
Windows et Linux.Dunod, Paris, 2005.
Réseaux et Sécurité
S. Ghernaouti-Hélie.Sécurité informatique et réseaux.Dunod, Paris, 2006.
G. Pujolle.Les réseaux.Eyrolles, Paris, 6ème édition, 2007.
J.-O. Lachaud (LAMA) INFO913 203 / 205
Webographie I
Sites généraux sur la cryptologie et les mathématiques
I Wikipedia [http ://fr.wikipedia.org/wiki/Cryptologie]
I MathWorld [http ://mathworld.wolfram.com]
I Appprendre En Ligne [http ://www.apprendre-en-ligne.net/crypto/menu/index.html]
I Handbook of applied cryptography [http ://www.cacr.math.uwaterloo.ca/hac/]
Organismes liés à la sécurité sur Internet
I Internet Crime Complaint Center (IC3) [http ://www.ic3.gov]
I les RFCs de l'Internet Engineering Task Force (IETF) [www.ietf.org]
Entreprises prenant part à la sécurité
I Bulletins sécurité de Microsoft [http ://www.microsoft.com/technet/security/]
Organismes liés à la sécurité des réseaux universitaires
I CERT Renater [http ://www.renater.fr/rubrique.php3 ?id_rubrique=19]
I Bulletins de vulnérabilités du CERT Renater[http ://sites.univ-provence.fr/wcri/d_serv/d_reseau/d_cert/courant/index.html]
I CRU Comité Réseau des Universités [http ://www.cru.fr]
J.-O. Lachaud (LAMA) INFO913 204 / 205
Webographie II
Magazines en ligne sur la sécurité
I Journal du Net [http ://www.journaldunet.com/solutions/securite/]
I CommentCaMarche.Net [http ://www.commentcamarche.net]
Entreprises spécialisées (proposant des informations en ligne)
I SOPHOS [http ://www.sophos.fr]
I Symantec [http ://www.symantec.com]
PGP et GnuPG
I Site ociel de PGP [http ://www.pgp.com]
I Site ociel de GnuPG [http ://www.gnupg.org]
I Introduction à GnuPG [http ://gpglinux.free.fr/]
I GnuPG pour Thunderbird / EnigMail [http ://enigmail.mozdev.org/home/index.php]
I RFC 4880 sur OpenPGP [http ://www.ietf.org/rfc/rfc4880.txt]
J.-O. Lachaud (LAMA) INFO913 205 / 205