Я хочу декодировать CSR и хочу получить его подробную информацию и информацию ASN.1.
Я использую следующие функции
$cert_data = openssl_csr_get_public_key($csr);
$cert_details = openssl_pkey_get_details($cert_data);
$cert_key = $cert_details['key'];
$cert_subject = openssl_csr_get_subject($csr);
Но только получая следующую информацию:
Array
(
[subject] => Array
(
[C] => GB
[ST] => Staffordshire
[L] => Stoke on Trent
[O] => Red Kestrel Consulting Ltd
[CN] => testcert.redkestrel.co.uk
)
[key] => -----BEGIN PUBLIC KEY-----
-----END PUBLIC KEY-----
[details] => Array
(
[bits] => 2048
[key] => -----BEGIN PUBLIC KEY-----
-----END PUBLIC KEY-----
[rsa] => Array
()
[type] => 0
)
Заранее спасибо. 🙂
Вы можете использовать библиотеку PHP ‘Phpseclib’ и сделать что-то подобное
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$csrInPEM = file_get_contents(__DIR__ . '/server.csr');
$x509 = new \phpseclib\File\X509();
$spkac = $x509->loadCSR($csrInPEM);
var_dump($spkac);
Других решений пока нет …