Primitives cryptographiques: Chiffrement, Signature...
Transcript of Primitives cryptographiques: Chiffrement, Signature...
-
RappelsConfidentialitéAuthenticité
Integrité
Primitives cryptographiques:Chiffrement, Signature électronique et Hachage
Anca [email protected]
Université Paris 13 Villetaneuse
Cours 318/01/2016
1/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Rappel Cours 1 et 2
CryptoCryptologie = science du secretCryptographie : l’art de rendreinintelligible, de crypter, de coder, unmessage pour ceux qui ne sont pashabilités à en prendre connaissance.Cryptosystèmes : mécanismesassurant le chiffrement des messagesCryptanalyse : art de "casser" descryptosystèmes
2/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Rappel Cours 1 et 2
ContexteDonnées informatiques
distribuées (réparties)reliées en réseauaccessibles de partout
Utilisateurs / servicesnombreux utilisateurs, besoins variésservices plus ou moins critiquesutilisateurs plus ou moins sensibilisés
Environnement hostilemenace diffuserisques multiples
3/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Propriétés
CryptographieConfidentialité
Authenticité Intégrité
Non-répudiation
4/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Propriétés
ConfidentialitéLe fait de s’assurer que l’information n’est seulement accessiblequ’à ceux dont l’accès est autorisé
AuthenticitéLe fait de s’assurer que l’expéditeur est bien celui qu’il prétend être
IntégritéLe fait de s’assurer que l’information ne subisse aucune altération oudestruction volontaire ou accidentelle, et conserve le format initial
5/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Propriétés
ConfidentialitéLe fait de s’assurer que l’information n’est seulement accessiblequ’à ceux dont l’accès est autorisé
AuthenticitéLe fait de s’assurer que l’expéditeur est bien celui qu’il prétend être
IntégritéLe fait de s’assurer que l’information ne subisse aucune altération oudestruction volontaire ou accidentelle, et conserve le format initial
5/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Propriétés
ConfidentialitéLe fait de s’assurer que l’information n’est seulement accessiblequ’à ceux dont l’accès est autorisé
AuthenticitéLe fait de s’assurer que l’expéditeur est bien celui qu’il prétend être
IntégritéLe fait de s’assurer que l’information ne subisse aucune altération oudestruction volontaire ou accidentelle, et conserve le format initial
5/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Confidentialité
ContexteS’assurer du caractère secret de l’information
Echange de messages en présence d’unespionStockage de données sécurisé
6/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Authenticité
ContexteS’assurer de la provenance d’un message et de l’authenticité de sonémetteur
7/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Intégrité
ContexteS’assurer de la non-modification d’un message
8/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Non-répudiation
d’originL’émetteur ne peut nier avoir écrit le message et il peut prouverqu’il ne l’a pas fait si c’est le cas
de réceptionLe receveur ne peut nier avoir reçu le message et il peut prouverqu’il ne l’a pas reçu si c’est effectivement le cas
de transmissionL’émetteur du message ne peut nier avoir envoyé le message et ilpeut prouver qu’il ne l’a pas fait si c’est le cas
9/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Non-répudiation
d’originL’émetteur ne peut nier avoir écrit le message et il peut prouverqu’il ne l’a pas fait si c’est le cas
de réceptionLe receveur ne peut nier avoir reçu le message et il peut prouverqu’il ne l’a pas reçu si c’est effectivement le cas
de transmissionL’émetteur du message ne peut nier avoir envoyé le message et ilpeut prouver qu’il ne l’a pas fait si c’est le cas
9/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Non-répudiation
d’originL’émetteur ne peut nier avoir écrit le message et il peut prouverqu’il ne l’a pas fait si c’est le cas
de réceptionLe receveur ne peut nier avoir reçu le message et il peut prouverqu’il ne l’a pas reçu si c’est effectivement le cas
de transmissionL’émetteur du message ne peut nier avoir envoyé le message et ilpeut prouver qu’il ne l’a pas fait si c’est le cas
9/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Cryptosystème
DéfinitionUn cryptosystème est un dictionnaire entre les messages en clair etles messages chiffrées.
10/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Cryptosystème
DéfinitionUn cryptosystème est un dictionnaire entre les messages en clair etles messages chiffrées.
10/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Cryptosystème
FormalisationDes ensembles finis• P les mots en clair• C les mots codés• K les clefsDes algorithmes• KG : 1→ K générateur de clés• E : K × P → C chiffrement• D : K × C → P dechiffrement
11/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Cryptosystème
ExempleLe chiffrement de Caesar peut être représenté enutilisant les congruences sur les entiers.
A = 0,B = 1,C = 2, ...,Y = 24,Z = 25
12/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffre de Caesar
• P = {0, 1, . . . 25}• C = {0, 1, . . . 25}• K = {0, 1, . . . 25}• Générer la clé = le décalageKG(1) = 3• Le chiffrement = la fonction quiajoute 3 à chaque lettre du messageE(Y ) = 24+ 3 = 1 = B mod 26E(B) = 1+ 3 = 4 = E mod 26• Le déchiffrement = la fonction quisoustrait 3D(Z ) = 25− 3 = 22 = W mod 26
13/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Cryptanalyse de chiffre de Caesar
Cryptanalyse
Recherche exhaustive :Nombre faible de clés possibles (26), on les essaye toutes jusqu’àtomber sur la bonne
FaiblesseChaque lettre est remplacée par une autre, toujours la memeL’ordre des lettres est conservé
Analyse des fréquences :L’exploitation des caractéristiques linguistiques (redondances,fréquences ) permet de cryptanalyser facilement ce type de schéma
14/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé secrète
Déscription
• La clé de chiffrement est la meme que la clé de déchiffrement (oudérivée).• Alice et Bob doit utiliser une clé secrète pour chiffrer et déchiffrerles messages.• L’ échange d’une clé secrète entre Alice et Bob est nécessaire.
15/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé secrète
16/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé secrète
Avantages
Systémes rapides (implantation matérielle)Clés relativement courtes (128 ou 256 bits)
Inconvénients
Gestion des clés diffcile (nombreuses clés)Point faible = échange d’un secret
17/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé secrète
ExemplesChiffrement par blocs :Les messages sont découpés en blocs
DES : blocs de 64 bits, clés de 56 bitsIDEA : blocs de 64 bits, clés de 128 bitsAES : blocs de 128 bits, clés de 128, 256 bits
Chiffrement par flots :Les données sont traitées en flux
Pseudo-Vernam : on XOR un pseudo-aléa au fluxRC4 : chiffrement octet par octet
18/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement sans échange des clés ?
19/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Difficulté
Construction impossible
Les deux clés (cadenas)NE commutent PAS !
(On doit respecter l’ordre duchiffrement)
20/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
21/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
Principe d’asymétrieUn système cryptographie à clé publique est en fait basé sur deuxclés :• Une clé publique :La clé de chiffrement peut être distribuée librement(comme un cadenas ouvert)• Une clé privée :La clé de déchiffrement est connue uniquement du receveur,(la clé sécrete qui ouvre le cadenas fermé)
22/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
FormalisationTrois algorithmes• Algorithme de génération des clés KG(`) = (pk, sk)à partir d’un paramètre de sécurité, il produit une paire de clés
• Algorithme de chiffrement E(pk,m) = cproduit le chiffré d’un message m, par la clé publique
• Algorithme de déchiffrement D(sk, c) = mutilise la clé sécrete/privée sk pour retrouver m à partir de c
23/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
Rémarques
La clé publique ne permet pas de déchiffrer (en particulier, ellene permet pas de retrouver la clé privée).N’importe qui peut chiffrer un message pour Bob, sans besoinde communication antérieure.
24/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
AvantagesLa clé privée ne quitte pas son propriétaire :
Gestion des secrets facilitéePas de secret à transmettre
InconvénientsLa relation clé publique/clé privée impose :
Des clés plus longues (1024 à 4096 bits)Des cryptosystèmes beaucoup plus lents qu’en symétriqueGestion de certiffcats de clés publiques
25/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Chiffrement à clé publique
Exemples
RSA (Rivest-Shamir-Adleman, 1978) :basé sur les racines modulaires et la decomposition en facteursprémiersElGamal (1984) :basé sur le logarithme discretMcEliece (1978) :basé sur les codes correcteursMerkle-Hellman (1978) :basé sur des problèmes combinatoires (sac-à-dos)Hidden Field Equation (Patarin, 1996) :basé sur les systèmes multivariables
26/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Signature électronique
27/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Signature électronique : idée générale
PropriétésReproduire les caractéristiques d’une signature manuscrite :
Lier un document à son autheurRendre la signature difficilement imitableResponsabilité de l’auteur (juridique)
28/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Les différents acteurs
Le SignataireDoit pouvoir facilement émettre des signatures en son nom
Le vérifieurDoit pouvoir vérifier la signature sans avoir d’informationconfidentiellePotentiellement tout le monde doit pouvoir vérifier.
L’ennemiIl cherche à générer une fausse signature
29/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Les différents acteurs
Le SignataireDoit pouvoir facilement émettre des signatures en son nom
Le vérifieurDoit pouvoir vérifier la signature sans avoir d’informationconfidentiellePotentiellement tout le monde doit pouvoir vérifier.
L’ennemiIl cherche à générer une fausse signature
29/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Les différents acteurs
Le SignataireDoit pouvoir facilement émettre des signatures en son nom
Le vérifieurDoit pouvoir vérifier la signature sans avoir d’informationconfidentiellePotentiellement tout le monde doit pouvoir vérifier.
L’ennemiIl cherche à générer une fausse signature
29/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Fonctionnement
Le SignataireEmet une signature et l’envoie avec le message
30/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Fonctionnement
L’adversaireCherche à fabriquer de fausses signatures
31/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Fonctionnement
AlgorithmesAlgorithmes de signature et de vérification
32/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Fonctionnement
Le vérifieurTout le monde peut vérifier : Mécanisme à clé publique !
33/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Fonctionnement
La clé privée est utilisée pour signer.
34/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Signatures électroniques• Déscription• Formalisation
Signatures électroniques
FormalisationTrois algorithmes• Algorithme de génération des clés KG(`) = (pk, sk)à partir d’un paramètre de sécurité, il produit un couple de clés : clépublique, clé sécrete
• Algorithme de signature S(sk,m) = σutilise la clé sécrete sk pour signer le message
• Algorithme de vérification V(pk,m, σ) = yes/noutilise la clé publique seulement
35/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Idée générale
36/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
But
L’intégrité des donnéesVérifier que les infos
transmises n’ont pas subid’altérations.
Produire une empreintecondensée qui soitfacilement vérifiable.
37/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Définition
Fonction de hachageUne fonction qui, à partird’une donnée arbitraire,calcule une empreinteservant à condenser etidentifier rapidement ladonnée initiale
38/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Fonctions de hachage
PropriétésCompression et facilité de calcul.Résistance à la préimage :étant donné y , il est difficile de trouver x tel que y = H(x)Résistance à la seconde préimage :étant donné x, il est difficile de trouver x ′ 6= x tel queH(x) = H(x ′)
Résistance à la collision :il est difficile de trouver x et x ′ tels que H(x) = H(x ′)
39/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Fonctions de hachage
Types des fonctionsFonction de Hachage à Sens Uniquerésistance à la préimage et à la seconde préimageFonction de Hachage résistante aux collisionsrésistance à la seconde préimage et à la collision
Fonctions de hachage résistante aux collisionsAbsence de collisions : permet à garantir qu’une altération desdonnées produira une modification de l’empreinte
40/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Fonctions de hachage
Types des fonctionsFonction de Hachage à Sens Uniquerésistance à la préimage et à la seconde préimageFonction de Hachage résistante aux collisionsrésistance à la seconde préimage et à la collision
Fonctions de hachage résistante aux collisionsAbsence de collisions : permet à garantir qu’une altération desdonnées produira une modification de l’empreinte
40/41 Anca Nitulescu [email protected] Introduction à la cryptographie
-
RappelsConfidentialitéAuthenticité
Integrité
• Fonctions de hachage• Définition• Propriétés• Exemples
Fonctions de hachage
ExemplesMD5 (Message Digest 5) :Empreinte de 128 bitsSHA (Secure Hash Algorithm) :
Norme NISTEmpreinte de 160 bits
SHA-1 (révision publiée en 1994 )Considéré comme plus sûr que MD5SHA-2 (octobre 2000)Agrandit la taille de l’empreinte
41/41 Anca Nitulescu [email protected] Introduction à la cryptographie
Rappels• Definitions• Propriétés• Confidentialité• Authenticité• Intégrité• Non-répudiation
Confidentialité• Cryptosystèmes• Formalisation• Chiffrement symétrique• Chiffrement asymétrique
Authenticité• Signatures électroniques• Déscription• Formalisation
Integrité• Fonctions de hachage• Définition• Propriétés• Exemples