Algorithmes de chiffrement faibles (facilement cassables)
Les premiers algorithmes utilisés pour le chiffrement d'une information étaient assez rudimentaires dans leur ensemble. Ils consistaient notamment au remplacement de caractères par d'autres. La confidentialité de l'algorithme de chiffrement était donc la pierre angulaire de ce système pour éviter un décryptage rapide.
Exemples d'algorithmes de chiffrement faibles :
- ROT13 (rotation de 13 caractères, sans clé) ;
- Chiffre de César (décalage de trois lettres dans l'alphabet).
Algorithmes de cryptographie symétrique (à clé secrète)
Les algorithmes de chiffrement symétrique se fondent sur une même clé pour chiffrer et déchiffrer un message. Le problème de cette technique est que la clé, qui doit rester totalement confidentielle, doit être transmise au correspondant de façon sûre. En outre lorsqu'un grand nombre de personnes désirent communiquer ensemble, le nombre de clés augmente de façon importante (une pour chaque couple de communicants). Ceci pose des problèmes de gestions des clés.
Quelques algorithmes de chiffrement symétrique très utilisés :
- Chiffre de Vernam (le seul offrant une sécurité théorique absolue, à condition que la clé ait au moins la même longueur que le message, qu'elle ne soit utilisée qu'une seule fois à chiffrer et qu'elle soit totalement aléatoire)
- DES
- 3DES
- AES
- RC4
- RC5
- MISTY1
- et d'autres (voir la liste plus exhaustive d'algorithmes de cryptographie symétrique).
Algorithmes de cryptographie asymétrique (à clé publique et privée)
Pour résoudre en partie le problème de la gestion des clés, la cryptographie asymétrique a été mise au point dans les années 1970. Elle se base sur le principe de deux clés :
- une publique, permettant le chiffrement ;
- une privée, permettant le déchiffrement.
Comme son nom l'indique, la clé publique est mise à la disposition de quiconque désire chiffrer un message. Ce dernier ne pourra être déchiffré qu'avec la clé privée, qui doit être confidentielle.
Quelques algorithmes de cryptographie asymétrique très utilisés :
- RSA ;
- DSA ;
- Protocole d'échange de clés Diffie-Hellman ;
- et d'autres ; voir cette liste plus complète d'algorithmes de cryptographie asymétrique.
Fonctions de hachage
Une fonction de hachage est une fonction qui convertit un grand ensemble en un plus petit ensemble, l'empreinte. Il est impossible de la déchiffrer pour revenir à l'ensemble d'origine, ce n'est donc pas une technique de chiffrement.
Quelques fonctions de hachage très utilisées :
- MD5 ;
- SHA-1 ;
- et d'autres ; voir cette liste plus complète d'algorithmes de hachage.