Sécurité informatique

Dimension: px
Commencer à balayer dès la page:

Download "Sécurité informatique"

Transcription

1 UNIVERSITÉ LARBI BEN M HIDI OUM EL BOUAGHI Faculté des Sciences Exa es et des Sciences de la Nature et de la Vie DÉPARTEMENT DE MATHÉMATIQUES ET INFORMATIQUE Sécurité informatique SUPPORT DE COURS A L INTENTION DES ÉTUDIANTS DE : 1ère Année Master «Vision Artificielle». 2ème Année Master «Archite ures Distribuées». Par : DR. Abdelhabib BOUROUIS Maitre de conférences B 2014/2015

2 2 Remarques CHER LECTEUR, VOUS POUVEZ PARTICIPER À L AMÉLIORATION DE CE MODESTE SUPPORT DE COURS EN M ENVOYANT VOS REMARQUES ET CRITIQUES À L ADRESSE SUIVANTE : a.bourouis@univ-oeb.dz CE MANUSCRIT EST SOUS LICENCE CREATIVE COMMONS CC-BY Sécurité informatique

3 Table des matières 1 مفاهيم ا ساسية Notions de base Introdu ion Sécurité informatique L archite ure de sécurité OSI Les attaques de sécurité Les menaces relevant de problèmes non spécifiques à l informatique Les pannes et les erreurs (non intentionnelles) Les menaces intentionnelles Exemples d attaques intentionnelles à cara ère informatique Attaques, servcices et mécanismes Les services de sécurité Politique de sécurité Les méthodologies de sécurité Méthode M.A.R.I.O.N Méthode MEHARI Méthode M.E.L.I.S.A Fiabilité des systèmes La stru ure série La stru ure parallèle Bases de la cryptographie Terminologie Confusion et diffusion Chiffrement Déchiffrement Cryptosystème Classes d attaques sur les primitives cryptographiques L attaque à texte chiffré seul (ciphertext-only attack) L attaque à texte clair connu (known-plaintext attack) L attaque à texte clair choisi (chosen-plaintext attack) L attaque adaptative à texte clair choisi (adaptive chosen plaintext attack) L attaque à texte chiffré choisi (chosen ciphertext attack) L attaque adaptative à texte chiffré choisi (adaptive chosen ciphertext attack) تشفير متماثل 2 Crptographie symétrique (ا نظمة التشفير المتناظرة) 2.1 Cryptosystèmes symétriques i

4 ii TABLE DES MATIÈRES 2.2 Chiffre par substitution Chiffre de César Chiffre affine Chiffrement Déchiffrement Cryptanalyse Chiffre de Vigenère Chiffrement Déchiffrement Cryptanalyse Autres chiffres par substitution Chiffres par transposition Principe général Chiffre par bloc et chiffre de flux Modes opératoires ECB CBC PCBC CFB ou CFC Forme simple Version détaillée OFB ou OFC CTR CTS Padding Data Encryption Standard Histoire Fon ionnement Dérivation des sous-clés Déchiffrement Clés faibles Attaques Triple Data Encryption Standard Advanced Encryption Standard Le vainqueur Fon ionnement Déchiffrement Attaques Password-based cryptography Cryptographie asymétrique Principe Fondement théorique Authentification de l origine Transmission sécurisée de la clé symétrique Bases mathématiques Petit théorème de Fermat Propriétés de la congruence modulo n dans Z Sécurité informatique ii

5 TABLE DES MATIÈRES iii éorème de Bachet-Bézout Algorithme d Euclide étendu L algorithme éorème des Restes Chinois Exemple Exemple éorème Solution Solution Généralisation Indicatrice d Euler Propriétés Calcul de la puissance modulaire Rivest Shamir Adleman Création des clés Chiffrement et déchiffrement du message Cryptosystème de ElGamal Fon ionnement Echange de clés Cryptographie quantique Introdu ion Historique Fon ionnement Echange de clés Diffie-Hellman Principe Exemple concret Fondement mathématique L attaque de l homme du milieu Fonctions de hachage Introdu ion Propriétés des fon ions de hachage Preimage resistance nd preimage resistance Collision resistance Fon ion de compression Pseudo-collision Effet avalanche Motivations Critère d avalanche stri e Critère d indépendance Bit Constru ion de fon ions de hachage MAC basée sur une fon ion de hachage MAC basée sur un chiffre symétrique par bloc CBC-MAC Signature digitale Introdu ion Fon ionnement Sécurité informatique iii

6 iv TABLE DES MATIÈRES Signatures avec appendices Signatures avec recouvrement Signatures basées sur les certificats/sur l identité Signature déterministe/probabiliste Attaques Déclinaisons Signature de Rabin Digital Signature Standard et Digital Signature Algorithm Schemas de signature basés sur RSA Bibliography 101 Sécurité informatique iv

7 Table des figures 1.1 Catégories des attaques a ives Intégrité Contrôle d accès Taux de défaillance Moyennes utilisées dans la SdF MTBF et MTTR Stru ures de fiabilité Stru ures de base en fiabilité Ciffrement et déchiffrement Taxonomie des cryptosystèmes Chiffrement en présence d espion La machine de Lorenz utilisée par les Allemands durant la Seconde Guerre mondiale Cryptographie symétrique (à clé secrète) Jules cesar 12 ou 13 juillet 100 av. J.-C. ou 102 av. J.-C mars 44 av. J.-C Table de Vigenere Substitution homophonique Henri IV Scytale Chiffre par flux synchrone et asynchrone Chiffrement en mode ECB Déchiffrement en mode ECB Chiffrement en mode CBC Déchiffrement en mode CBC Chiffrement en mode PCBC Déchiffrement en mode PCBC Chiffrement en mode CFB Déchiffrement en mode CFB Chiffrement en mode CFB en générale Déchiffrement en mode CFB en générale Chiffrement en mode OFB Déchiffrement en mode OFB Chiffrement en mode CTR Déchiffrement en mode CTR CTS opérant sur un chiffrement en mode CBC Data Encryption Standard Schémas de Feistel Permutation initiale (IP ) et finale (IP 1 ) v

8 vi TABLE DES FIGURES 2.26 L 0 et R 0 dans la permutation initiale Expansion (E) et Permutation (P) au début de chaque ronde Tableaux pour la génération des clés de rondes Tables de substitution S1 à S Tables de substitution S5 à S Schéma général du DES Génération de sous clé DES Décalage dans la création des sous-clés de DES Triple DES Données et clés AES (cas Nk = 8) Algorithm 1 - AES(St, K) Algorithm 2 - Round(St, T) Algorithm 3 - FinalRound(St, T) La procédure SubBytes AES-S-Box Transformation SubBytes TransformationShiftRows Transformation MixColums Algorithm 4 - ExpandedKey(K,W) Cas Algorithm 5 - ExpandedKey(K,W) Cas S-Box inverse d AES Algorithm 6 - AES 11 (St,K) Algorithm 7 - InvRound(St, T) Algorithm 8 - InvFinalRound(St, T) Cryptographie asymétrique (à clé publique et privée) Pierre de Fermat - Première décennie du XVIIe siècle à Beaumont-de-Lomagne (France) - 12 janvier 1665 à Castres (France) Leonhard Paul Euler - 15 avril 1707 à Bâle (Suisse) - 18 septembre 1783 (à 76 ans) à Saint-Pétersbourg (Russie) Ron Rivest, Adi Shamir et Len Adleman Taher Elgamal Cryptographie quantique Whitfield Diffie et Martin Hellman Déroulement de l échange de clés Diffie-Hellman Schéma général pour l échange de clés Diffie-Hellman Exemple concret d échange de clés Diffie-Hellman Fon ion de hachage appliquée à 3 entrées différentes Fon ion de hachage itérative Schéma général d une fon ion de hachage Effet avalanche Schéma détaillé d une fon ion de hachage Constru ion de fon ions de hachage HMAC SHA Fon ionnement de CBC-MAC CBC-MAC avec chiffrement du dernier bloc Sécurité informatique vi

9 Liste des tableaux 2.1 Chiffrement de Vigenère de «texte secret» avec la clé «clef» Déchiffrement de Vigenère de «vpbygdihtpx» avec la clé «clef» i Portfolio d estream Le portfolio estream d ECRYPT Etapes de calcul des coefficients de Bézout par l algorithme d Euclide étendu vii

10 viii LISTE DES TABLEAUX Sécurité informatique viii

11 Liste des Algorithmes 3.1 EXPONENTIATION-RAPIDE1 Calcule une puissance modulaire EXPONENTIATION-RAPIDE Calcule une puissance modulaire EXPONENTIATION-RAPIDE-RÉCURSIVE Calcule une puissance modulaire de façon récursive EXPMODREC Calcule une puissance modulaire de façon récursive ix

12 x LISTE DES ALGORITHMES Sécurité informatique x

13 Chapitre 1 مفاهيم ا ساسية Notions de base Sommaire 1.1 Introduction Sécurité informatique L architecture de sécurité OSI Les attaques de sécurité Les menaces relevant de problèmes non spécifiques à l informatique Les pannes et les erreurs (non intentionnelles) Les menaces intentionnelles Exemples d attaques intentionnelles à caractère informatique Attaques, servcices et mécanismes Les services de sécurité Politique de sécurité Les méthodologies de sécurité Méthode M.A.R.I.O.N Méthode MEHARI Méthode M.E.L.I.S.A Fiabilité des systèmes La stru ure série La stru ure parallèle Bases de la cryptographie Terminologie Confusion et diffusion Chiffrement Déchiffrement Cryptosystème Classes d attaques sur les primitives cryptographiques L attaque à texte chiffré seul (ciphertext-only attack) L attaque à texte clair connu (known-plaintext attack) L attaque à texte clair choisi (chosen-plaintext attack) L attaque adaptative à texte clair choisi (adaptive chosen plaintext attack) L attaque à texte chiffré choisi (chosen ciphertext attack) L attaque adaptative à texte chiffré choisi (adaptive chosen ciphertext attack)

14 مفاهيم ا ساسية 2 CHAPITRE 1 : Notions de base 1.1 Introduction Les trois lois de la robotique d Isaac Asimov : 1. Un robot ne peut porter atteinte à un être humain ni en restant passif, laisser cet être humain exposé au danger, 2. Un robot doit obéir aux ordres donnés par des êtres humains sauf quand de tels ordres sont en contradi ion avec la première loi, 3. Un robot doit protéger sa propre existence dans la mesure où une telle prote ion ne s oppose pas à la première et seconde loi. Un système d information est une organisation d a ivités consistant à acquérir, stocker, transformer, diffuser, exploiter, gérer les informations. Un des moyens techniques pour faire fon ionner un système d information est d utiliser des systèmes informatiques qui sont devenus la cible de ceux qui convoitent l information. Assurer la sécurité de l information implique ainsi d assurer la sécurité des systèmes informatiques. L évolution des risques est justifiée par la croissance de l Internet, la croissance des attaques, les failles des technologies, les failles des configurations, les failles des politiques de sécurité, le changement de profil des pirates et la complexité croissante qui entraine une plus grande vulnérabilité. Souffrons-nous du complexe de Frankenstein ou faut-il craindre avec raison les effets pervers d une informatisation trop rapide de la société? 1.2 Sécurité informatique La sécurité informatique c est l ensemble des moyens techniques, organisationnels, juridiques et humains mis en œuvre pour minimiser la vulnérabilité d un système contre des menaces¹ accidentelles ou intentionnelles. En anglais : deux termes différents : «Sécurité = Safety» qui signifie prote ion de systèmes informatiques contre les accidents dus à l environnement, les défauts du système etc. Par exemple les systèmes informatiques contrôlant des procédés temps réels et mettant en danger des vies humaines (transports, énergie, ) «Sécurité = Security» qui signifie prote ion des systèmes informatiques contre des a ions malveillantes intentionnelles. Par exemple les systèmes informatiques réalisant des traitements sensibles ou comprenant des données sensibles. Ainsi la sécurité informatique concerne en français deux domaines : 1. Les méthodes et moyens mis en œuvre pour éviter les défaillances «naturelles» dont les effets ont un cara ère catastrophique (safety). 2. Les méthodes et moyens mis en œuvre pour se protéger contre les défaillances résultant d une a ion intentionnelle (security). 1. En anglais : threat. Sécurité informatique

15 1.3 L archite ure de sécurité OSI L architecture de sécurité OSI L archite ure de sécurité OSI ou «Security archite ure for Open Systems Interconne ion» décrite dans la recommandation X.800 du CCITT et le standard ISO , définit les éléments d archite ure relatifs à la sécurité convenant à une application lorsqu il faut assurer une prote ion de sécurité dans un environnement de systèmes ouverts. 1.4 Les attaques de sécurité Les menaces sont l ensemble des a ions de l environnement d un système pouvant entrainer des pertes financières et coûts humains. Nous pouvons citer : Les menaces relevant de problèmes non spécifiques à l informatique 1. Risques matériels accidentels : pour ceci, les techniques de prote ion sont assez bien maitrisées (Incendie, explosion, inondation, tempête, foudre). 2. Vol et sabotage de matériels : Vol d équipements matériels, destru ion d équipements, destru ion de supports de sauvegarde. 3. Autres risques : Tout ce qui peut entrainer des pertes financières dans une société. Pertes plutôt associées à l organisation, à la gestion des personnels (Départ de personnels stratégiques, grèves, etc) Les pannes et les erreurs (non intentionnelles) 1. Pannes/dysfon ionnements du matériel. 2. Pannes/dysfon ionnements du logiciel de base. 3. Erreurs d exploitation (oubli de sauvegarde, écrasement de fichiers). 4. Erreurs de manipulation des informations (erreur de saisie, erreur de transmission, erreur d utilisation, ) 5. Erreurs de conception des applications. 6. Erreurs d implantation. Tout ce qui précède est rangé dans la case Accident. Le reste est une Malveillance Les menaces intentionnelles Qui sont l ensemble des a ions malveillantes (qui constituent la plus grosse partie du risque) qui devraient être l objet principal des mesures de prote ion. Parmi les obje ifs des attaques : Désinformer Empêcher l accès à une ressource Prendre le contrôle d une ressource Récupérer de l information présente sur le système Utiliser le système compromis pour rebondir Constituer un réseau de «botnet» (ou réseau de machines zombies). Sécurité informatique

16 مفاهيم ا ساسية 4 CHAPITRE 1 : Notions de base FIGURE 1.1 Catégories des attaques a ives. Une menace intentionnelle est dite attaque. Proportions des menaces : A ions malveillantes 61% (en croissance), Risques accidentels 24%, Pannes et erreurs 12%, Autres 3%. Deux types d attaque peuvent être distingués : 1. Attaques passives : copie illicite de données. (capture, écoute, ) Détournement des données (l écoute, les indiscrétions). Exemples : espionnage industriel, espionnage commercial, violations déontologiques. Détournement des logiciels. Exemple : copies illicites. 2. Attaques a ives : modification/suppression illicite de données. Modifications des informations. Exemple : la fraude financière informatique. Le sabotage des informations (logique). Modification des logiciels. Exemples : Bombes logiques, virus, ver. Les menaces a ives appartiennent principalement à quatre catégories (illustrées dans la figure??) : 1. Interruption = problème lié à la disponibilité des données. 2. Interception = problème lié à la confidentialité des données. 3. Modification = problème lié à l intégrité des données. 4. Fabrication = problème lié à l authenticité des données. Il est possible de préciser la notion de risque en la décrivant comme le produit d un préjudice par une probabilité d occurrence : risque = préjudice ˆ d occurrence probabilité. Cette formule exprime qu un évènement dont la probabilité est assez élevée, par exemple la défaillance d un disque dur, mais dont il est possible de prévenir le préjudice qu il peut causer, par des sauvegardes régulières, représente un risque acceptable ; il en va de même pour un évènement à la gravité imparable, comme l impa d un météorite de grande taille, mais à la probabilité d occurrence faible. Il va de soi que, dans le premier cas, le risque ne devient acceptable que si les mesures de prévention contre le préjudice sont effe ives et efficaces : cela irait sans dire, si l oubli de cette condition n était très fréquent. Sécurité informatique

17 1.5 Exemples d attaques intentionnelles à cara ère informatique Exemples d attaques intentionnelles à caractère informatique 1. DÉGUISEMENT : Pour rentrer dans un système on essaye de piéger des usagers et de se faire prendre pour quelqu un d autre. Exemple : simulation d interface système sur écran ou simulation de terminal à carte bancaire. 2. RÉPÉTITION («REPLAY») : Espionnage d une interface, d une voie de communication (téléphonique, réseau local) pour capter des opérations (même cryptées elles peuvent être utilisables). Répétition de l opération pour obtenir une fraude. Exemple : Plusieurs fois la même opération de créditer un compte bancaire. 3. ANALYSE DE TRAFIC : On observe le trafic de messages échangés pour en déduire des informations sur les décisions de quelqu un. Exemples : Bourse : augmentation des transa ions sur une place financière. Militaire : le début de concentration entraine un accroissement de trafic important. 4. INFÉRENCE : On obtient des informations confidentielles non divulguables à partir d un faisceau de questions autorisées (et d un raisonnement visant à faire ressortir l information). Exemple : Soit le fichier d un hôpital, la loi informatique et liberté interdit la divulgation d informations personnelles (sur les maladies), mais autorise des opérations statistiques (améliorer les connaissances épidémiologiques), donc pas de possibilité de séle ion sur le nom, le numéro de sécurité sociale, l adresse, etc. Mais questions à cara ère statistiques autorisées. Pour obtenir des informations confidentielles poser des questions à cara ère statistique comportant un faisceau de contraintes permettant en fait de filtrer une seule personne comme question sur les effe ifs (sexe = masculin, age = 30, arrêt maladie, ). 5. RÉPUDIATION : Un usager d un service (informatique) affirme n avoir pas : émis un ordre qui le gêne a postériori (commande, virement, ) reçu un ordre (idem).une menace répudiation implique le traitement d une transa ion de telle façon qu aucune preuve des entités de sécurité impliquées ne subsiste à la transa ion. Dans une application Web, cela peut se traduire par l usurpation des informations d identification d un utilisateur innocent. 6. MODIFICATION DE MESSAGES ET DE DONNÉES : Une personne non autorisée, un usager ou même un agent autorisé s attribuent des avantages illicites en modifiant un?chier, un message (le plus souvent cette modification est réalisée par programme et entre dans la catégorie suivante). 7. MODIFICATION DES PROGRAMMES : Les modifications à cara ère frauduleuses : Pour s attribuer par programme des avantages. Par exemple : virement des centimes sur un compte. Les modifications à cara ère de sabotage : Pour détruire avec plus ou moins de motivations des systèmes ou des données. Deux types de modifications : (a) Infe ions informatiques à cara ère unique : Bombe logique ou cheval de Troie. Dans un programme normal on introduit un comportement illicite mis en a ion par une condition de déclenchement ou trappe (la condition, le moment ou l on bascule d un comportement normal à un comportement anormal). Par exemple : licenciement de l auteur du programme date quelconque. (b) Infe ions auto reprodu rices : Il s agit d une infe ion informatique simple (du type précédent) qui contient de plus une partie de recopie d elle même afin d en assurer la propagation. Virus : à a ion brutale. Ver : à a ion lente (détruisant progressivement les ressources d un systèmes). Sécurité informatique

18 مفاهيم ا ساسية 6 CHAPITRE 1 : Notions de base 1.6 Attaques, servcices et mécanismes Pour considérer efficacement les besoins de sécurité d une organisation et évaluer et choisir les nombreux produits et politiques de sécurité, le responsable de la sécurité a besoin de moyens systématiques de définition des exigences de sécurité et de cara érisation des approches qui satisfont ces exigences. Une approche possible est de considérer trois aspe s de la sécurité de l information : 1. Services de sécurité : un service qui améliore la sécurité des systèmes informatiques et des transferts d information d une organisation. Les services sont conçus pour contrer les attaques de sécurité, et ils utilisent un ou plusieurs mécanismes de sécurité. On peut penser aux services de sécurité de l information par analogie avec les types de fonctions associées aux documents physiques. La plupart des a ivité humaines, dans des domaines aussi divers que le commerce, la politique étrangère, les a ions militaires, dépendent de l utilisation de documents et de la confiance des deux partis en l intégrité de ces documents. Les documents portent signatures et dates ; ils peuvent nécessiter une prote ion contre la divulgation, la falsification ou la destru ion ; être attestés, enregistrés, etc. Ã mesure que les systèmes d information deviennent plus diffus et essentiels à la conduite des affaires humaines, l information éle ronique prend en charge bien des rôles traditionnellement dévolus aux documents papier. En conséquence, les fon ions associées aux documents papier doivent être accomplies sur des documents au format dématérialisé. Plusieurs aspe s propres aux documents éle roniques font qu assurer ces fon ions ou services est un défi : il est habituellement possible de distinguer entre un document papier original et sa photocopie. Cependant, un document éle ronique est purement une séquence de bits ; il n y a pas de différence entre «l original» et toutes ses copies ; une altération d un document papier peut laisser des preuves physiques. Par exemple, un effacement peut laisser une tache ou une surface rugueuse. L altération de bits dans une mémoire d ordinateur ou un signal ne laisse à priori aucune trace ; tout processus de «preuve» associé à un document physique dépend des cara éristiques physiques du document (par exemple, la forme d une signature manuelle ou un tampon de notaire). De telles preuves d authenticité d un document éle ronique doivent être basées sur des signes présents dans l information elle-même. 2. Mécanismes de sécurité : un mécanisme est conçu pour déte er, prévenir ou rattraper une attaque de sécurité. Un seul mécanisme ne peut fournir tous les services de sécurité. On peut noter qu un élément particulier sous-tend la plupart des mécanismes de sécurité en usage : les techniques cryptographiques. Le chiffrement - ou des transformations similaires - de l information est le moyen le plus courant pour fournir une sécurité. Ainsi, dans ce cours on insistera sur le développement, l utilisation et la gestion de ces techniques. 3. Attaque de sécurité : une a ion qui compromet la sécurité de l information possédée par une organisation. La sécurité de l information traite de la prévention de la fraude, ou, à défaut, de sa détection dans des systèmes d information à l intérieur desquels l information elle-même n a pas d existence physique significative. On verra dans les transparents suivants une liste d exemples évidents de tricherie, qui se sont produits dans des cas réels. Ce sont des exemples d attaques spécifiques qu une organisation ou un individu peut avoir à affronter. La nature de l attaque varie considérablement selon les circonstances. Sécurité informatique

19 1.7 Les services de sécurité 7 Heureusement, il est possible d approcher le problème en examinant les types génériques d attaques pouvant être rencontrées. Ce sera le sujet de la prochaine se ion. 1.7 Les services de sécurité Ce sont les services de base (obje ifs de base) qu on veut assurer ou enjeux de la sécurité des systèmes d information devant être maitrisés. Cinq principaux services à garantir : 1. AUTHENTIFICATION : consistant à s assurer que seules les personnes autorisées aient accès aux ressources. Pouvoir s assurer de l identité². L authentification consiste à s assurer de l identité d un utilisateur, c est-à-dire de garantir à chacun des correspondants que son partenaire est bien celui qu il croit être. Un contrôle d accès peut permettre (par exemple par le moyen d un mot de passe qui devra être crypté) l accès à des ressources uniquement aux personnes autorisées.³ 2. INTÉGRITÉ : garantie que l information n est pas altérée. Voir la figure CONFIDENTIALITÉ : garantie que l information n est pas divulguée à des tiers non autorisés (frauduleusement ou non). Les personnes autorisées ont accès aux éléments considérés. La confidentialité consiste à rendre l information inintelligible à d autres personnes que les seuls a eurs de la transa ion. 4. DISPONIBILITÉ : garantie de la continuité du service. Les éléments considérés sont accessibles au moment voulu par les personnes autorisées. 5. NON-RÉPUDIATION/IMPUTATION : permettant de garantir qu une transa ion effe uée ne peut être niée ni et si elle n a pas eu lieu. Le contrôle d accès consiste à vérifier si une entité (une personne, un ordinateur, ) demandant d accéder à une ressource a les droits nécessaires pour le faire. Un contrôle d accès offre ainsi la possibilité d accéder à des ressources physiques (par exemple un bâtiment, un local, un pays) ou logiques (par exemple un système d exploitation ou une application informatique spécifique). Parfois dans la littérature du domaine, on considère un autre service de base qui est le contrôle d accès. A notre avis, il ne s agit pas d un service de base. Il est lié étroitement à l authentification et comprend généralement 3 composantes : 1. Un mécanisme d authentification de l entité (par mot de passe, carte à puce, une clé, un élément biométrique, etc.). 2. Un mécanisme d autorisation (ou d habilitation) après vérification que l a ion demandée est autorisée (à ce moment). L habilitation peut avoir une durée limitée!. 3. Un mécanisme de traçabilité(respe d une procédure, heures ouvrées, etc.). Possibilité de pouvoir retrouver a posteriori le responsable d une a ion. Aujourd hui, les entreprises sont de plus en plus amenées à tracer leurs accès informatique à l aide d un «Reporting des Droits d Accès». 2. s identifier, c est communiquer son identité, s authentifier, c est apporter la preuve de son identité 3. L identification des utilisateurs est fondamentale pour gérer les accès aux espaces de travail pertinents et maintenir la confiance dans les relations d échange. Sécurité informatique

20 مفاهيم ا ساسية 8 CHAPITRE 1 : Notions de base FIGURE 1.2 Intégrité. FIGURE 1.3 Contrôle d accès. 1.8 Politique de sécurité Une politique de sécurité des systèmes d information (PSSI) est un ensemble de règles qui fixent les a ions autorisées et interdites dans le domaine de la sécurité. C est un plan d a ions définies (ensemble des modèles d organisation, des procédures et des bonnes pratiques techniques) permettant d assurer la sécurité du système d information (maintenir un certain niveau de sécurité) et ne se limite pas à la sécurité informatique. Elle constitue alors le principal document de référence et un outil de communication sur l organisation et les responsabilités SSI, les risques SSI et les moyens disponibles pour s en prémunir. Pour garantir la sécurité, une PSSI est souvent élaborée autour de 3 axes majeurs : la sécurité physique des installations, la sécurité logique du système d information et la sensibilisation des utilisateurs aux contraintes de sécurité. L audit de sécurité est essentiel dans la SSI. Il permet de mettre en évidence les faiblesses de la mise en œuvre d une politique de sécurité qui peuvent venir de la politique elle-même si elle est mal conçue ou inadaptée aux besoins de l entreprise, ou bien d erreurs quand à sa mise en application. Des audits sont nécessaires suite à la mise en place initiale d une PSSI, puis périodiquement pour s assurer que les mesures de sécurité sont mises à niveau et que les usages restent conformes aux procédures. L établissement de la PSSI passe généralement par les étapes suivantes : 1. Identification des vulnérabilités En mode fon ionnement normal (définir tous les points faibles) En cas d apparition de défaillances, un système fragilisé est en général vulnérable : c est dans un de ces moments intermédiaires qu une intrusion peut le plus facilement réussir. Sécurité informatique

21 1.9 Les méthodologies de sécurité 9 2. évaluation des probabilités associées à chacune des menaces. 3. évaluation du coût d une intrusion réussie. 4. Choix des contre mesures. 5. évaluation des coûts des contre mesure. 6. Décision. L établissement de la PSSI est souvent réalisé utilisant une démarche claire. Une méthodologie présente, de façon détaillée la conduite de projet d élaboration d une PSSI. 1.9 Les méthodologies de sécurité Réalisées par des grands utilisateurs de techniques de sécurité ou des groupes de travail elles sont applicables par des prestataires de service sous forme d audit de sécurité, d analyse de risques et de propositions d a ions pour améliorer la situation. Diverses méthodes d analyse des risques existent, certaines simples d utilisation, avec parfois des outils logiciels en simplifiant l utilisation. D autres méthodes sont réservées à des grands comptes du fait de leur complexité et des ressources humaines impliquées. Quelques unes sont devenu standards de fait dans certaines entreprises et organisations. Il est convenable de faire un choix judicieux de la méthode qui s applique le mieux à l entreprise ou organisme public visé. Les critères qui guident le choix sont variés et peuvent inclure : 1. l existence d outils logiciels en facilitant l utilisation, la qualité de la documentation et l existence d un club d utilisateurs afin d avoir un retour d expériences. 2. l origine géographique de la méthode, la culture du pays jouant beaucoup sur le fon ionnement interne des entreprises et leur rapport au risque. 3. la langue de la méthode, il est essentiel de maitriser le vocabulaire employé. 4. la facilité d utilisation et le pragmatisme de la méthode. 5. la compatibilité avec une norme nationale ou internationale. 6. le coût de la mise en œuvre. 7. la taille de l entreprise à laquelle elle est adaptée. 8. la quantité de moyens humains qu elle implique et la durée de mobilisation. 9. le support de la méthode par son auteur, une méthode abandonnée n offre plus la possibilité de conseil et de support de la part son éditeur. 10. sa popularité, une méthode très connue offre un réservoir de personnels qualifiés pour la mettre en œuvre Méthode M.A.R.I.O.N Méthode d Analyse des Risques Informatiques et Optimisation par Niveau. (à partir de 1984). CLUSIF : Club des Utilisateurs de La Sécurité Informatique Français. APSAD : Assemblée Plénière des Sociétés d Assurances Dommages. Obje if : Mettre en place le schéma dire eur de la sécurité des systèmes d information SDSSI. Trois approches selon le sujet traité : Sécurité informatique

22 مفاهيم ا ساسية 10 CHAPITRE 1 : Notions de base 1. Marion-AP (avant-projet) (Applicable aux grands comptes et aux compagnies d assurance). 2. Marion-PME. 3. Marion-RSX (Applicable aux réseaux). Les six étapes d élaboration du Schéma Dire eur de Sécurité du Système d Information : 1. Analyse des risques : établissement de scénarios des risques courus par l entreprise. 2. Expression du risque maximum admissible : calcul de la perte maximale subie par l entreprise face à des évènements mettant sa survie en péril. 3. Analyse des moyens de la sécurité existants : identifier et qualifier les moyens de la sécurité (organisation générale, physique et logique) 4. Évaluation des contraintes techniques et financières : recensement des contraintes générales, techniques, humaines et détermination d un budget pour la prévention et la prote ion. 5. Choix des moyens de sécurité : moyens à mettre en œuvre ou à améliorer pour supprimer les risques en fon ion des contraintes et du coût parade/risque 6. Plan d orientation : phase de bilan définissant le plan technique détaillé et réda ion finale du SDSSI. La méthode MARION n a plus évolué depuis 1998 (devenue obsolète). Le CLUSIF propose désormais une méthode harmonisée d analyse des risques (Méhari) Méthode MEHARI La méthode harmonisée d analyse des risques (MEHARI) est une méthode visant à la sécurisation informatique d une entreprise ou d un organisme. Elle a été développée et est proposée par le CLUSIF et a rendu la méthode précédente (MARION) obsolète. Le CLUSIF a présenté le 27 janvier 2010 une nouvelle version de sa méthode MEHARI Méthode M.E.L.I.S.A Délégation générale à l armement MELISA S - Confidentialité des données sensibles 2. MELISA P - Pérennité de fon ionnement du système 3. MELISA M - Sécurité micro mini informatique 4. MELISA. R - Sécurité réseau Plusieurs autres méthodes d analyse de risques existent comme EBIOS⁴, OCTAVE⁵ et il n est pas possible de donner ici une liste exhaustive Fiabilité des systèmes La disponibilité du système désigne son aptitude à délivrer le service, alors que sa fiabilité désigne son aptitude à ne pas l interrompre. Une défaillance survient lorsque le service délivré diffère du 4. EBIOS 5. OCTAVE Sécurité informatique

23 1.10 Fiabilité des systèmes 11 service demandé. Dans certains cas, notre système «refuse» d assurer son service, dans d autres, généralement plus graves, il «décide» de faire autre chose que le service demandé. La sûreté de fon ionnement (SdF)⁶ est l aptitude à éviter l apparition de défaillances et à minimiser leurs effets lorsqu elles se sont produites. La sûreté comprend quatre composantes qui sont la fiabilité, la maintenabilité, la disponibilité et la sécurité. On trouvera aussi l acronyme FMDS pour désigner la sûreté de fon ionnement (comme fiabilité, maintenabilité, disponibilité et sécurité) ou le terme anglais de RAMS (pour reliability, availability, maintainability and safety) 1. La fiabilité d un système est la probabilité pour que le système fon ionne corre ement pendant une durée donnée dans des conditions définies. R(t) = P [S non défaillant sur (0, t)] 2. La disponibilité est l aptitude d un système à être opérationnel au moment où il est sollicité, c est la probabilité que le système soit disponible à un instant donné. D(t) = P [S non défaillant à l instant t] 3. La maintenabilité d un système est la probabilité de retour à un bon fon ionnement dans une durée de temps donnée. Les différentes pannes pouvant être catale iques⁷ (l élément fonctionne ou ne fon ionne pas), ou aléatoires (défaillance statistiquement indépendante d une précédente, la panne d un élément n affe e pas les autres). M(t) = P [S est réparé sur (0, t)] 4. La sécurité est l aptitude d un système à ne pas connaitre de pannes considérées comme catastrophiques pendant une durée donnée. FIGURE 1.4 Taux de défaillance. FIGURE 1.5 Moyennes utilisées dans la SdF. Le comportement d un système peut être décrit dans le temps comme une suite d états de bon et de mauvais fon ionnement. 6. Terme anglais : «Dependability» 7. Défaillance catale ique : Défaillance qui est à la fois soudaine et complète (Norme CEI ). Sécurité informatique

24 مفاهيم ا ساسية 12 CHAPITRE 1 : Notions de base FIGURE 1.6 MTBF et MTTR On appelle MTTR, (Mean Time To Repair, temps moyen de toute réparation), le temps nécessaire à la remise en état du système et MTBF (Mean Time Between Failure, temps moyen de bon fon ionnement) le temps moyen entre deux pannes successives ou durée moyenne entre deux défaillances consécutives d un équipement réparé. MTTF : Durée moyenne de fon ionnement d une entité avant la première défaillance (anglais : Mean Time To Failure). Taux de défaillance : λ = 1 MT T F Si MT T R! MT T F alors MT T F «MT BF alors λ = 1 MT BF Taux de réparation : µ = 1 MT T R MUT : Durée moyenne de fon ionnement après réparation (anglais Mean Up Time) MDT : Durée moyenne d indisponibilité après défaillance (anglais Mean Down Time) MT BF = MDT + MUT La disponibilité (Avaibility) est définie comme étant le rapport : A = MT BF MT BF + MT T R et l indisponibilité comme en étant le complément (le matériel est indisponible lorsqu il n est plus disponible) : MT T R I = 1 A = MT BF + MT T R avec : I A = MT T R MT BF Pour rendre un système plus efficace, on peut jouer sur 2 valeurs : augmenter la MTBF, les composants réseaux seront alors plus onéreux ou diminuer les temps d indisponibilité et c est la maintenance qui devient plus coûteuse. Selon les relations existantes entre les différents composants du système (Figure 1.7), la résistance à la défaillance sera plus ou moins grande. Généralement, on distingue quatre stru ures de base : 1. la stru ure série sans redondance : dans un tel système lorsque l un des composants tombe en panne, l ensemble du système est indisponible ; Sécurité informatique

25 1.10 Fiabilité des systèmes la stru ure avec duplication de systèmes : dans une telle organisation, la panne d un seul composant n affe e pas le fon ionnement global du système ; 3. la stru ure avec duplication de toutes les unités : ici la panne de plusieurs composants ne rend pas le système indisponible ; 4. enfin, la stru ure avec duplication partielle : compte tenu des coûts engendrés par la duplication totale, seuls sont dupliqués, ici, les systèmes les plus sensibles. FIGURE 1.7 Stru ures de fiabilité. La mesure de la disponibilité globale d un système dépend de sa stru ure. Deux stru ures élémentaires sont à la base de tout système : la stru ure série et la stru ure parallèle (Figure 1.8) La structure série La disponibilité résultante est plus petite que celle du composant le plus faible : źi=n A totale = i=1 A i FIGURE 1.8 Stru ures de base en fiabilité. L indisponibilité est alors : źi=n źi=n I totale = 1 A totale = 1 A i = 1 (1 I i ) i=1 i=1 Sécurité informatique

26 مفاهيم ا ساسية 14 CHAPITRE 1 : Notions de base Si A «1, c est-à-dire que I est très petit on peut écrire : On montrerait aussi que : I totale = i=n ÿ i=1 I i MT BF s = ř i=n i=1 1 1 MT BF i La structure parallèle L indisponibilité du système est plus petite que celle du composant qui a la plus faible indisponibilité : La disponibilité est alors : źi=n I totale = i=1 I i De même, on montre que : źi=n źi=n A totale = 1 I totale = 1 I i = 1 (1 A i ) i=1 i=1 MT T R p = ř i=n i=1 1 1 MT T R i 1.11 Bases de la cryptographie La cryptologie, étymologiquement la science du secret, ne peut être vraiment considérée comme une science que depuis peu de temps. Cette science englobe la cryptographie qui signifie l écriture secrète et la cryptanalyse qui est l analyse de cette dernière. La cryptologie est un art ancien et une science nouvelle : un art ancien car Jules César l utilisait déjà ; une science nouvelle parce que ce n est un thème de recherche scientifique académique (comprendre universitaire) que depuis les années Cette discipline est liée à beaucoup d autres, par exemple l arithmétique modulaire, l algèbre, la complexité, la théorie de l information, ou encore les codes corre eurs d erreurs Terminologie 1. Chiffrement (تشفير) : transformation (syntaxique) à l aide d une clé de chiffrement d un message intelligible appelé texte clair واضح) (نص ou libellé en un message incompréhensible ou inintelligible appelé texte chiffré ou cryptogramme si on ne dispose pas d une clé de déchiffrement (en anglais encryption) ; En cryptographie, le chiffrement, parfois appelé à tort cryptage. Sécurité informatique

27 1.11 Bases de la cryptographie Chiffre ا و شيفرة) (شفرة : anciennement code secret, par extension l algorithme utilisé pour le chiffrement ; 3. Cryptogramme مشفر) (نص : message chiffré ; Le destinataire légitime doit pouvoir déchiffrer le cryptogramme et obtenir le texte clair. 4. Décrypter الشفرة) (كسر : retrouver le message clair correspondant à un message chiffré sans posséder la clé de déchiffrement (terme que ne possèdent pas les anglophones, qui eux «cassent» des codes secrets), ceci est effe ué par un espion (cryptanaliseur, décrypteur ou oreille indiscrète) ⁸ ; 5. Cryptographie التشفير ا و التعمية) (علم : étymologiquement «écriture secrète», devenue par extension l étude de cet art (donc aujourd hui la science visant à créer des cryptogrammes, c est-à-dire à chiffrer) ; 6. Cryptanalyse تحليل التشفير) (علم : science analysant les cryptogrammes en vue de les décrypter ; 7. Cryptosystème التعمية) (نظام : un ensemble composé d algorithmes cryptographiques et de tous les textes en clairs, textes chiffrés et clés possibles 8. Cryptologie : science regroupant la cryptographie et la cryptanalyse. Le fait de coder un message de telle façon à le rendre secret s appelle chiffrement. La méthode inverse, consistant à retrouver le message original, est appelée déchiffrement. FIGURE 1.9 Ciffrement et déchiffrement. Le chiffrement se fait généralement à l aide d une clé de chiffrement, le déchiffrement nécessite quant à lui une clé de déchiffrement. On distingue généralement deux types de clés : Les clés symétriques : il s agit de clés utilisées pour le chiffrement ainsi que pour le déchiffrement. On parle alors de chiffrement symétrique ou de chiffrement à clé secrète. Les clés asymétriques : il s agit de clés utilisées dans le cas du chiffrement asymétrique (aussi appelé chiffrement à clé publique). Dans ce cas, une clé différente est utilisée pour le chiffrement et pour le déchiffrement. On appelle décryptement (le terme de décryptage peut éventuellement être utilisé également) le fait d essayer de déchiffrer illégitimement le message (que la clé de déchiffrement soit connue ou non de l attaquant). Lorsque la clé de déchiffrement n est pas connue de l attaquant on parle alors de cryptanalyse ou cryptoanalyse ⁹. La cryptologie est la science qui étudie les aspe s scientifiques de ces techniques et elle englobe la cryptographie et la cryptanalyse. Le but d un système cryptographique (aussi appelé cryptosystème) est de chiffrer un message intelligible en un texte chiffré incompréhensible et de déchiffrer le cryptogramme et obtenir le texte clair. Cependant, un espion ne doit pas être en mesure de décrypter (ou cryptanalyser) le texte chiffré. Il existe plusieurs types de cryptosystèmes. Le classement suivant nous servira tout au long de notre étude. 8. Il ne faut donc pas confondre déchiffrement (opération effe uée par le destinataire légitime) et décryptement (opération que l espion tente d effe uer). 9. On entend souvent aussi le terme plus familier de cassage Sécurité informatique

28 مفاهيم ا ساسية 16 CHAPITRE 1 : Notions de base 1. Les cryptosystèmes à usage restreint. 2. Les cryptosystèmes à usage général. (a) A clé secrète (aussi appelés symétriques). (b) A clé publique (aussi appelés asymétriques). (c) Par échange quantique. Un système cryptographique est dit à usage restreint si sa sécurité repose sur la confidentialité des opérations de chiffrement et de déchiffrement. Le plus simple des systèmes historiques de ce genre est le procédé dit de Jules César. Il consiste simplement à remplacer chaque lettre du texte clair par celle qui la suit trois lettres plus loin dans l alphabet (en revenant au début si nécessaire, c est-à-dire que x, y et z sont chiffrés par a, b et c, respe ivement). Ainsi, le mot bonjour devient erqmrxu. Les systèmes à usage restreint sont souvent conçus par des amateurs et sont presque toujours un jeu d enfant pour les cryptanalystes professionnels. Encore plus important, ces systèmes ne sont d aucune valeur dans le contexte contemporain de communications entre un grand nombre d utilisateurs. Un système cryptographique est dit à usage général si sa sécurité ne repose pas sur le secret des opérations de chiffrement et de déchiffrement mais plutôt sur une information appelée la clé, laquelle est souvent relativement courte. Les individus qui utilisent de tels systèmes doivent pouvoir facilement générer leurs propres clés sans avoir recours au concepteur du système de telle sorte que celui-ci ne jouisse d aucun avantage particulier s il décide de passer au camp des cryptanalystes. FIGURE 1.10 Taxonomie des cryptosystèmes Confusion et diffusion En cryptologie, confusion et diffusion sont deux propriétés dans une méthode de chiffrement qui ont été identifiées par CLAUDE SHANNON dans son document «Communication eory of Secrecy Sécurité informatique

29 1.11 Bases de la cryptographie 17 Systems» publié en 1949 ¹⁰. D après la définition originale de SHANNON, la confusion correspond à une volonté de rendre la relation entre la clé de chiffrement et le texte chiffré la plus complexe possible. Les stru ures algébriques et statistiques doivent être cachées. La diffusion est une propriété où la redondance statistique dans un texte en clair est dissipée dans les statistiques du texte chiffré. En d autres termes, un biais en entrée ne doit pas se retrouver en sortie et les statistiques de la sortie doivent donner le moins possible d informations sur l entrée. Des relations entre les bits en entrée et en sortie pourraient être utiles pour le cryptanalyste. Ce concept est lié à la notion plus moderne d effet avalanche. Dans un chiffrement avec une bonne diffusion, l inversion d un seul bit en entrée doit changer chaque bit en sortie avec une probabilité de 0.5 (critère d avalanche stri voir ). Pour introduire la confusion, la substitution (remplacer un symbole du texte clair par un autre) fut une première approche. Pour les chiffrements modernes, des boîtes S (S-Box) sont utilisée à cet effet. Pour la diffusion, elle est augmenté par la permutation/transposition. Les chiffrements utilisent pour cela des boîtes T (T-Box). D autres mécanismes peuvent être déployés, comme des transformations linéaires (par exemple dans Rijndael). On appelle chiffrement produit un chiffrement par blocs qui combine plusieurs transformations élémentaires (substitutions, transpositions, opérations linéaires ou arithmétiques) pour garantir à la fois la diffusion et la confusion Chiffrement Bob, doit transmettre à Alice, un message M P Messages-a-Envoyer. M est dit «en clair». Estelle, une espionne, écoute la voie de communication pour connaître M. Bob, construit un texte chiffré C P Messages-Chiffrés. C = E k (M) ou C = M k E. La fon ion E k dépend d un paramètre k appelé clé de chiffrement. Le chiffrement est donc une transformation d un texte pour en cacher le sens. La possibilité de chiffrer repose donc sur la connaissance de l algorithme de chiffrement E et de la clé k de chiffrement. FIGURE 1.11 Chiffrement en présence d espion Déchiffrement Le déchiffrement est l opération inverse permettant de récupérer le texte en clair à partir du texte C chiffré. Il repose sur la fon ion D K de Messages-Chiffrés dans Messages-à-Envoyer telle que M = D K (C) ou C = M K D On doit avoir D K (E k (M)) = M. D K est donc une fon ion inverse à gauche de E k. 10. «Communication theory of secrecy systems», Bell System Technical Journal, vol. 328, n.4, p , 1949 Sécurité informatique

30 مفاهيم ا ساسية 18 CHAPITRE 1 : Notions de base Pour un couple cr = (E, D) donné de famille de fon ion de chiffrement et de déchiffrement, l ensemble des couples (k, K) vérifiant cette propriété est noté CLE(cr) Cryptosystème Pour que les opérations précédentes assurent la confidentialité du transfert entre Alice et Bob, il est nécessaire qu au moins une partie des informations E, D, k, K soit ignorée du reste du monde. Décrypter ou casser un code c est parvenir au texte en clair sans posséder au départ ces informations secrètes. C est l opération que doit réaliser Estelle pour retrouver M. L art de définir des codes est la cryptographie. Un spécialiste en cryptographie est appelé cryptographe. L art de casser des codes est appelé cryptanalyse. Un spécialiste en cryptanalyse est appelé cryptanalyste. Un cryptosystème est l ensemble des deux méthodes de chiffrement et de déchiffrement ainsi que les clés, les textes en clair et les textes chiffrés possibles. Un système de chiffrement est dit inconditionnellement sûr si un attaquant est incapable de le casser même en disposant d une capacité infinie de calcul. On ne peut pas faire mieux en terme de sécurité!. Claude Shanon a prouvé l existence de tel système. A savoir le masque jetable utilisant un générateur de nombres aléatoires pour la clé est inconditionnellement sûr. Un système de chiffrement est dit à sécurité prouvée si on peut démontrer que sa sécurité est équivalente à la résolution d un problème réputé difficile. Il s agit par exemple de démontrer la relation suivante : un système donné est sûr si un entier donnée n ne peut être fa orisé. Ce modèle est très employé en cryptographie asymétrique. Un système de chiffrement est dit sûr au sens de la théorie de la complexité si le meilleur algorithme pour le casser nécessite n opérations avec n un nombre suffisamment grand pour que l algorithme ne puisse être exécuté. Il n existe aucun algorithme de chiffrement satisfaisant le critère de sécurité dans le modèle calculatoire. Ce modèle est pourtant le plus employé en cryptographie symétrique. En pratique, on déclare un système de chiffrement sûr s il résiste à l état de l art de la cryptanalyse (recherche exhaustive, cryptanalyse linéaire ). Un système de chiffrement assure une confidentialité parfaite si P r[x y] = P r[x] pour tout x P Messages-à-Envoyer et y P Messages-Chiffrés, c est à dire si la probabilité a postériori que le texte clair soit x étant donné le texte chiffré y, est identique à la probabilité à priori que le texte soit x. Le chiffrement par décalage est un système de chiffrement à confidentialité parfaite. Si (Messages-à-Envoyer, Message-Chiifrés, K) cara érise un système de chiffrement tel que Messages-à-Envoyer = Messages-Chiffrés = K, alors ce système assure une sécurité parfaite 1 si et seulement si chaque clé est utilisée avec la même probabilité et pour chaque x P K Messages-à-Envoyer et y P Messages-à-Envoyer, il existe une clé k unique tel que E k (x) = y. Sécurité informatique

31 1.11 Bases de la cryptographie 19 Le surchiffrement est un procédé cryptographique qui consiste à chiffrer, avec d autres algorithmes et des clés différentes, des données qui avaient déjà été chiffrées. On peut le faire autant de fois que nécessaire mais cela implique nécessairement des performances amoindries. Cette méthode permet normalement de s assurer qu en cas de vulnérabilité d un des systèmes utilisés, les autres pourront prendre le relais et assurer encore une forte prote ion. Il permet aussi de cacher certaines propriétés statistiques dans les cas où des chiffrements faibles seraient utilisés Classes d attaques sur les primitives cryptographiques Il y a 6 niveaux d attaques dont on peut faire l hypothèse qu un adversaire peut effe uer. On appelle attaque une tentative de cryptanalyse. Un des axiomes fondamentaux de la cryptographie, énoncé pour la première fois par Auguste Kerckhoffs au XIXe siècle, est que l ennemi possède tous les détails de l algorithme et qu il ne lui manque que la clé spécifique pour le chiffrement. La plupart de ces attaques ne s appliquent pas seulement aux cryptosystèmes, mais également aux systèmes de signature numérique et des codes d authentification de messages MACs pour forger des messages ou des signatures L attaque à texte chiffré seul (ciphertext-only attack) Le cryptanalyste dispose du texte chiffré de plusieurs messages, tous ayant été chiffrés avec le même algorithme. La tâche du cryptanalyste est de retrouver le plus grand nombre de messages clairs possibles, ou mieux encore de retrouver la ou les clés qui ont été utilisées, ce qui permettrait de déchiffrer d autres messages chiffrés avec ces mêmes clés. Tout système cryptographique vulnérables à ce type d attaque est considéré comme complètement non sûr L attaque à texte clair connu (known-plaintext attack) Le cryptanalyste a non seulement accès aux textes chiffrés de plusieurs messages, mais aussi aux textes clairs correspondants. La tâche est de retrouver la ou les clés qui ont été utilisées pour chiffrer ces messages ou un algorithme qui permet de déchiffrer d autres messages chiffrés avec ces mêmes clés L attaque à texte clair choisi (chosen-plaintext attack) Le cryptanalyste a non seulement accès aux textes chiffrés et aux textes clairs correspondants, mais de plus il peut choisir les textes en clair. Cette attaque est plus efficace que l attaque à texte clair connu, car le cryptanalyste peut choisir des textes en clair spécifiques qui donneront plus d informations sur la clé L attaque adaptative à texte clair choisi (adaptive chosen plaintext attack) C est une attaque à texte clair choisi dans laquelle le choix du texte clair suivant peut dépendre du texte chiffré reçu des demandes antérieures. Sécurité informatique

32 مفاهيم ا ساسية 20 CHAPITRE 1 : Notions de base L attaque à texte chiffré choisi (chosen ciphertext attack) Le cryptanalyste peut choisir différents textes chiffrés à déchiffrer. Les textes déchiffrés lui sont alors fournis. Par exemple, le cryptanalyste a un dispositif qui ne peut être désassemblé et qui fait du déchiffrement automatique. Sa tâche est de retrouver la clé L attaque adaptative à texte chiffré choisi (adaptive chosen ciphertext attack) Une attaque à texte chiffré choisi où le choix du texte chiffré peut dépendre du texte clair reçu de demandes antérieures. Sécurité informatique

33 Chapitre 2 تشفير متماثل Crptographie symétrique Sommaire (ا نظمة التشفير المتناظرة) Cryptosystèmes symétriques Chiffre par substitution Chiffre de César Chiffre affine Chiffrement Déchiffrement Cryptanalyse Chiffre de Vigenère Chiffrement Déchiffrement Cryptanalyse Autres chiffres par substitution Chiffres par transposition Principe général Chiffre par bloc et chiffre de flux Modes opératoires ECB CBC PCBC CFB ou CFC Forme simple Version détaillée OFB ou OFC CTR CTS Padding Data Encryption Standard Histoire Fon ionnement Dérivation des sous-clés Déchiffrement Clés faibles Attaques

34 تشفير متماثل 22 CHAPITRE 2 : Crptographie symétrique 2.8 Triple Data Encryption Standard Advanced Encryption Standard Le vainqueur Fon ionnement Déchiffrement Attaques Password-based cryptography FIGURE 2.1 La machine de Lorenz utilisée par les Allemands durant la Seconde Guerre mondiale.. (ا نظمة التشفير المتناظرة) 2.1 Cryptosystèmes symétriques (بالمفتاح également dite à clé secrète,(تشفير متناظر ا و متماثل) La cryptographie symétrique an- est la plus,((تشفير بالمفتاح العام) par )السري) opposition à la cryptographie à clé publique cienne forme de chiffrement. Des traces de son utilisation par les égyptiens remonte à 2000 av. J.-C. Le chiffre de Jules César est plus récent où le «ROT13»¹ est une variante. Plus formellement : Tels que soit k = K, soit la connaissance d une des deux clés permet d en déduire facilement l autre. Conséquences : Dichotomie du monde : les bons et les mauvais Multiplication des clés (un secret n est partagé que par 2 interlocuteurs), donc pourninterlocuteurs N.(N 1)/2 couples La qualité d un cryptosystème symétrique s analyse par rapport à des propriétés statistiques des textes chiffrés et la résistance aux classes d attaques connues. En pratique tant qu un cryptosystème symétrique n a pas été cassé, il est bon, après il devient mauvais. 1. Une variante du chiffre de César avec un décalage de 13 positions au lieu de 3. Sécurité informatique

35 2.2 Chiffre par substitution 23 FIGURE 2.2 Cryptographie symétrique (à clé secrète). 2.2 Chiffre par substitution Principe général : A chaque lettre ou groupe de lettres on substitue une autre lettre ou un autre groupe de lettres. Substitution mono alphabétique : Pour chaque lettre de l alphabet de base on se donne une autre lettre utilisée dans le texte chiffré Chiffre de César C est un exemple historique où on décale les lettres de 3 positions. C est un chiffre mono-alphabétique. FIGURE 2.3 Jules cesar 12 ou 13 juillet 100 av. J.-C. ou 102 av. J.-C mars 44 av. J.-C. Indice Clair 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 hiffré 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 La forme générale des chiffres par décalage sur l alphabet à 26 lettres (Pour le chiffre de César k = 3 : E k (x) = x + k mod 26 D k (y) = y k mod 26 Exemple : Sécurité informatique

36 تشفير متماثل 24 CHAPITRE 2 : Crptographie symétrique Nous voulons chiffrer le texte «INFORMATIQUE». Nous pouvons nous servir du tableau suivant afin d obtenir le texte chiffré qui est dans ce cas «LQIRUPDWLTXH» : Texte clair I N F O R M A T I Q U E Indice clair Indice chiffré (Indice clair + 3) mod 26 Texte chiffré L Q I R U P D W L T X H Chiffre affine Le chiffre affine est une généralisation par rapport à celui de César Chiffrement Au lieu de prendre une clé fixe k = 3, il est possible d utiliser la formule : E k (x) = (ax + b) mod 26 où clé= (a, b), a P Z 26 et b P Z 26. Si le coefficient a vaut 1, alors le codage affine correspond au chiffre par décalage. Exemple : prenons a = 3 et b = 5. Nous avons pour le chiffrement la formule : E k (x) = (3x + 5) mod 26 Le texte clair «INFORMATIQUE» aura le texte chiffré correspondant «DSUVEPFKDBNR» comme le montre le tableau suivant : Texte clair I N F O R M A T I Q U E Indice clair Indice chiffré (3 ˆ (Indice clair) + 5) mod 26 Texte chiffré D S U V E P F K D B N R Déchiffrement La fon ion de déchiffrement est : D k (y) = (a 1 y ba 1 ) mod 26, tel que aa 1 = 1 mod 26. D après le théorème de Bachet-Bézout (voir 3.5.3), a 1 existe si a est premier avec 26. Dans notre cas a 1 = 9 dans Z 26, ce qui donne D k (y) = (9y 45) mod 26 = (9y + 7) mod 26. Essayons de vérifier que le déchiffrement de «DSUVEPFKDBNR» avec la clé (3,5) donne bien «INFORMATIQUE» comme le montre le tableau suivant : Texte chiffré D S U V E P F K D B N R Indice chiffré Indice clair (9 ˆ(Indice chiffré) + 7) mod 26 Texte chiffré I N F O R M A T I Q U E Cryptanalyse Il n existe que 12 entiers compris entre 0 et 26 et premiers avec 26 (1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25). Il n existe donc que 12ˆ26 = 312 clés de chiffrement possible et non 26ˆ26 = 26 2 = 676. Si l on sait qu un code affine a été utilisé, on peut le casser par force brute en essayant les 312 clés (recherche exhaustive). Sécurité informatique

37 2.2 Chiffre par substitution 25 Si le cryptogramme est suffisament long, on peut tenter d identifier les lettres selon leur fréquence d apparition dans les messages. En effet une lettre est, par cette méthode, toujours remplacée par la même lettre. La lettre E, par exemple, étant en français très fréquente, si, dans le message chiffré, la lettre T est très fréquente, on peut supposer que E est remplacé par T et ne rechercher que les codages affines permettant cette substitution. Pour plus de détails, voir?? Chiffre de Vigenère Le chiffre de Vigenère est un système de chiffrement, élaboré par Blaise de Vigenère ( ), diplomate français du XVIe siècle. C est un système de substitution ou de chiffrement polyalphabétique. Cela signifie qu il permet de remplacer une lettre par une autre qui n est pas toujours la même. Contrairement au chiffre de César ou à ROT13 qui se contentaient d utiliser la même lettre de substitution. C est donc une méthode relativement plus «solide» que les deux autres. Il résiste ainsi à l analyse de fréquences, ce qui est un avantage décisif sur les chiffrements monoalphabétiques. Il a été cassé par le major prussien Friedrich Kasiski en 1863 et n offre plus depuis cette époque aucune sécurité Chiffrement Pour ce chiffre, une clé se présente généralement sous la forme d un mot ou d une phrase. Si la clé est plus courte que le message clair, elle sera dupliquée autant de fois que nécessaire pour avoir la longueur du texte clair². Exemple : Nous voulons chiffrer le texte clair «texte secret» à l aide de la clé «clef». On peut utiliser la formule E CL (x n ) = (x n + CL(n mod 4)) mod 26 où n est le rang de la lettre x du message clair à chiffrer. CL est une fon ion qui donne l indice de la lettre de la clé correspondante à x n. Nous avons utilisé (mod 4) dans la formule de CL parce que la taille de la clé = 4. Le tableau 2.1 illustre le processus de chiffrement. De la même manière il est possible de se baser sur la fameuse table de Vigenère 2.4. Les colonnes représentent le texte clair et les lignes le texte chiffré. Pour chiffrer par exemple la lettre claire «t» avec la lettre clé «f» on obtient la lettre chiffrée «y» qui est la cellule obtenue par l interse ion de la colonne «t» et la ligne «f» Déchiffrement c l e f CL On peut utiliser la formule D CL (y n ) = x n = (y n CL(n mod 4)) mod 26. Le processus de déchiffrement est illustré par le tableau 2.2. Si nous voulons se baser sur la table de vigenère, alors pour chaque lettre chiffrée y on cherche la lettre de la clé qui lui correspond. On fixe la ligne de la lettre de la clé et on cherche dans celle-ci la lettre chiffré. On remonte dans la colonne pour trouver la lettre claire correspondante. Par exemple, 2. plus la clé sera longue et variée et mieux le texte sera chiffré. Sécurité informatique

38 تشفير متماثل 26 CHAPITRE 2 : Crptographie symétrique Texte clair t e x t e s e c r e t indice clair indice clé indice chiffré E CL (x n ) = (x n + CL(n mod 4)) mod 26 Texte chiffre v p b y g d i h t p x TABLE 2.1 Chiffrement de Vigenère de «texte secret» avec la clé «clef». FIGURE 2.4 Table de Vigenere. Texte chiffré v p b y g d i h t p x indice chiffré indice clé indice clair D CL (y n ) = (y n CL(n mod 4)) mod 26 Texte clair t e x t e s e c r e t TABLE 2.2 Déchiffrement de Vigenère de «vpbygdihtpx» avec la clé «clef». Sécurité informatique

39 2.2 Chiffre par substitution 27 si on veut déchiffrer «g», la lettre de la clé qui lui correspond est «c». On cherche dans la ligne «c» la lettre «g» et la colonne correspondante indique «e» qui est la lettre claire recherchée Cryptanalyse Si l on connait le nombre de symboles que comporte la clé, il devient possible de procéder par analyse de fréquences sur chacun des sous-textes déterminés en séle ionnant des lettres du message clair à intervalle la longueur de la clef (autant de sous-textes que la longueur de la clef). C est l attaque bien connue sur les chiffrements monoalphabétiques. Friedrich Wilhelm Kasiski a proposé en 1863 une méthode efficace pour déterminer la taille de la clef (test de Kasiski) en repérant la répétition de certains motifs dans le message chiffré. Première 01 : Détermination de la longueur de la clé Elle consiste à chercher des répétitions dans le texte chiffré. Considérons par exemple le mot-clé «ABCD» qui sert à chiffrer «MESSAGER TRES MESQUIN MESOPOTAMIEN». Clé répétée A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C Texte en clair M E S S A G E R T R E S M E S Q U I N M E S O P O T A M I E N Texte chiffré M F U V A H G U T S G V M F U T U J P P E T Q S O U C P I F P TABLE 2.3 i Dans l exemple ci-dessus, le trigramme «MES» est chiffré en «MFU» deux fois et «PET» une fois. Babbage et Kasiski comprirent que des répétitions de cette sorte leur offraient la prise dont ils avaient besoin pour attaquer Vigenère. 1. soit la même séquence de lettres du texte clair a été chiffrée avec la même partie de la clef. 2. soit deux suites de lettres différentes dans le texte clair auraient (possibilité faible) par pure coïncidence engendré la même suite dans le texte chiffré. Le premier cas étant le plus probable, on calcule le nombre de lettres entre deux séquences identiques. Dans notre cas, il y a 12 lettres entre les deux «MFU», on en déduit que la longueur de la clé est un diviseur de 12 (sinon la clé et les deux «MES» ne seraient pas alignés). La clé peut donc posséder soit 12, 6, 4, 3 ou 2 lettres (avec une lettre, nous aurions un chiffrement monoalphabétique facilement cassé avec une analyse fréquentielle). Avec un texte plus long, on découvrirait d autres séquences qui permettraient d affiner le résultat et réduire la taille de la clé à une ou deux possibilités Autres chiffres par substitution Les substitutions homophoniques :au lieu d associer un seul cara ère chiffré à un cara ère clair, on dispose d un ensemble de possibilités de substitution de cara ères dans laquelle on choisit aléatoirement. Les substitutions de polygrammes : au lieu de substituer des cara ères on substitue par exemple des digrammes (groupes de deux cara ères) Au moyen d une table (système de Playfair) Au moyen d une transformation mathématique (système de Hill). Le masque pseudo aléatoire :Principe du masque jetable³ mais en utilisant un masque pseudo aléatoire (le grain est la clé). 3. Appelé aussi chiffre de Vernam. Sécurité informatique

40 تشفير متماثل 28 CHAPITRE 2 : Crptographie symétrique FIGURE 2.5 Substitution homophonique Henri IV Chiffres par transposition Un chiffrement par transposition (ou chiffrement par permutation) est un chiffre qui consiste à changer l ordre des lettres, donc à construire des anagrammes. Cette méthode est connue depuis l Antiquité, puisque les Spartiates utilisaient déjà une scytale Principe général On procède à un réarrangement de l ensemble des cara ères (une transposition) qui cache le sens initial. La technique est très peu résistante aux attaques statistiques. Le plus souvent on utilise deux visions géométriquement différentes du texte. FIGURE 2.6 Scytale. Le chiffrement par transposition demande de découper le texte clair en blocs de taille identique ; la même permutation est alors utilisée sur chacun des blocs. Le texte doit éventuellement être complété (procédé de bourrage) pour permettre ce découpage. La clé de chiffrement est la permutation ellemême. Le nombre de permutations possibles d une longueur donnée, qui est la fa orielle de cette longueur, augmente donc rapidement avec celle-ci. Par exemple un mot de trois lettres ne peut être permuté que dans 6(= 3!) positions différentes. Ainsi «col» ne peut se transformer qu en «col», «clo», «ocl», «olc», «lco» ou «loc». Lorsque le nombre de lettres croît, le nombre d arrangements augmente rapidement et il devient plus difficile de retrouver le texte original sans connaître la permutation, et sans aucune connaissance sur le texte clair. Ainsi pour un chiffre par transposition qui utilise des blocs de 20 cara ères, il y a 20! possibilités, soit combinaisons. Exemple de transposition matricielle : Le message en clair est écrit dans une matrice. La clé une permutation de [1..n] ou n est le nombre de colonne. La technique de transposition consiste à lire Sécurité informatique

41 2.4 Chiffre par bloc et chiffre de flux 29 la matrice en colonne selon un ordre donné par la clé. Le message clair : MESSAGE SECRET A CHIFFRER PAR TRANSPOSITION M E S S A G E S E C R E T A C H I F F R E R P A R T R A N S P O S I T I O N Le message crypté est donc : METFRPO ARIPNT SCHRAI SECERS GEFASI ESARTON. 2.4 Chiffre par bloc et chiffre de flux Le chiffrement par bloc كتل) (تشفير (en anglais block cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l autre étant le chiffrement par flot. La principale différence vient du découpage des données en blocs de taille généralement fixe pour les chiffres par bloc. La taille de bloc est comprise entre 32 et 512 bits, dans le milieu des années 1990 le standard était de 64 bits mais depuis 2000 et le concours AES le standard est de 128 bits. Les blocs sont ensuite chiffrés les uns après les autres. Un chiffrement itératif résulte de l application itérée d un chiffrement (en général un chiffrement produit). Chaque itération est appelée un tour (round en anglais). Chaque tour fait intervenir une sous-clé qui en général est dérivée (on dit souvent cadencée) de la clé principale. Dans les systèmes a uels, le chiffrement est obtenu en itérant une fon ion de tour qui est cryptographiquement faible dans le sens où elle ne constitue pas à elle seule un système suffisamment robuste. Chaque itération est appelée un tour ou encore une ronde. Chaque tour prend en entrée la sortie du tour précédent (ou le bloc de texte clair dans le cas du premier tour) et chiffre cette entrée grâce à la fon ion de tour et à la clé de tour construite avec la clé K. Le nombre de tours sera noté Nr. Si M est le texte clair on calcule successivement : M 0 = M, M 1 = F (m0, K 1 ), M Nr = F (M Nr 1, K Nr ), c = M Nr. Tel que F : t0, 1u td ˆ t0, 1u tr Ñ t0, 1u td où td est la taille du message clair et tr celle de la clé. Le calcul est parfois augmenté d une phase de prétraitement (avant de commencer les itérations) et d une phase de post-traitement (après la dernière itération). La clé de tour est obtenue à partir de la clé secrète. Ainsi pour mener à bien le calcul itératif que nous venons de décrire, on doit donc associer à la clé secrète K, de taille tk, Nr sous-clés (ou clés de tour) de taille tr. Sécurité informatique

42 تشفير متماثل 30 CHAPITRE 2 : Crptographie symétrique Le procédé qui permet de calculer ces sous-clés est appelé schéma de diversification de la clé ou schéma de production des sous-clés. Le chiffrement de flux ou chiffrement par flot تدفقي) (تشفير (En anglais stream cipher) peut traiter des données de longueur quelconque et n a pas besoin de les découper. Il est largement utilisé dans des systèmes et des applications temps-réel (transmission video/audio par exemple). Il est de pratique courante d utiliser des «générateurs pseudo-aléatoires» comme base pour engendrer la clé privée. Plus précisément, le générateur pseudo-aléatoire est utilisé pour fournir un flux de bits additionnés (XOR) avec les bits correspondants du texte clair pour produire des bits du texte chiffré. Autrement dit, la séquence pseudo-aléatoire générée (déterminée par une clé partagée à priori) est utilisée comme «masque jetable»⁴ au lieu d une séquence véritablement aléatoire, avec l avantage que la séquence générée peut être beaucoup plus longue que la clé (ce qui n est pas possible pour une séquence purement aléatoire). La figure 2.7 illustre le fon ionnement d un chiffre par flux. Les bits m i du texte clair sont additionnés (modulo 2) avec les bits s i du flux de la clé pour obtenir les bits c i du texte chiffré. Le flux s i est obtenu d un générateur de nombres pseudo-aléatoires avec comme germe la clé privé partagée k. Il est qualifié de synchrone si le flux de bits s i ne dépend que de la clé k et asynchrone s il dépend aussi du texte chiffré précédent. Une liste non-exhaustive de chiffrements par flot : 1. A5/1, algorithme publié en 1994, utilisé dans les téléphones mobiles de type GSM pour chiffrer la communication par radio entre le mobile et l antenne-relais la plus proche, 2. RC4, le plus répandu, conçu en 1987 par Ronald Rivest, utilisé notamment par le protocole WEP du WiFi. 3. Py, un algorithme récent d Eli Biham. 4. E 0 utilisé par le protocole Bluetooth. FIGURE 2.7 Chiffre par flux synchrone et asynchrone. Toutefois, le XOR n est pas la seule opération possible. L opération d addition dans un groupe est également envisageable (par exemple, addition entre deux o ets, modulo 256). Un chiffrement par bloc peut être converti en un chiffrement par flot grâce à un mode opératoire qui permet de chaîner plusieurs blocs et traiter des données de taille quelconque. Soit l opération booléenne XOR : 1. Chiffrement du message M avec la clé K : M K = C 2. Déchiffrement du message C avec la clé K : C K = (M K) K = M (K K) = M 4. One-time pad. Sécurité informatique

43 2.5 Modes opératoires 31 Le projet estream⁵ du réseau ECRYPT⁶ a vu le jour en 2004 ayant pour but, après quatre ans, de produire un portfolio pour promouvoir de nouveaux systèmes de chiffrement par flot. A uellement, il recommande au total sept⁷ algorithmes dans deux catégories différentes hardware et software (par ordre alphabétique) : Software Hardware 128-bit key 80-bit key HC-128 Grain v1 Rabbit MICKEY v2 Salsa20/12 Trivium Sosemanuk - TABLE 2.4 Portfolio d estream Modes opératoires Un chiffrement par bloc fournit simplement une méthode de chiffrement d une seule chaîne de n bits, et non pas un «MESSAGE» de longueur arbitraire. Par ailleurs, même quand il est seulement nécessaire de chiffrer une chaîne de n bits, un mode de fon ionnement devrait être employé pour éviter les attaques cryptanalytiques résultant de la répétition de fragments de «texte clair». Il est possible de transformer un chiffrement par bloc en un chiffrement par flot en utilisant un mode d opération : ECB (Ele ronic CodeBook) où chaque bloc chiffré (déchiffré) indépendamment des autres, voir les figures 2.8 et 2.9. Vulnérable aux attaques texte-clair/texte-chiffré même en ignorant totalement la clé. Le texte clair M est découpé en blocs m i où chacun est chiffré séparément des autres donnant lieu à un bloc chiffré c i. Ensuite, les blocs chiffrés sont concaténés pour former le message chiffré C. Pour le chiffrement c i = E k (mi) et le déchiffrement m i = D k (c i ). Il faut noter q utilisant la même clé, deux blocs de texte en clair identiques donnent deux blocs chiffrés également identiques et vice versa. Les avantages de ce mode sont les suivants : 1. Le travail de chiffrement ou de déchiffrement peut être parallélisé. Plusieurs machines ou CPU peuvent travailler simultanément sur des parties différentes du message. 2. Il permet un accès aléatoire dans le texte chiffré. 3. Une erreur de transmission d un bit affe e uniquement le décodage du bloc courant (pas de propagation d erreurs). Par contre, ce mode a les désavantages suivants : L algorithme F-FCSR-H v2 proposé en 2008 sous le profile Hardware a été éliminé suite à la publication des résultats d attaques cryptanalytiques. Sécurité informatique

44 تشفير متماثل 32 CHAPITRE 2 : Crptographie symétrique FIGURE 2.8 Chiffrement en mode ECB. FIGURE 2.9 Déchiffrement en mode ECB. 1. Les répétitions du texte en clair ne sont pas masquées et se retrouvent sous la forme de répétitions de textes chiffrés. 2. Des portions complètes du message peuvent être modifiées, répétées ou remplacées sans difficulté (qttaque reply). 3. La perte de synchronisation (perte ou ajout d un bit) est irrécupérable CBC (Cipher Block Chaining) inventé par IBM en 1976 où on chaîne le chiffrement (déchiffrement). On effe ue un XOR entre le bloc en clair a uel et le bloc chiffré précédent avant d être chiffré. Le premier bloc est additionné (XOR) avec un Ve eur Initial. Voir les figures 2.10 et Vulnérable aux erreurs (modification d un bloc) en plus il faut déchiffrer tout un grand fichier pour consulter une petite partie. Les algorithmes de chiffrement et de déchiffrement sont comme suit : c i = E K (m i c i 1 ), c 0 = E K (m 0 IV ) et m i = D K (c i ) c i 1, m 0 = D K (c 0 ) IV. Les avantages de ce mode sont les suivants : FIGURE 2.10 Chiffrement en mode CBC. Sécurité informatique

45 2.5 Modes opératoires 33 FIGURE 2.11 Déchiffrement en mode CBC. 1. Les répétitions de texte en clair sont masquées dans le texte chiffré. 2. La valeur du ve eur d initialisation IV n a pas besoin d être secrète. 3. Accès aléatoire aux texte chiffré. 4. Parallélisation possible du déchiffrement. Par contre, ce mode a les désavantages suivants : 1. Deux textes en clair commençant pareil auront le même début de texte chiffré. 2. Une erreur de transmission d un bit affe e uniquement le décodage du bloc courant ainsi que le décodage du même bit dans le bloc suivant (propagation limitée). 3. La perte de synchronisation (perte ou ajout d un bit) est irrécupérable PCBC Propagating cipher-block chaining ou plaintext cipher-block chaining. Il a été conçu pour produire de petits changements dans le texte chiffré à propager indéã«niment lors du déchiffrement, ainsi que lors du chiffrement. Voir les figures 2.12 et Les algorithmes de chiffrement et de déchiffrement sont comme suit : c i = E K (m i m i 1 c i 1 ), c 0 = E K (IV m 0 ) et m i = D K (c i ) m i 1 c i 1, m 0 = IV D K (c 0 ) FIGURE 2.12 Chiffrement en mode PCBC CFB ou CFC Cipher Feedback Chaining ou chiffrement à rétroa ion. Ce mode et les suivants agissent comme un chiffrement par flux. Ils génèrent un flux de clés qui est ensuite appliqué au document original. Dans ce mode, le flux de clé est obtenu en chiffrant le précédent bloc chiffré. CFB est un chiffrement Sécurité informatique

46 تشفير متماثل 34 CHAPITRE 2 : Crptographie symétrique FIGURE 2.13 Déchiffrement en mode PCBC. par flot. Son grand intérêt est qu il ne nécessite que la fon ion de chiffrement, ce qui le rend moins cher à câbler ou programmer pour les algorithmes ayant une fon ion de chiffrement différente de la fon ion de déchiffrement (exemple : AES) Forme simple Voir les figures 2.14 et FIGURE 2.14 Chiffrement en mode CFB. FIGURE 2.15 Déchiffrement en mode CFB. De manièe simple les algorithmes de chiffrement et de déchiffrement sont comme suit : c i = E K (c i 1 ) m i, m i = E K (c i 1 ) c i et c 0 = IV. Les avantages de ce mode sont : 1. Accès aléatoire au texte chiffré. 2. Parallélisation du déchiffrement. 3. Propagation limitée d erreurs. 4. IV n est pas secret. Sécurité informatique

47 2.5 Modes opératoires Version détaillée Le mode nécessite deux paramètres k : (1 ď k ď n), la taille de la variable de rétroa ion (feedback) et j : (1 ď j ď k) le nombre de bits de texte clair à chiffrer pour chaque étape. En pratique, il semblerait judicieux de toujours choisir j = k. En fait, ce qui est recommandé par la deuxième édition de la norme ISO/IEC et tout autre choix semble réduire le niveau global de sécurité du schéma. De manièe détaillée, le texte clair est découpé en blocs m i de taille j où 1 ď s ď td. En plus du texte clair M = m 1 m 2...m k, on a besoin d un bloc initial de taille td tiré aléatoirement IV. On calcule alors successivement : Z 1 = E K (IV ), c 1 = m 1 MSB s (Z 1 ), I 2 = LSB td s (IV ) c 1, Z 2 = E K (I 2 ), c 2 = m 2 MSB s (Z 2 ), I k = LSB td s (I k1 ) c k1, Z k = E K (I k ), c k = m k MSB s (Z k ). Tel que B 1 B 2 représente le bloc formé par la concaténation (la juxtaposition) des deux blocs B 1 et B 2. MSB u (B) représente le bloc constitué par les u bits de B les plus à gauche (les u bits les plus significatifs). Tel queuest un entier tel que 0 ď u ď n et n est la taille de B en bits. LSB u (B) représente le bloc des u bits de B les plus à droite (les u bits les moins significatifs). Le déchiffrement s effe ue en calculant successivement : Z 1 = E K (I 1 ), m 1 = c 1 MSB s (Z 1 ) I 2 = LSB td s (I 1 ) c 1 Z 2 = E K (I 2 ), m 2 = c 2 MSB s (Z 2 ) I k = LSB td s (I k1 ) c k1 Z k = E K (I k ), P k = c k MSB s (Z k ) Il est tout à fait possible de réaliser ce schéma utilisant un registre à décalage. Les avantages de ce mode sont les suivants : 1. Il est possible de chiffrer un flot de valeurs plus petites que la taille standard du bloc géré par l algorithme. 2. Les répétitions de texte en clair sont masquées dans le texte chiffré. 3. La valeur du ve eur d initialisation IV n a pas besoin d être secrète. 4. La perte de synchronisation (perte ou ajout d un bit) est récupérable. Par contre, ce mode a les désavantages suivants : 1. Une erreur de transmission d un bit affe e uniquement le décodage du bloc courant ainsi que le déco-dage du même bit dans le bloc suivant. Sécurité informatique

48 تشفير متماثل 36 CHAPITRE 2 : Crptographie symétrique FIGURE 2.16 Chiffrement en mode CFB en générale. FIGURE 2.17 Déchiffrement en mode CFB en générale. Sécurité informatique

49 2.5 Modes opératoires OFB ou OFC Output Feedback Chaining ou chiffrement à rétroa ion de sortie. Dans ce mode, le flux de clé est obtenu en chiffrantle précédent flux de clé. C est un mode de chiffrement de flot qui possède les mêmes avantages que CFB. De plus, il est possible de le précalculer en chiffrant successivement le ve eur d initialisation. Il n est donc sûr que si la fon ion de chiffrement alliée à la clé forment une bonne suite pseudo-aléatoire. Voir les figures 2.18 et A partir d un bloc initial O 0 = IV tiré aléatoirement, on construit un masque jetable par itération. Les algorithmes de chiffrement et de déchiffrement sont comme suit : c i = m i O i, m i = c i O i, O i = E K (O i 1 ) et O 0 = IV Le message chiffré est O 0 c 1 c 2... c k. Le déchiffrement s effe ue en calculant les O i successifs à partir de Z 0 comme on l a fait pour le chiffrement puis en écrivant m i = c i Oi. FIGURE 2.18 Chiffrement en mode OFB. FIGURE 2.19 Déchiffrement en mode OFB. Les avantages de ce mode sont les suivants : 1. Les répétitions de texte en clair sont masquées dans le texte chiffré. 2. La valeur du ve eur d initialisation IV n a pas besoin d être secrète. 3. Ce mode n amplifie pas les erreurs. Une erreur de transmission d un bit affe e uniquement ce bit lors du décodage. Par contre, ce mode a les désavantages suivants : 1. La perte de synchronisation (perte ou ajout d un bit) est irrécupérable. Sécurité informatique

50 تشفير متماثل 38 CHAPITRE 2 : Crptographie symétrique CTR CounTeR ou Chiffrement basé sur un compteur et connu aussi sous le nom Integer Counter Mode (ICM) et Segmented Integer Counter (SIC) mode. Dans ce mode, le flux de clé est obtenu en chiffrant les valeurs successives d un compteur come illustré dans les figures 2.20 et Ce mode combine de nombreux avantages, car il permet le chiffrement par flot, est précalculable, permet un accès aléatoire aux données, est parallélisable et n utilise que la fon ion de chif-frement. Le compteur utilisé peut être une suite pseudo-aléatoire qu il sera facile de retrouver à partir de la graine (ve eur d initialisation). FIGURE 2.20 Chiffrement en mode CTR. FIGURE 2.21 Déchiffrement en mode CTR. Pour le chiffrement, le texte clair M est découpé en blocs de taille td. Dans ce mode on dispose d un compteur de taille td. On tire au sort une valeur initiale CT R 1 pour ce compteur. On calcule alors : Z 1 = E K (CT R 1 ), c 1 = m1 Z 1. Puis on incrémente le compteur. En générale, on calcule successivement : CT R i = CT Ri mod 2 td, Z i = E K (CT R i ), c i = m i Z i. Le texte chiffré transmis est constitué de la valeur CT R 1 du compteur suivi des blocs c 1 c 2... c k. Pour le déchiffrement, Il se fait en calculant succéssivement à partir de la valeur initiale du compteur : Z i = E K (CT R i ), m i = c i Z i, CT R i+1 = CT R i + 1 mod 2 td, Le mode CTR est un mode très simple à implémenter. Il est très sûr et n utilise pas la fon ion de déchiffrement du circuit. Le texte chiffré, qui doit contenir la valeur initiale du compteur, est un peu plus long que le texte clair. On peut dans ce mode faire des accès aléatoires de manière plus commode que dans le mode OFB puisqu il faut seulement chiffrer la valeur du compteur pour le bloc considéré. Ce mode est particulièrement intéressant. Sécurité informatique

51 2.5 Modes opératoires CTS CipherText Stealing ou chiffrement avec vol de texte. Dans ce mode, applicable à un chiffrement par blocs (ECB, CBC, etc.), les deux derniers blocs sont partiellement combinés de façon à obtenir un message de même taille. Ici, un exemple de CTS opérant sur un chiffrement en mode CBC sur la figure Le dernier bloc est complété d abord par des zeros puis combiné (ou exclusif) avec le bloc chiffré précédent avant d être chiffré. FIGURE 2.22 CTS opérant sur un chiffrement en mode CBC. Les deux derniers blocs sont échangés et combinés en partie, ce qui nécessitera de les obtenir tous les deux pour en décrypter un. CTS n est pas un mode de chiffrement par flot, mais permet d éviter l utilisation de bourrage dans les chiffrements par blocs, et donne une taille de message crypté égale à la taille du message clair. Il est très utilisé dans les protocoles ou formats ne supportant pas une taille quelconque. Une liste non-exhaustive de chiffrements par bloc : 1. DES, l ancêtre conçu dans les années 70, a été passablement étudié 2. AES, le remplaçant de DES 3. Blowfish, Serpent et Twofish, des alternatives à AES Il y en a encore bien d autres qui sont adaptés à des besoins particuliers. Certains consomment plus de mémoire ou sont plus gourmands en puissance de calcul. Un chiffrement par bloc peut également être utilisé comme une fon ion de hachage, c est-à-dire une fon ion à sens unique. Une variante de DES est employée pour le système de mots de passe dans Unix. Une chaîne contenant uniquement des zéros est chiffrée avec une clé correspondant au mot de passe (une composante aléatoire appelée «sel» est encore intégrée à l algorithme). Ce chiffrement est itératif et se fait 25 fois avant d obtenir le résultat final. Lors d Asiacrypt 04, Adi Shamir posa cette question. En réponse, le projet estream du réseau ECRYPT ⁸ vu le jour ; celui-ci ayant pour but après quatre ans de produire un portfolio pour promouvoir de nouveaux systèmes de chiffrement à Ã ot. Suite à ces quatre ans de recherche, le portfolio est maintenant disponible et recommande au total huit algorithmes dans deux catégories différentes hardware et software (par ordre alphabétique) : 8. Sécurité informatique

52 تشفير متماثل 40 CHAPITRE 2 : Crptographie symétrique Software HC-128 Rabbit Salsa20/12 Sosemanuk Hardware F-FCSR-H v2 Grain v1 MICKEY v2 Trivium TABLE 2.5 Le portfolio estream d ECRYPT. 2.6 Padding En plus, la plupart des modes d opération nécessitent un texte en clair divisé en une série de blocs d une longueur q fixe donnée. Le dernier bloc peut avoir une longeur inférieure à q. Ce phénomène nécessite un remplissage (bourrage) pour compléter le bloc et obtenir la taille exigée. Pour résoudre ce problème, l expéditeur et le destinataire doivent se mettre d accord sur une méthode de remplissage. Une méthode de remplissage implique le rajout de bits au texte clair selon une formule convenue. Pour le chiffrement par bloc, le remplissage permet d avoir un bloc de la taille adéquate si celui-ci est trop court. Pour le chiffrement par flot, il permet d éviter d avoir une longueur par flot susceptible d être attaquée, cela évite aussi que l attaquant ne connaisse la taille du flux. En cryptographie asymétrique, les cryptosystèmes considèrent souvent le message en clair comme un très grand nombre qui est inje é dans une formule. Ces nombres ont souvent des propriétés qui doivent être respe ées et le remplissage permet de garantir ces cara éristiques. La plupart des fon ions de hachage découpent les données en blocs de taille fixe et le dernier bloc doit être rempli de manière adéquate. 1. Zero padding :Le remplissage est réalisé selon l une des trois méthodes suivantes : (a) Padding method 1 (ISO/IEC ) : Remplir par des bits à 0 jusqu à l obtention d une taille multiple de la taile d un bloc ⁹ (b) Padding method 2 (ISO/IEC et ISO/IEC ) :¹⁰ Commencer le remplissage par un bit à 1 suivi de bits à 0 ce qui correspond aux valeurs d o et (en hexadécimal) Ce rembourrage est la première étape d un schéma de bourrage en deux étapes utilisée dans de nombreuses fon ions de hachage MD5 et SHA notamment. Dans ce contexte, il est spécifié par RFC1321¹¹ étape 3.1. (c) Padding method 3 (ISO/IEC ) : Les données de remplissage comprennent (dans cet ordre) : La longueur des données du texte en clair (en bits) exprimé en big-endian binaire sur n bits (un bloc), les données du texte clair, la chaine de remplissage constituée d autant de bits à 0 que nécessaire (éventuellement une chaine nulle càd de taille 0) pour avoir une taille du texte en clair (après remplissage) multiple de la taille exigée d un bloc. Si le texte clair initial est toujours de taille fixe, alors il n est pas nécessaire de délimiter et les 02 premières méthodes sont non ambigues. 2. PKCS#7 :¹² Le standard PKCS définit des remplissages qui évitent des attaques potentielles dans le cadre de la cryptographie asymétrique. pour PKCS#7, la chaine de remplissage (Pad- 9. Applicable sûrtout si la taille du texte clair est fixe. 10. Préférée par les utilisateurs de cartes à puces Utilisée par PKCS#5, PKCS#7 et RFC 5652 Cryptographic Message Syntax (CMS) Se ion 6.3 (anciennement RFC 3852 qui a remplacé RFC 3369 et RFC 2630). Sécurité informatique

53 2.7 Data Encryption Standard 41 ding String) est une séquence d o ets identiques qui indique sa taille : P S = 01, si M mod 8 = 7 ; P S = 02 02, si M mod 8 = 6 ;, P S = , si M mod 8 = 0. Le remplissage est effe ué même si le texte en clair original est d une taille multiple à celle d un bloc. 3. Merkle-Damgård : Dans le cadre des fon ions de hachage, on peut appliquer un renforcement de Merkle-Damgård qui consiste à ajouter un bit à 1, une suite de bits à 0 et finalement la taille du message à hacher¹³. Si l on se contentait d ajouter uniquement des 0, les messages «000» et «0000» produiraient le même condensé ce qui est totalement incompatible avec la notion de hachage cryptographique. 4. ANSI X.923 : Les o ets remplis de zéros (0) sont rajoutés et le dernier o et définit les limites de remplissage ou le nombre d o ets rajoutés. Par exemple, la taille du bloc est de 8 o ets, et le remplissage est nécessaire pour 4 o ets (au format hexadécimal) : 27 3F EE 41 9B D8 2D DD AE B5 DD 3C ISO : Les o ets remplis de valeurs aléatoires sont rajoutés et le dernier o et définit les limites de remplissage ou le nombre d o ets rajoutés. Par exemple, la taille du bloc est de 8 o ets, et le remplissage est nécessaire pour 4 o ets (au format hexadécimal) : 27 3F EE 41 9B D8 2D DD AE B5 DD 3C 81 E8 3A Data Encryption Standard Le Data Encryption Standard (DES) est un algorithme de chiffrement par bloc utilisant des clés de 56 bits. Son emploi n est plus recommandé aujourd hui, du fait de sa lenteur à l exécution et de son espace de clés trop petit permettant une attaque systématique en un temps raisonnable. Quand il est encore utilisé c est généralement en Triple DES, ce qui ne fait rien pour améliorer ses performances. DES a notamment été utilisé dans le système de mots de passe UNIX. Le premier standard DES est publié par FIPS ¹⁴ le 15 janvier 1977 sous le nom FIPS PUB 46. La dernière version avant l obsolescence date du 25 o obre 1999 FIPS PUB Histoire En mai 1973, le National Bureau of Standards américain demande la création d un algorithme de chiffrement utilisable par les entreprises. à cette époque, IBM dispose déjà d un algorithme appelé Lucifer, conçu en 1971 par Horst Feistel. En bonne logique, cet algorithme aurait dû être séle ionné par le NBS. En pratique, ce fut presque le cas : la NSA demanda à ce que Lucifer soit modifié, par ses soins. Ainsi fut créé le DES, qui fut adopté comme standard en novembre Cela suscita des rumeurs selon lesquelles la NSA aurait volontairement affaibli l algorithme, dans le but de pouvoir le casser. étrangement, le DES s est révélé résistant à plusieurs attaques ne devant apparaître dans la communauté académique que beaucoup plus tard. Encore plus étonnant, Lucifer, lui, résistait moins bien. 13. Un entier codé sur 64 bits pour MD5 et SHA Federal Information Processing Standard : sont des standards publics développés et annoncés par le gouvernement des états-unis pour l usage des agences gouvernementales non militaires et entrepreneurs gouvernementaux. Beaucoup de standards FIPS sont des versions modifiées des standards ANSI, IEEE, ISO, etc. Sécurité informatique

54 تشفير متماثل 42 CHAPITRE 2 : Crptographie symétrique Ceci permet de penser que la NSA avait connaissance dès cette époque de ces techniques de cryptanalyse et qu elle aurait donc, en réalité, rendu DES moins faible. FIGURE 2.23 Data Encryption Standard Fonctionnement L algorithme DES transforme un bloc de 64 bits en un autre bloc de 64 bits. Il manipule des clés individuelles de 56 bits, représentées par 64 bits (avec un bit de chaque o et servant pour le contrôle de parité). Ce système de chiffrement symétrique fait partie de la famille des chiffrements itératifs par blocs, plus particulièrement il s agit d un schéma de Feistel, du nom de Horst Feistel à l origine du chiffrement Lucifer. Voir la figure FIGURE 2.24 Schémas de Feistel. Dans un schéma de Feistel, le clair est de longueur paire et découpé en une moitié gauche L et une moitié droite R. Le ième tour du schéma prend en entrée un bloc (L i 1, R i 1 ) et le transforme (en faisant intervenir la ième sous-clé K i ) en un bloc (L i, R i ). Le premier tour prend en entrée le bloc (L, R) et le dernier tour produit le chiffré (L 1, R 1 ). La relation entre (L i 1, R i 1 ) et (L i, R i ) est : L i = R i 1, R i = L i 1 f(r i 1, K i ) où f est un chiffrement produit. Sécurité informatique

55 2.7 Data Encryption Standard 43 Un chiffrement de Feistel est inversible, que f soit une bije ion ou non. En effet, on a R i 1 = L i, L i 1 = R i f(r i 1, K i ). Ainsi, le permuté (R, L) du clair s obtient à partir de celui (R 1, L 1 ) du chiffré en lui appliquant un chiffrement de Feistel de même schéma et en prenant comme liste de sous-clés de déchiffrement la même que celle des sous-clés de chiffrement, mais dans l ordre inverse. D une manière générale, on peut dire que DES fon ionne en trois étapes : Les notations L j et R j désignent des blocs de 32 bits : à partir d un bloc de 64 bits (b 1, b 2,... b 64 ), L j est le sous-bloc (de gauche, L mis pour «left») (b 1, b 2,... b 32 ), tandis que R j est le sous-bloc (de droite, R mis pour «right») (b 33, b 34,... b 64 ). 1. Permutation initiale et fixe d un bloc,sans aucune incidence sur le niveau de sécurité. Voir la figure Le résultat est soumis à 16 itérations d une transformation, ces itérations dépendent à chaque ronde d une autre clé partielle de 48 bits. Cette clé de ronde intermédiaire est calculée à partir de la clé initiale de l utilisateur (grâce à un réseau de tables de substitution et d opérateurs XOR) comme suit : f(r i 1, K i ) = P (S(E(R i 1 ) K i )) où S dénote les S i (boîtes S). S i (B i ) transforme B i = b 1 b 2... b 6 le mot de 6 bits à l entrée en un autre mot de 4 bits en prenant r (row) comme la ligne dans la table S i et c comme la colonne tel que r = b 1 b 6 (il y a 4 possibilités (0,1,2,3)) et b 2 b 3 b 4 b 5 donne le numéro de colonne 0 ď c ď 15. Ainsi, S 1 (011011) donne r = (01) = 1 deuxième ligne, c = (1101) = 13, alors la sortie = (0101) = 5. Lors de chaque ronde, le bloc de 64 bits est découpé en deux blocs de 32 bits, et ces blocs sont échangés l un avec l autre selon un schéma de Feistel. Le bloc de 32 bits ayant le poids le plus fort (celui qui s étend du bit 32 au bit 63) subira une transformation. 3. le dernier résultat de la dernière ronde est transformé par la fon ion inverse de la permutation initiale. Voir la figure DES utilise huit tables de substitution (les S-Boxes) illustrées par les Figures 2.29 et 2.30 qui furent l objet de nombreuses controverses quant à leur contenu. On soupçonnerait une faiblesse volontairement insérée par les concepteurs. Ces rumeurs furent dissipées au début des années 1990 par la découverte de la cryptanalyse différentielle qui démontra que les tables étaient bien conçues. Exemple : S 5 (000111) : b 1 b 6 = 01, on lit donc la deuxième ligne. b 2 b 3 b 4 b 5 = 0011 = 3, on regarde donc la 4ème colonne et le résultat est 12 = Dérivation des sous-clés Pour la dérivation des 16 clés de ronde de 48 bits à partir de clé principale de 56 bits : En prenant K = k 1...k 64 une clé de 64-bit (y compris 8 bits de parité impaire) 1. Définir v i, 1 ď i ď 16 tel que : v i = 1 pour i P 1, 2, 9, 16 ; v i = 2 autrement. (Ce sont les valeurs du décalage circulaire à gauche pour 28-bit.) 2. T = P C1(K) ; représenter T comme deux parties de 28-bit (C 0, D 0 ). (Utiliser P C 1 de la Figure 2.28 pour séle ionner les bits à partir de K : C 0 = k 57 k k 36, D 0 = k 63 k k 4.) Sécurité informatique

56 تشفير متماثل 44 CHAPITRE 2 : Crptographie symétrique 3. Pour i allant de 1 à 16, calculer K i comme suit : C i = (C i 1 ö v i ), D i = (D i 1 ö v i ), K i = P C 2 (C i, D i ). (Utiliser P C 2 de la Figure 2.28 pour séle ionner les 48 bits à partir de la concaténation b 1 b 2... b 56 de C i et D i : K i = b 14 b b 32. A savoir ö dénote un décalage circulaire à gauche.) Déchiffrement Le déchiffrement est identique au chiffrement sauf que les sous-clés sont prises dans l ordre inverse. k 16 puis k 15, et enfin k 1. Pour engendrer les sous-clés dans l ordre inverse, les décalages à droite à utiliser sont 0, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1. Nous pouvons observer que C 0 = C 16 et D 0 = D 16. Ainsi, k 16 peut être derivé après P C1. k 16 = P C 2 (C 16, D 16 ) = P C 2 (C 0, D 0 ) = P C 2 (P C 1 (k)) Pour engendrer k 15 nous avons besoin de variables intermédiaires C 15 and D 15, qui peuvent être déduites de C 16 et D 16 utilisant les décalages à droite (right shifts (RS)) : k 15 = P C 2 (C 15, D 15 ) = P C2(RS 2 (C 16 ), RS 2 (D 16 )) = P C 2 (RS 2 (C 0 ), RS 2 (D 0 )) Pour tout message m et clé k nous avons DES k (m) = DES k (m). (complémentarité). Enfin, pour tester le bon fon ionnement le texte clair «Now is the time for all» représenté par «P = 4E6F D F C6C20» en hexadécimal (7-bit ASCII plus parité) et la clé K = ABCDEF donne le texte chiffré «C = 3FA40E8A984D48156A271787AB8883F9893D51EC4B563B53» Clés faibles Une clé faible produit un comportement indésirable lorsqu elle est utilisée dans des opérations de chiffrement. La définition exa e d une clé faible varie souvent selon le cryptosystème considéré. Pour DES, il existe des clés faibles ainsi que des clés semi-faibles. Une clé faible K est définie par : E k (E k (M)) = M Où E est l opération de chiffrement et M est un message clair. Chiffrer deux fois un message en clair avec la même clé produira ce message en clair. Ce surchiffrement agit donc comme la fon ion identité ce qui est à éviter. Le fon ionnement de DES est propice à la présence de clés faibles. En effet, la clé de 56 bits produit 16 sous-clés, chacune d entre elles est utilisée dans le tour correspondant. Les clés faibles de DES sont celles qui produisent 16 sous-clés identiques. Hors clés non impaires, c est le cas pour les clés suivantes : F1F1F1F0E0E0E0E E0E0E0E0F1F1F1F1 FEFEFEFEFEFEFEFE Comme les sous-clés sont identiques et que DES est un réseau de Feistel, la fon ion de chiffrement est également celle de déchiffrement. On a de fa o un double chiffrement équivalent à un Sécurité informatique

57 2.7 Data Encryption Standard 45 chiffrement suivi d un déchiffrement. Le message en clair n est donc pas chiffré et apparaît inchangé à la sortie. Les clés semi-faibles de DES sont des clés K 1 et K 2 distin es satisfaisant la propriété suivante : E K1 (E K2 (M)) = M Où E est l opération de chiffrement DES. On compte 16 clés de ce type dans DES, dont les 4 clés faibles. Ces clés sont : 01FE01FE01FE01FE FE01FE01FE01FE01 1FE01FE01FE01FE0 E01FE01FE01FE01F 01E001E001E001E0 E001E001E001E001 1FFE1FFE1FFE1FFE FE1FFE1FFE1FFE1F 011F011F011F011F 1F011F011F011F01 E0FEE0FEE0FEE0FE FEE0FEE0FEE0FEE0 Les clés semi-faibles sont celles qui une fois les utilisées pour générer les 16 sous-clés, génèrent seulement deux sous-clés au lieu de 16 différents. De telles clés sont bien sûr à bannir mais leur présence ne rend pas DES moins robuste en théorie. DES a un espace de clés qui contient 2 56 possibilités. La probabilité de trouver une clé faible avec un tirage aléatoire parfait est de 4 = 5, ˆ 10 17, c est un évènement hautement improbable On peut aussi simplement tester la clé pour vérifier qu elle n est pas faible. DES est un chiffrement qui a été passablement cryptanalysé et les clés faibles sont un problème qui a été relégué au deuxième plan puisqu il est désormais possible de mener une recherche exhaustive des clés de DES. La liste est incomplète mais plusieurs chiffrements par bloc possèdent des clés faibles : IDEA, les clés faibles sont identifiables avec une attaque par texte clair choisi, la relation entre les bits du texte clair et ceux du texte chiffré devient prévisible. Des publications de Joan Daemen en 1993 ont confirmé les risques d avoir des clés avec de longues séquences de bits nuls (plus de 14 bits nuls consécutifs). Daemen a montré que la classe de clés faibles comptait 2 51 clés, un nombre qui peut paraître énorme mais insignifiant par rapport aux clés possibles. La probabilité d obtenir une clé faible dans IDEA est alors de 2 76 ce qui est inférieur à la probabilité d une clé faible dans DES. Les clés faibles étant faciles à déte er, cette découverte ne pose pas un problème majeur en pratique. Blowfish, les clés faibles produisent de mauvaises S-Boxes puisque ces substitutions dépendent de la clé. Il existe une attaque par texte clair choisi sur une version réduite de Blowfish qui est facilitée par l utilisation des clés faibles. RC4, un chiffrement par flot n est pas à l abri non plus des clés faibles. Les clés qui commencent par 000F D ont 14% de chance de produire une sortie qui commence par Sécurité informatique

58 تشفير متماثل 46 CHAPITRE 2 : Crptographie symétrique Attaques Plusieurs attaques ont été découvertes sur DES. Elles permettent de diminuer les coûts d une recherche exhaustive des clés qui se monte à 2 55 opérations en moyenne. Certaines de ces méthodes ne sont plus efficaces avec des algorithmes de chiffrement plus récents du fait de l introdu ion d un effet avalanche. 1. Avant 1990, attaques contre des versions réduites (t ă 16 tours). 2. La cryptanalyse différentielle découverte par Eli Biham et Adi Shamir en 1991 permet de trouver la clé en utilisant 2 47 textes clairs. Voir L attaque-t (Tickling attack) est une variante de la cryptanalyse différentielle découverte en 1974 lors de la conception de DES par les chercheurs d IBM. Pendant une vingtaine d années, le silence a été complet sur cette découverte. C est Don Coppersmith qui révélera le secret en à l époque, elle avait incité les concepteurs de DES à renforcer le contenu des tables de substitution (au lieu de l affaiblir comme la rumeur le laissait entendre). 4. La cryptanalyse linéaire inventée par Mitsuru Matsui en Voir Le compromis temps-mémoire est un concept inventé par Martin Hellman au début des années En partant du principe que le même message va être chiffré plusieurs fois avec des clés différentes, on pourrait calculer une immense table qui contient toutes les versions chiffrées de ce message. Lorsque l on intercepte un message chiffré, on peut le retrouver dans la table et obtenir la clé qui avait été utilisée pour le coder. Cette attaque n est bien sûr pas faisable car nous avons besoin d une table de l ordre du milliard de GB. Le génie d Hellman a été de trouver un moyen pour réduire cette table à environ 1 térao et (soit 1 million de fois moins que la table compète), ce qui est faisable de nos jours. 6. D autres attaques sont spécifiques à des implémentations et ne sont pas forcément spécifiques à DES. Dans le cas d un DES implémenté dans du matériel, on pourrait analyser la consommation éle rique et déduire certaines informations sur la clé (une consommation accrue indique des bits a ifs). Le même style d attaque peut aussi être employé sur un ordinateur en calculant le temps mis pour chiffrer avec des textes différents ou en analysant la mémoire utilisée. 7. Toutes les autres attaques sur DES visent à réduire le temps de calcul d une recherche exhaustive en utilisant des machines spécifiquement conçues pour la tâche (grâce à des FPGA en parallèle par exemple). Une telle machine a été construite en Deep Crack a coûté environ dollars et pouvait casser la clé en moins d une semaine. Le calcul distribué en utilisant les ordinateurs des particuliers (distributed.net) a prouvé son efficacité en cassant une clé en moins de 24 heures. Sécurité informatique

59 2.7 Data Encryption Standard 47 FIGURE 2.25 Permutation initiale (IP ) et finale (IP 1 ). FIGURE 2.26 L 0 et R 0 dans la permutation initiale. FIGURE 2.27 Expansion (E) et Permutation (P) au début de chaque ronde. FIGURE 2.28 Tableaux pour la génération des clés de rondes. Sécurité informatique

60 تشفير متماثل 48 CHAPITRE 2 : Crptographie symétrique FIGURE 2.29 Tables de substitution S1 à S4. FIGURE 2.30 Tables de substitution S5 à S8. Sécurité informatique

61 2.7 Data Encryption Standard 49 FIGURE 2.31 Schéma général du DES. FIGURE 2.32 Génération de sous clé DES. Sécurité informatique

62 تشفير متماثل 50 CHAPITRE 2 : Crptographie symétrique FIGURE 2.33 Décalage dans la création des sous-clés de DES. Sécurité informatique

63 2.8 Triple Data Encryption Standard Triple Data Encryption Standard Le Triple DES (aussi appelé 3DES) est un algorithme de chiffrement symétrique enchainant 3 applications successives de l algorithme DES sur le même bloc de données de 64 bits, avec 2 ou 3 clés DES différentes. Cette utilisation de trois chiffrements DES a été développée par Walter Tuchman (chef du projet DES chez IBM), il existe en effet d autres manières d employer trois fois DES mais elles ne sont pas forcément sûres. La version de Tuchman utilise un chiffrement, suivi d un déchiffrement pour se conclure à nouveau par un chiffrement. Le Triple DES est généralement utilisé avec seulement deux clés différentes. Le mode d usage standard est de l utiliser en mode EDE (Encryption, Decryption, Encryption, c està-dire Chiffrement, Déchiffrement, Chiffrement) ce qui le rend compatible avec DES quand on utilise trois fois la même clé. Dans le cas d une implémentation matérielle cela permet d utiliser le même composant pour respe er le standard DES et le standard Triple DES. Dans le mode proposé par Tuchman, voir la Figure 2.34, 3DES s écrit plus formellement de cette manière : ( ( )) C = EDES k3 DDES k2 EDES(M) k1 Une autre variante de Triple DES est celle de Carl Ellison, mais elle ne fait pas partie du standard défini pour 3DES : ( ( ( ( )))) C = EDES k3 T EDES k2 T EDES(M) k1 où T est une fon ion de transposition destinée à augmenter la diffusion. Cette fon ion prend en entrée un bloc de 8192 o ets, remplit la graine d un générateur de nombres pseudo-aléatoires avec l histogramme des o ets, et mélange les o ets du bloc grâce à la sortie du générateur. L histogramme n est pas changé par les permutations et donc l opération inverse est possible. David Wagner a proposé une attaque sur le schéma d Ellison en Même quand 3 clés de 56 bits différentes sont utilisées, la force effe ive de l algorithme n est que de 112 bits (si k 3 = k 1 et non 168 bits (cas où toutes les clés sont indépendantes), à cause d une attaque rencontre au milieu. Cette attaque reste cependant peu praticable, en effet elle nécessite un stockage de données de l ordre de 2 56 mots de 64 bits, de plus ce stockage doit être «interrogeable» en un temps très court. C est pour éviter ce genre d attaque que le Double DES est simplement proscrit et que l on passe dire ement à du Triple DES, le Double DES n assure en effet qu une force effe ive moyenne de 57 bits. Bien que normalisé (par exemple par le NIST), bien connu, et assez simple à implémenter, il est assez lent, et appelé à être remplacé par des algorithmes plus modernes tels qu AES, également reconnu via le NIST aux états-unis comme sûr pour tout échange d information. Sécurité informatique

64 تشفير متماثل 52 CHAPITRE 2 : Crptographie symétrique FIGURE 2.34 Triple DES. 2.9 Advanced Encryption Standard Advanced Encryption Standard est un processus de standardisation lancé en 1997 par le NIST qui demande aux cryptologues de concevoir un nouvel algorithme de chiffrement par bloc destiné au gouvernement des états-unis. Le but était de remplacer Triple DES, qui a lui-même remplacé temporairement le Data Encryption Standard (DES). Ce dernier étant vulnérable à un grand nombre d attaques cryptanalytiques et fon ionne avec une clé de seulement 56 bits, sa sécurité n était plus garantie puisque une recherche exhaustive était désormais envisageable en un temps relativement court. Comme la spécification de AES n est pas gardée secrète et qu elle ne se limite pas aux états-unis (cela était également le cas pour DES et 3DES), ce chiffrement est destiné à diverses utilisations, entre autres : Applications militaires/gouvernementales. Produits commerciaux. Logiciels libres. Matériel dédié au chiffrement (routeurs, etc.) Les exigences du nouveau standard étaient fortes car il est destiné à une utilisation intensive (prévue) jusqu en 2050, date à laquelle on estime que sa sécurité sera limitée de par les avancées technologiques et les recherches en cryptanalyse. Un bloc de données de 128 bits a été exigé. Des clés de 192 et 256 bits devaient également être supportées. Le chiffrement devait bien sûr être robuste à toutes les attaques connues comme la cryptanalyse linéaire ou différentielle. La rapidité des opérations de chiffrement/déchiffrement était primordiale, AES n étant pas restreint à une utilisation logicielle mais également matérielle avec des contraintes liées aux ressources disponibles (taille de la mémoire RAM ou ROM). 15 candidats furent proposés pour la première étape du concours : Sécurité informatique

65 2.9 Advanced Encryption Standard 53 CAST-256, CRYPTON, DEAL, DFC, E2, FROG, HPC, LOKI97, MAGENTA, MARS, RC6, Rijndael, SAFER+, Serpent et Twofish. Après une première élimination, suite à la découverte de plusieurs failles, dans un certain nombre d entre eux, la liste fut réduite à 5 candidats. Les concepteurs ont mutuellement «cryptanalysés» leurs chiffres et ont «joué le jeu» du concours. Certains chiffres, trop lents, ont été rapidement écartés. D autres ont nécessité une cryptanalyse plus intensive. Les cinq finalistes étaient : MARS RC6 Rijndael Serpent Twofish Le vainqueur En O obre 2000, le NIST annonce que Rijndael de Vincent Rijmen et Joan Daemen a remporté le concours AES et entrait dans un processus de standardisation officielle. Le 26 Novembre 2001, AES a été approuvé dans le standard FIPS PUB 197 par le NIST Fonctionnement L algorithme prend en entrée un bloc de 128 bits (16 o ets). Les clés secrètes ont au choix suivant la version du système 128 bits (16 o ets), 192 bits (24 o ets) ou 256 bits (32 o ets). Les données et les clés sont découpées en o ets et placées dans des tableaux. Les données comportent td = 16 o ets p 0, p 1,..., p 15 qui sont classés dans un tableau ayant 4 lignes et 4 colonnes. Le tableau est rempli colonne par colonne. De même la clé est découpée en o ets (tk = 16, tk = 24 ou tk = 32 o ets) k 0, k 1,..., k tk 1. Ces o ets sont aussi classés dans un tableau de 4 lignes et Nk colonnes (Nk = 4, Nk = 6 ou Nk = 8). FIGURE 2.35 Données et clés AES (cas Nk = 8). Suivant la version (la taille de la clé), le nombre de tours noté nr est différent. Le nombre nr est donné dans le tableau suivant. Nk nr Le système crée nr + 1 clés de tour ayant chacune 16 o ets à partir de la clé initiale K. Ces clés sont stockées dans un tableau unidimensionnel T K et sont notées T K[0], T K[1],... T K[nr]. Sécurité informatique

66 تشفير متماثل 54 CHAPITRE 2 : Crptographie symétrique La procédure suivante de la Figure 2.36 décrit le fon ionnement global du système AES. Elle prend en entrée un tableau de données St (texte clair) qui est modifié par la procédure et renvoyé en sortie (texte chiffré). FIGURE 2.36 Algorithm 1 - AES(St, K). Les procédures appelées Round, Figure 2.37, et FinalRound, Figure 2.38, sont elles-mêmes composées : La procédure SubBytes, Figure 2.39, est la seule transformation qui ne soit pas linéaire. C est donc grâce à celle-ci que le système est résistant. Elle utilise une opération sur le corps fini à 256 éléments. Le corps fini à 256 éléments : Considérons le polynôme P (X) = X 8 + X 4 + X 3 + X + 1 (qui est utilisé comme modulo). FIGURE 2.37 Algorithm 2 - Round(St, T). Ce polynôme à coefficients dans le corps à 2 éléments F2 = t0, 1u est irrédu ible sur ce corps. Les éléments du corps à 256 éléments seront les o ets b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 considérés comme des polynômes b(x) = b 7 X 7 + b 6 X 6 + b 5 X 5 + b 4 X 4 + b 3 X 3 + b 2 X 2 + b 1 X + b 0, ce qui nous permet de définir les deux opérations suivantes : Addition : a 7 a 6 a 5 a 4 a 3 a 2 a 1 a 0 + b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 = c 7 c 6 c 5 c 4 c 3 c 2 c 1 c 0, avec c(x) = a(x) + b(x), ce qui donne aussi c i = a i b i. Multiplication : (a 7 a 6 a 5 a 4 a 3 a 2 a 1 a 0 ) (b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 ) = c 7 c 6 c 5 c 4 c 3 c 2 c 1 c 0, avec c(x) = a(x) ˆ b(x) mod P (x). Par exemple : Sécurité informatique

67 2.9 Advanced Encryption Standard 55 FIGURE 2.38 Algorithm 3 - FinalRound(St, T). FIGURE 2.39 La procédure SubBytes. (X 6 + X 4 + X 2 + X + 1) (X 7 + X + 1) = X 13 + X 11 + X 9 + X 8 + X 7 + X 7 + X 5 +X 3 + X 2 + X + X 6 + X 4 + X 2 + X + 1 = X 13 + X 11 + X 9 + X 8 + X 7 + X 6 + X 5 + X 4 + X = X 7 + X mod X 8 + X 4 + X 3 + X + 1 On a ainsi une stru ure de corps et donc tout élément non nul est inversible. Nous noterons g l application de F 256 dans F 256 définie par : g(x) = # 0 si x = 0 x 1 sinon L inverse d un élément b(x) se trouve par l algorithme d Euclide étendu : b(x)a(x) + m(x)c(x) = 1 et b(x) a(x) mod m(x) = 1. Alors : b(x) 1 = a(x) mod m(x). La fonction affine f : Définissons b = f(a) grâce à une matrice b a 7 0 b a 6 1 b a 5 1 b 4 b 3 = a a b a 2 0 b a 1 1 b a 0 1 Sécurité informatique

68 تشفير متماثل 56 CHAPITRE 2 : Crptographie symétrique La matrice carrée qui intervient est une matrice circulante, elle correspond donc à une multiplication de polynômes modulo x 8 1. Ce qui correspond à b(x) = ((x 4 + x 3 + x 2 + x + 1)a(x) mod (x 8 + 1)) (x 6 + x 5 + x + 1). On remarque que g 1 = g et que f 1 est définie par : La procédure SubByte : b a 7 0 b a 6 0 b a 5 0 b 4 b 3 = a a b a 2 1 b a 1 0 b a 0 1 On définit alors : s(a) = f(g(a)) qui est réalisée en appliquant la transformation affine f dans GF (2) à l inverse de a dans GF (2 8 ). On a donc aussi : s 1 (b) = g(f 1 (b)). Il est donc possible de se servir de la S-Box de la Figure 2.40 dont les valeurs sont en hexadécimal pour réaliser cette transformation. Par exemple, si a i = 53 en hexadécimal, alors b i = ED ce qui correspond à la ligne 5 et la colonne 3. De même, si a i = CF en hexadécimal, alors b i = 8A ce qui correpond à la ligne c et la colonne f. La procédure SubByte, la Figure 2.41, applique s à chaque o et de l entrée St. La procédure ShiftRows FIGURE 2.40 AES-S-Box. Cette procédure, Figure 2.42, consiste à opérer une rotation à gauche sur chaque ligne du tableau d entrée. Le nombre de cases dont on décale la ligne i (0 ď i ď 3) est de i. Sécurité informatique

69 2.9 Advanced Encryption Standard 57 FIGURE 2.41 Transformation SubBytes. La transformation inverse est immédiate à calculer. La procédure MixColumns : La transformation MixColums, Figure 2.43, consiste à appliquer à chaque colonne du tableau des données une même transformation que nous allons décrire. Considérons une colonne c = (c 1, c 2, c 3, c 4 ) t. Les élément c i sont des éléments de F 265. Chaque colonne c est transformée en une colonne d grâce à la transformation linéaire suivante donnée par sa matrice dont les coefficients sont dans F 265 et que nous écrivons comme des o ets en hexadécimal : d c 0 d 1 d 2 = ˆ c 1 c 2 d c 3 Là encore la matrice utilisée est circulante. La transformation correspond en fait à une multiplication par un polynôme fixe : A(x) = 03x x x + 02, modulo 1 + x 4 : FIGURE 2.42 TransformationShiftRows. d(x) = A(x) ˆ c(x) mod x où c(x) = c 0 + c 1 x + c 2 x 2 + c 3 x 3, et d(x) = d 0 + d 1 x + d 2 x 2 + d 3 x 3. Sécurité informatique

70 تشفير متماثل 58 CHAPITRE 2 : Crptographie symétrique FIGURE 2.43 Transformation MixColums. Le polynôme A(x) est premier avec x 4 + 1, il est donc inversible modulo x est son inverse est B(x) = 0Bx 3 + 0Dx x + 0E. On retrouve donc c(x) à partir de d(x) en effe uant le produit c(x) = B(x) ˆ d(x) mod x 4 + 1, ou en effe uant le produit matriciel c 0 0E 0B 0D 09 d 0 c 1 c 2 = 09 0E 0B 0D 0D 09 0E 0B ˆ d 1 d 2 c 3 0B 0D 09 0E d 3 Lors de cette opération, chaque colonne est multipliée par la matrice suivante (pour une clé de 128 bit) : L opération de multiplication est définie par : multiplication par 1 signifie aucun changement, la multiplication par deux correspond au décalage vers la gauche d une position, et la multiplication par trois correspond à un décalage vers la gauche puis addition ou XOR avec la valeur initiale non décalée. Après déplacement, un XOR conditionnel avec 0x1B doit être effe uée si la valeur décalée est plus grand que 0xFF. La procédure AddRoundKey : La procédure AddRoundKey est très simple. Elle consiste à faire un ou exclusif entre les 128 bits de l état St et les 128 bits de la clé de tour T. On obtient une nouvelle valeur de l état. St := St T. La procedure KeyExpansion : La clé de chiffrement K stockée dans un tableau de 4 lignes et Nk colonnes (Nk = 4, 6, 8) est étendue en un tableau W ayant 4 lignes et 4 ˆ nr + 1 colonnes. La clé de tour T K[i] (0 ď i ď nr) est donnée par les 4 colonnes 4 ˆ i, 4 ˆ i + 1, 4 ˆ i + 2, 4 ˆ i + 3 du tableau W. Il y a deux façons de construire le tableau W suivant que Nk = 4, 6 ou Nk = 8. La procédure de constru ion est nommée ExpandedKey. 1) Cas Nk = 4 ou Nk = 6 est illustré dans la Figure 2.44 Sécurité informatique

71 2.9 Advanced Encryption Standard 59 FIGURE 2.44 Algorithm 4 - ExpandedKey(K,W) Cas 01. La procédure utilise la fon ion s sur les o ets définie précédemment. Elle utilise aussi des constantes de F 256, données par RC[i] = α i, où α est l élément de F 256 correspondant au polynôme X(α = 02). L élévation à la puissance i se fait dans le corps F ) Cas Nk = 8 est illustré dans la Figure Déchiffrement Le déchiffrement consiste à appliquer les opérations inverses, dans l ordre inverse et avec des sousclés également dans l ordre inverse. En commençan par le dernier bloc chiffré. L opération InvShiftRows est l inverse de ShiftRows. Les o ets des 03 dernières lignes sont décalés à droite de façon cyclique selon l indice de la ligne. La première ligne demeure inchangée. La dexième est décalée par 1. La troisième par 2 et la dernière par 3. L opération InvSubBytes est l inverse de SubBytes, dans laquelle la S-box inverse est appliquée (inverse de la transformation affine suivie de la multiplication inverse dans GF (2)). La Fgure 2.46 illustre la boite S-Box inverse utilisée par AES. L opération InvMixColumns est l inverse de MixColumns. Elle opère sur les données colonne par colonne Tel que : a 1 1 (x) = 0bx 3 + 0dx x + 0e. c(x) = a 1 (x)d(x) mod X 4 + 1, ou en effe uant le produit matriciel c 0 0E 0B 0D 09 d 0 c 1 c 2 = 09 0E 0B 0D 0D 09 0E 0B ˆ d 1 d 2 c 3 0B 0D 09 0E d 3 Sécurité informatique

72 تشفير متماثل 60 CHAPITRE 2 : Crptographie symétrique FIGURE 2.45 Algorithm 5 - ExpandedKey(K,W) Cas 02. FIGURE 2.46 S-Box inverse d AES. Sécurité informatique

73 2.9 Advanced Encryption Standard 61 L opération AddRoundKey, est l inverse d elle même puisqu elle n effe ue qu un XOR. FIGURE 2.47 Algorithm 6 - AES 1 1 (St,K). FIGURE 2.48 Algorithm 7 - InvRound(St, T). FIGURE 2.49 Algorithm 8 - InvFinalRound(St, T) Attaques Il n existe pas de clés faibles ni semi-faibles dans ce cryptosystème. L AES n a pour l instant pas été cassé et la recherche exhaustive (à force brute à) demeure la seule solution. Rijndael a été conçu de telle manière à rendre des méthodes classiques comme la cryptanalyse linéaire ou différentielle très difficiles. Attaques sur des versions simplifiées : Sécurité informatique

74 تشفير متماثل 62 CHAPITRE 2 : Crptographie symétrique Des attaques existent sur des versions simplifiées d AES. Niels Ferguson et son équipe ont proposé en 2000 une attaque sur une version à 7 tours de l AES 128 bits. Une attaque similaire casse un AES de 192 ou 256 bits contenant 8 tours. Un AES de 256 bits peut être cassé s il est réduit à 9 tours avec une contrainte supplémentaire. En effet, cette dernière attaque repose sur le principe des à related-keys à (clés apparentées). Dans une telle attaque, la clé demeure secrète mais l attaquant peut spécifier des transformations sur la clé et chiffrer des textes à sa guise. Il peut donc légèrement modi?er la clé et regarder comment la sortie de l AES se comporte. Attaques sur la version compète : Certains groupes ont affirmé avoir cassé AES complet mais après vérification par la communauté scientifique, il s avérait que toutes ces méthodes étaient erronées. Cependant, plusieurs chercheurs ont mis en évidence des possibilités d attaques algébriques, notamment l attaque XL et une version améliorée, la XSL. Ces attaques ont été le sujet de nombreuses controverses et leur efficacité n a pas encore été pleinement démontrée, le XSL faitappel à une analyse heuristique dont la réussite n est pas systématique. Deplus, elles sont impraticables car le XSL demande au moins 2 87 opérations voire dans certains cas. Le principe est d établir les équations (quadratiques / booléennes) qui lient les entrées aux sorties et de résoudre ce système qui ne comporte pas moins de 8000 inconnues et 1600 équations pour 128 bits. La solution de ce système reste pour l instant impossible à déterminer. En l absence d une preuve formelle sur l efficacité d attaques similaires au XSL, l AES est donc considéré comme sûr. On peut toutefois parier que dans les années à venir, les avancées en cryptanalyse et la relative simplicité de la stru ure d AES devraient ouvrir des brèches dans l algorithme. Si pareille découverte venait à se produire, des méthodes similaires à AES comme Camellia pourraient rapidement devenir obsolètes. Recommandations de la NSA : La NSA a annoncé que tous les finalistes qui avaient participé au concours AES pouvaient être considérés comme sûrs et qu ils étaient suffisamment robustes pour chiffrer les données non-classifiées du gouvernement américain. En juin 2003, le gouvernement américain a en effet annoncé : «L archite ure et la longueur de toutes les tailles de clés de l algorithme AES (128, 192 et 256) sont suffisantes pour protéger des documents classi?és jusqu au niveau»secret«. Le niveau»top SECRET«nécessite des clés de 192 ou 256 bits. L implémentation de l AES dans des produits destinés à la prote ion des systèmes et/ou documents liés à la sécurité nationale doit faire l objet d une analyse et d une certification par la NSA avant leur acquisition et leur utilisation» Autres attaques : Cette dernière phrase prend tout son sens lorsqu on sait que des attaques sont possibles sur des systèmes défaillants. On peut en effet analyser la consommation éle rique (des pics de consommation indiqueraient des calculs lourds) ou encore le temps nécessaire au chiffrement. Ce genre d attaque vise surtout des systèmes à boites noires à dans lesquels une clé secrète constante est codée dans le matériel et utilisée pour chiffrer plusieurs messages, par exemple des cartes à puce. On peut toutefois se demander pourquoi aucun concours officiel n a été lancé pour promouvoir la recherche d attaques sur AES. Dans ce domaine, la méthode de chiffrement asymétrique RSA remporte la palme avec plusieurs concours dotés de gains élevés Password-based cryptography Sécurité informatique

75 Chapitre 3 Cryptographie asymétrique Sommaire 3.1 Principe Fondement théorique Authentification de l origine Transmission sécurisée de la clé symétrique Bases mathématiques Petit théorème de Fermat Propriétés de la congruence modulo n dans Z éorème de Bachet-Bézout Algorithme d Euclide étendu L algorithme éorème des Restes Chinois Exemple Exemple éorème Solution Solution Généralisation Indicatrice d Euler Propriétés Calcul de la puissance modulaire Rivest Shamir Adleman Création des clés Chiffrement et déchiffrement du message Cryptosystème de ElGamal Fon ionnement Principe La cryptographie asymétrique, ou cryptographie à clé publique, est une méthode de chiffrement qui s oppose à la cryptographie symétrique. Elle repose sur l utilisation d une clé publique (qui est diffusée) et d une clé privée (gardée secrète), l une permettant de coder le message et l autre de le décoder. Ainsi, l expéditeur peut utiliser la clé publique du destinataire pour coder un message 63

76 64 CHAPITRE 3 : Cryptographie asymétrique que seul le destinataire (en possession de la clé privée) peut décoder, garantissant la confidentialité du contenu. Inversement, l expéditeur peut utiliser sa propre clé privée pour coder un message que le destinataire peut décoder avec la clé publique ; c est le mécanisme utilisé par la signature numérique pour authenti?er l auteur d un message. Tels que la connaissance de k (la clé de chiffrement) ne permet pas d en déduire celle de K (la clé de déchiffrement). Un tel cryptosystème est dit asymétrique, la clé k est appelée la clé publique, la clé K est appelée la clé privée. FIGURE 3.1 Cryptographie asymétrique (à clé publique et privée). 3.2 Fondement théorique Montrer que la recherche de K à partir de k revient à résoudre un problème mathématique notoirement très compliqué, c est à dire demandant un grand nombre d opérations et beaucoup de mémoire pour effe uer les calculs. La cryptographie asymétrique est fondée sur l existence de fonctions à sens unique. Une fois la fon ion appliquée à un message, il est extrêmement difficile de retrouver le message original. En réalité, on utilise des fonctions à sens unique et à brèche secrète. Une telle fon ion est difficile à inverser, à moins de posséder une information particulière, tenue secrète, nommée clé privée. RSA (l algorithme le plus utilisé à l heure a uel) la dédu ion de K à partir de k revient à résoudre le problème de fa orisation d un grand nombre un problème sur lequel travaille les mathématiciens depuis plus de 2000 ans, On estime que le plus rapide ordinateur que l on puisse construire utilisant la meilleure méthode connue met plus de 1000 ans pour retrouver la clé privée d un système RSA utilisant un modulo de 1024 bits (ordre de grandeur de la taille des clés). 3.3 Authentification de l origine D autre part, l utilisation par Alice de sa clé privée sur le condensat d un message, permettra à Bob de vérifier que le message provient bien d Alice : il appliquera la clé publique d Alice au condensat fourni (condensat chiffré avec la clé privée d Alice) et retrouve donc le condensat original du message. Il lui suffira de comparer le condensat ainsi obtenu et le condensat réel du message pour savoir si Alice est bien l expéditeur. C est donc ainsi que Bob sera rassuré sur l origine du message repu : il appartient bien à Alice. C est sur ce mécanisme notamment que fon ionne la signature numérique. Sécurité informatique

77 3.4 Transmission sécurisée de la clé symétrique Transmission sécurisée de la clé symétrique La cryptographie asymétrique répond à un besoin majeur de la cryptographie symétrique : le partage sécurisé d une clé entre deux correspondants, afin de prévenir l interception de cette clé par une personne tierce non autorisée, et donc la le ure des données chiffrées sans autorisation. Les mécanismes de chiffrement symétrique étant moins coûteux en temps de calcul, ceux-ci sont préférés aux mécanismes de chiffrement asymétrique. Cependant toute utilisation de clé de chiffrement symétrique nécessite que les deux correspondants se partagent cette clé, c est-à-dire la connaissent avant l échange. Ceci peut être un problème si la communication de cette clé s effe ue par l intermédiaire d un medium non sécurisé, «en clair». Afin de pallier cet inconvénient, on utilise un mécanisme de chiffrement asymétrique pour la seule phase d échange de la clé symétrique, et l on utilise cette dernière pour tout le reste de l échange. 3.5 Bases mathématiques Petit théorème de Fermat En mathématiques, le petit théorème de Fermat est un résultat de l arithmétique modulaire, qui peut aussi se démontrer avec les outils de l arithmétique élémentaire. Il s énonce comme suit : «Si p est un nombre premier et si a est un entier non divisible par p (premier avec p), alors a p 1 1 est un multiple de p. Autrement dit, a p 1 1 mod p.» Un énoncé équivalent est : «Si p est un nombre premier et si a est un entier quelconque, alors a p a est un multiple de p. Autrement dit, a p = a mod p» FIGURE 3.2 Pierre de Fermat - Première décennie du XVIIe siècle à Beaumont-de-Lomagne (France) - 12 janvier 1665 à Castres (France). Il doit son nom à Pierre de Fermat, qui l énonce la première fois en 1640 sans apporter de démonstration. Voici quelques exemples (basés sur le second énoncé) : = mod 3 ou 5 3 = mod = 42 0 mod = 30 0 mod 5. Sécurité informatique

78 66 CHAPITRE 3 : Cryptographie asymétrique ( 3) = mod = mod 97. Une légère généralisation du théorème s énonce de la manière suivante : Si p est un nombre premier et si m et n sont des entiers stri ement positifs tels que m n mod p 1 alors, pour tout entier a : a m a n mod p. Le petit théorème de Fermat est généralisé par le théorème d Euler : Pour tout entier naturel non nul n et tout entier a premier avec n, on a a φ(n) 1 mod n. où φ(n) désigne la fon ion φ d Euler comptant les entiers entre 1 et n qui sont premiers avec n. Si n est un nombre premier, alors φ(n) = n 1, on retrouve le petit théorème de Fermat. FIGURE 3.3 Leonhard Paul Euler - 15 avril 1707 à Bâle (Suisse) - 18 septembre 1783 (à 76 ans) à Saint-Pétersbourg (Russie) Propriétés de la congruence modulo n dans Z Soit n un entier naturel non nul. Considérons dans la relation notée telle que pour tous entiers relatifs x et y : x y mod n ô x y est un multiple de n dans Z ô Dk tel que x y = kn Il s agit d une relation d équivalence et on appelle cette relation congruence modulo n dans Z. x y mod n se lit : «x est congru à y modulo n». Pour des entiers relatifs x 1, x 2, y 1, y 2, λ et tout entier naturel non nul n on a : $ # x 1 + x 2 y 1 + y 2 mod n x 1 y 1 mod n & x 1 x 2 y 1 y 2 mod n ñ x 2 y 2 mod n x 1 x 2 y 1 y 2 mod n % λx 1 λy 1 mod c P Z, si x 1 y c P Z, si x 1 y 1 mod n alors x 1 + c y 1 + c mod n mod n alors x 1 c y 1 c mod n Il en découle que : si x 1 y 1 mod n alors x 1 y 1 mod k P Z +, si x 1 y 1 mod n, alors x k 1 y k 1 mod n Sécurité informatique

79 3.5 Bases mathématiques 67 (x 1 + x 2 ) mod n = (x 1 + (x 2 mod n)) mod n = ((x 1 mod n) + x 2 ) mod n = ((x 1 mod n) + (x 2 mod n)) mod n (x 1 x 2 ) mod n = (x 1 (x 2 mod n)) mod n = ((x 1 mod n)x 2 ) mod n = ((x 1 mod n)(x 2 mod n)) mod n éorème de Bachet-Bézout C est un résultat d arithmétique élémentaire, qui prouve l existence de solutions à l équation diophantienne linéaire : a x + b y = P GCD(a, b) Il s annonce comme suit : Etant donnés deux entiers relatifs a et b non tous deux nuls, si d est le PGCD de a et de b alors il existe deux entiers relatifs x et y tels que x a + y b = d. Deux entiers relatifs a et b sont premiers entre eux si et seulement s il existe deux entiers relatifs x et y tels que x a + y b = Algorithme d Euclide étendu Il s agit d une variante de l algorithme d Euclide qui permet, à partir de deux entiers x et y, de calculer non seulement leur plus grand commun diviseur (PGCD), mais aussi un de leurs couples de coefficients de Bézout (deux entiers α et β tels que αx + βy = P GCD(x, y)). Quand x et x sont premiers entre eux, α est alors l inverse pour la multiplication de x modulo y, ce qui est un cas particulièrement utile. L algorithme d Euclide étendu fournit également une méthode efficace non seulement pour déterminer quand une équation diophantienne ax + by = c possède une solution, ce que permet déjà l algorithme d Euclide simple, mais également pour en calculer dans ce cas une solution particulière, dont on déduit facilement la solution générale L algorithme On présente, sous forme de suite, le calcul du PGCD et des coefficients de Bézout pour deux entiers naturels x et y. Le quotient (entier) de x par y est noté q. Pour x = 120 et y = 23 (on pose toujours x ě y), on vérifiera que le calcul conduit aux quatres colonnes r i, q i, α i et β i de l exemple. L initialisation consiste en : 1. Pour i = 0 : r 0 = x dans ce cas (x = 120), q 0 =indéfinie, α 0 = 1 et β 0 = Pour i = 1 : r 1 = y dans ce cas (y = 23), q 1 = quotion de division de r i 1 = r 0 = x = 120 par r i = r 1 = y = 23, α 1 = 0 et β 1 = 1. Par la suite et pour chaque étape i : r i = le reste de la division de r i 2 par r i 1 Sécurité informatique

80 68 CHAPITRE 3 : Cryptographie asymétrique i r i q i α i β i (a) Initialisation. i r i q i α i β i (b) Déroulement des calculs. TABLE 3.1 Etapes de calcul des coefficients de Bézout par l algorithme d Euclide étendu. q i = quotient de r i 1 par r i α i = α i 2 q i 1 ˆ α i 1 β i = β i 2 q i 1 ˆ β i 1 Les calculs sont effe ués jusqu à avoir r i souhaitées : α = α i 1 et β = β i 1. = 0. La ligne avant (pour i 1) donne les valeurs Dans le cas étudié, α = 9 et β = 47. Donc, 123 ˆ ( 9) + 23 ˆ 47 = P GCD(125, 23) = 1 Le PGCD de x et y est le dernier reste non nul. Autrement dit, P GCD(x, y) = r i éorème des Restes Chinois Le théorème des restes chinois est un résultat d arithmétique modulaire traitant la résolution de systèmes de congruences. Ce résultat, établi initialement pour Z/nZ, se généralise en théorie des anneaux. Ce théorème est utilisé en théorie des nombres. La forme originale du théorème, contenue dans un livre du mathématicien chinois Qin Jiushao publié en Exemple 1 Combien l armée de Han Xing comporte-t-elle de soldats si, rangés par 3 colonnes, il reste deux soldats, rangés par 5 colonnes, il reste trois soldats et, rangés par 7 colonnes, il reste deux soldats? Exemple 2 Une bande de 17 pirates possède un trésor constitué de pièces d or d égale valeur. Ils projettent de se les partager également, et de donner le reste au cuisinier chinois. Celui-ci recevrait alors 3 pièces. Mais les pirates se querellent, et six d entre eux sont tués. Un nouveau partage donnerait au cuisinier 4 pièces. Dans un naufrage ultérieur, seuls le trésor, six pirates et le cuisinier sont sauvés, et le partage donnerait alors 5 pièces d or à ce dernier. Quelle est la fortune minimale que peut espérer le cuisinier s il décide d empoisonner le reste des pirates? éorème Soient n 1,..., n k des entiers deux à deux premiers entre eux. Autrement dit, P GCD(n i, n j ) = 1 lorsque i j. Alors pour tous entiers a 1,..., a k, il existe un entier x, unique modulo n = ś k i=1 n i Sécurité informatique

81 3.5 Bases mathématiques 69 et tel que x a 1 mod n 1... x a k mod n k Une solution x peut être trouvée comme suit : Pour chaque i, les entiers n i et ˆn i = n n i = n 1... n i 1 n i+1... n k sont premiers entre eux, et d après le théorème de Bachet-Bézout on peut trouver (en utilisant par exemple l algorithme d Euclide étendu) des entiers u i etv i, tels que u i n i + v iˆn i = 1. Si on pose e i = v iˆn i, alors nous avons e i 1 (mod n i ) et e i 0 (mod n j ) pour j i. Une solution particulière de ce système de congruences est par conséquent x = kÿ a i e i, et les autres solutions sont les entiers congrus à ce x modulo le produit n. i= Solution 1 Le problème des soldats se réduit à x 2 mod 3 x 3 mod 5 x 2 mod 7 On obtient alors n = 3 ˆ 5 ˆ 7 = 105 n 1 = 3 et ˆn 1 = 35, or 2ˆn 1 1 mod 3 donc e 1 = 70 n 2 = 5 et ˆn 2 = 21, or ˆn 2 1 mod 5 donc e 2 = 21 n 3 = 7 et ˆn 3 = 15, or ˆn 3 1 mod 7 donc e 3 = 15 Une solution pour x est alors x = 2 ˆ ˆ ˆ 15 = 233 et les solutions sont tous les entiers congrus à 233 modulo 105, c est-à-dire à 23 modulo Solution 2 Le problème des pirates se réduit à : x 3 mod 17 x 4 mod 11 x 5 mod 6 On obtient alors n = 17 ˆ 11 ˆ 6 = 1122 Sécurité informatique

82 70 CHAPITRE 3 : Cryptographie asymétrique n 1 = 17 et ˆn 1 = 66, or 8ˆn 1 1 mod 17 donc e 1 = 66 ˆ 8 = 528 n 2 = 11 et ˆn 2 = 102, or 4ˆn 2 1 mod 11 donc e 2 = 102 ˆ 4 = 408 n 3 = 6 et ˆn 3 = 187, or 6ˆn 3 1 mod 6 donc e 3 = 187 Une solution pour x est alors x = 3 ˆ ˆ ˆ 187 = 4151 et les solutions sont tous les entiers congrus à 4151 modulo 1122, c est-à-dire à 785 modulo Généralisation Si certains modules ne sont pas premiers entre eux (D n i, n j : P GCD(n i, n j ) 1 ^i j), alors il faut déduire de nouvelles équations en se basant sur les équations initiales et sur la fa orisation des n i. Par exemple : # x 1 mod 2 x 1 mod 6 ô x 1 mod 3 # x 1 mod 3 x 4 mod 15 ô x 4 mod 5 # x 1 mod 6 x 4 mod 15 Un autre exemple : $ & x 1 mod 2 ô x 1 mod 3 % x 4 mod 5 x 1 mod 9 ô x 1 mod 3 # x 1 mod 3 x 4 mod 15 ô x 4 mod 5 # # x 1 mod 9 x 1 mod 9 ô x 4 mod 15 x 4 mod Indicatrice d Euler La fon ion indicatrice est aussi appelée fon ion phi d Euler ou simplement la fon ion phi, car la lettre φ est communément utilisée pour la désigner. Elle est nommée en l honneur du mathématicien suisse Leonhard Euler ( ) qui fut le premier à l étudier. L indicateur d Euler φ est la fon ion de l ensemble N des entiers stri ement positifs dans luimême qui à n associe le nombre d entiers stri ement positifs inférieurs ou égaux à n et premiers avec n. φ(n) = card(tm P N m ď n et m premier avec nu). Exemples : φ(12) = card(t1, 5, 7, 11u) = 4 φ(13) = card(t1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12u) = 12 φ(14) = card(t1, 3, 5, 9, 11, 13u) = 6 Sécurité informatique

83 3.5 Bases mathématiques Propriétés n désigne un entier stri ement positif. La valeur φ(n) est égale au nombre de générateurs d un groupe cyclique d ordre n. La valeur φ(n) est égale à l ordre du groupe des éléments inversibles de l anneau Z/nZ. Si u et v sont deux entiers stri ement positifs et premiers entre eux, alors φ(u.v) = φ(u).φ(v). Un entier p ą 0 est premier si et seulement si φ(p) = p 1. Pour le calcul de n, il vaut mieux fa oriser en un produit de nombres premiers p i : Si n = qź i=1 p k i i alors φ(n) = Où k i est un entier stri ement positif. qź (p i 1)p k i 1 i = n i= Calcul de la puissance modulaire Le calcul de y = x n manières. qź i=1 ( 1 1 ) p i mod m où n P N, m P N et x P Z avec x ă m peut se faire de plusieurs Si on procède naïvement (dire ement) d abord au calcul de x n, on risque de provoquer un dépassement de capacité en plus du nombre considérable d opérations (n 1 multiplications et une division = n) effe uées (complexité de l algorithme soujacent O(n)). Les calculs de proche en proche permettent d éviter le dépassement de capacité. Après chaque multiplication on applique le modulo. Cela augmente le nombre d opérations nécessaires à 2(n 1). Bien que les opérations prennent pourtant moins de temps que précédemment (moins d échanges entre cache ou antémémoire et mémoire/moins d utilisation du swapping dans le cas de mémoire virtuelle). L algorithme profite de la propriété suivante : b 1 b mod m et c 1 c mod m ñ b 1 c 1 bc mod m Par exemple, pour obtenir mod 2159, on peut faire les calculs suivants : 5 mod 2159 = 5 ; 5 2 mod 2159 = 25 ; 5 3 mod 2159 = 25 ˆ 5 mod 2159 = 125 ; 5 4 mod 2159 = 125 ˆ 5 mod 2159 = 625 ; 5 5 mod 2159 = 625 ˆ 5 mod 2159 = 3125 = 966 ; etc. Un calcul efficace de ces produits successifs est possible. On peut faire mieux et plus rapidement, à moindre frais. Prenons un exemple simple, sans se préoccuper pour le moment du modulo. Pour calculer a 128, il est maladroit d effe uer les 127 produits successifs qui définissent la puissance. Pour avoir le résultat, il vaut beaucoup mieux procéder ainsi : calcul de a 2, puis de a 4, a 8, a 16, a 32, a 64 et enfin a 128, ce qui ne demandera que 7 élévations au carré successives. Mais si l exposant n est pas une puissance de 2? Prenons par exemple a 96 : à défaut d être lui-même une puissance de 2, 96 s écrit comme somme de deux puissances de 2 : 96 = Par suite, a 96 = a 64 ˆ a 32, dont le calcul résulte des élévations au carré obtenues plus haut. Sécurité informatique

84 72 CHAPITRE 3 : Cryptographie asymétrique La méthode peut toujours être mise en œuvre car écrire un nombre sous la forme d une somme de puissances de 2 revient à décomposer ce nombre dans la base 2. Par exemple : 1063 = ( ) 2 On déduit la décomposition de 1063 en somme de puissances de 2 : 1063 = = On peut écrire : a 1063 = a ( ) = a ˆ a 2 ˆ a 4 ˆ a 32 ˆ a 1024 On procède ensuite à des élévations au carré successives à partir de a : a, a 2, a 4, a 8, a 16, a 32, a 64, a 128, a 256, a 512, a 1024 Il nous n intéresse que ceux entourés, qui permettent d obtenir a 1063 Remarquons qu ils correspondent en fait à des 1 dans la représentation binaire. Il suffit de faire le produit de ces entiers, éventuellement modulo un autre entier, pour avoir le résultat cherché. Cela se traduit par l algorithme suivant : Algorithme 3.1 : EXPONENTIATION-RAPIDE1 Calcule une puissance modulaire1. Entrées : x, n, m : entiers. m est le module et n est l exposant (entiers stri ement positifs.), x est un entier non nul. Sorties : y le réseltat de x n mod m 1 y Ð 1 2 tant que n ą 0 faire 3 si n mod 2 = 1 alors 4 y Ð x y mod m 5 n Ð X \ n 6 x Ð x 2 mod m 7 retourner y Une autre version de l algorithme moins lisible et intuitive est donnée ci-dessous : Algorithme 3.2 : EXPONENTIATION-RAPIDE Calcule une puissance modulaire. Entrées : x, n, m : entiers. m est le module et n est l exposant (entiers stri ement positifs.), x est un entier non nul. Sorties : y le résultat de x n mod m 1 si n mod 2 0 alors 2 y Ð x 3 sinon 4 y Ð 1 5 répéter 6 n Ð X \ n 2 7 si n 0 alors 8 x Ð x ˆ x mod m 9 si n mod 2 0 alors 10 y Ð y ˆ x mod m 11 jusqu à n = 0 12 retourner y Une autre piste consiste à utiliser la récursivité, avec l avantage d une écriture relativement simple et naturelle. Supposons que l on cherche à calculer x n mod m. On peut alors écrire : Sécurité informatique

85 3.6 Rivest Shamir Adleman 73 $ & x, sin = 1 puissance(x, n) = puissance(x % 2, n/2), sinpair est x ˆ puissance(x 2, (n 1)/2), sin ą 2impair est Alors : Si n est pair, x n mod m est égal (x 2 ) n 2 mod m Si n est impair, x n mod m est égal x(x 2 ) n 1 2 mod m On peut en déduire l écriture d une fon ion récursive. L exposant n est amené ainsi à avoir des valeurs de plus en plus petites, par divisions par 2 successives. Il finira par valoir 1, et dans ce cas, on sait que la valeur à retourner est x. Algorithme 3.3 : EXPONENTIATION-RAPIDE-RÉCURSIVE Calcule une puissance modulaire de façon récursive. Entrées : x, n, m : entiers. m est le module et n est l exposant (entiers stri ement positifs.), x est un entier non nul. Sorties : y le résultat de x n mod m 1 si n mod 2 = 0 alors 2 y Ð x y mod m 3 y Ð 1 4 tant que n ą 0 faire 5 si n mod 2 = 1 alors 6 y Ð x y mod m 7 n Ð X \ n 8 x Ð x 2 mod m 2 9 retourner y Algorithme 3.4 : EXPMODREC Calcule une puissance modulaire de façon récursive. Entrées : x, n, m : entiers. m est le module et n est l exposant (entiers stri ement positifs.), x est un entier non nul. Sorties : le résultat de x n mod m 1 si n mod 2 = 0 alors 2 retourner (ExpModRec(x 2, n/2, m)) mod m 3 sinon 4 si n 1 alors 5 retourner (xexpmodrec(x 2, (n 1)/2, m)) mod m 6 sinon 7 retourner x 3.6 Rivest Shamir Adleman Rivest Shamir Adleman ou RSA est un algorithme asymétrique de cryptographie à clé publique, très utilisé dans le commerce éle ronique, et plus généralement pour échanger des données confidentielles sur Internet. Cet algorithme a été décrit en 1977 par Ron Rivest, Adi Shamir et Len Adleman, d où le sigle RSA. RSA a été breveté par le MIT en 1983 aux états-unis. Le brevet a expiré le 21 septembre En Sécurité informatique

86 74 CHAPITRE 3 : Cryptographie asymétrique 2008, c est le système à clé publique le plus utilisé (carte bancaire française, de nombreux sites web commerciaux.). (a) De gauche à droite : Ron Rivest, Adi Shamir et Len Adleman (2003). (b) Au M.I.T. FIGURE 3.4 Ron Rivest, Adi Shamir et Len Adleman. Ronald Rivest, Adi Shamir et Leonard Adleman, dans «A Method for Obtaining Digital Signatures and Public-key Cryptosystems», ont publié l idée d utiliser les anneaux Z/nZ et le petit théorème de Fermat pour obtenir des fon ions trappes, ou fon ions à sens unique à brèche secrète. RSA repose sur le calcul dans les groupes Z/nZ, plus précisément sur l exponentiation modulaire. Voici une description des principes mathématiques sur lesquels repose l algorithme RSA. Toutefois, le passage des principes à la pratique requiert de nombreux détails techniques qui ne peuvent pas être ignorés, sous peine de voir la sécurité du système anéantie. Par exemple, il est recommandé d encoder le message en suivant l OAEP (Optimal Asymmetric Encryption Padding) Création des clés 1. Choisir p et q, deux nombres premiers distin s. 2. Noter n leur produit, appelé module de chiffrement : n = pq. 3. Calculer l indicatrice d Euler de n : ϕ(n) = (p 1)(q 1). 4. Choisir e, un entier premier avec ϕ(n), appelé exposant de chiffrement. 5. Comme e est premier avec ϕ(n), il est, d après le théorème de Bachet-Bézout, inversible mod ϕ(n), c est-à-dire qu il existe un entier d tel que e.d 1 mod ϕ(n) où d est l exposant de déchiffrement. Le couple (n, e) est appelé clé publique, alors que le couple (n, d) est appelé clé privée Chiffrement et déchiffrement du message Si M est un entier inférieur à n représentant un message, alors le message chiffré sera représenté par C M e mod n. Pour déchiffrer C, on utilise d, l inverse de e modulo ϕ(n) et on calcule C d mod n. On a alors, C d mod n (M e ) d mod n M ed mod n Comme ed 1 mod ϕ(n) par définition de modulo, on a ed = 1+kϕ(n) = 1+k(p 1)(q 1), avec k P N. Sécurité informatique

87 3.7 Cryptosystème de ElGamal 75 Or, pour tout entier M, M 1+k(p 1)(q 1) M mod p et M 1+k(p 1)(q 1) M mod q. En effet, Si M est premier avec p alors, d après le petit théorème de Fermat, M p 1 1 mod p donc M k(p 1)(q 1) 1 mod p puis M 1+k(p 1)(q 1) M mod p Si M n est pas premier avec p, comme p est un nombre premier, cela signifie que M est multiple de p donc M 1+k(p 1)(q 1) 0 M mod p (un raisonnement analogue prouve la congruence modulo q) L entier M 1+k(p 1)(q 1) M est donc un multiple de p et de q. Comme p et q sont premiers (et premiers entre eux), une conséquence du lemme de Gauss permet d affirmer que M 1+k(p 1)(q 1) M est un multiple de pq, c est-à-dire de n. On a donc : C d M ed M 1+k(p 1)(q 1) M mod n On constate que pour chiffrer un message, il suffit de connaitre e et n. En revanche pour déchiffrer, il faut d et n. Pour calculer d à l aide de e et n, il faut trouver l inverse de e modulo (p 1)(q 1) ce qui nécessite de connaitre les entiers p et q, c est-à-dire la décomposition de n en fa eurs premiers. Dans la pratique, deux problèmes majeurs apparaissent : choisir un nombre premier de grande taille calculer M = C d mod n Une méthode simple pour choisir un nombre premier de grande taille est de créer une suite aléatoire de bits, puis de le tester avec le test de primalité. Un problème apparait pour cette deuxième opération : la méthode naïve serait d utiliser le crible d Eratosthène, mais elle est trop lente. En pratique, on utilise un test de primalité probabiliste (test de primalité de Fermat par exemple). Ce test n assure pas que le nombre est premier, mais il y a une forte probabilité pour qu il le soit. On peut également utiliser un test de primalité déterministe en temps polynomial qui assure que le nombre est premier (comme le test de primalité AKS). Bien que moins rapide, il assure la primalité du nombre. Le calcul de M = C d mod n peut être assez long. Calculer d abord C d, puis calculer le modulo avec n est coûteux en temps et en calculs. Dans la pratique, on utilise l exponentiation modulaire. On peut conserver une forme différente de la clé privée pour permettre un déchiffrement plus rapide à l aide du théorème des restes chinois. 3.7 Cryptosystème de ElGamal L algorithme ElGamal est un algorithme de cryptographie asymétrique basé sur les logarithmes discrets. Il a été créé par Taher Elgamal. Cet algorithme est utilisé par le logiciel libre GNUPrivacy Guard, de récentes versions de PGP, et d autres systèmes de chiffrement, et n a jamais été sous la prote ion d un brevet contrairement à RSA. Il peut être utilisé pour le chiffrement et la signature éle ronique. L algorithme DSA du NIST est basé sur ElGamal. Lorsque nous travaillons avec des nombres réels, log b (y) est la valeur x, telle que b x = y. Nous pouvons définir un logarithme discret analogue. Si b et n des entiers, avec n ă b, le logarithme discret d un entier y à la base b est un nombre entier x, tel que b x = y mod n. Le logarithme discret est aussi appelé indice (index), et nous écrivons x = ind b,n y. Sécurité informatique

88 76 CHAPITRE 3 : Cryptographie asymétrique FIGURE 3.5 Taher Elgamal. Bien qu il soit assez facile d élever un nombre à de grandes puissances modulo p,le calcul inverse du logarithme discret est beaucoup plus difficile. Le système El Gamal repose sur la difficulté de ce calcul Fonctionnement 1. Alice calcule h = g x avec g, h P Z p pour un grand nombre premier p, g étant un élément générateur de Z p, et divulgue sa clé publique (p, g, h). La valeur x est sa clé privée. 2. Si Bob veut envoyer un message à Alice, il convertit d abord son message sous la forme d un nombre m P Z p. 3. Bob génère un nombre entier k aléatoirement et calcule c 1 = g k et c 2 = m.h k Il envoie (c 1, c 2 ) à Alice. 4. Alice peut reconstruire le message initial m en calculant c 2 /c x 1. En réalité, elle calcule le nombre α = p 1 x. Elle calcule ensuite m = c α 1 c 2 mod p et retrouve le message initial. On remarque que : c 2 c x 1 = mhk g xk = mgxk g xk = m Il n est pas obligatoire d utiliser Z p. Tout groupe cyclique convient. Casser l algorithme ElGamal est dans la plupart des cas au moins aussi difficile que de calculer le logarithme discret. Cependant, il est possible qu il existe des moyens de casser l algorithme sans résoudre le problème du logarithme discret. Sécurité informatique

89 Chapitre 4 Echange de clés Sommaire 4.1 Cryptographie quantique Introdu ion Historique Fon ionnement Echange de clés Diffie-Hellman Principe Exemple concret Fondement mathématique L attaque de l homme du milieu Cryptographie quantique Introduction La cryptographie quantique, plus corre ement nommée distribution quantique de clés, désigne un ensemble de protocoles permettant de distribuer une clé de cryptage secrète entre deux interlocuteurs distants, tout en assurant la sécurité de la transmission grâce aux lois de la physique quantique et de la théorie de l information. Cette clé secrète peut ensuite être utilisée dans un algorithme de chiffrement symétrique, afin de chiffrer et déchiffrer des données confidentielles Historique Stephen Wiesner a émis pour la première fois, au début des années 1970, l idée de pouvoir utiliser les phénomènes quantiques dans des applications liées à la sécurité. Dans son article fondateur, il introduit le concept de codage sur des observables conjuguées, et l illustre par une technique de conception de billets de banques infalsifiables. Curieusement, cet article sera rejeté par l IEEE au cours des années 1970, et ne sera?nalement publié qu en 1983 dans SIGACT News. A la suite de la publication de cet article, Charles H. Bennett et Gilles Brassard proposent en 1984 la première technique de cryptographie quantique proprement dite, qui se fonde sur les observables conjuguées de Wiesner. 77

90 78 CHAPITRE 4 : Echange de clés En 1990, de façon indépendante du travail de Bennett et Brassard, Artur Ekert, alors do orant au Wolfson College de l université d Oxford, développe une approche de cryptographie quantique différente, fondée sur les corrélations quantiques pouvant exister entre deux photons, un phénomène nommé intrication quantique. Ces deux protocoles, généralement abrégés en BB84 et E90, sont largement reconnus comme les deux protocoles fondateurs de la cryptographie quantique moderne. La majorité des protocoles a uels ont d ailleurs été développés en s inspirant de ceux-ci. La communication de données confidentielles par un canal de transmission classique (par exemple Internet) nécessite l utilisation d algorithmes de cryptographie classiques : algorithmes de chiffrement asymétrique ou de chiffrement symétrique. Dans le cas du chiffrement symétrique, les deux interlocuteurs doivent posséder a priori une clé secrète, c est-à-dire qui ne soit connue que d eux deux. Se pose alors la question suivante : comment transmettre une clé de cryptage entre deux interlocuteurs (1) à distance, (2) à la demande, et (3) avec une sécurité démontrable? A uellement, la technique se rapprochant au mieux de ces trois critères est une transmission physiquement sécurisée, de type valise diplomatique. La cryptographie quantique cherche à répondre à ces trois critères en transmettant de l information entre les deux interlocuteurs en utilisant des objets quantiques, et en utilisant les lois de la physique quantique et de la théorie de l information pour déte er tout espionnage de cette information. S il n y a pas eu espionnage, une clé parfaitement secrète peut être extraite de la transmission, et celle-ci peut être utilisée dans tout algorithme de chiffrement symétrique a?n de transmettre un message. Le système de cryptographie quantique est utilisé uniquement pour générer et transmettre une clé, et non le message en lui-même pour deux raisons essentielles : 1. Les bits d informations communiqués par les mécanismes de la cryptographie quantique ne peuvent être qu aléatoires. Ceci ne convient pas pour un message, mais convient parfaitement bien à une clé secrète, qui doit être aléatoire. 2. Même si le mécanisme de la cryptographie quantique garantit que l espionnage de la communication sera toujours déte é, il est possible que des bits d informations entrent en possession de l espion avant que celui-ci ne soit déte é. Ceci est inacceptable pour un message, mais sans importance pour une clé aléatoire qui peut être simplement jetée en cas d interception.secrète, qui doit être aléatoire Fonctionnement Lors d un protocole de cryptographie quantique, deux interlocuteurs distants (généralement nommés Alice et Bob) disposent : 1. D objets quantiques, c est-à-dire d objets physiques qui se comportent selon les lois de la physique quantique. En pratique, ces objets sont toujours des impulsions lumineuses (des photons), qui peuvent prendre plusieurs formes : photons uniques, états cohérents, paires de photons intriqués, etc. 2. D un canal quantique, qui permet le transit des impulsions lumineuses. Il peut s agir d une fibre optique, qui permet facilement de guider la lumière, ou de l air libre, auquel cas Alice et Bob doivent se faire face. 3. Enfin, d un canal classique de communication (comme Internet), qui doit être authentifié : Alice doit être certaine qu elle parle bien à Bob. Sécurité informatique

91 4.1 Cryptographie quantique 79 Entre Alice et Bob se trouve un espion, aussi appelé adversaire, qu il est d usage de nommer Eve (de l anglais eavesdropper). Eve a accès à tout ce qui transite entre Alice et Bob, classique ou quantique, et n est limitée que par les lois de la physique. En revanche, elle ne peut pas accéder aux systèmes d Alice et de Bob, qui sont supposés physiquement sécurisés. FIGURE 4.1 Cryptographie quantique. Alice code tout d abord une information aléatoire sur chaque impulsion lumineuse, puis l envoie à Bob par le canalquantique.celui-ci mesure alors l information que porte l impulsion qu il a reçu. Après la transmission, Bob possède donc un ensemble de mesures qui sont corrélées aux données envoyées par Alice, mais qui ont pu être espionnées par Eve. L une des propriétés fondamentales de la cryptographie quantique est la capacité des deux interlocuteurs à déte er la présence de l espion, mais aussi à évaluer précisément la quantité d information que celui-ci a intercepté. Ceci résulte de deux aspe s fondamentaux de la mécanique quantique : 1. D après le théorème de non-clonage, il est impossible de dupliquer un objet quantique inconnu, 2. Le postulat de rédu ion du paquet d onde entraine que réaliser une mesure sur un objet quantique perturbe généralement l objet en question. Si Eve cherche à obtenir de l information sur l état de l objet qui transite par le canal quantique, elle introduit donc des anomalies (bruit ou erreurs), qui peuvent être déte ées par Alice et Bob. Il est possible d établir formellement un lien entre la quantité d anomalies et la quantité d information interceptée par Eve, grâce à des démonstrations mathématiques appelées preuves de sécurité, qui combinent les lois de la physique quantique et de la théorie de l information. Information secrète résiduelle : Alice et Bob évaluent tout d abord le niveau d erreurs et de bruit séparant leurs deux ensembles de données. Les différences entre leurs données peuvent provenir de : L intervention d Eve, qui rajoute des erreurs et du bruit Les erreurs et le bruit de fond, qui ne peuvent jamais être évités complètement. Néanmoins, puisque les erreurs de communication et les effets de l observation d Eve ne peuvent pas être distingués, Alice et Bob doivent supposer que toutes les incohérences sont dues à l a ion d un espion. Sécurité informatique

92 80 CHAPITRE 4 : Echange de clés Ensuite, grâce aux preuves de sécurité et à ce niveau de bruit, Alice et Bob peuvent évaluer la quantité d information qui a été interceptée par Eve, notée I E. En parallèle, la théorie de l information leur permet d évaluer la quantité d information qu ils partagent après la transmission, I AB. Finalement, si la quantité d information I = I AB I E reste supérieure à zéro, c est-à-dire que le niveau d espionnage reste en dessous d un certain seuil, alors une clé secrète de taille maximale?i peut être extraite de la transmission. Dans le cas contraire, aucune extra ion n est possible, et l échange doit donc être interrompu. Extraction de la clé : S il reste un avantage à Alice et Bob après l évaluation de l information secrète résiduelle, ils peuvent lancer l extra ion de la clé proprement dite. Souvenons-nous qu Alice et Bob ne partagent pas encore une clé, mais des données corrélées. L extra ion est composée de deux étapes : la réconciliation et l amplification de confidentialité. Réconciliation : La réconciliation consiste à générer une chaine de bits partagée par Alice et Bob à partir des données corrélées, en particulier à l aide d un algorithme de corre ion d erreurs. Pour ce faire, l émetteur ou le récepteur utilise un code corre eur pour générer un ensemble de syndromes, qu il envoie à l autre partie afin qu elle puisse corriger ses données. Puisque le canal classique de transmission n est pas crypté, ces informations sont supposées connues de l espion. Il est donc impératif d en envoyer aussi peu que possible, afin de ne pas lui apporter trop d information. Amplification de confidentialité : L amplification de confidentialité est une technique qui transforme la clé corrigée en une clé secrète plus petite. Les bits de la clé passent au travers d un algorithme qui répartit l ignorance de l espion sur la clé finale. De cette manière, l information de l espion sur la clé finale peut être rendue arbitrairement petite. En première approximation, la taille de la clé secrète finale est égale à la «taille» de l information partagée avant réconciliation, diminuée du nombre de bits connus (ou supposés connus) par l espion, et diminuée du nombre de bits publiés lors de la corre ion d erreur. 4.2 Echange de clés Diffie-Hellman En cryptographie, l échange de clés Diffie-Hellman, du nom de ses auteurs Whitfield Diffie et Martin Hellman, inventée en 1976, est une méthode par laquelle deux personnes nommées conventionnellement Alice et Bob peuvent se mettre d accord sur un nombre (qu ils peuvent utiliser comme clé pour chiffrer la conversation suivante) sans qu une troisième personne appelée Eve puisse découvrir le nombre, même en ayant écouté tous leurs échanges¹ Principe 1. Alice et Bob ont choisi un groupe (soit un corps fini, dont ils n utilisent que la multiplication, soit une courbe elliptique) et une génératrice g de ce groupe². 1. Standard IETF RFC g est une racine primitive de p sachant que p est un grand nombre premier. Sécurité informatique

93 4.2 Echange de clés Diffie-Hellman 81 (a) Merkle, Hellman et Diffie (70s). (b) Whitfield Diffie. (c) Martin-Hellman. FIGURE 4.2 Whitfield Diffie et Martin Hellman. 2. Alice choisit un nombre au hasard a (1 ă a ă p 1), élève g à la puissance a, et dit à Bob g a mod p. 3. Bob fait de même avec le nombre b (1 ă b ă p 1). Autrement dit,bob élève g à la puissance b, et dit à Alice g b mod p. 4. Alice, en élevant le nombre reçu de Bob à la puissance a, obtient g ba mod p. 5. Bob fait le calcul analogue et obtient g ab mod p, qui est le même. Mais puisqu il est difficile d inverser l exponentiation dans un corps fini, c est-à-dire de calculer le logarithme discret, Eve ne peut pas découvrir a et b, donc ne peut pas calculer g ab mod p. FIGURE 4.3 Déroulement de l échange de clés Diffie-Hellman Exemple concret 1. Alice et Bob choisissent un nombre premier p et une base g. Dans notre exemple, p = 23 et g = Alice choisit un nombre secret a = Elle envoie à Bob la valeur g a mod p = 5 6 [23] = Bob choisit à son tour un nombre secret b = Bob envoie à Alice la valeur g b mod p = 5 15 [23] = 19. Sécurité informatique

94 82 CHAPITRE 4 : Echange de clés 6. Alice peut maintenant calculer la clé secrète : (g b mod p) a mod p = 19 6 [23] = Bob fait de même et obtient la même clé qu Alice : (g a mod p) b mod p = 8 15 [23] = 2. FIGURE 4.4 Schéma général pour l échange de clés Diffie-Hellman. FIGURE 4.5 Exemple concret d échange de clés Diffie-Hellman Fondement mathématique La méthode utilise la notion de groupe (multiplicatif), par exemple celui des entiers modulo p, où p est un nombre premier (dans ce cas, les opérations mathématiques (multiplication, puissance, division) sont utilisées telles quelles, mais le résultat doit être divisé par p pour ne garder que le reste, appelé modulo). Les groupes ayant la propriété de l associativité, l égalité (g b ) a = (g a ) b est valide et les deux parties obtiennent bel et bien la même clé secrète. La sécurité de ce protocole réside dans la difficulté du problème du logarithme discret : pour que Eve retrouve g ab à partir de g a et g b, elle doit élever l un ou l autre à la puissance b ou à la puissance a respe ivement. Mais déduire a (resp.b) de g a (resp. g b ) est un problème que l on ne sait pas résoudre efficacement. Eve est donc dans l impossibilité (calculatoire) de déduire des seules informations g a, g b, g et p, la valeur de g ab. Il faut toutefois que le groupe de départ soit bien choisi et que les nombres utilisés soient suffisamment grands pour éviter une attaque par recherche exhaustive. A l heure a uelle, un nombre premier p de l ordre de 300 chiffres ainsi que a et b de l ordre de 100 chiffres sont tout simplement impossibles à casser même avec les meilleurs algorithmes de résolution du logarithme discret. Si une solution pratique pour résoudre un logarithme discret venait à apparaître, d autres systèmes cryptographiques pourraient tomber, notamment le système d El Gamal, qui repose sur le même principe. Sécurité informatique

95 4.2 Echange de clés Diffie-Hellman L attaque de l homme du milieu Ce protocole est vulnérable à l attaque de l homme du milieu, qui implique un attaquant capable de lire et de modifier tous les messages échangés entre Alice et Bob. Cette attaque repose sur l interception de g a et g b, ce qui est facile puisqu ils sont échangés en clair ; l élément g étant supposé connu par tous les attaquants. Pour retrouver les nombres a et b et ainsi casser complètement l échange, il faudrait calculer le logarithme discret de g a et g b, ce qui est impossible en pratique. Mais dans l attaque de l homme du milieu, l attaquant se place entre Alice et Bob, intercepte la clé g a envoyée par Alice et envoie à Bob une autre clé g a1, se faisant passer pour Alice. De même, il remplace la clé g b envoyée par Bob à Alice par une clé g b1, se faisant passer pour Bob. L attaquant peut ainsi communiquer avec Alice en utilisant la clé partagée g ab1 et communiquer avec Bob en utilisant la clé partagée g a1b. Alice et Bob croient ainsi avoir échangé une clé secrète alors qu en réalité ils ont chacun échangé une clé secrète avec l attaquant, l homme du milieu. Solution La parade classique à cette attaque consiste à signer les échanges de valeurs à l aide d une paire de clés asymétriques certifiées par une tierce partie fiable, ou dont les moitiés publiques ont été échangées auparavant par les deux participants. Alice peut ainsi être assurée que la clé qu elle reçoit provient effe ivement de Bob, et inversement pour Bob. Sécurité informatique

96 84 CHAPITRE 4 : Echange de clés Sécurité informatique

97 Chapitre 5 Fonctions de hachage Sommaire 5.1 Introduction Propriétés des fonctions de hachage Preimage resistance nd preimage resistance Collision resistance Fon ion de compression Pseudo-collision Effet avalanche Motivations Critère d avalanche stri e Critère d indépendance Bit Construction de fonctions de hachage MAC basée sur une fonction de hachage MAC basée sur un chiffre symétrique par bloc CBC-MAC Introduction On nomme fon ion de hachage une fon ion particulière qui, à partir d une donnée fournie en entrée, calcule une empreinte servant à identifier rapidement, bien qu incomplètement, la donnée initiale. Les fon ions de hachage sont utilisées en informatique et en cryptographie. FIGURE 5.1 Fon ion de hachage appliquée à 3 entrées différentes. 85

98 86 CHAPITRE 5 : Fonctions de hachage Le résultat d une fon ion de hachage peut être appelé selon le contexte somme de contrôle, empreinte, hash, résumé de message, condensé, condensat ou encore empreinte cryptographique lorsque l on utilise une fon ion de hachage cryptographique. On l appelait autrefois aussi signature, mais cette terminologie est moins utilisée afin d éviter une confusion avec son sens juridique : le hachage est en effet aussi employé pour les signatures numériques. FIGURE 5.2 Fon ion de hachage itérative. 5.2 Propriétés des fonctions de hachage Une fon ion de hachage h est une fon ion h : t0, 1u Ñ t0, 1u n Preimage resistance Etant donné une sortie y, il est difficile de trouver x tel que h(x) = y. à sens unique. En d autres termes, on ne peut pas trouver une fon ion qui permet d inverser le processus de hachage nd preimage resistance Etant donné une entrée x, il est difficile de trouver x 1 tel que h(x 1 ) = h(x). faible résistance aux collisions. Autrement dit, une fon ion de hachage est résistante aux collisions faibles s il est difficile de construire des messages différents possédant la même empreinte. On entend par calculatoirement difficile voir impossible en un temps raisonnable même avec l aide d ordinateurs très puissants. Cette définition empêche un éventuel attaquant de modifier le message signé d une personne et ainsi imiter sa signature Collision resistance Il est difficile de trouver x et x 1 tel que h(x) = h(x 1 ). résistance forte aux collisions. Idée : calculer une version condensée y d un message m. Le condensé/résumé devrait être spécifique à ce message. 1. Utiliser y au lieu de m de façon sûre. 2. As-tu reçu m corre ement? Voici y pour vérifier. (partage de fichier) 3. As-tu déchiffré c corre ement? 4. Je signe y pour prouver que j ai écrit m Sécurité informatique

99 5.2 Propriétés des fon ions de hachage Fonction de compression. Une fon ion f : t0, 1u m Ñ t0, 1u n où n ă m est appelée une fon ion de compression. Si la fon ion de compression f est résistante au collisions, alors la fon ion de hachage h obtenue est résistante aux collisions. Une fonction de hachage sans clé (en anglais unkeyed) est aussi appelée Modification/Manipulation Detection Code (MDC). On peut s en servir pour s assurer de l intégrité d un message. Une fonction de hachage avec clé (en anglais keyed) est aussi appelée Message Authentication Code (MAC). Elle a un paramètre additionnel (la clé) qui permet de vérifier l intégrité et la provenance du message en même temps. FIGURE 5.3 Schéma général d une fon ion de hachage. Ãtant donnée une valeur k et un message x, la valeur h k (x) est facile à calculer. Ce résultat est souvent appelé valeur MAC. h k (x) a une valeur fixe de n bits, pour toute valeur de k et toute entrée x. Ãtant donné un ensemble de couples (x i, h k (xi)), il est impossible de créer un nouveau message x différent de tous les messages x i et telle que pour un certain i : h k (x) = h k (x i ) Pseudo-collision En cryptographie, on parle de pseudo-collision pour désigner deux résultats issus d une même fon ion de hachage qui présentent des similitudes significatives. Une signature A et une signature B peuvent par exemple avoir 70% de leur bits en commun lorsque on les compare deux par deux. La recherche de pseudo-collisions précède la découverte d une faille, nommée collision compète qui rend la fon ion de hachage «non-cryptographique». Une attaque qui recherche des pseudo-collisions n est pas très utile à priori mais peut s avérer fatale si l empreinte générée par la fon ion de hachage est tronquée ou est soumise à une transformation particulière qui la rend plus vulnérable (par exemple, prendre un bit sur deux pour faire une empreinte plus courte). Sécurité informatique

100 88 CHAPITRE 5 : Fonctions de hachage Effet avalanche L effet avalanche est une propriété recherchée dans les fon ions de hachage cryptographiques et les algorithmes de chiffrement par bloc. Elle provoque des modifications de plus en plus importantes au fur et à mesure que les données se propagent dans la stru ure de l algorithme. De ce fait, en perturbant un seul bit en entrée, on obtient idéalement une sortie totalement différente, (soit environ 1 bit sur deux sera changé) d où le nom de ce phénomène. L effet avalanche permet de rendre l inversion de la fon ion plus difficile grâce à ses propriétés chaotiques (s il est bien conçu). Le terme a été inventé par Horst Feistel mais le concept remonte à la théorie de Shannon sur la diffusion. En 1985, le concept se voit précisé avec le «critère d avalanche stri e» Motivations La diffusion des modifications sur les entrées est très importante. Si ce n est pas le cas et que les sorties présentent un biais statistique, il serait possible d établir des prédi ions sur les entrées à partir de l observation des sorties. L effet avalanche est donc recherché lors de la conception d une primitive de chiffrement. Pour ces raisons, la plupart des chiffrements par bloc utilisent le produit de plusieurs sous-chiffrements. Les fon ions de hachage emploient des blocs de grande taille pour faciliter la diffusion. FIGURE 5.4 Effet avalanche Critère d avalanche stricte Le critère d avalanche stri e (Stri Avalanche Criterion) est une propriété des fon ions booléennes utilisées en cryptographie. Il a été introduit par Webster et Tavares en Une fon ion satisfait ce critère si pour toute inversion d un seul bit en entrée alors chaque bit en sortie a une chance sur deux d être modifié. L uniformisation des sorties a pour but d empêcher les prédi ions dues à un biais statistique Critère d indépendance Bit Le bit independence criterion (BIC) indique que les bits J et K en sortie doivent changer de manière autonome et indépendante lorsque un bit quelconque i est inversé, et cela pour tout i, j et k. Sécurité informatique

101 5.3 Constru ion de fon ions de hachage Construction de fonctions de hachage Dans le cadre des fon ions de hachage cryptographiques, la constru ion de Merkle-Damgård est unec onstru ion algorithmique qui permet de résoudre le problème du hachage cryptographique en acceptant un message de taille quelconque tout en produisant une sortie de taille fixe, et en satisfaisant les contraintes de sécurité liées à la cryptographie : Résistance aux collisions (difficulté de trouver deux messages distin s qui produisent la même empreinte) Résistance aux attaques sur les préimages (difficulté de trouver un message à partir de son empreinte, difficulté de forger un deuxième message produisant la même empreinte que le premier) La constru ion de Merkle-Damgård emploie une fon ion de compression avec une entrée et une sortie de taille fixe, et divise le message à hacher en blocs de taille fixe. Les blocs sont ensuite envoyés les uns après les autres dans la fon ion de compression. Le résultat de chaque compression est ensuite transmis au bloc suivant selon plusieurs schémas : Miyaguchi-Preneel Matyas-Meyer-Oseas Davies-Meyer Dans ces schémas : 1. Le premier bloc utilise un ve eur d initialisation IV constant puisque aucun autre bloc ne le précède. 2. Un chiffrement symétrique par bloc E K générique de n-bits de paramètre K (une clé K) ; 3. Une fun ion g qui transforme les n bits d entrée en une clé K adaptée pour E (si les clés pour E sont également de longueur n, g est la fon ion identité). Alors pour : 1. Matyas-Meyer-Oseas : H 0 = IV ; H i = E g(hi 1 )(x i ) x i. 2. Davies-Meyer : H 0 = IV ; H i = E xi (H i 1 ) H i Miyaguchi-Preneel : H 0 = IV ; H i = E g(hi 1 )(x i ) x i H i 1. La constru ion de Merkle-Damgård produit un hachage résistant aux collisions pour autant que la fon ion de compression utilisée est également résistante aux collisions. De la qualité de la fon ion de compression dépendra la résistance de l algorithme à la cryptanalyse. Le principe de Merkle- Damgård est utilisé notamment dans MD5 et SHA-1. Voici une liste non exhaustive de fon ions de hachage les plus utilisées : AR, Boognish, FFThash, HAS-160, Hava, MD2, MD4, MD5, MD6, N-hash, PANAMA, RIPEMD, RIPEMD-128, RIPEMD-160, RIPEMD-256, SHA-0, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, Snefru, StepRightUp, Tiger, VSH, Whirlpool. Sécurité informatique

102 90 CHAPITRE 5 : Fonctions de hachage FIGURE 5.5 Schéma détaillé d une fon ion de hachage. FIGURE 5.6 Constru ion de fon ions de hachage. Sécurité informatique

103 5.4 MAC basée sur une fon ion de hachage MAC basée sur une fonction de hachage Il est possible de construire un MAC en se basant sur une fon ion de hachage existante en combinaison avec une clé secrète. Ce type de MAC est dit Hash-based message authentication code ou HMAC. La constru ion et l analyse des HMACs ont été publiées pour la première fois en 1996 par Mihir Bellare, Ran Canetti, et Hugo Krawczyk (qui a écrit la RFC 2104). FIPS PUB 198 généralise et standardise l utilisation des HMACs. N importe quelle fon ion itérative de hachage, comme MD5 ou SHA-1, peut être utilisée dans le calcul d un HMAC ; le nom de l algorithme résultant est HMAC-MD5 ou HMAC-SHA-1. La qualité cryptographique du HMAC dépend de la qualité cryptographique de la fon ion de hachage et de la taille et la qualité de la clé. La fon ion HMAC est définie comme suit : ( ( ) ) HMAC K (m) = h (K opad) h (K ipad) m Tels que : h : une fon ion de hachage itérative, K : la clé secrète complétée avec des zéros pour qu elle atteigne la taille de bloc de la fon ion h, m : le message à authentifier, désigne une concaténation et un ou exclusif, ipad et opad, chacune de la taille d un bloc, sont des constantes définies par : ipad = 0x et opad = 0x5c5c5c... 5c5c. Donc, si la taille de bloc de la fon ion de hachage est 512, ipad et opad sont 64 répétitions des o ets, respe ivement, 0x36 et 0x5c. La figure 5.7 illustre le fon ionnement global de HMAC SHA-1. FIGURE 5.7 HMAC SHA-1. HMAC-SHA-1 et HMAC-MD5 sont utilisés dans les protocoles IPsec et TLS. Sécurité informatique

104 92 CHAPITRE 5 : Fonctions de hachage 5.5 MAC basée sur un chiffre symétrique par bloc CBC-MAC Il est possible de définir une MAC en se basant sur un chiffre symétrique par bloc connu. CBC- MAC est l un des algorithmes de MAC de ce genre. Il est basé sur un chiffrement par bloc utilisé selon un mode d opération CBC (cipher block chaining). Ce principe a été formulé en 1985 dans un standard du NIST (FIPS PUB 113, Standard on Computer Data Authentication). On le retrouve aussi dans les standards ANSI X9.9 et ISO/IEC Pour chiffrer, les données sont découpées en blocs de taille adéquate (selon le chiffrement par bloc utilisé, au minimum un chiffrement par bloc de 32 bits). Les blocs sont chiffrés les uns après les autres, le résultat chiffré du bloc précédent est transmis au bloc suivant. Soit E k (M i ) l opération de chiffrement sur un bloc de données M i avec la clé k. FIGURE 5.8 Fon ionnement de CBC-MAC. Le chiffrement se fait comme suit (illustré par la figure 5.8) : 1. Les données sont découpées en blocs de taille fixe M 0,..., M n 1 avec un remplissage selon la norme PKCS#7 pour le dernier bloc, 2. Soit C 0 = 0 un ve eur d initialisation, 3. Les blocs sont traités au fur et à mesure : C i+1 = E k (C i M i ) Le code d authentification correspond à une partie du dernier bloc chiffré C n 1 (extra ion de 16 à 64 bits dans le standard du NIST). FIGURE 5.9 CBC-MAC avec chiffrement du dernier bloc. Sécurité informatique

Chap. I : Introduction à la sécurité informatique

Chap. I : Introduction à la sécurité informatique UMR 7030 - Université Paris 13 - Institut Galilée Cours Sécrypt Les exigences de la sécurité de l information au sein des organisations ont conduit à deux changements majeurs au cours des dernières décennies.

Plus en détail

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux Chapitre 7 Sécurité des réseaux Services, attaques et mécanismes cryptographiques Hdhili M.H Cours Administration et sécurité des réseaux 1 Partie 1: Introduction à la sécurité des réseaux Hdhili M.H Cours

Plus en détail

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI Cryptologie Algorithmes à clé publique Jean-Marc Robert Génie logiciel et des TI Plan de la présentation Introduction Cryptographie à clé publique Les principes essentiels La signature électronique Infrastructures

Plus en détail

Systèmes et algorithmes répartis

Systèmes et algorithmes répartis Systèmes et algorithmes répartis Tolérance aux fautes Philippe Quéinnec Département Informatique et Mathématiques Appliquées ENSEEIHT 4 novembre 2014 Systèmes et algorithmes répartis V 1 / 45 plan 1 Sûreté

Plus en détail

Sécurité informatique

Sécurité informatique Université Kasdi Merbah Ouargla Département informatique Introduction : généralités sur la sécurité informatique et motivations Octobre 2014 1- Généralités : concepts de base et motivations Sécurité des

Plus en détail

s é c u r i t é Conférence animée par Christophe Blanchot

s é c u r i t é Conférence animée par Christophe Blanchot s é c u r i t é i n f o r m a t i q u e La sécurité des systèmes d information Conférence animée par Christophe Blanchot Tour de table Présentation Nom, prénom, promotion Entreprise et fonction Expérience(s)

Plus en détail

Travail d intérêt personnel encadré : La cryptographie

Travail d intérêt personnel encadré : La cryptographie DÉCAMPS Régis & JUÈS Thomas 110101 111011 111001 111100 100011 001111 001110 110111 111011 111111 011111.......... 011111 110101 110100 011110 001111 000110 101111 010100 011011 100110 101111 010110 101010

Plus en détail

I.1. Chiffrement I.1.1 Chiffrement symétrique I.1.2 Chiffrement asymétrique I.2 La signature numérique I.2.1 Les fonctions de hachage I.2.

I.1. Chiffrement I.1.1 Chiffrement symétrique I.1.2 Chiffrement asymétrique I.2 La signature numérique I.2.1 Les fonctions de hachage I.2. DTIC@Alg 2012 16 et 17 mai 2012, CERIST, Alger, Algérie Aspects techniques et juridiques de la signature électronique et de la certification électronique Mohammed Ouamrane, Idir Rassoul Laboratoire de

Plus en détail

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Cryptographie. Cours 3/8 - Chiffrement asymétrique Cryptographie Cours 3/8 - Chiffrement asymétrique Plan du cours Différents types de cryptographie Cryptographie à clé publique Motivation Applications, caractéristiques Exemples: ElGamal, RSA Faiblesses,

Plus en détail

Fonction de hachage et signatures électroniques

Fonction de hachage et signatures électroniques Université de Limoges, XLIM-DMI, 123, Av. Albert Thomas 87060 Limoges Cedex France 05.55.45.73.10 pierre-louis.cayrel@xlim.fr Licence professionnelle Administrateur de Réseaux et de Bases de Données IUT

Plus en détail

Cours 14. Crypto. 2004, Marc-André Léger

Cours 14. Crypto. 2004, Marc-André Léger Cours 14 Crypto Cryptographie Définition Science du chiffrement Meilleur moyen de protéger une information = la rendre illisible ou incompréhensible Bases Une clé = chaîne de nombres binaires (0 et 1)

Plus en détail

Qu est-ce qu un système d Information? 1

Qu est-ce qu un système d Information? 1 Qu est-ce qu un système d Information? 1 Une définition du système d information «Tout moyen dont le fonctionnement fait appel à l électricité et qui est destiné à élaborer, traiter, stocker, acheminer,

Plus en détail

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie CRYPTOGRAPHIE Chiffrement par flot E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr CHIFFREMENT PAR FLOT Chiffrement par flot Chiffrement RC4 Sécurité du Wi-fi Chiffrement

Plus en détail

INF 4420: Sécurité Informatique Cryptographie II

INF 4420: Sécurité Informatique Cryptographie II : Cryptographie II José M. Fernandez M-3106 340-4711 poste 5433 Aperçu Crypto II Types de chiffrement Par bloc vs. par flux Symétrique vs. asymétrique Algorithmes symétriques modernes DES AES Masque jetable

Plus en détail

Malveillances Téléphoniques

Malveillances Téléphoniques 28/11/03 1 Malveillances Téléphoniques Risques et parades Conférence CLUSIF réalisée par la société Membre ERCOM 28/11/03 2 Introduction Constat : Après la sécurité informatique, l'entreprise découvre

Plus en détail

Cryptographie et fonctions à sens unique

Cryptographie et fonctions à sens unique Cryptographie et fonctions à sens unique Pierre Rouchon Centre Automatique et Systèmes Mines ParisTech pierre.rouchon@mines-paristech.fr Octobre 2012 P.Rouchon (Mines ParisTech) Cryptographie et fonctions

Plus en détail

Sécurité des systèmes informatiques Introduction

Sécurité des systèmes informatiques Introduction Année 2008-2009 Sécurité des systèmes informatiques Introduction Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.esil.perso.univmed.fr 1 Système d'information et système informatique

Plus en détail

ÉPREUVE COMMUNE DE TIPE 2008 - Partie D

ÉPREUVE COMMUNE DE TIPE 2008 - Partie D ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE

Plus en détail

Maîtriser les risques au sein d une d PMI. Comment une PME-PMI peut-elle faire face à ses enjeux en toutes circonstances?

Maîtriser les risques au sein d une d PMI. Comment une PME-PMI peut-elle faire face à ses enjeux en toutes circonstances? Maîtriser les risques au sein d une d PME-PMI PMI Comment une PME-PMI peut-elle faire face à ses enjeux en toutes circonstances? Ces documents demeurent la propriété du cercle GASPAR Techdays MICROSOFT

Plus en détail

Politique de sécurité de l information

Politique de sécurité de l information 5, Place Ville Marie, bureau 800, Montréal (Québec) H3B 2G2 T. 514 288.3256 1 800 363.4688 Téléc. 514 843.8375 www.cpaquebec.ca Politique de sécurité de l information Émise par la Direction, Gestion des

Plus en détail

TECHNIQUES DE CRYPTOGRAPHIE

TECHNIQUES DE CRYPTOGRAPHIE Jonathan BLANC Enseignant : Sandrine JULIA Adrien DE GEORGES Année universitaire 23/24 Licence Informatique TECHNIQUES DE CRYPTOGRAPHIE - - TABLE DES MATIERES INTRODUCTION 3. TECHNIQUES DE CRYPTOGRAPHIE

Plus en détail

Gestion des clés cryptographiques

Gestion des clés cryptographiques PREMIER MINISTRE Secrétariat général de la défense nationale Direction centrale de la sécurité des systèmes d information Paris, le 28 mars 2006 N 724/SGDN/DCSSI/SDS/AsTeC Gestion des clés cryptographiques

Plus en détail

Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises. La banque en ligne et le protocole TLS : exemple

Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises. La banque en ligne et le protocole TLS : exemple Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises La banque en ligne et le protocole TLS : exemple 1 Introduction Définition du protocole TLS Transport Layer Security

Plus en détail

Solution de sauvegarde pour flotte nomade

Solution de sauvegarde pour flotte nomade Solution de sauvegarde pour flotte nomade > PRÉSENTATION D OODRIVE > Les enjeux LA SOLUTION > La solution AdBackup Laptop > Sécurité et options de protection > Monitoring et services > Hébergement (mode

Plus en détail

La sécurité des systèmes d information

La sécurité des systèmes d information Ntic consultant contact@ntic-consultant.fr 02 98 89 04 89 www.ntic-consultant.fr La sécurité des systèmes d information Ce document intitulé «La sécurité des systèmes d information» est soumis à la licence

Plus en détail

SECURITE DES SYSTEMES D INFORMATION COURS 2 ème partie Sûreté ou sécurité? Sécurité : ensemble des éléments permettant d établir la confiance dans un système, un environnement, etc. (se sentir en sécurité)

Plus en détail

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références 2 http://securit.free.fr Introduction aux concepts de PKI Page 1/20

Plus en détail

Management de la sécurité des technologies de l information

Management de la sécurité des technologies de l information Question 1 : Identifiez les causes d expansion de la cybercriminalité Internet est un facteur de performance pour le monde criminel. Par sa nature même et ses caractéristiques, le monde virtuel procure

Plus en détail

Gestion des incidents

Gestion des incidents HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Gestion des incidents liés à la sécurité de l'information Conférence

Plus en détail

CHARTE INFORMATIQUE LGL

CHARTE INFORMATIQUE LGL CHARTE INFORMATIQUE LGL Selon la réglementation indiquée dans la charte informatique du CNRS, tout accès aux ressources informatiques du LGLTPE nécessite une authentification des personnels. Cette authentification

Plus en détail

0x700. Cryptologie. 2012 Pearson France Techniques de hacking, 2e éd. Jon Erickson

0x700. Cryptologie. 2012 Pearson France Techniques de hacking, 2e éd. Jon Erickson 0x700 Cryptologie La cryptologie est une science qui englobe la cryptographie et la cryptanalyse. La cryptographie sous-tend le processus de communication secrète à l aide de codes. La cryptanalyse correspond

Plus en détail

Livre blanc. Sécuriser les échanges

Livre blanc. Sécuriser les échanges Livre blanc d information Sécuriser les échanges par emails Octobre 2013 www.bssi.fr @BSSI_Conseil «Sécuriser les échanges d information par emails» Par David Isal Consultant en Sécurité des Systèmes d

Plus en détail

Aristote Groupe PIN. Utilisations pratiques de la cryptographie. Frédéric Pailler (CNES) 13 janvier 2009

Aristote Groupe PIN. Utilisations pratiques de la cryptographie. Frédéric Pailler (CNES) 13 janvier 2009 Aristote Groupe PIN Utilisations pratiques de la cryptographie Frédéric Pailler (CNES) 13 janvier 2009 Objectifs Décrire les techniques de cryptographie les plus courantes Et les applications qui les utilisent

Plus en détail

Cryptologie à clé publique

Cryptologie à clé publique Cryptologie à clé publique La cryptologie est partout Chacun utilise de la crypto tous les jours sans forcément sans rendre compte en : - téléphonant avec un portable - payant avec sa carte bancaire -

Plus en détail

AdBackup Laptop. Solution de sauvegarde pour flotte nomade. Société Oodrive www.adbackup-corporatesolutions.com

AdBackup Laptop. Solution de sauvegarde pour flotte nomade. Société Oodrive www.adbackup-corporatesolutions.com AdBackup Laptop Solution de sauvegarde pour flotte nomade Société Oodrive www.adbackup-corporatesolutions.com Sommaire Présentation d Oodrive...3 Carte d identité...3 Références clients...3 Les enjeux...4

Plus en détail

CONDITIONS GENERALES D'UTILISATION DU LOGICIEL SYNCHRONISATION ET PARTAGEUBIKUBE / B CLOUD

CONDITIONS GENERALES D'UTILISATION DU LOGICIEL SYNCHRONISATION ET PARTAGEUBIKUBE / B CLOUD o CONDITIONS GENERALES D'UTILISATION DU LOGICIEL SYNCHRONISATION ET PARTAGEUBIKUBE / B CLOUD Conditions Générales de Vente et d Utilisation du Service B CLOUD Les présents termes et conditions sont conclus

Plus en détail

Sécurité des Systèmes d Information Une politique simple pour parler à la Direction Générale De la théorie à la pratique

Sécurité des Systèmes d Information Une politique simple pour parler à la Direction Générale De la théorie à la pratique Sécurité des Systèmes d Information Une politique simple pour parler à la Direction Générale De la théorie à la pratique Sommaire Fondements d une politique de sécurité Les 9 axes parallèles d une politique

Plus en détail

Les Protocoles de sécurité dans les réseaux WiFi. Ihsane MOUTAIB & Lamia ELOFIR FM05

Les Protocoles de sécurité dans les réseaux WiFi. Ihsane MOUTAIB & Lamia ELOFIR FM05 Les Protocoles de sécurité dans les réseaux WiFi Ihsane MOUTAIB & Lamia ELOFIR FM05 PLAN Introduction Notions de sécurité Types d attaques Les solutions standards Les solutions temporaires La solution

Plus en détail

Stratégie nationale en matière de cyber sécurité

Stratégie nationale en matière de cyber sécurité Stratégie nationale en matière de cyber sécurité 1 INTRODUCTION Le fonctionnement de notre société est aujourd hui étroitement lié aux infrastructures et systèmes de communication et de traitement de l

Plus en détail

CRYPTOGRAPHIE. Signature électronique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie

CRYPTOGRAPHIE. Signature électronique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie CRYPTOGRAPHIE Signature électronique E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr I. SIGNATURE ÉLECTRONIQUE I.1. GÉNÉRALITÉS Organisation de la section «GÉNÉRALITÉS»

Plus en détail

Sécurité informatique: introduction

Sécurité informatique: introduction Sécurité informatique: introduction Renaud Tabary: tabary@enseirb.fr 2008-2009 Plan 1 Généralités 2 3 Définition de la sécurité informatique Definition Information security is the protection of information

Plus en détail

Signatures électroniques dans les applications INTERNET

Signatures électroniques dans les applications INTERNET ECOLE ROYALE MILITAIRE 156 e Promotion Polytechnique Lieutenant-Général Baron de GREEF Année académique 2005 2006 3 ème épreuve Signatures électroniques dans les applications INTERNET Par le Sous-lieutenant

Plus en détail

L analyse de risques avec MEHARI

L analyse de risques avec MEHARI L analyse de risques avec MEHARI Conférence Clusif : MEHARI 2010 Marc Touboul - marc.touboul@bull.net Responsable du Pôle Conseil Organisation SSI Bull, 2010 agenda Bull Pôle Conseil SSI Un exemple de

Plus en détail

SOLUTIONS DE SECURITE DU DOCUMENT DES SOLUTIONS EPROUVEES POUR UNE SECURITE SANS FAILLE DE VOTRE SYSTEME MULTIFONCTIONS SHARP DOCUMENT SOLUTIONS

SOLUTIONS DE SECURITE DU DOCUMENT DES SOLUTIONS EPROUVEES POUR UNE SECURITE SANS FAILLE DE VOTRE SYSTEME MULTIFONCTIONS SHARP DOCUMENT SOLUTIONS SOLUTIONS DE SECURITE DU DOCUMENT DES SOLUTIONS EPROUVEES POUR UNE SECURITE SANS FAILLE DE VOTRE SYSTEME MULTIFONCTIONS SHARP DOCUMENT SOLUTIONS DES RESEAUX D ENTREPRISE SO Une sécurité réseau déficiente

Plus en détail

Calculateur quantique: factorisation des entiers

Calculateur quantique: factorisation des entiers Calculateur quantique: factorisation des entiers Plan Introduction Difficulté de la factorisation des entiers Cryptographie et la factorisation Exemple RSA L'informatique quantique L'algorithme quantique

Plus en détail

Authentification de messages et mots de passe

Authentification de messages et mots de passe Sébastien Gambs Autour de l authentification : cours 1 1 et mots de passe Sébastien Gambs sgambs@irisa.fr 1 décembre 2014 Sébastien Gambs Autour de l authentification : cours 1 2 Introduction à l authentification

Plus en détail

Journées MATHRICE "Dijon-Besançon" DIJON 15-17 mars 2011. Projet MySafeKey Authentification par clé USB

Journées MATHRICE Dijon-Besançon DIJON 15-17 mars 2011. Projet MySafeKey Authentification par clé USB Journées MATHRICE "Dijon-Besançon" DIJON 15-17 mars 2011 1/23 Projet MySafeKey Authentification par clé USB Sommaire 2/23 Introduction Authentification au Système d'information Problématiques des mots

Plus en détail

La sécurité des PABX IP. Panorama des risques et introduction des mesures de protection

La sécurité des PABX IP. Panorama des risques et introduction des mesures de protection La sécurité des PABX IP Panorama des risques et introduction des mesures de protection Marc LEFEBVRE Consultant Sécurité Orange Consulting - 25 avril 2013 Consulting Services cybersécurité by Orange unité

Plus en détail

Cryptographie appliquée

Cryptographie appliquée Cryptographie appliquée Les bases de la cryptographie et ses applications 5INFO INSA m2ri réseau et sécurité Stage sécurité ENSTB 15 mai 2007 1 Grandes idées Cryptographie ancienne : les bases César, Vigenère,

Plus en détail

La sécurité informatique d'un centre d imagerie médicale Les conseils de la CNIL. Dr Hervé LECLET. Santopta

La sécurité informatique d'un centre d imagerie médicale Les conseils de la CNIL. Dr Hervé LECLET. Santopta La sécurité informatique d'un centre d imagerie médicale Les conseils de la CNIL Dr Hervé LECLET Tous les centres d'imagerie médicale doivent assurer la sécurité informatique de leur système d'information

Plus en détail

Sécurité de l'information

Sécurité de l'information Sécurité de l'information Sylvain Duquesne Université Rennes 1, laboratoire de Mathématiques 24 novembre 2010 Les Rendez-Vous Mathématiques de l'irem S. Duquesne (Université Rennes 1) Sécurité de l'information

Plus en détail

Sécurité des réseaux IPSec

Sécurité des réseaux IPSec Sécurité des réseaux IPSec A. Guermouche A. Guermouche Cours 4 : IPSec 1 Plan 1. A. Guermouche Cours 4 : IPSec 2 Plan 1. A. Guermouche Cours 4 : IPSec 3 Pourquoi? Premier constat sur l aspect critique

Plus en détail

La sécurité des réseaux

La sécurité des réseaux Reseaux-CH-10 Page 1 Mercredi, 8. novembre 2006 9:49 09 La sécurité des réseaux 10 Chapitre 1. Gestion de la sécurité...260 2. Aspects opérationnels de la sécurité...269 3. Sécurité dans les réseaux sans

Plus en détail

Protocoles cryptographiques

Protocoles cryptographiques MGR850 Hiver 2014 Protocoles cryptographiques Hakima Ould-Slimane Chargée de cours École de technologie supérieure (ÉTS) Département de génie électrique 1 Plan Motivation et Contexte Notations Protocoles

Plus en détail

Konica Minolta, un leader aux standards de sécurité les plus élevés du marché

Konica Minolta, un leader aux standards de sécurité les plus élevés du marché SéCURITé Konica Minolta, un leader aux standards de sécurité les plus élevés du marché A l ère du numérique, les communications mondiales connaissent une croissance sans précédent, et les risques de failles

Plus en détail

INF 1160 Les réseaux d entreprise

INF 1160 Les réseaux d entreprise INF 1160 Les réseaux d entreprise Politique sur la sécurité du réseau Termes de référence Quelques définitions pour parler le même langage SINISTRES : Événements liés aux caprices de la nature ou aux bâtiments.

Plus en détail

L hygiène informatique en entreprise Quelques recommandations simples

L hygiène informatique en entreprise Quelques recommandations simples L hygiène informatique en entreprise Quelques recommandations simples Avant-propos à destination des décideurs Les formidables développements de l informatique et d Internet ont révolutionné nos manières

Plus en détail

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.

Plus en détail

La sécurité dans les grilles

La sécurité dans les grilles La sécurité dans les grilles Yves Denneulin Laboratoire ID/IMAG Plan Introduction les dangers dont il faut se protéger Les propriétés à assurer Les bases de la sécurité Protocoles cryptographiques Utilisation

Plus en détail

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE Michel Rigo http://www.discmath.ulg.ac.be/ Année 2007 2008 CRYPTOGRAPHIE. N. F. Art d écrire en chiffres ou d une façon secrète quelconque. Ensemble

Plus en détail

Les fonctions de hachage, un domaine à la mode

Les fonctions de hachage, un domaine à la mode Les fonctions de hachage, un domaine à la mode JSSI 2009 Thomas Peyrin (Ingenico) 17 mars 2009 - Paris Outline Qu est-ce qu une fonction de hachage Comment construire une fonction de hachage? Les attaques

Plus en détail

DNS : types d attaques et. techniques de. sécurisation. Le DNS (Domain Name System), un élément essentiel de l infrastructure Internet

DNS : types d attaques et. techniques de. sécurisation. Le DNS (Domain Name System), un élément essentiel de l infrastructure Internet DNS : types d attaques et techniques de sécurisation Présentation du DNS (Domain Name System) Les grands types d attaques visant le DNS et les noms de domaine Les principales techniques de sécurisation

Plus en détail

Principes de la sécurité informatique

Principes de la sécurité informatique Principes de la sécurité informatique Omar Cheikhrouhou Abderrahmen Guermazi ISET SFAX ISET SFAX Omar Cheikhrouhou 1 Sécurité de quoi? des systèmes (machines) et des informations qu elles contiennent Sécurité

Plus en détail

Atelier A 26. Les Risques liés aux Systèmes d Information : comment les approcher, en avoir une vision objective et challenger les DSI?

Atelier A 26. Les Risques liés aux Systèmes d Information : comment les approcher, en avoir une vision objective et challenger les DSI? Atelier A 26 Les Risques liés aux Systèmes d Information : comment les approcher, en avoir une vision objective et challenger les DSI? Intervenants Julien CAMUS Deputy Risk & Insurance Manager jcamus@paris.oilfield.slb.com

Plus en détail

Demande d ouverture de compte auprès d ISAN Canada

Demande d ouverture de compte auprès d ISAN Canada Demande d ouverture de compte auprès d ISAN Canada Are *: 1. Renseignements de base au sujet du demandeur Nom complet : (ci-après l «utilisateur») Acronyme qui vous désigne de manière courante (s il y

Plus en détail

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1 Cryptographie RSA Introduction Opérations Attaques Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1 Introduction Historique: Rivest Shamir Adleman ou RSA est un algorithme asymétrique de cryptographie à clé

Plus en détail

DNSSEC. Introduction. les extensions de sécurité du DNS. Les dossiers thématiques de l AFNIC. 1 - Organisation et fonctionnement du DNS

DNSSEC. Introduction. les extensions de sécurité du DNS. Les dossiers thématiques de l AFNIC. 1 - Organisation et fonctionnement du DNS Les dossiers thématiques de l AFNIC DNSSEC les extensions de sécurité du DNS 1 - Organisation et fonctionnement du DNS 2 - Les attaques par empoisonnement de cache 3 - Qu est-ce que DNSSEC? 4 - Ce que

Plus en détail

Industrie des cartes de paiement (PCI) Norme de sécurité des données Récapitulatif des modifications de

Industrie des cartes de paiement (PCI) Norme de sécurité des données Récapitulatif des modifications de Industrie des cartes de paiement (PCI) Norme de sécurité des données Récapitulatif des modifications de la norme PCI DSS entre les versions 2.0 et 3.0 Novembre 2013 Introduction Ce document apporte un

Plus en détail

La sécurité informatique

La sécurité informatique La sécurité informatique SOMMAIRE 1. Présentation générale a. La SARL Invesys b. Pourquoi la sécurité informatique? c. Qu est-ce qu un audit de sécurité? 2. Espionnage industriel a. Définition b. Enjeux

Plus en détail

Université d Aix-Marseille Master Réseaux & Télécoms Cryptographie

Université d Aix-Marseille Master Réseaux & Télécoms Cryptographie Université d Aix-Marseille Master Réseaux & Télécoms Cryptographie Semestre 2 Exercices et corrections pour le TD 5 2014 2015 Rappeler les initialisations pour ce cours : CRYPTO = "http://iml.univ-mrs.fr/~kohel/tch/crypto/"

Plus en détail

VIGIPIRATE PARTIE PUBLIQUE OBJECTIFS DE CYBERSÉCURITÉ

VIGIPIRATE PARTIE PUBLIQUE OBJECTIFS DE CYBERSÉCURITÉ VIGIPIRATE PARTIE PUBLIQUE OBJECTIFS DE CYBERSÉCURITÉ Édition du 27 février 2014 INTRODUCTION 5 1 / PILOTER LA GOUVERNANCE DE LA CYBERSÉCURITÉ 7 1.1 / Définir une stratégie de la cybersécurité 8 1.1.1

Plus en détail

INDICATIONS DE CORRECTION

INDICATIONS DE CORRECTION SUJET NATIONAL POUR L ENSEMBLE DES CENTRES DE GESTION ORGANISATEURS TECHNICIEN TERRITORIAL PRINCIPAL DE 2 ème CLASSE SESSION 2014 EPREUVE Rédaction d un rapport technique portant sur la spécialité au titre

Plus en détail

l informatique est vitale pour mon activité je protège mon matériel et mon entreprise

l informatique est vitale pour mon activité je protège mon matériel et mon entreprise entreprises l informatique est vitale pour mon activité je protège mon matériel et mon entreprise offre IT la Tous Risques Informatiques l informatique est omniprésente dans le monde des entreprises Une

Plus en détail

IMPLANTATION D UN SYSTÈME DE GESTION ÉLECTRONIQUE :

IMPLANTATION D UN SYSTÈME DE GESTION ÉLECTRONIQUE : IMPLANTATION D UN SYSTÈME DE GESTION ÉLECTRONIQUE : SPÉCIFICATIONS TECHNIQUES À L INTENTION DES AGENCES ET COURTIERS À LEUR COMPTE IMPORTANT L OACIQ se réserve le droit de modifier ses exigences en fonction

Plus en détail

Recommandations pour les entreprises qui envisagent de souscrire à des services de Cloud computing

Recommandations pour les entreprises qui envisagent de souscrire à des services de Cloud computing Recommandations pour les entreprises qui envisagent de souscrire à des services de Cloud computing D un point de vue juridique, la CNIL constate que le Cloud computing soulève un certain nombre de difficultés

Plus en détail

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Petite introduction aux protocoles cryptographiques. Master d informatique M2 Petite introduction aux protocoles cryptographiques Master d informatique M2 Les protocoles cryptographiques p.1/48-1 Internet - confidentialité - anonymat - authentification (s agit-il bien de ma banque?)

Plus en détail

Protocoles d authentification

Protocoles d authentification Sécurité des Réseaux, Master CSI 2 J.Bétréma, LaBRI, Université Bordeaux 1 Protocoles d authentification 1. Authentification simple 2. Authentification mutuelle 3. Clé de session 4. KDC Source 1. Authentification

Plus en détail

Authentification. Règles et recommandations concernant les mécanismes d authentification de niveau de robustesse standard

Authentification. Règles et recommandations concernant les mécanismes d authentification de niveau de robustesse standard PREMIER MINISTRE Secrétariat général de la défense nationale Direction centrale de la sécurité des systèmes d information Paris, le 12 avril 2007 N 729/SGDN/DCSSI/SDS/AsTeC Authentification Règles et recommandations

Plus en détail

SSL ET IPSEC. Licence Pro ATC Amel Guetat

SSL ET IPSEC. Licence Pro ATC Amel Guetat SSL ET IPSEC Licence Pro ATC Amel Guetat LES APPLICATIONS DU CHIFFREMENT Le protocole SSL (Secure Socket Layer) La sécurité réseau avec IPSec (IP Security Protocol) SSL - SECURE SOCKET LAYER Historique

Plus en détail

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI INSA

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI INSA HERÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI INSA Gestion des risques SSI dans les projets Julien Levrard

Plus en détail

LES SECURITES DE LA CARTE BANCAIRE

LES SECURITES DE LA CARTE BANCAIRE Projet tutoré 2007 TENEUR Jérôme Groupe: III MAHIEU Maxime Année 2006 / 2007 BINARD Romain RTFI1A LES SECURITES DE LA CARTE BANCAIRE 1 SOMMAIRE I - Introduction II - Le chiffrement symétrique 1 - Les principes

Plus en détail

Les principes de la sécurité

Les principes de la sécurité Les principes de la sécurité Critères fondamentaux Master 2 Professionnel Informatique 1 Introduction La sécurité informatique est un domaine vaste qui peut appréhender dans plusieurs domaines Les systèmes

Plus en détail

Le protocole SSH (Secure Shell)

Le protocole SSH (Secure Shell) Solution transparente pour la constitution de réseaux privés virtuels (RPV) INEO.VPN Le protocole SSH (Secure Shell) Tous droits réservés à INEOVATION. INEOVATION est une marque protégée PLAN Introduction

Plus en détail

Signature électronique. Romain Kolb 31/10/2008

Signature électronique. Romain Kolb 31/10/2008 Romain Kolb 31/10/2008 Signature électronique Sommaire I. Introduction... 3 1. Motivations... 3 2. Définition... 3 3. La signature électronique en bref... 3 II. Fonctionnement... 4 1. Notions requises...

Plus en détail

Le Passeport Biométrique. Benoit LEGER CISSP ISO 27001-LD

Le Passeport Biométrique. Benoit LEGER CISSP ISO 27001-LD Le Passeport Biométrique Benoit LEGER CISSP ISO 27001-LD Il ne faut pas confondre le vol de titres vierges la contrefaçon (imitation d'un titre officiel) la falsification (modification des données d'un

Plus en détail

Steganos présente Security Suite 2007, son incontournable suite de sécurité pour PC.

Steganos présente Security Suite 2007, son incontournable suite de sécurité pour PC. Communiqué de Presse 20 décembre 2006 Steganos présente Security Suite 2007, son incontournable suite de sécurité pour PC. Une protection absolue contre toute intrusion dans votre vie privée! Vos documents

Plus en détail

ITIL V3. Les processus de la conception des services

ITIL V3. Les processus de la conception des services ITIL V3 Les processus de la conception des services Création : juillet 2011 Mise à jour : juillet 2011 A propos A propos du document Ce document de référence sur le référentiel ITIL V3 a été réalisé en

Plus en détail

Conditions d utilisation du BCV-net

Conditions d utilisation du BCV-net Conditions d utilisation du BCV-net 1. Le service BCV-net (ci-après le «BCV-net») en général Lors de l acceptation par la Banque Cantonale Vaudoise (ci-après la Banque) de la demande d adhésion au BCV-net

Plus en détail

Attaques ciblées : quelles évolutions dans la gestion de la crise?

Attaques ciblées : quelles évolutions dans la gestion de la crise? 3 avril 2012 Attaques ciblées : quelles évolutions dans la gestion de la crise? Une nécessaire refonte des fondamentaux Gérôme BILLOIS gerome.billois@solucom.fr Twitter: @gbillois Frédéric CHOLLET frederic.chollet@solucom.fr

Plus en détail

TIW4 : SÉCURITÉ DES SYSTÈMES D INFORMATION

TIW4 : SÉCURITÉ DES SYSTÈMES D INFORMATION TIW4 : SÉCURITÉ DES SYSTÈMES D INFORMATION PROTECTION CRYPTOGRAPHIQUE romuald.thion@univ-lyon1.fr http://liris.cnrs.fr/~rthion/dokuwiki/enseignement:tiw4 Master «Technologies de l Information» Romuald

Plus en détail

Devoir Surveillé de Sécurité des Réseaux

Devoir Surveillé de Sécurité des Réseaux Année scolaire 2009-2010 IG2I L5GRM Devoir Surveillé de Sécurité des Réseaux Enseignant : Armand Toguyéni Durée : 2h Documents : Polycopiés de cours autorisés Note : Ce sujet comporte deux parties. La

Plus en détail

Certificats X509 & Infrastructure de Gestion de Clés. Claude Gross CNRS/UREC

Certificats X509 & Infrastructure de Gestion de Clés. Claude Gross CNRS/UREC Certificats X509 & Infrastructure de Gestion de Clés Claude Gross CNRS/UREC 1 Confiance et Internet Comment établir une relation de confiance indispensable à la réalisation de transaction à distance entre

Plus en détail

Découvrez Kaspersky. Small Office Security TPE PME GUIDE DE LA SÉCURITÉ INFORMATIQUE

Découvrez Kaspersky. Small Office Security TPE PME GUIDE DE LA SÉCURITÉ INFORMATIQUE Découvrez Kaspersky Small Office Security TPE PME GUIDE DE LA SÉCURITÉ INFORMATIQUE Sommaire Pourquoi est-il important pour une TPE/PME d acquérir une protection efficace? Pages 04-05 10 idées reçues à

Plus en détail

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE sommaire MIEUX COMPRENDRE LES CERTIFICATS SSL...1 SSL et certificats SSL : définition...1

Plus en détail

Concilier mobilité et sécurité pour les postes nomades

Concilier mobilité et sécurité pour les postes nomades Concilier mobilité et sécurité pour les postes nomades Gérard Péliks Responsable Marketing Solutions de Sécurité EADS TELECOM 01 34 60 88 82 gerard.peliks@eads-telecom.com Pouvoir utiliser son poste de

Plus en détail

Formation en Sécurité Informatique

Formation en Sécurité Informatique Formation en Sécurité Informatique FreeWays Security Club MAIL: KHALDIMEDAMINE@GMAIL.COM Contenu 1- Comprendre le terrain 2- Metasploit 3- NeXpose a- Installation du serveur NeXpose b- IHM de la console

Plus en détail

TP 2 : Chiffrement par blocs

TP 2 : Chiffrement par blocs USTL - Licence et Master Informatique 2006-2007 Principes et Algorithmes de Cryptographie TP 2 : Chiffrement par blocs Objectifs du TP utiliser openssl pour chiffrer/déchiffrer, étudier le remplissage

Plus en détail