Действительно ли OpenSSL нужен путь к openssl.conf?

Я хочу создать самозаверяющий сертификат в PHP 5.x. с моей собственной (альтернативной) конфигурацией openssl, которая должна быть определена моим PHP-кодом. Сценарий PHP будет работать в разных средах (веб-серверах общего хостинга).

Официальное Руководство по PHP гласит:

По умолчанию информация в вашей системе openssl.conf используется для инициализации запроса; можно указать раздел файла конфигурации, установив ключ config_section_section в configargs.Вы также можете указать альтернативный файл конфигурации openssl, установив значение ключа конфигурации в путь к файлу, который вы хотите использовать. Следующее ключи, если они присутствуют в configargs, ведут себя как их эквиваленты в openssl.conf, как указано в таблице ниже.....

Мой вопрос: есть ли причина, по которой я должен явно указывать путь к openssl.conf, потому что кажется, что без него все работает нормально:

$Configs = array(       
    'digest_alg' => 'sha1',
    'x509_extensions' => 'v3_ca',
    'req_extensions' => 'v3_req',
    'private_key_bits' => 1024,
    'private_key_type' => OPENSSL_KEYTYPE_RSA,
    'encrypt_key' => true,
    'encrypt_key_cipher' => OPENSSL_CIPHER_3DES
);

$privkey = openssl_pkey_new();
$csr = openssl_csr_new($dn, $privkey, $Configs);
$sscert = openssl_csr_sign($csr, null, $privkey, 365, $Configs);

Редактировать:

В пользовательском вкладе ted примечания к Руководству по PHP, почему они всегда указывают путь к openssl.cnf? Например:

$configargs = array(
    'config' => '/etc/ssl/openssl.cnf',
    'digest_alg' => 'md5',
    'x509_extensions' => 'v3_ca',
    'req_extensions'   => 'v3_req',
    'private_key_bits' => 666,
    'private_key_type' => OPENSSL_KEYTYPE_RSA,
    'encrypt_key' => false,
);

15
задан hakre 10 June 2012 в 16:18
поделиться