By Christophe on mardi 27 décembre 2016
Category: Erreurs SSL

Solution : Erreur SSL "X509_check_private_key:key values mismatch"

Lorsque vous générez une requête CSR, nécessaire pour acheter un certificat SSL, vous générez également une clé privée qui sert à l'installation du certificat SSL.
Cette clé privée est composée de deux parties : Les nombres de la "clé privée" et ceux de la "clé publique".

Les nombres de la "clé publique" sont intégrés à la requête CSR, puis au certificat SSL. C'est pour cette raison qu'un certificat SSL est inutilisable sans sa clé privée.

Quand comparer la clé privée avec le certificat SSL ?

Si votre application vous retourne l'un des messages d'erreur ci-dessous, la clé privée (private key) ne correspond pas au certificat SSL (x509 certificate) :
Apache 2 : certificate routines:X509_check_private_key:key values mismatch
Nginx :
SSL: error:0B080074:x509 certificate routines: X509_check_private_key:key values mismatch

Lighttpd : Private key does not match the certificate public key (error: 0906dD64)
Citrix - NetScaller :
Certificate and private key do not match

Comment comparer la clé privée avec le certificat SSL ?

​Connectez vous sur votre serveur en SSH, et exécutez les commandes ci-dessous :

Dans cet exemple, nous constatons que le modulus du certificat SSL correspond avec celui de la requête CSR mais pas avec celui de la clé privée.
Vous avez donc sélectionné la mauvaise clé privée (key values mismatch), qui rend le certificat x509 inutilisable. Le service refuse donc de démarrer.

En cas de perte de la clé privée, l'unique solution est de générer une nouvelle requête CSR / clé privé et de nous demander la ré-émission du certificat SSL (service gratuit).

Si le modulus de la clé privée correspond à celui de la requête CSR mais pas à celui du certificat SSL, contactez-nous afin que le certificat x509 vous soit ré-envoyé.