Guide de Génération de Paire de Clés RSA : Chiffrement par Clé Publique et Signature par Clé Privée
Qu'est-ce qu'une Paire de Clés RSA
RSA est un algorithme de chiffrement asymétrique utilisant une paire de clés :
| Clé | Objectif | Distribution |
|---|---|---|
| Clé publique | Chiffrer / Vérifier la signature | Peut être partagée ouvertement |
| Clé privée | Déchiffrer / Signer | Garder pour soi uniquement |
Principe fondamental : Les données chiffrées avec la clé publique ne peuvent être déchiffrées qu'avec la clé privée ; les signatures effectuées avec la clé privée peuvent être vérifiées avec la clé publique.
Choix de la Longueur de Clé
| Longueur | Niveau de sécurité | Cas d'usage |
|---|---|---|
| 1024 bits | ❌ Non sécurisé | Systèmes hérités |
| 2048 bits | ✅ Sécurité de base | Usage courant |
| 3072 bits | ✅ Sécurité supérieure | Données modérément sensibles |
| 4096 bits | ✅ Haute sécurité | Données hautement sensibles / clés à long terme |
Générer une clé de 4096 bits prend 4 à 8× plus de temps qu'une clé de 2048 bits. Le chiffrement/déchiffrement est également plus lent. Choisissez selon vos besoins.
Générer une Paire de Clés : Étape par Étape
Étape 1 : Ouvrir l'outil de Paire de Clés RSA
Visitez l'outil de Paire de Clés RSA et sélectionnez une longueur de clé (2048 ou 4096 recommandés).
Étape 2 : Générer la Paire de Clés
Cliquez sur « Générer la paire de clés ». L'outil produit automatiquement :
- Clé publique : texte au format PEM commençant par
-----BEGIN PUBLIC KEY----- - Clé privée : texte au format PEM commençant par
-----BEGIN PRIVATE KEY-----
Étape 3 : Sauvegarder les Clés
Clé publique → Envoyez à quiconque doit chiffrer des données pour vous
Clé privée → Stockez de manière sécurisée, ne jamais divulguer (ne pas commiter dans Git !)
Format PEM Expliqué
PEM est un texte de clé encodé en Base64. Formats courants :
-----BEGIN PUBLIC KEY----- ← Clé publique PKCS#8
MIIBIjANBgkqhkiG9w0BAQEFAAOC...
-----END PUBLIC KEY-----
-----BEGIN RSA PRIVATE KEY----- ← Clé privée PKCS#1
MIIEpAIBAAKCAQEA0d7...
-----END RSA PRIVATE KEY-----
-----BEGIN PRIVATE KEY----- ← Clé privée PKCS#8
MIIEvgIBADANBgkqhkiG9w0BAQEF...
-----END PRIVATE KEY-----
PKCS#8 est le format universel ; PKCS#1 est spécifique à RSA. La plupart des systèmes modernes préfèrent PKCS#8.
Chiffrement par Clé Publique + Déchiffrement par Clé Privée
En utilisant l'outil de Chiffrement/Déchiffrement RSA :
- Collez le texte en clair dans la zone de saisie
- Sélectionnez « Chiffrer avec la clé publique »
- Collez la clé publique du destinataire
- Cliquez sur chiffrer pour obtenir le texte chiffré
- Le destinataire déchiffre avec sa clé privée pour récupérer l'original
Signature par Clé Privée + Vérification par Clé Publique
Signer prouve « ce message vient vraiment de moi » :
- Dans l'outil de Chiffrement/Déchiffrement RSA, sélectionnez « Signer avec la clé privée »
- Entrez le message et votre clé privée
- Générez la valeur de signature
- D'autres vérifient la signature avec votre clé publique, confirmant que le message n'a pas été altéré
RSA vs AES : Quand utiliser lequel
| Scénario | Recommandation | Raison |
|---|---|---|
| Chiffrement de fichiers volumineux | AES | RSA est trop lent pour les données en masse |
| Échange de clés | RSA | Chiffrer la clé AES avec la clé publique |
| Signatures numériques | RSA | La nature asymétrique est idéale |
| Jetons JWT | RSA | Le serveur signe avec la clé privée, les clients vérifient avec la clé publique |
En pratique, ils sont souvent combinés : RSA transmet la clé AES, AES chiffre les données réelles (chiffrement hybride).
Problèmes Courants
| Problème | Cause | Solution |
|---|---|---|
| Échec du déchiffrement | Clés incompatibles | Confirmer que les clés publique et privée sont de la même paire |
| Erreur de données trop longues | RSA a une limite de longueur | Utiliser AES à la place ou chiffrer par segments |
| Erreur d'analyse du format | En-têtes PEM manquants | Vérifier que vous avez copié la clé complète |
| Génération lente | Clé de 4096 bits | Normal ; essayer d'abord 2048 bits |
Résumé
Les paires de clés RSA sont le fondement du chiffrement asymétrique. Maîtriser le chiffrement par clé publique et la signature par clé privée, et comprendre les implications de sécurité de la longueur de clé, est essentiel pour le développement sécurisé. L'outil de Paire de Clés RSA et l'outil de Chiffrement/Déchiffrement RSA vous permettent d'effectuer tout le flux de travail directement dans votre navigateur.