Código PHP:
define('CERT_FILE', './B1EE13.cer');
$key=file_get_contents(CERT_FILE);
$key=openssl_x509_read($key);
openssl_x509_export($key, $str_cert);
$key=$str_cert;
//$key es igual al típico
//-----BEGIN CERTIFICATE-----
//-----END CERTIFICATE-----
if(!$pk=openssl_pkey_get_private($key,'password'))
{
while ($err = openssl_error_string())
{
echo $err;
}
}
else
{
echo $pk;
}
Solución:
Usar la clave privada en lugar del certificado
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----