Chapitre_crypto_symetrique

Download Report

Transcript Chapitre_crypto_symetrique

Les Algorithmes Cryptographiques
Symétriques
Omar Cheikhrouhou
[email protected]
ISIMA Mahdia, Semestre 2-2014
Cours Sécurité des réseaux, Omar Cheikhrouhou
1
Plan

Principes

Algorithmes Cryptographiques Symétriques


•
•
•
DES
IDE
AES
Fonctions de Hashage
•
•
MD5
SHA
Avantages et Inconvénients
Cours Sécurité des réseaux, Omar Cheikhrouhou
2
Introduction

Les algorithmes cryptographiques modernes se
basent sur des fonctions mathématiques qui
dépendent d’une clés secrète

La sécurité est au niveau clés non pas
algorithmes cryptographiques

Les algorithmes cryptographiques sont
publiées est connu par tout le monde
Cours Sécurité des réseaux, Omar Cheikhrouhou
3
Type de chiffrement


Chiffrement:
• Symétrique (une seule clé)
• Asymétrique (une clé publique et une clé
privée)
Dans le chiffrement symétrique il y a des modes
d’opérations
• Chiffrement par flux
• Chiffrement par bloc
Cours Sécurité des réseaux, Omar Cheikhrouhou
4
Chiffrement Symétrique : Principes
Clé
01010000111
Clé
01010000111
Texte clair
Chiffrement
Voici le
numéro
de ma
carte de
crédit
111111,
Internet
Déchiffrement Texte clair
Voici le
numéro
de ma
carte de
crédit
111111,
☺☼♀☻
♠♣▼╫◊
♫◙◘€£
¥₪Ω‫٭‬
Texte chiffré
Emetteur
Cours Sécurité des réseaux, Omar Cheikhrouhou
Récepteur
5
Algorithmes Cryptographiques Symétriques
RC4
DES
IDE
AES
Cours Sécurité des réseaux, Omar Cheikhrouhou
6
RC4
Cours Sécurité des réseaux, Omar Cheikhrouhou
7
DES
Cours Sécurité des réseaux, Omar Cheikhrouhou
8
Chiffrement DES
Cours Sécurité des réseaux, Omar Cheikhrouhou
9
IDE
Cours Sécurité des réseaux, Omar Cheikhrouhou
10
AES

AES
Cours Sécurité des réseaux, Omar Cheikhrouhou
11
Avantages et Inconvénients
Cours Sécurité des réseaux, Omar Cheikhrouhou
12
Modes Opératoires

La méthode par laquelle le texte clair est traité

Cryptage par flux (stream cipher)
•
•
•

Opère sur un flux continu de données
Mode adapté pour la communication en temps réel
RC4 (longueur de clé variable, généralement 128 bits)
Cryptage par bloc (Block Cipher)
•
Opère sur des blocs de données de taille fixe (généralement 64 bits)
•
•
•
•
Electronic Code Block (ECB)
Cipher Block Chaining (CBC)
Implémentation logicielle en générale
Exemples: DES (Clé: 56 bits codée sur 64 bits); 3DES (EDE (Encrypt-DecryptEncrypt), Trois clés distincts ou seulement deux); IDEA (128 bits); AES longueur de
clé variable: 128, 192, 256)
Cours Sécurité des réseaux, Omar Cheikhrouhou
13
Stream Cipher
 traite les éléments d’entrée de façon continue,
produisant un élément de sortie (crypté), à la
fois.
•
•
La clé est aussi longue que le stream de données.
Étapes:
•
•
•
•
Définition de l’état initial du key stream
Définition de la fonction état suivant: next-state function
Combinaison du key stream courant avec la clé K et les
caractères précédents. La fonction de sortie doit aussi
modifier l’état interne.
Crypte chaque caractère xi du texte clair avec un caractère
zi du key stream (exemple xor)
Cours Sécurité des réseaux, Omar Cheikhrouhou
14
Stream Cipher (suite)

Pour un texte clair P=x1x2x3x4x5… et une clé l=l1l2l3l4l5… il
existe une fonction de cryptage El et des algorithmes de
cryptage Elitel que:
• C  El ( P)
• C  El1 ( x1 ) El2 ( x2 )...
• li  f (k , x1 , x2 , xi 1 )



Les valeurs l1 , l2 , l3, l4 , … sont appelées key streams
Synchronous cypher: Le key stream ne dépend pas du texte
clair. La période du key stream est égale à d tel que: li+d=li
Self-synchronizing: le key stream dépends de n caractères
clairs précédents.
Cours Sécurité des réseaux, Omar Cheikhrouhou
15
Block Cipher
Block Cypher: Le texte est divisé en différents blocks
de taille fixe. Un block est traité à la fois, produisant un block
de données cryptées.
 Sans mémoire. La même fonction et la même clé est utilisée
pour crypter les blocks successifs.
 Mode d’utilisation:

•
Electronic Code Block (ECB): Chaque block de données est
crypté indépendamment, et les blocks cryptés ne sont pas liés
•
•
 non sécurisé pour les messages longs à cause de la répétition du
code
Cipher Block Chaining (CBC): Le résultat d’une étape est utilisé
pour modifier les données d’entée de la prochaine étape
•
 besoin d’un vecteur d’initialisation connu d’avance.
Cours Sécurité des réseaux, Omar Cheikhrouhou
16
Electronic Code Block (ECB)
Cours Sécurité des réseaux, Omar Cheikhrouhou
17
Cipher Block Chaining (CBC):
Cours Sécurité des réseaux, Omar Cheikhrouhou
18