Les anciennes listes de condensés se lisent comme une transcription de décisions cryptographiques, et elles ne le sont pas. Des noms comme SHA1, DSA-SHA1-old ou RSA-SHA1-2 voisinent dans d’anciennes compilations d’OpenSSL parce que la bibliothèque a enregistré plusieurs points d’entrée autour d’une machinerie de hachage apparentée. Une étiquette RSA ou DSA dans cette liste ne dit rien sur le traitement appliqué par OpenVPN à un paquet. Ce que vous lisez est l’inventaire de la bibliothèque, non l’enregistrement d’une session.

Trois choses doivent être séparées avant que toute conclusion ait un sens : le nom enregistré, le calcul du condensé en dessous et l’opération qui le consomme.

Un enregistrement est une interface, pas une note de solidité

Dans OpenSSL 1.0.2, la table d’enregistrement des condensés relie noms, alias et implémentations dans un seul fichier. Le vieux descripteur DSS1 est le cas le plus clair : il annonce la longueur de sortie de SHA-1 et appelle la routine de finalisation de SHA-1 tout en portant un nom qui suggère un algorithme entièrement différent. Des lettres supplémentaires dans un enregistrement n’impliquent donc pas un autre hachage, une sortie plus longue ni un nouveau niveau de sécurité.

La même source conserve les relations d’alias pour les appelants plus anciens, ce qui explique qu’une liste paraisse surchargée. C’est de la documentation de compatibilité, non la promesse qu’un fournisseur OpenSSL actuel expose des noms identiques.

Les noms de signature ne créent pas de signatures

Un cadre de signature peut lier un condensé à l’interface d’un autre algorithme pour que les appelants existants continuent de compiler. Une vraie signature à clé publique exige à la fois une clé et l’étape de signature qui l’utilise, et ni l’une ni l’autre n’est fournie par un nom dans un menu. Une entrée de condensé à saveur RSA est un nom qu’un appelant peut employer, pas la preuve que chaque paquet VPN portait une signature RSA.

C’est à cette étape que les textes plus anciens glissent vers le folklore. Si vous devez savoir comment les paquets ont été authentifiés, localisez l’option qui a choisi le mécanisme et lisez ce qu’elle fait dans la version que vous exécutez réellement. La page de manuel livrée avec cette version est la seule description qui corresponde au programme devant vous. Les guides archivés décrivent la version contre laquelle ils ont été écrits, qui peut accuser plusieurs conventions de nommage de retard.

Trouvez l’option qui a consommé le nom

Dans le cas d’authentification de paquets documenté par OpenVPN 2.6, auth sélectionne un condensé utilisé par HMAC, une construction d’authentification de messages à clé plutôt qu’une signature de certificat. L’algorithme de signature du certificat TLS est une propriété distincte de la poignée de main.

Avec un chiffrement de données AEAD, le réglage séparé auth cesse de s’appliquer au canal de données, tandis que son rôle pour tls-auth reste une question distincte. Une liste de condensés ne peut donc pas vous dire quel hachage protégeait les paquets actuels, quelle suite TLS a été négociée ni comment le certificat du pair a été signé. Seule la configuration effective plus la version peuvent y répondre, et uniquement pour la connexion devant vous.

Notez ce que vous avez réellement

Notez la version d’OpenVPN, la bibliothèque cryptographique liée, les options exactes du profil et le résultat d’une connexion réelle. Cet ensemble répond à des questions qu’une capture d’écran d’un menu de condensés ne peut pas trancher, et il survit à la prochaine mise à niveau parce qu’il nomme des versions plutôt que des impressions.

Surtout, ne choisissez pas un alias ancien parce que son nom sonne plus fort ou plus précis. Choisissez la politique prise en charge pour toute la connexion, et traitez les anciens noms comme un relevé de la manière dont une bibliothèque se présentait autrefois.

Articles similaires