Cita:
Empezado por aflores1
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, $res, pass);
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