Les systèmes cryptographiques sont actuellement divisés en deux principaux domaines d'étude : la cryptographie symétrique et asymétrique. Le chiffrement symétrique est souvent utilisé comme synonyme de cryptographie symétrique, et la cryptographie asymétrique couvre deux cas d'utilisation principaux : le chiffrement asymétrique et les signatures numériques.
On peut donc les représenter ainsi :
Cryptographie à clé symétrique
Cryptage symétrique
Cryptographie asymétrique (ou cryptographie à clé publique)
Chiffrement asymétrique (ou chiffrement à clé publique)
Signatures numériques (peuvent ou non inclure le cryptage)
Cet article se concentrera sur les algorithmes de chiffrement symétriques et asymétriques.
Symétrique vs. cryptage asymétrique
Les algorithmes de chiffrement sont souvent divisés en deux catégories, appelées chiffrement symétrique et asymétrique. La différence fondamentale entre ces deux méthodes réside dans le fait que les algorithmes de chiffrement symétriques utilisent une seule clé, tandis que les algorithmes de chiffrement asymétriques utilisent deux clés différentes mais liées. Cette différence, bien qu'apparemment simple, représente de grandes différences fonctionnelles entre les deux formes de cryptage et la manière dont elles sont utilisées.
Corrélation clé
En cryptographie, les algorithmes de chiffrement génèrent des clés sous la forme de bits séquentiels qui sont utilisés pour chiffrer et déchiffrer une information. La manière dont ces clés sont utilisées prend en compte la différence entre les méthodes symétriques et asymétriques.
Alors que les algorithmes de chiffrement symétrique utilisent la même clé pour remplir cette fonction, un algorithme de chiffrement asymétrique, quant à lui, utilise une clé pour chiffrer les données et une autre pour les déchiffrer. Dans les systèmes asymétriques, la clé utilisée pour le chiffrement, également appelée clé publique, peut être librement partagée avec d’autres utilisateurs. En revanche, la clé utilisée pour le décryptage est privée et doit être gardée secrète.
Par exemple, si Alice envoie à Bob un message protégé par un cryptage symétrique, elle doit fournir à Bob la même clé que celle utilisée pour le crypter afin qu'il puisse lire le message. Cela signifie que si un attaquant l'intercepte, il pourra accéder aux informations cryptées.
Cependant, si Alice utilise plutôt la méthode asymétrique, elle crypte le message avec la clé publique de Bob, afin que Bob puisse le déchiffrer avec sa clé privée. Ainsi, le cryptage asymétrique offre un niveau de sécurité plus élevé car même si quelqu'un intercepte vos messages et trouve la clé publique, il ne pourra rien en faire.
Longueur de clé
Une autre différence fonctionnelle entre le chiffrement symétrique et asymétrique concerne la longueur des clés, qui se mesure en bits et est directement liée au niveau de sécurité de chaque algorithme.
Dans les systèmes symétriques, les clés sont sélectionnées de manière aléatoire et leur longueur généralement acceptée varie entre 128 et 256 bits, selon le niveau de sécurité requis. Dans le cryptage asymétrique, il doit y avoir une connexion mathématique entre les clés publique et privée, c'est-à-dire qu'elles sont reliées par une certaine formule mathématique. Pour cette raison, les attaquants peuvent utiliser ce modèle pour briser le chiffrement, et les clés asymétriques doivent être beaucoup plus longues pour fournir un niveau de sécurité équivalent. La différence de longueur de clé est si importante qu'une clé symétrique de 128 bits et une clé asymétrique de 2 048 bits offrent à peu près le même niveau de sécurité.
Avantages et inconvénients
Ces deux types de cryptage présentent à la fois des avantages et des inconvénients l’un par rapport à l’autre. Les algorithmes de chiffrement symétrique sont beaucoup plus rapides et nécessitent moins de puissance de calcul, mais leur principal inconvénient est la distribution des clés. Étant donné que la même clé est utilisée pour crypter et déchiffrer les informations, cette clé doit être partagée avec toutes les personnes ayant besoin d'y accéder, ce qui crée naturellement certains risques (comme décrit précédemment).
À son tour, le chiffrement asymétrique résout le problème de la distribution des clés en utilisant des clés publiques pour le chiffrement et des clés privées pour le déchiffrement. Le compromis est que les systèmes asymétriques sont très lents par rapport aux systèmes symétriques et nécessitent beaucoup plus de puissance de traitement en raison de la longueur des clés.
Options d'application
Cryptage symétrique
En raison de sa rapidité, le cryptage symétrique est largement utilisé pour protéger les informations dans de nombreux systèmes informatiques modernes. Par exemple, l'Advanced Encryption Standard (AES) est utilisé par le gouvernement américain pour crypter les informations classifiées. AES a remplacé l'ancienne norme de cryptage des données (DES), développée dans les années 1970 en tant que norme de cryptage symétrique.
Chiffrement asymétrique
Le chiffrement asymétrique peut être appliqué aux systèmes dans lesquels de nombreux utilisateurs peuvent avoir besoin de chiffrer et déchiffrer des messages ou un paquet de données, en particulier lorsque la vitesse et la puissance de traitement ne sont pas une priorité. Un exemple simple d’un tel système est le courrier électronique chiffré, dans lequel une clé publique peut être utilisée pour chiffrer les messages et une clé privée pour les déchiffrer.
Systèmes hybrides
Dans de nombreuses applications, le chiffrement symétrique et asymétrique est utilisé ensemble. Un bon exemple de tels systèmes hybrides sont les protocoles cryptographiques Security Sockets Layer (SSL) et Transport Layer Security (TLS), qui ont été développés pour assurer des communications sécurisées sur Internet. Les protocoles SSL sont actuellement considérés comme non sécurisés et leur utilisation n'est pas recommandée. À leur tour, les protocoles TLS sont considérés comme sécurisés et sont largement utilisés par tous les navigateurs Web modernes.
Utilisation du cryptage de crypto-monnaie
Les méthodes de cryptage sont utilisées par de nombreux portefeuilles cryptographiques afin de fournir un niveau de sécurité accru aux utilisateurs finaux. Des algorithmes de cryptage sont utilisés lorsque l'utilisateur définit un mot de passe pour son fichier de portefeuille, qui est utilisé pour accéder au logiciel.
Cependant, étant donné que Bitcoin et d’autres crypto-monnaies utilisent une paire de clés publique et privée, il existe une idée fausse répandue selon laquelle les systèmes blockchain utilisent des algorithmes de chiffrement asymétriques. Cependant, comme indiqué précédemment, le chiffrement asymétrique et les signatures numériques sont les deux principaux cas d’utilisation de la cryptographie asymétrique (cryptographie à clé publique).
Par conséquent, tous les systèmes de signature numérique n’utilisent pas le chiffrement, même s’ils fournissent des clés publiques et privées. En fait, un message peut être signé numériquement sans utiliser de chiffre. RSA est un exemple d’algorithme pouvant être utilisé pour signer des messages cryptés, mais l’algorithme de signature numérique utilisé dans Bitcoin (appelé ECDSA) n’a pas de cryptage.
Conclusion
Le chiffrement symétrique et asymétrique joue un rôle important pour garantir la sécurité des informations et des communications sensibles dans le monde numérique d'aujourd'hui. Les deux chiffres peuvent être utiles, car chacun d’eux a ses propres avantages et inconvénients, ils sont donc utilisés dans des cas différents. Alors que la cryptographie en tant que science continue d’évoluer pour se protéger contre des menaces plus récentes et plus graves, les systèmes cryptographiques symétriques et asymétriques seront toujours pertinents pour la sécurité informatique.

