Vous êtes sur la page 1sur 26

Sécurité informatique

Université Kasdi Merbah Ouargla


Département Mathématique et informatique

Crypto III : Les concepts fondamentaux de la


cryptographie moderne

Master informatique industrielle

Avril 2013
Master informatique industrielle Sécurité informatique 1
Les concepts fondamentaux de la cryptographie moderne
1. Les services de sécurité et les crypto systèmes modernes
2. Chiffrement symétrique ou à clé secrète
– Les types d’algorithmes symétriques
– Les algorithmes symétriques : avantages et inconvénients
– Les règles fondamentales pour le chiffrement symétrique
3. Cryptographie asymétrique ou à clé publique
– Les algorithmes asymétriques: services, avantages et inconvénients
– Les règles fondamentales pour l’utilisation de RSA
4. Les fonctions de hachage et Macs
– Fonctions de hachage
– Code d’authentification de message-MAC
– Les règles fondamentales pour les fonctions de hachage et MACs
5. Les signatures numériques
6. L’authentification et l’autorité de certification
– PKI (Public Key Infrastructure) et les certificats X.509
Master informatique industrielle Sécurité informatique 2 2
1- Les services de sécurité et les crypto systèmes
modernes I
Services Primitives Crypto Algorithmes

Confidentialité
Symétrique DES, RC4,
AES,…

Intégrité Fonctions de
Hachage MD5, SHA,…

Macs HMAC
Authentification

Asymétrique ou RSA, ECC,…


Non-répudiation à clé publique

Master informatique industrielle Sécurité informatique 3 3


1-Les services de sécurité et les crypto systèmes modernes II
 Algorithmes symétriques basés sur des opérations
de substitution et de transposition (en mode flot de
données ou en mode bloc).

 Algorithmes asymétriques basés sur des pbs.


mathématiques complexes (factorisation de grands
nombres entiers et equation de logarithme discret).
– Opérations clé publique (chiffrement et vérification
de signature) et clé privée (déchiffrement et
génération de signature).

 Des fonctions de hachage et calcul de MACs


(Message Authentication Code)
Master informatique industrielle Sécurité informatique 4 4
1-Les services de sécurité et les crypto systèmes modernes III
 Un système mixte : un algorithme symétrique
pour chiffrer le message, et un algorithme
asymétrique pour échanger et/ou chiffrer la
clé. Cette méthode mixte est plus efficace et
utilisée dans les implémentations de
protocoles de sécurité Internet.

Master informatique industrielle Sécurité informatique 5 5


2- Chiffrement symétrique ou à clé secrète
 Chiffrement de données avec une clé secrète k
– chiffrer : transforme un message clair M en un message chiffré C
= ek(M) avec une clé k
– déchiffrer : transforme un message chiffré C en un message clair
M = dk(C)
– contraintes : difficile de déduire M de C sans k
– confidentialité des données pour une personne
– confidentialité d'un message entre 2 personnes partageant cette
clé

Master informatique industrielle Sécurité informatique 6


Les types d’algorithmes symétriques

 Deux types de crypto systèmes symétriques :


1. Les stream ciphers (chiffrement en mode flot de
données) : opère sur un texte en clair, un bit à la fois
(opérations XOR).
Exemple : RC4 utilisé dans le WEP.
2. Les block ciphers (chiffrement en mode bloc): opère sur
un nombre de bits de taille fixe à l’intérieur du texte
clair (appelé bloc), et c’est le type de chiffrement
symétrique le plus utilisé. Taille de bloc actuel = 128
bits
Exemples : DES, 3DES, Blowfish, IDEA, AES
Master informatique industrielle Sécurité informatique 7
Les algorithmes symétriques : avantages et inconvénients

 Avantages : rapidité du chiffrement/déchiffrement


 Inconvénients :
– échange de la clé k par un autre canal,
– Pour n participants on a besoin de n(n-1)/2 clés
secrètes enregistrées
 Utilisés dans : SSH, SSL/TLS, WiFi (IEEE 802.11i),
VPN/IPsec

Master informatique industrielle Sécurité informatique 8


Règles fondamentales pour le Chiffrement symétrique

1. On utilise un chiffrement de bloc de 128 bits


minimum.
2. Il est recommandé d’utiliser l’AES qui est le
nouveau standard pour le chiffrement de
données sensibles.
3. Un PRNG fort (Pseudo Random Number Generator)
pour générer les clés symétriques.
4. On utilise des clés de session pour chiffrer une
communication réseau et des clés basées mot de
passe (PBE-Password Based Encryption) pour
protéger les données sensibles stockées sur disque.
Master informatique industrielle Sécurité informatique 9
3- Cryptographie asymétrique ou à clé publique I

• Idée de [Diffie-Hellman 1976], utilisée en premier


par RSA [Rivest, Shamir, Adleman 1977]
• Chiffrement de données avec une paire de clés :clé
publique Kpub , clé privée Kpriv , la clé publique Kpub
connue de tous, sert à chiffrer
• Le message C= eKpub(M) peut être véhiculé au vu et
au su de tout le monde
• La clé privée Kpriv tenue secrète, sert à déchiffrer
M=dKpriv(C)
• Contrainte : difficile de déduire Kpriv de Kpub
Master informatique industrielle Sécurité informatique 10
Cryptographie asymétrique ou à clé publique II

• Confidentialité

Master informatique industrielle Sécurité informatique 11


Les algorithmes asymétriques: avantages et
inconvénients
• Avantages :
– Une seule clé secrète à enregistrer
– Très utile pour échanger les clés pour ouvrir un tunnel de
communication chiffré (VPN : IKE pour IPsec, TLS/SSL). Utilisés
aussi dans PGP.
• Inconvénients :
– Lenteur,
– Pas d'authentification de la source,
– Attaque Man-In-The-Middle
• Exemples : RSA [1977] (factorisation), chiffrement ElGamal
[1985](logarithme discret), Diffie-Hellman [1978], ECC-
Elliptic Curve Cryptography
Master informatique industrielle Sécurité informatique 12
Les algorithmes asymétriques et leurs services

Algorithme Chiffrement/ Signature Echange de clé


déchiffrement numérique (key
agreement)
RSA oui oui oui

Diffie-Hellman non non oui


(DH)

DSA non oui non

EC-Elliptic oui oui oui


Curves
Master informatique industrielle Sécurité informatique 13
Les règles fondamentales : Utilisation de RSA

• RSA : le crypto système à clé publique le plus


utilisé.
1. CRT (Chinese Remainder Theorem) dans RSA
pour augmenter la vitesse de déchiffrement
2. Le schéma RSAES-OAEP au lieu de RSA (plus
sécurisé).
3. Une clé RSA 2048-bits minimum pour
utiliser RSA dans les applications nouvelles.

Master informatique industrielle Sécurité informatique 14


4- Les fonctions de hachage et Macs

 Les fonctions de hachage : Garantir l'intégrité d'un message M .


Exemples : SHA, MD5
 Une fonction de hachage H doit avoir les propriétés suivantes :
– H appliqué sur un message produit une empreinte d (digest)
de taille fixe.
– Pour toute empreinte d, il n’est pas possible de trouver x t.q
: H(x)=d (propriété appelée one-way ou fonction à sens
unique).
– Pour tout message x, il n’est pas possible de trouver y # x et
H(y)=H(x).
– Il n’est pas possible de trouver une paire de messages (x, y)
t.q. : H(x)=H(y).
Master informatique industrielle Sécurité informatique 15
Code d’authentification de message MAC
 Utilise une clé secrète en entrée avec le message à
authentifier.
 La fonction MAC est :
– M(s,x)=d ou M est la fonction MAC qui génère
l’empreinte d à partir d’un secret s et un message x.
 HMAC (keyed-Hash Message Authentication Code) (RFC
2104) :
– implémenté dans le protocole IPSec. Il est aussi utilisé dans
d’autres protocoles comme TLS et SET (Secure Electronic
Transaction).
– HMAC utilise SHA comme Hash.

Master informatique industrielle Sécurité informatique 16


Les règles fondamentales pour les fonctions de hachage et
MACs
1. SHA-256 comme fonction de hachage.
 Les autres algorithmes (MD4, MD5 et SHA-1)
sont plus exposés aux attaques de collision.
2. Ne pas utiliser une fonction Hash comme un
MAC, car elle n’exige pas une clé secrète
3. Utiliser HMAC comme fonction MAC.
4. Un MAC doit être calculé pour le texte chiffré
dans une communication.

Master informatique industrielle Sécurité informatique 17


5- Les signatures numériques
 Signature : sceau, prouver l'identité de l'expéditeur (non-
répudiation) et l'intégrité du message
 Contraintes : empêcher l'usurpation, la non-
reconnaissance
 Calculable par le signataire pour tout message M
 Le destinataire (et tout individu) peut vérifier la signature
 non falsifiable, non imitable
 Deux opérations :
1. signer : sig (Kpriv) : S = sigKpriv (M) où M est un
message ou un défi (chalenge)
2. vérifier : ver(Kpub) : ver(M, dKpub (S)) = {vrai, faux}
Master informatique industrielle Sécurité informatique 18
Le processus de Signature numérique
 Signer tout M est trop coûteux
 Calcul d'une empreinte de M par une fonction de hachage
H, de taille fixée : D=H(M)
 Signature de l'empreinte S = sigKpriv (D)
 Vérification de l'intégrité par le destinataire:
1. Recevoir M’,
2. le hacher D’ =H(M’),
3. puis vérifier ver(D’, dKpub (S)) = vrai
 Exemple de signature RSA
1. Signer : S = Dd mod n (chiffrer une empreinte D avec la
clé privée)
2. Vérifier : D = Se mod n = Dedmod n = D (vérifier la
signature avec la clé publique du signataire)
Master informatique industrielle Sécurité informatique 19
Algorithmes de signature numérique
1. Une signature numérique basée sur un
certificat X.509.
2. Un schéma de signature non protégé par
un brevet.
3. Un algorithme de signature facile, efficace
et sécurisé comme : RSA, signature
ElGamal/DSA, ECDSA
 Utilisation dans les protocoles de l’internet
SSL/TLS, S-MIME, PGP
Master informatique industrielle Sécurité informatique 20
6- Authentification et autorité de certification I
• Attaque Man-in-the-Middle

• Légitimer la clé publique cleA d'une personne


• Autorité de certification (CA)
• émetteur A émet sa clé publique à une CA (qui vérifie) et
retourne un certificat signé par CA : SA,CA = signKpriv(CA) (H(IdA,
cleA ))
• le récepteur B vérifie le certificat de A en calculant
Master informatique industrielle Sécurité informatique 21
Authentification et autorité de certification II
1. ce qu'il reçoit : H(IdA, cleA)
2. et l'autorité de certification : verkpub(CA) (SA,CA )
3. et teste l'égalité
• Pour authentifier les clés publiques elles mêmes, et
éviter l’attaque de type Man-in-the-Middle, une
autorité tierce partie CA doit être utilisée c-a-d une
infrastructure PKI avec des certificats à clé publique
de type X.509.

Master informatique industrielle Sécurité informatique 22


La PKI et les certificats X.509

Master informatique industrielle Sécurité informatique 23


La PKI et les certificats X.509
Les composants de la PKI :
1. Autorité de certification (CA – Certificate Authority) :
publie/met à jour/ révoque des certificats numériques aux
demandeurs.
2. Autorité d’enregistrement (RA – Registration Authority) :
authentifie le demandeur (vérifie le lien entre la clé publique
et l’identité de son détenteur).
3. Le support de certificat (Certificate Holder) : le détenteur
du certificat.
4. Le répertoire (Repository) : stocke les certificats, les CRLs
(liste de révocation de certificats) et les rend disponibles.
5. Le client : vérifie le certificat et valide la signature d’un
message signé.
Master informatique industrielle Sécurité informatique 24
La PKI et les certificats X.509
Les fonctions d’une PKI:
1. Enregistrement : vérifier les infos d’identité
2. Certification : la CA publie le certificat
3. Génération de paire de clés: par le support ou par la
CA
4. Mise à jour de clé :les paires de clés sont mises à jour
à des intervalles réguliers
5. Révocation de la validité d’un certificat. Chaque
certificat a une date d’expiration, mais il ya des
scénarios qui nécessitent la révocation d’un certificat.
6. Cross-certification : c’est un processus qui permet
l’interopérabilité des PKIs (hiérarchique ou bridge)

Master informatique industrielle Sécurité informatique 25


Structure d'un certificat
• Version
• Numéro de série
• Algorithme de signature du certificat
• Signataire du certificat
• Validité (dates limite)
– Pas avant
– Pas après
• Détenteur du certificat
• Informations sur la clé publique
– Algorithme de la clé publique
– Clé publique
• Identifiant unique du signataire (Facultatif)
• Identifiant unique du détenteur du certificat (Facultatif)
• Extensions (Facultatif)
Master informatique industrielle Sécurité informatique 26

Vous aimerez peut-être aussi