La cryptographie à clé symétrique (ou chiffrement symétrique) est un type de schéma de chiffrement dans lequel la même clé est utilisée à la fois pour chiffrer et déchiffrer des messages. ce genre de méthode de codage de l'information a abondamment été utilisée au cours des dernières décennies pour faciliter les communications secrètes entre les gouvernements et les forces armées. De nos jours, les algorithmes à clé symétrique sont appliqués dans divers types de systèmes informatiques pour améliorer la sécurité des données.
Comment fonctionne le cryptage symétrique?
Un schéma de chiffrement symétrique repose sur une clé unique partagée entre deux utilisateurs ou plus. La même clé est utilisée pour chiffrer et déchiffrer le texte brut (qui représente le message ou la partie de données en cours de codage). Le processus de chiffrement consiste à passer le texte brut (entrée) à travers un algorithme de cryptage, qui génère ensuite un message codé (sortie).
Si le schéma de cryptage est suffisamment puissant, le seul moyen pour une personne de lire ou d'accéder aux informations contenues dans le texte codé consiste à utiliser la clé correspondante pour le décrypter. Le processus de déchiffrement consiste essentiellement à reconvertir le texte chiffré en texte clair/brut.
La sécurité des systèmes de chiffrement symétriques est basée sur la difficulté à deviner de manière aléatoire la clé correspondante pour les forcer. Par exemple, une clé de 128 bits prendrait des milliards d’années à “cracker” avec du matériel informatique commun. Plus la clé de cryptage est longue, plus il devient difficile de la déchiffrer. Les clés d'une longueur de 256 bits sont généralement considérées comme hautement sécurisées et théoriquement résistantes aux attaques par force brute d’un ordinateur.
Deux des schémas de chiffrement symétriques les plus couramment utilisés aujourd'hui sont basés sur les chiffrements de blocs et de flux. Les chiffreurs de blocs groupent les données en blocs de taille prédéterminée et chaque bloc est crypté à l'aide de la clé et de l'algorithme de cryptage correspondants (par exemple, un texte en clair de 128 bits est crypté en un texte crypté de 128 bits). D'autre part, les chiffreurs de flux ne chiffrent pas les données de texte brut par blocs, mais par incréments de 1 bit (le texte brut est découpé en bit et est chiffré en un texte crypté bit par bit).
Chiffrement symétrique ou asymétrique
L'utilisation de deux clés au lieu d'une provoque également diverses différences fonctionnelles entre le cryptage symétrique et le cryptage asymétrique. Les algorithmes asymétriques sont plus complexes et plus lents que les algorithmes symétriques. Les clés publiques et privées utilisées dans le chiffrement asymétrique étant liées mathématiquement dans une certaine mesure, elles se doivent donc d’être considérablement plus longues pour offrir un niveau de sécurité similaire à celui des clés symétriques de 128 ou 256 bits.
Utilisations dans les systèmes informatiques modernes
Les algorithmes de chiffrement symétriques sont utilisés dans de nombreux systèmes informatiques modernes pour améliorer la sécurité des données et la confidentialité des utilisateurs. La norme AES (Advanced Encryption Standard) largement utilisée à la fois dans les applications de messagerie sécurisée et dans le stockage cloud est un exemple répandu de chiffrement symétrique.
En plus des implémentations logicielles, l’AES peut également être implémenté directement dans du matériel informatique. Les schémas de chiffrement symétriques basés sur le matériel utilisent généralement l'AES 256, une variante spécifique de la norme de chiffrement avancé qui a une taille de clé de 256 bits.
Un point de confusion commun est que l'ECDSA est basé sur la cryptographie à courbe elliptique (ECC), qui peut à son tour être appliquée à plusieurs tâches, notamment le cryptage, les signatures numériques et les générateurs pseudo-aléatoires. Cependant, l'ECDSA lui-même ne peut pas du tout être utilisé pour le cryptage.
Avantages et inconvénients
Mais bien que le chiffrement symétrique offre de nombreux avantages, il présente un inconvénient majeur: le problème inhérent à la transmission des clés utilisées pour chiffrer et déchiffrer des données. Lorsque ces clés sont partagées via une connexion non sécurisée, elles sont susceptibles d'être interceptées par des tiers malveillants. Si un utilisateur non autorisé accède à une clé symétrique particulière, la sécurité des données cryptées à l'aide de cette clé est compromise. Pour résoudre ce problème, de nombreux protocoles Web utilisent une combinaison de cryptage symétrique et asymétrique pour établir des connexions sécurisées. Le protocole cryptographique TLS (Transport Layer Security) utilisé pour sécuriser de grandes parties de l'Internet moderne constitue l'un des exemples les plus remarquables d'un tel système hybride.