Pr BELKHIR Abdelkader USTHB

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Cryptographie Systèmes symétriques et asymétriques
État de l’art de la sécurité informatique
Dr. M. Jarraya, Institut Supérieur d'Informatique
LA CERTIFICATION ELECTRONIQUE
Systèmes d ’Information :
M2: Fondements de la Sécurité :authentification
Algorithmes et structures de données avancés
LES PROTOCOLES DE SECURITE
Projet SeVeCom (Secure Vehicular Communications)
II. 2 Les protocoles simples Sommaire 1.Authentification 2.Signature électronique 3.Certification.
Courbes elliptiques.
Cryptographie basée sur les codes
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Identity-based identification and signature schemes using correcting codes. KLEIN Pauline - COUTUROU Jeanne.
Améliorer les performances du chiffrage à flot SYND
CryptoGraphy
Damier Alexandre Saccomani Thomas M2 MAIMIR CCS
INF4420: Sécurité Informatique
TRANSMISSION DES DONNEES.
Confidentialité II Systèmes à clé publique
? EPFL Playstations 3 Cryptologie Internet Sécurité Algorithme RSA
CERTIFICAT (SUPPLÉMENT) Ajout aux diapos du cours DRT-3808 (cryptographie)
Cryptographie Réalisé par TOUJENI Noura BEN SOUISSI Rania KARAOUD Imen
Empreinte d’un message La signature numérique
Intégrité II Les systèmes à clé publique
Chapitre 4 : Morphologie Mathématique
Introduction au calcul quantique
Institut Supérieur des Etudes Technologiques de Djerba Exposé du Traitement de Données Réalisé par: Khalifa Marwa Magroun Amira Jawadi Souad L2MDW.
Patrons de conceptions de créations
Exemple de mise en équation d’un système
RAPPEL Qu’est ce qu’une structure de contrôle itérative ?
Un peu de maths (et d’info)
Sujet à la mode Vrais services Le faire ou l’acheter : compréhension indispensable. Vers une PKI de l ’enseignement supérieur ?
Pr BELKHIR Abdelkader Master RSD Sécurité des systèmes informatiques
Gestion des clés cryptographiques
Le chiffrement asymétrique
Le chiffrement symétrique
DU1 Sécurité : DU Commerce Electronique Michel de Rougemont Université Paris II Les systèmes à clé publique: RSA.
La sécurité dans les réseaux mobiles Ad hoc
Le protocole d’authentification
Pr BELKHIR Abdelkader Master RSD Sécurité des systèmes informatiques
Sécurité Les Virus Logiciels non sollicités et réalisant des opérations malveillantes ou destructrices Typologie –D’application :introduit par recopie.
Les Algorithmes Cryptographiques Asymétriques
Introduction à la cryptographie
Programmation linéaire en nombres entiers
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
Arbres binaires et tables de hachage
Attaque du protocoles RSA Yoann Moulin ESISAR IR - P2004
Introduction classique Moderne Future … chiffrement par substitution
Cryptographie.
Confidentialité : L’encryptage
Réalisation d’un logiciel de Chiffrement RSA.
Structures de données avancées : LH* D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : MLH (Multidimensional linear hashing) D. E ZEGOUR Institut National d ’Informatique.
Résolution des équations différentielles
Chap.III Systèmes Cryptographiques Symétriques (à clé secrète)
Services et Mécanismes de base de la Cryptographie
XML Signature Yves MARCOUX GRDS 30 octobre © 2003 Yves MARCOUX - GRDS2 Plan Signature numérique: concepts de base XML Signature: objectifs Mécanique.
Objets et Actions Élémentaires.
PGP Pretty Good Privacy « Tu vois, c'est ça le problème avec les terroristes : ils n'ont aucun respect pour ta vie privée. » Arnold Schwarzenegger Thomas.
Nous allons traiter de la signature électronique.
Introduction à la cryptographie cours 2: Chiffrement par flot
Chap. 3 Récursion et induction. Les définitions par récurrence consistent à construire des objets finis, à partir d'autres, selon certaines règles. Les.
Chap.V RSA. I. Rappels Mathématiques La congruence Définition 1 a et b sont congrus modulo n s’ils ont même reste par la division par n. On note a≡b[n]
Présentation de HelloDoc Mail
CRYPTOGRAPHIE GENERALE CRYPTOGRAPHIE
FARAH.Z "Cours sécurité1" /2016
Transcription de la présentation:

Pr BELKHIR Abdelkader USTHB Signature Fonction de hachage Signatures numériques 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Objectifs Identification Authentification Signature 12/04/2017 Pr BELKHIR Abdelkader USTHB

Notion de fonction de hachage Définition (Fonction de Hachage) : Une fonction de hachage H est une application facilement calculable qui transforme une chaîne binaire de taille quelconque t en une chaîne binaire de taille fixe n; appelée empreinte de hachage. On parle de collision entre x et x′ lorsque x ≠ x′ et H(x) = H(x′) Si y est tel que y = H(x); alors x est appelé préimage de y 12/04/2017 Pr BELKHIR Abdelkader USTHB

Qu'est-ce qu'une fonction de hachage ? 12/04/2017 Pr BELKHIR Abdelkader USTHB

Propriétés des fonctions de hachage Propriétés de base : compression et facilité de calcul. Propriétés additionnelles : Resistance à la preimage : étant donné y, il est difficile de trouver x tel que y = H(x) Resistance à la seconde preimage : étant donné x, il est difficile de trouver x′ ≠ x tel que H(x) = H(x′) 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Historique des principales fonctions de hachage 1990 : MD4, Extended-MD4 1991 : MD5 1992 : HAVAL, RIPEMD 1993 : SHA 1994 : SHA-1 1996 : RIPEMD-128,160 1999 : Whirlpool-0 2002 : SHA-256,384,512, Whirlpool-T 2003 : SHA-224 2004 : Whirlpool 12/04/2017 Pr BELKHIR Abdelkader USTHB

Construction d'une fonction de hachage Définir une fonction de compression h Pour calculer l'empreinte d'un message M : Application d'un padding à M pour que │M│ = k*b bits Découpage du message M en blocs de tailles b M = M1M2…Mk-1Mk avec |Mi | = b i  [1, k] Itération de la fonction h (IV : Initial Value) : Exemples connus : MD5, SHA-1, SHA-2, Whirlpool... 12/04/2017 Pr BELKHIR Abdelkader USTHB

La fonction de compression de MD5 Propose par Rivest en 1991 Blocs de b = 512 bits, sortie de n = 128 bits 16 sous-blocs Mi de 32 bits 64 constantes fixées Ki 64 rondes sur 4 sous-blocs de 32 bits A;B; C;D 4 * 16 sous-rondes ou F prend les valeurs : F = (B AND C) OR (B AND D) F = (D AND B) OR (D AND C) F = B C D F = C (B OR D)) Sécurité de MD5 face aux collisions Force brute : O(264) (attaque anniversaire) MAIS collisions en O(242) [Wang04] puis O(230)[Sasaki05] MD5 n'est plus considérée comme sûr aujourd'hui 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB MD5 12/04/2017 Pr BELKHIR Abdelkader USTHB

La fonction de compression de MD5 12/04/2017 Pr BELKHIR Abdelkader USTHB

La fonction de compression de SHA-1 Publie dans FIPS PUB 180-1 par NIST en 1995 Blocs de b = 512 bits, sortie de n = 160 bits 16 sous-blocs Mi de 32 bits Etendus en 80 nouveaux blocs Wt 4 constantes fixées Kt 80 rondes sur 5 sous-blocs de 32 bits A,B,C,D,E 4 * 20 sous-rondes ou F prend les valeurs : 1. F = (B AND C) OR (B AND D) 2. F = B C D 3. F = (B AND C) (B AND D) (C AND D) 4. F = B C D Sécurité de SHA-1 face aux collisions Force brute : O(280) MAIS collisions possibles en O(263) 12/04/2017 Pr BELKHIR Abdelkader USTHB

La fonction de compression de SHA-256 Publie dans FIPS PUB 180-2 en 2000 Base sur le chiffrement à clé secrète par bloc Blocs de b = 512 bits, sortie de n = 256 bits 16 sous-blocs Mi de 32 bits Etendus en 64 nouveaux blocs Wt 64 constantes fixées Kt 64 rondes sur 8 sous-blocs de 32 bits Sécurité de SHA-256 Force brute : O(2128) (attaque anniversaire) Pas d'attaque connues pour le moment 12/04/2017 Pr BELKHIR Abdelkader USTHB

Signatures numériques But des signatures manuscrites : prouver l'identité de leur auteur et/ou l'accord du signataire avec le contenu du document La signature électronique dépend du signataire et du document Objectifs d'une signature électronique Une signature est authentique. Une signature ne peut être falsifiée (imitée). Une signature n'est pas réutilisable sur un autre document. Un document signe est inaltérable. Une signature ne peut pas être reniée. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Définitions Une signature digitale est produite par un algorithme de génération de signatures digitales et est vérifiée par un algorithme de vérification de signatures digitales Un schéma de signatures digitales consiste en un algorithme de génération de signatures digitales associé à son algorithme de vérification Il existe deux classes de schémas de signatures : avec appendice (où le message original doit être fournit à l’algorithme de vérification) et avec recouvrement (où le message original est récupéré à partir de la signature) 12/04/2017 Pr BELKHIR Abdelkader USTHB

Idée générale des signatures électroniques Réalisation pratique : Cryptosystèmes à clef secrète (et arbitre) Cryptosystèmes à clef publique + fonction de hachage On préfère signer le hachage d'un document Taille fixe suffisamment petite pour être utilisée efficacement par un cryptosystème à clef publique 12/04/2017 Pr BELKHIR Abdelkader USTHB

Idée générale des signatures électroniques Protocole de signature electronique sûr : Impossible de falsifier la signature s(M) d'un document M sans connaitre la clef secrète K (resp. Kd ) même en disposant de signatures d'autres documents. Attention : impossibilité pratique Il existe d'autres conditions nécessaires de sécurité ! relève davantage des architectures de sécurité des cryptosystèmes à clef publiques (PKI) ou du secret entourant la clef secrète. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Idée générale des signatures électroniques Signature utilisant un cryptosystème à clef publique : Alice signe M en utilisant : hM = H(M) le hachage de M sa clé secrète Kd . la fonction de déchiffrement D: Résultat : s(M) = DKd (hM) Document signe : [M, s(M)] Vérification de [M, s(M)] : utilise la clé publique Ke d'Alice et la fonction de chiffrement E EKe (s(M)) = hM =?H(M) Seule Alice a pu générer s(M) 12/04/2017 Pr BELKHIR Abdelkader USTHB

Idée générale des signatures électroniques 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature RSA Génération des paramètres Identique à la génération des clefs de RSA ! Alice choisit au hasard deux nombres premiers p et q. Alice calcule n = p.q Indicatrice d’Euler : (n) = (p − 1)(q − 1) Alice choisit au hasard un entier e (impair) tel que 1 < e < (n) et pgcd(e, (n)) = 1 Alice calcule alors l’entier d tel que e.d 1 mod (n). Clef publique : (n, e) Clef secrète : d On suppose disposer d’une fonction de hachage à sens unique H connue publiquement. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature RSA Génération d’une signature RSA Alice souhaite signer un document M Alice calcule hM = H(M) (on suppose 0 ≤ hM < n) Signature de M : s(M) = (hM)d mod n Le document signé est alors [M, s(M)]. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature El Gamal Génération des paramètres Alice choisit : un nombre premier p g une racine primitive modulo p. un entier a  {1, . . . , p − 2} au hasard Elle calcule alors A = ga mod p. Clef publique : (p, g, A). Clef secrète : a. On suppose disposer d’une fonction de hachage à sens unique H connue publiquement. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature El Gamal Génération d’une signature El Gamal Alice souhaite signer un document M Alice calcule hM = H(M) (on suppose 0 ≤ hM < p) Elle choisit au hasard un entier k  [1, p − 2] tel que pgcd(k, p − 1) = 1 ( k−1  Zp−1 existe). Signature de M : s(M) = (r , s) avec r = gk mod p s = k−1(hM − a.r ) mod (p − 1) Le document signé est alors [M, s(M)]. 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature El Gamal Vérification d’une signature El Gamal Bob reçoit un document signé [˜M , s(M)] d’Alice. Rappel : s(M) = (r , s) Ce document est potentiellement altéré/illégitime Il récupère la clé publique d’Alice (p, g, A) Il calcule ˜ hM = H(˜M ) Il vérifie l’identité : Ar rs  g h˜M mod p En effet, Ar rs  ga.r .gkk−1(hM−a.r ) mod p  ghM mod p Si le document est authentique : hM = h˜M  ghM  g h˜M mod p 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Signature El Gamal Vérification d’une signature El Gamal Bob reçoit un document signé [˜M , s(M)] d’Alice. Rappel : s(M) = (r , s) Ce document est potentiellement altéré/illégitime Il récupère la clé publique d’Alice (p, g, A) Il calcule ˜ hM = H(˜M ) Il vérifie l’identité : Ar rs  g h˜M mod p En effet, Ar rs  ga.r .gkk−1(hM−a.r ) mod p  ghM mod p Si le document est authentique : hM = h˜M  ghM  g h˜M mod p 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Le standard DSA Génération des paramètres Alice génère un nb premier q de 160 bits (2159 ≤ q < 2160) Elle génère un nb premier p de 512 à 1024 bits vérifiant : t  [0; 8]/2511+64t < p < 2512+64t et q │(p -1) cela assure que Fp possède un sous-groupe d'ordre q Soit g′ une racine primitive modulo p Un générateur du sous-groupe de F*p d'ordre q est alors 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Le standard DSA Génération des paramètres (suite) Une fois choisis (p; q; g) : Alice choisit a  {1, …, q -1} Elle calcule A = ga mod p Clef publique : (p, q, g, A): Clef secrète : a 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Le standard DSA Génération d'une signature DSA Alice souhaite signer un document M : Alice calcule hM = H(M) (on suppose 1 ≤ hM < q -1) Elle choisit un entier k  {1, …, q -1} Signature de M : s(M) = (r , s) avec r = (gk mod p) mod q et s = k-1(hM + a*r ) mod q Le document signé est alors [M; s(M)]: 12/04/2017 Pr BELKHIR Abdelkader USTHB

Pr BELKHIR Abdelkader USTHB Le standard DSA Vérification d'une signature DSA Bob reçoit un document signe [M′, s(M) = (r ; s)] d'Alice. Il récupère la clé publique d'Alice (p, q, g, A) Il vérifie que les formats sont respectés : 1 ≤ r ; s ≤ q -1 Il calcule hM′ = H(M′) Il vérifie l'identité : 12/04/2017 Pr BELKHIR Abdelkader USTHB