2016-04-14 17 views
1

Ich versuche, die Besitzer Informationen eines Zertifikats mit PHP zu bekommen. Ich habe die .p12 Datei und wenn ich versucht, die Informationen mit opensslPHP Funktionen zu lesen:Read Besitzer Cert Daten aus. P12-Datei mit PHP

if (getenv('HTTPS')=='on'){ 
      $cert=$_SERVER['SSL_CLIENT_CERT']; 
     }else{ 
      $fname = "certname.p12"; 
      $f = fopen($fname, "r"); 

      $cert = fread($f, filesize($fname)); 
      fclose($f); 
     } 
     $certdata = array(); 
     $pass = "pass"; 

     openssl_pkcs12_read($cert, $certdata, $pass); 

     print_r($certdata); 

I erhalte drei verschlüsselte Felder:

['cert'] 
['pkey'] 
['extracerts']['0'] 

Wie zum Beispiel E-Mail-Feld im Klartext lesen kann?

Dank

Antwort

1

gelöst durch:

Nach

openssl_pkcs12_read($cert, $certdata, $pass); 

allen

$certdata= openssl_x509_parse($certdata['cert'],0); 

Thanks Haben