Lors de la planification d'une infrastructure à clé publique, la question se pose naturellement de savoir quelles longueurs de clé il convient de choisir pour les certificats d'autorité de certification et les certificats finaux.
L'examen des procédés cryptographiques et leur évaluation en termes d'utilisabilité ne peuvent être qu'un instantané au moment de la publication de l'article. L'évaluation peut tout à fait être dépassée à l'avenir, par exemple en raison d'incidents de sécurité ou de progrès techniques.
Il existe également la possibilité de signer les certificats avec des clés ECC (Elliptic Curve Cryptography). Mais comme cela n'a guère joué de rôle dans la pratique jusqu'à présent, l'utilisation de l'ECC n'a été intégrée que superficiellement dans l'élaboration.
Évaluation de la force clé
Pour une meilleure compréhension, il vaut la peine de comparer la longueur des clés RSA avec une méthode symétrique connue comme AES. Vous trouverez des explications à ce sujet sur le site américain Institut national des normes et des technologies (NIST) ainsi que l'allemand Office fédéral de la sécurité des technologies de l'information (BSI).
| Longueur de la clé (RSA) | Longueur de la clé (ECC) | Longueur de clé symétrique comparable |
|---|---|---|
| 1024 | 160 | 80 |
| 2048 | 224 | 112 |
| 3072 | 245 | 128 |
| 7680 | 384 | 192 |
| 15360 | 512 (521) | 256 |
Recommandations
Connaissez-vous TameMyCerts? TameMyCerts est un add-on pour l'autorité de certification Microsoft (Active Directory Certificate Services). Il étend la fonction de l'autorité de certification et permet de Application de la réglementationIl s'agit d'un logiciel de gestion des certificats qui permet d'automatiser l'émission de certificats en toute sécurité. TameMyCerts est unique dans l'écosystème Microsoft, a déjà fait ses preuves dans d'innombrables entreprises du monde entier et est disponible sous une licence libre. Il peut téléchargé via GitHub et être utilisé gratuitement. Une maintenance professionnelle est également proposée.
- Le National Institute for Standards and Technology (NIST) américain recommande à RSA des longueurs de clé de 2048 bits si les clés et les données qu'elles protègent ne doivent pas être utilisées au-delà de 2030.
- L'Office fédéral allemand de la sécurité des technologies de l'information (BSI) recommande à RSA des longueurs de clés de 3000 (3072) bits si les clés et les données qu'elles protègent doivent être utilisées au-delà de 2022.
- Le maximum actuellement recommandé pour les clés RSA avec une autorité de certification Microsoft est de 4096 bits.
Choix de la longueur de la clé
Le choix de la longueur de la clé dépend de plusieurs facteurs :
- Combien de temps les clés seront-elles en circulation ?
- Toutes mes applications peuvent-elles gérer la longueur de clé choisie ?
- Quel est le coût de calcul de l'utilisation des clés ?
Lors du choix de l'algorithme et de la longueur de la clé, il faut également tenir compte de la durée d'utilisation prévue.
Par exemple, un certificat S/MIME peut n'avoir qu'une durée de validité de quelques années, mais il se peut que les données cryptées qu'il protège doivent être gardées secrètes beaucoup plus longtemps.
Dans la plupart des cas, les clés RSA d'une longueur supérieure à 4096 bits ne sont plus utilisables de manière judicieuse, car les frais de calcul augmentent de manière disproportionnée par rapport au gain de force de la clé. Dans ce cas, les clés basées sur des courbes elliptiques se révèlent nettement plus efficaces, de sorte qu'il convient de leur donner la préférence.
Qu'en est-il de la compatibilité des applications ?
En 2020, la plupart des applications devraient être en mesure de traiter des clés RSA de 4096 bits. Ce ne sera pas nécessairement le cas pour les clés de longueur supérieure.
Tous les CSP et KSP Microsoft peuvent générer et utiliser des clés RSA jusqu'à 16384 bits. Cependant, le programme d'installation graphique pour l'autorité de certification Microsoft n'autorisera pas les longueurs de clé supérieures à 4096 bits.

Si nécessaire, des clés plus longues peuvent être générées en installant l'autorité de certification via PowerShell. Il faut cependant veiller à ce que le certificat utilisé Fournisseur de stockage clé (KSP) (par exemple en cas d'utilisation d'un module de sécurité matériel) doit également prendre en charge ces longueurs de clé.
Il convient également de noter qu'avec les clés RSA, la charge de calcul augmente considérablement avec la taille de la clé, et que les clés plus grandes ne sont donc que rarement utiles - cela aura définitivement un impact sur les performances de toutes les applications qui utiliseront les certificats.

Résumé
La constellation suivante s'avère judicieuse dans de nombreux cas :
- Les clés RSA pour les certificats d'autorité de certification devraient avoir une longueur de clé d'au moins 3072 bits, mais pas plus de 4096 bits, en raison de la longue durée de validité attendue des certificats.
- Dans la mesure où la compatibilité est assurée, il est possible d'obtenir une sécurité des bits (efficace) plus élevée en utilisant des clés ECC.
- Les clés RSA pour les certificats d'entité finale doivent avoir une longueur de clé d'au moins 2048 bits, mais de préférence de 3072 bits.
Liens complémentaires :
- Principes de base : fournisseur de services cryptographiques (CSP) et fournisseur de stockage de clés (KSP)
- Liste des cas d'utilisation des certificats pour lesquels la compatibilité avec les clés basées sur des courbes elliptiques (ECC) est connue
Sources externes
- Recommandation pour la gestion des clés, Partie 1 : Généralités (National Institute for Standards and Technology)
- Le cas de la cryptographie des courbes elliptiques (National Security Agency, lien vers les archives)
- Longueur de clé maximale pour le fournisseur de cryptographie dans AD CS 2012R2 (Forums Microsoft Technet)
- BSI TR-02102 Procédures cryptographiques : Recommandations et longueurs de clé (Office fédéral de la sécurité dans la technologie de l'information)
- Fournisseurs de stockage de clés GNC (Microsoft)
Les commentaires sont fermés.