Ver Mensaje Individual
  #1244  
Antiguo 07-08-2021
Sistel Sistel is offline
Miembro
 
Registrado: nov 2019
Ubicación: Bilbao
Posts: 373
Reputación: 5
Sistel Va por buen camino
Cita:
Empezado por aflores1 Ver Mensaje
En php como habeis conseguido pasar el certificado de pfx a pem?¿

Lo estoy intentado de esta forma pero me da error luego el servicio

Código PHP:
function ConvertirCertificadoPEM($certificado,$pass){
    
$rutaCertPem CERTPEM;
    if(!
file_exists($rutaCertPem)){   
    
$res = [];
    
$openSSL openssl_pkcs12_read($certificado$respass);
    if(!
$openSSL) {
        echo 
"Error: ".openssl_error_string();
    }

    
$cert $res['cert'].implode(''$res['extracerts']);
    
file_put_contents($rutaCertPem$cert);
    return 
$rutaCertPem
Hola aflores1,

Mira en https://www.clubdelphi.com/foros/sho...&postcount=538
Ahí nuestro colega bilbur tiene su firmador.php
Él hace:
Código PHP:
if (openssl_pkcs12_read($pfx$key$clavecertificado))
    {
    
$this->publicKey    $key["cert"];
    
$this->privateKey   $key["pkey"];
    
$complem              openssl_pkey_get_details(openssl_pkey_get_private($this->privateKey));
    
$this->Modulus        base64_encode($complem['rsa']['n']);
    
$this->Exponent       base64_encode($complem['rsa']['e']);
    } 
Yo obtengo, previamente, cert.pem y pkey.pem con el comando openssl de Linux y los tengo ya almacenados en ese formato:
Código:
openssl pkcs12 -in certificado.pfx -out cert.pem -clcerts -nokeys
openssl pkcs12 -in certificado.pfx -out pkey.pem -nocerts -nodes
Saludos
Responder Con Cita