Cómo consultar OCSP del PJF desde PHP

 

 Cómo consultar OCSP del PJF desde PHP

Los certificados FIREL y e.firma son X.509.
Dentro del certificado viene la URL del OCSP.

Primero debes extraerla.


🔎 Paso 1: Extraer URL OCSP del certificado

<?php

$cert = file_get_contents("certificado.pem");
$certInfo = openssl_x509_parse($cert);

print_r($certInfo['extensions']);

?>

Busca algo como:

authorityInfoAccess =>
OCSP - URI:http://ocsp.pjf.gob.mx

o

OCSP - URI:http://ocsp.sat.gob.mx

🔐 Paso 2: Ejecutar consulta OCSP con OpenSSL

PHP no tiene cliente OCSP nativo completo, así que se usa OpenSSL vía shell.

Ejemplo:

<?php

$comando = "openssl ocsp
-issuer issuer.pem
-cert certificado.pem
-url http://ocsp.pjf.gob.mx
-CAfile raiz.pem
-resp_text";

$output = shell_exec($comando);

echo "<pre>$output</pre>";

?>

Si todo está correcto verás algo como:

certificado.pem: good
This Update: Feb 21 20:45:00 2026 GMT

Estados posibles:

  • good → no revocado

  • revoked → revocado

  • unknown → no reconocido


📌 Paso 3: Guardar evidencia (muy importante)

Cuando consultes OCSP debes guardar:

  • Hash SHA256 del documento

  • Número de serie del certificado

  • Respuesta OCSP completa

  • Fecha y hora del servidor

  • IP de recepción

Ejemplo:

$hash = hash_file('sha256', 'documento.pdf');
$fecha = date('Y-m-d H:i:s');
file_put_contents("evidencia.txt", $output);

Eso es lo que te protege procesalmente.

Comentarios

Entradas populares de este blog

API Web Crypto,

Reaccionar formularios

React Events