Le chif­fre­ment asy­mé­trique (Public-key cryp­to­gra­phy) est utilisé pour protéger des fichiers, des registres et des disques entiers contre les accès non autorisés ainsi que pour échanger des messages secrets. Pour cela, on utilise des clés (key), pour le chif­fre­ment et le dé­chif­fre­ment des données.

Conseil

Retrouvez des in­for­ma­tions dé­tail­lées sur les échanges sécurisés de données dans notre article sur les procédés de chif­fre­ment.

Con­trai­re­ment au chif­fre­ment sy­mé­trique, les uti­li­sa­teurs de ce procédé utilisent une clé de chif­fre­ment privée (Private Key) dif­fé­rente. Chaque uti­li­sa­teur crée sa propre paire de clés de chif­fre­ment, qui se compose d’une clé privée et d’une clé publique. Tout in­ter­lo­cu­teur disposant de la clé publique peut envoyer des données chiffrées au pro­prié­taire de la clé privée, vérifier leur signature numérique ou les au­then­ti­fier. La clé privée peut à son tour chiffrer les données, créer ou au­then­ti­fier une signature numérique.

Découvrez dans cet article les principes, les fonctions, les domaines d’ap­pli­ca­tions ainsi que les avantages et in­con­vé­nients du chif­fre­ment asy­mé­trique.

Qu’est-ce que le chif­fre­ment asy­mé­trique ?

L’origine du chif­fre­ment asy­mé­trique remonte à 1975. Le chif­fre­ment asy­mé­trique est donc un champ très jeune du chif­fre­ment qui est né il y a plus de 2000 ans. Le principal avantage du chif­fre­ment asy­mé­trique est également le principal in­con­vé­nient du chif­fre­ment sy­mé­trique : les in­ter­lo­cu­teurs n’ont pas à se mettre d’accord sur une clé commune, car chacun dispose d’une clé privée dif­fé­rente.

Le problème du chif­fre­ment à clé secrète (chif­fre­ment sy­mé­trique) réside dans l’échange de clé. La clé secrète doit parvenir au des­ti­na­taire et l’ache­mi­ne­ment est complexe, fas­ti­dieux et peu sécurisé. De plus, la com­plexité et les failles de sécurité aug­men­tent en fonction du nombre de personnes par­ta­geant cette clé.

Le chif­fre­ment asy­mé­trique offre donc une al­ter­na­tive pratique, car chaque uti­li­sa­teur dispose de sa propre paire de clés.

Principes du chif­fre­ment asy­mé­trique

Dans le cas du chif­fre­ment asy­mé­trique, chaque in­ter­lo­cu­teur possède une paire de clés composée d’une clé publique (Public Key) et d’une clé privée (Private Key). Comme pour des clés physiques, ces clés sont liées comme dans un trousseau. Dans ce cryp­to­sys­tème, les deux clés sont étroi­te­ment liées à l’aide d’un al­go­rithme ma­thé­ma­tique : les données qui sont chiffrées grâce à la clé publique peuvent uni­que­ment être dé­chif­frées par la clé privée. Pour garantir la pro­tec­tion des données et le fonc­tion­ne­ment sans entrave du chif­fre­ment asy­mé­trique, il est in­dis­pen­sable que la clé privée reste privée et ne soit connue de personne, pas même des autres in­ter­lo­cu­teurs.

En pratique, l’ex­pé­di­teur de données à besoin de la clé publique du des­ti­na­taire. La clé publique fonc­tionne à sens unique dans ce procédé : elle peut chiffrer les données, mais pas les dé­chif­frer, le dé­chif­fre­ment n’est réa­li­sable que par la clé privée du des­ti­na­taire. La clé publique ne sert pas uni­que­ment au chif­fre­ment, elle permet également de vérifier une signature numérique et de vérifier les in­ter­lo­cu­teurs.

La trans­mis­sion de clés se fait lors du premier contact. Dans le même temps, la clé privée crée une signature numérique et peut ainsi être iden­ti­fiée par les autres in­ter­lo­cu­teurs. En d’autres termes, le chif­fre­ment asy­mé­trique permet que chaque par­ti­ci­pant puisse accéder à la clé publique, mais ne puisse dé­chif­frer les messages qu’avec la clé privée. Cela permet un échange de donnée hautement sécurisé.

Comment fonc­tionne le chif­fre­ment asy­mé­trique ?

Pour débuter le chif­fre­ment asy­mé­trique, le des­ti­na­taire crée sa paire de clés. Il conserve la clé privée et permet à son ou ses in­ter­lo­cu­teurs d’accéder à sa clé publique. Cela peut se faire par un simple transport, par une autorité de cer­ti­fi­ca­tion ou par des « Key Server » (c’est-à-dire des serveurs de clés) sur lesquels la clé peut être stockée. L’ex­pé­di­teur utilise cette clé publique pour encoder son message et peut l’envoyer au des­ti­na­taire sous forme de « texte chiffré ». À ce stade, le chif­fre­ment du message n’est plus dé­chif­frable que par la clé privée du des­ti­na­taire. C’est pour cette raison que le choix du canal de com­mu­ni­ca­tion est en principe libre : si le message chiffré est in­ter­cepté, la personne qui récupère le message ne pourra pas accéder à son contenu.

C’est sur ce fonc­tion­ne­ment à sens unique que repose le système de chif­fre­ment asy­mé­trique. Les deux clés sont com­plè­te­ment in­dé­pen­dantes l’une de l’autre. Même lorsqu’il connait la clé publique, un pirate ne peut pas en déduire d’in­for­ma­tion sur la clé privée. Pour cela, les clés publiques fonc­tion­nent selon des facteurs premiers clai­re­ment définis qui sont mul­ti­pliés pour obtenir un résultat unique. Exemple de calcul :

23 x 199 = 4 577

La clé privée travaille uni­que­ment avec le résultat de cette opération (dans l’exemple, avec le nombre 4 577). Il est presque im­pos­sible de tirer des con­clu­sions sur les facteurs pré­cé­dents à partir de cette valeur, car il existe d’in­nom­brables pos­si­bi­li­tés quant à la manière dont cette valeur aurait pu être obtenue. À l’heure actuelle, il n’existe aucun procédé ma­thé­ma­tique ou al­go­rithme qui sim­pli­fie­rait le calcul inversé.

Note

Dans cet exemple, seuls des petits facteurs primaires ont été utilisés. En pratique, le chif­fre­ment asy­mé­trique utilise des nombres bien plus im­por­tants. C’est ce qui fait du chif­fre­ment asy­mé­trique un procédé aussi sécurisé.

Dans quel cas utilise-t-on le chif­fre­ment asy­mé­trique ?

Le chif­fre­ment asy­mé­trique est gé­né­ra­le­ment utilisé dans les échanges d’emails comme la méthode de chif­fre­ment standard S/MIME, dans les sig­na­tures nu­mé­riques, mais également dans les pro­to­coles de chif­fre­ment comme SSL/TLS, SSH et HTTPS.

Conseil

HTTPS signifie Hypertext Transfer Protocol Secure (protocole de transfert hy­per­tex­tuel sécurisé), un protocole dans lequel con­trai­re­ment au Hypertext Transfer Protocol ou HTTP, les données sont chiffrées grâce au chif­fre­ment asy­mé­trique et ainsi envoyées de manière sécurisée.

De plus, les cryp­to­sys­tèmes asy­mé­triques peuvent être combinés avec des pro­cé­dures sy­mé­triques. Pour cela, les clés sont d’abord échangées grâce au chif­fre­ment asy­mé­trique, puis les com­mu­ni­ca­tions suivantes seront chiffrées en utilisant le chif­fre­ment sy­mé­trique. Ce système de chif­fre­ment hybride est utilisé lorsqu’un uti­li­sa­teur souhaite bé­né­fi­cier à la fois de la rapidité d’un système sy­mé­trique, mais également de la sécurité d’un système asy­mé­trique.

Exemple de chif­fre­ment asy­mé­trique

Le programme de chif­fre­ment le plus connu est pro­ba­ble­ment Pretty Good Privacy aussi appelé PGP. Il est basé sur le principe de chif­fre­ment asy­mé­trique et sert à chiffrer les emails. Dans ce cadre, l’ins­tal­la­tion d’une clé publique et d’une clé privée est générée. Ensuite, la clé publique peut soit être trans­fé­rée ou mise à dis­po­si­tion dans une base de données cen­tra­li­sée. Celle-ci peut être consultée par les clés in­di­vi­duelles des in­ter­lo­cu­teurs. Grâce à la clé publique, l’ex­pé­di­teur chiffre ses données et identifie l’email ou le message comme étant chiffré grâce à PGP. Le des­ti­na­taire peut ensuite lire le message grâce à sa clé privée.

Note

OpenPGP a été développé en 1997 comme al­ter­na­tive gratuite à PGP. Ce logiciel en open source dispose de nom­breuses ex­ten­sions qui vont au-delà du champ d’ap­pli­ca­tion fonc­tion­nel de PGP.

Les procédés de signature sont également étroi­te­ment liés au chif­fre­ment asy­mé­trique. RSA est pro­ba­ble­ment le procédé le plus connu de ce domaine d’ap­pli­ca­tion. Le terme signature désigne le codage du message avec la clé privée. L’ex­pé­di­teur « signe » son message avec RSA et le code de cette façon. Ensuite, le message peut être envoyé. L’au­then­ti­cité et l’identité d’un message sont vérifiées par un des­ti­na­taire grâce à sa clé publique.

RSA est considéré comme le plus vieux, mais le plus sécurisé des procédés de signature. Les al­ter­na­tives qui génèrent ou re­con­nais­sent les sig­na­tures nu­mé­riques en utilisant une méthode très similaire sont le DSA (Digital Signature Algorithm) et ElGamal.

Le chif­fre­ment avec SSL/TLS est un exemple concret d’un protocole de cryp­to­gra­phie. Ce protocole réseau permet une com­mu­ni­ca­tion plus sûre, par exemple entre le serveur Web et le na­vi­ga­teur. Il assure dans le même temps une au­then­ti­fi­ca­tion du serveur. À cette fin, SSL/TLS utilise un chif­fre­ment hybride, c’est-à-dire qu’il utilise à la fois la méthode asy­mé­trique et la méthode sy­mé­trique. La clé publique est signée par une autorité de cer­ti­fi­ca­tion et le cer­ti­fi­cat qui en résulte est chiffré. Le cer­ti­fi­cat ne peut alors être ouvert que par la clé publique de l’autorité de cer­ti­fi­ca­tion. Par exemple, le serveur Web envoie sa clé publique certifiée au na­vi­ga­teur, qui vérifie le cer­ti­fi­cat. Si le cer­ti­fi­cat est valide, le na­vi­ga­teur génère une clé sy­mé­trique et l’envoie au serveur Web. Tous deux utilisent désormais cette clé commune pour le reste de la session SSL/TLS afin de chiffrer sy­mé­tri­que­ment leur échange de données.

Quels sont les avantages et les in­con­vé­nients du chif­fre­ment asy­mé­trique ?

Le principal in­con­vé­nient du chif­fre­ment asy­mé­trique est la lenteur du chif­fre­ment. En outre il demande con­si­dé­ra­ble­ment plus de puissance de calcul. C’est pourquoi, comme dans l’exemple ci-dessus de chif­fre­ment SSL, un système hybride qui combine le système sy­mé­trique et asy­mé­trique a été mis au point. Les anciens problèmes, tels que l’au­then­ti­fi­ca­tion non sécurisée et la grande vul­né­ra­bi­lité aux logiciels mal­veil­lants, ont déjà été résolus par les cer­ti­fi­cats et sig­na­tures nu­mé­riques et les systèmes de cryp­to­gra­phie basés sur l’iden­ti­fi­ca­tion.

Il est re­com­mandé d’avoir recours à un chif­fre­ment hybride afin de bé­né­fi­cier des avantages des deux systèmes. Le chif­fre­ment asy­mé­trique se charge de la trans­mis­sion de clés. Cela permet de con­tour­ner le transfert fas­ti­dieux des clés privées d’un cryp­to­sys­tème. Le résultat : un chif­fre­ment sûr, rapide et pratique.

Aller au menu principal