L'algorithme RSA (Rivest–Shamir–Adleman) est un algorithme cryptographique à clé publique qui utilise une paire de clés publique et privée, mathématiquement liées, pour chiffrer des données, échanger des clés et signer des certificats numériques. Sa sécurité repose sur la difficulté de factoriser le produit de deux grands nombres premiers, un problème qui reste impossible à résoudre par calcul pour des tailles de clés courantes.
Points clés à retenir
- Le protocole RSA permet de chiffrer des données et de signer des certificats à l'aide d'une paire de clés publique et privée.
- La sécurité repose sur la difficulté de factoriser de grands produits de nombres premiers.
- L'algorithme RSA a été publié en 1977 par Rivest, Shamir et Adleman au MIT.
- VersaLe service d’accès sécurisé de [nom de l’entreprise] propose RSA comme option d’échange de clés TLS.
- Les clés de plus grande taille (2 048 bits et plus) sacrifient la vitesse au profit d'une sécurité renforcée.
Sur cette page : Pourquoi est-ce important ?Comment ça marcheTypesRSA et VersaFAQ
Pourquoi la RSA est-elle importante ?
Le RSA a été le premier système de cryptographie à clé publique fonctionnel, publié en 1977 par Ron Rivest, Adi Shamir et Leonard Adleman au MIT. Avant cela, tous les systèmes exigeaient que les deux parties partagent au préalable une clé secrète, ce qui était impraticable pour les communications à grande échelle de type Internet. Le RSA a résolu ce problème en divisant la clé en une partie publique, que n'importe qui peut utiliser pour chiffrer ou vérifier, et une partie privée, que seul le propriétaire détient pour déchiffrer ou signer. Les certificats HTTPS, les clés hôtes SSH, la signature de code et le chiffrement des e-mails trouvent tous leur origine dans ce principe.
Le RSA reste d'actualité même si les algorithmes à courbe elliptique s'imposent dans les nouveaux déploiements, car le parc installé est gigantesque. Les autorités de certification continuent de délivrer des certificats RSA, les anciens clients ne prennent souvent en charge que ce protocole, et les signatures RSA restent l'option par défaut dans les outils TLS et PKI.
Qu'est-ce que le RSA ?
Le RSA génère deux clés à partir d'une même construction mathématique. La génération de clés consiste à choisir deux grands nombres premiers aléatoires, à les multiplier pour obtenir un module, puis à en déduire un exposant public et un exposant privé correspondant à l'aide de l'arithmétique modulaire. La clé publique peut être diffusée librement ; la clé privée doit rester secrète.
Le chiffrement et la signature utilisent les clés dans des sens opposés. Pour envoyer un message confidentiel, l’expéditeur le chiffre à l’aide de la clé publique du destinataire ; seule la clé privée correspondante peut le déchiffrer. Pour prouver son autorité, le signataire chiffre un hachage du message à l’aide de sa propre clé privée ; n’importe qui peut le vérifier à l’aide de la clé publique du signataire, confirmant ainsi l’identité et l’intégrité du message.
La sécurité repose sur la factorisation des nombres entiers : pour déduire la clé privée, il faut factoriser le module en ses deux facteurs premiers, et aucun algorithme classique efficace ne permet de le faire pour des tailles de clé réalistes – généralement de 2 048 bits ou plus.
Types d'utilisation du RSA
Le protocole RSA intervient dans un réseau à trois niveaux distincts. Le transport de clé RSA – communément appelé « échange de clés RSA » – permet à un client TLS de chiffrer un secret « premaster » à l’aide de la clé publique RSA du serveur, que seule la clé privée du serveur peut déchiffrer. Ce mode est statique et ne garantit pas la confidentialité prospective ; c’est pourquoi TLS 1.3 l’a abandonné au profit de variantes du protocole Diffie-Hellman, bien qu’il reste disponible dans les versions antérieures. Les signatures numériques RSA authentifient les certificats et les procédures d’établissement de connexion : une autorité de certification signe la clé publique d’un serveur avec sa propre clé privée RSA, et les clients vérifient la signature pour s’assurer de sa fiabilité. Le chiffrement RSA de grandes quantités de données est rare dans la pratique ; c’est pourquoi le protocole RSA utilise généralement une clé symétrique à la place.
Les déploiements varient également en fonction de la taille de la clé et du remplissage : de 2 048 à 4 096 bits, car les tailles inférieures sont trop faibles face aux attaques par factorisation, et avec un remplissage OAEP ou PSS plutôt que l'ancien schéma PKCS#1 v1.5, vulnérable aux attaques par oracle.
RSA & Versa
VersaLe service « Secure Access » – le service de portail et de passerelle qui relie le client Versa SASE – permet aux administrateurs de sélectionner RSA comme algorithme d’échange de clés TLS, aux côtés d’ECDHE, pour les connexions négociant des versions TLS antérieures à la version 1.3, avec une longueur minimale de clé configurable. Lorsque Configuration de la passerelle d'accès sécurisée, les administrateurs choisissent des suites de chiffrement TLS/DTLS, notamment des suites de transport de clés RSA telles que TLS-RSA-WITH-AES-256-GCM-SHA384 et les suites ECDHE signées par RSA telles que TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384.
RSA est également à la base de l'authentification par certificat au sein de ce même service : le portail d'accès sécurisé et la passerelle prennent en charge les types d'authentification client « Certificate », « EAP » et « Preshared », tandis que les profils d'authentification des périphériques s'appuient sur des certificats signés par RSA pour vérifier les périphériques clients d'SASE . Les Secure SD-WAN éditions et NGFW offrent les mêmes contrôles.
Questions fréquentes
Que signifie l'acronyme RSA ?
RSA est l'acronyme de Rivest–Shamir–Adleman, les noms de famille de Ron Rivest, Adi Shamir et Leonard Adleman, qui ont publié cet algorithme en 1977 au MIT. Il s'agit du premier système de cryptographie à clé publique utilisable en pratique, et il reste aujourd'hui l'un des algorithmes les plus largement déployés dans les protocoles TLS et les infrastructures PKI.
Comment fonctionne le chiffrement RSA ?
Le RSA utilise deux clés mathématiquement liées, dérivées de deux grands nombres premiers. Les données chiffrées à l'aide de la clé publique ne peuvent être déchiffrées qu'à l'aide de la clé privée correspondante, et les données signées avec la clé privée peuvent être vérifiées à l'aide de la clé publique, ce qui permet à des inconnus d'échanger des secrets en toute sécurité.
Le RSA est-il encore sûr aujourd'hui ?
Oui, à condition que la longueur des clés soit suffisante. Une clé RSA de 2 048 bits est toujours considérée comme sûre face aux ordinateurs classiques, même si les recommandations préconisent de plus en plus une longueur de 3 072 bits pour une protection à long terme. Un futur ordinateur quantique pourrait pirater le système RSA à l’aide de l’algorithme de Shor, ce qui stimule la recherche sur des alternatives post-quantiques.
Quelle est la différence entre RSA et ECDHE ?
Le transport de clés RSA permet à un client de chiffrer un secret à l'aide de la clé publique statique du serveur, tandis que le protocole ECDHE (Diffie-Hellman éphémère à courbe elliptique) fait en sorte que les deux parties génèrent des paires de clés temporaires et dérivent un secret partagé. Le protocole ECDHE offre une confidentialité persistante, ce que le transport de clés RSA statique ne permet pas.
Quelle taille de clé RSA faut-il utiliser ?
2 048 bits constituent le minimum pratique pour les nouveaux déploiements ; 3 072 ou 4 096 bits offrent une marge de sécurité plus importante, au prix d'un ralentissement des opérations et de certificats plus volumineux. Les clés de moins de 2 048 bits sont considérées comme pouvant être piratées et doivent être retirées de la circulation dès qu'elles sont encore utilisées.
En savoir plus sur RSA
Si vous souhaitez en savoir plus, voici des sources auxquelles nous faisons confiance.
| Glossaire du CSRC du NIST | IETF RFC 8017 : Spécifications cryptographiques PKCS #1 RSA |
|---|---|
| Répertoire du NIST de la terminologie standard en matière de cryptographie et de sécurité, comprenant notamment les algorithmes à clé publique tels que RSA. | La spécification de l'IETF définissant le chiffrement RSA, les schémas de signature, le remplissage et les formats de clés utilisés dans le cadre des protocoles TLS et PKI. |
Termes associés
Si vous vous intéressez au RSA, voici quelques liens qui pourraient vous intéresser.
| Périphérie de services d'accès sécurisé | Nom de domaine complet | SD-WAN |
|---|---|---|
| L'architecture convergée SD-WAN et de sécurité dont l'authentification des clients et les tunnels TLS peuvent s'appuyer sur un échange de clés basé sur le cryptosystème RSA. | Format de nom de domaine utilisé pour la vérification de l'identité des pairs à l'aide de certificats, en complément des certificats de périphérique et de client signés par RSA. | L'approche réseau dont les tunnels « overlay » et « SASE » peuvent être sécurisés à l'aide de suites de chiffrement TLS basées sur RSA. |