Как получить информацию CSR ASN.1 от csr php - PullRequest
0 голосов
/ 29 ноября 2018

Я хочу декодировать 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
    )

Заранее спасибо.:)

1 Ответ

0 голосов
/ 21 января 2019

Вы можете использовать библиотеку 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);
...