Notions de cryptologie et algorithme de chiffrement

Notion de cryptologie

Dans un monde où la sécurité informatique est devenue primordiale, il est parfois difficile de comprendre les différents types de chiffrement et de hachage (hash) existant.

Mais de quoi parle-t-on ?

Une petite explication s’impose :

  • Le chiffrement de données permet de garantir l’identité de la personne avec qui nous communiquons.

Toute action de chiffrement est dite “réversible”.

  • Le hachage de données permet de garantir l’intégrité d’un message envoyé.

Toute action de hachage est dite “irréversible”.

Description des types de chiffrements

Trois types de chiffrements sont possibles :

  • Le chiffrement symétrique (Méthode la plus ancienne)

Symétrique par le fait d’utiliser une clé identique avec le même algorithme de chiffrement pour le chiffrement et le déchiffrement.

  • Le chiffrement asymétrique

Asymétrique par le fait d’utiliser une clé pour chiffrer (clé publique) et une autre clé pour déchiffrer (clé privée) avec le même algorithme de chiffrement.

  • Le chiffrement hybride

Cette méthode utilise un combiné des deux modes de chiffrement précédents.

L’idée est de chiffrer de manière symétrique le message puis de chiffrer de manière asymétrique la clé précédemment utilisée.

Liste non exhaustive des algorithmes de chiffrement et de hachage

Les algorithmes symétriques les plus connus sont :

  • Le chiffre de césar (Méthode par décalage)
  • DES et (Triple DES)
  • AES

Les algorithmes asymétriques les plus connus sont :

  • RSA
  • El-Gamal
  • Courbes elliptiques

Les algorithmes hybrides les plus connus sont :

  • PGP
  • GnuPG
  • TLS

Concernant les algorithmes de hachage, les plus connus sont :

  • MD5
  • SHA-1
  • SHA-256

Vous allez me dire que tout ceci est bien beau ! Mais quel algorithme choisir en fonction de mon besoin ?

La bonne réponse serait: “ça dépend” 🙂

Citons quelques cas d’usage :

  • Lorsque vous êtes en train de chiffrer un mot de passe et que vous souhaitez le réutiliser, il vaut mieux utiliser une clé de chiffrement symétrique. (Ex : Une application qui souhaite se connecter à une source de données doit stocker le mot de passe d’un compte se service et doit pouvoir rejouer le mot de passe à tout moment)
  • Lorsque l’on souhaite communiquer entre deux composants de type client / serveur, il est recommandé d’utiliser un chiffrement hybride. Un partage de certificat doit être réalisé en amont.
  • Dans un annuaire de type Active Directory, les mots de passe sont hachés. Ceci garanti que personne ne pourra lire le mot de passe de l’utilisateur.

Avantages / Inconvénients

Algorithme Avantages Inconvénients
Symétrique
  • Facilité d’intégration
  • Plus performant
  • Moins sécurisé (Par le fait que la clé secrète est facilement transmissible)
Asymétrique
  • Clé privée connue que d’un seul acteur
  • (RSA demande une clé minimale de 1024/2048 bits)
  • (Les courbes elliptiques ne nécessitent qu’une clé de 128 bits)
  • Plus sécurisé
  • Moins performant (Coûteux en ressource, temps de calcul plus élevé)
  • Complexité à gérer (Utilisation d’une PKI)
Hybride
  • Plus performant
  • Plus sécurisé
  • Échange de deux informations (clé symétrique chiffré et message chiffré)

 Sébastien

Directeur de projets