Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/12/2010, 08:53
Avatar de cluster28
cluster28
 
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 12 años, 5 meses
Puntos: 32
No puedo obtener la clave privada de un certificado (openssl_pkey_get_private)

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;

Resultado: error:0906D06C:PEM routines:PEM_read_bio:no start line

Solución:

Usar la clave privada en lugar del certificado

-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----

Última edición por cluster28; 10/03/2011 a las 05:17 Razón: Solución