openssl_pkey_get_details

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

openssl_pkey_get_detailsПолучает массив с детальной информацией о ключе

Описание

openssl_pkey_get_details(OpenSSLAsymmetricKey$key): array|false

Эта функция возвращает массив с детальной информацией о ключе.

Список параметров

key

Ресурс, содержащий ключ.

Возвращаемые значения

Возвращает массив с детальной информацией о ключе, либо false. Массив содержит следующие индексы: bits (количество бит), key (строковое представление открытого ключа) и type (тип ключа, одна из констант: OPENSSL_KEYTYPE_RSA, OPENSSL_KEYTYPE_DSA, OPENSSL_KEYTYPE_DH, OPENSSL_KEYTYPE_EC или -1, если неизвестно).

В зависимости от типа используемого ключа, могут быть возвращены дополнительные данные. Обратите внимание, что некоторых элементов может и не быть.

  • Для OPENSSL_KEYTYPE_RSA возвращается элемент с индексом "rsa", содержащий данные ключа.
    КлючОписание
    "n"модуль
    "e"открытая экспонента
    "d"секретная экспонента
    "p"первое простое число
    "q"второе простое число
    "dmp1"первая экспонента, d mod (p-1)
    "dmq1"вторая экспонента, d mod (q-1)
    "iqmp"коэффициент, (1 / q) mod p
  • Для OPENSSL_KEYTYPE_DSA возвращается элемент с индексом "dsa", содержащий данные ключа.
    КлючОписание
    "p"Простое число (публичное)
    "q"160-битное простое число, такое, что p-1 делится на q (публичное)
    "g"Генератор подгрупп (публичный). Мультипликативный порядок g по модулю p равен q
    "priv_key"Секретный ключ x
    "pub_key"Открытый ключ y = g^x
  • Для OPENSSL_KEYTYPE_DH возвращается элемент с индексом "dh", содержащий данные ключа.
    КлючОписание
    "p"Простое число (открытое)
    "g"Генератор Z_p (открытый), простое число, первообразный корень по модулю p
    "priv_key"секретное DH значение x
    "pub_key"открытое DH значение g^x
  • OPENSSL_KEYTYPE_EC возвращается элемент с индексом "ec", содержащий данные ключа.
    КлючОписание
    "curve_name"Название кривой, смотри openssl_get_curve_names()
    "curve_oid"Идентификатор объекта ASN1 (OID) для кривой EC.
    "x"x координата (открытая)
    "y"y координата (открытая)
    "d"секретный ключ

Список изменений

ВерсияОписание
8.0.0key теперь принимает экземпляр OpenSSLAsymmetricKey; ранее принимался ресурс (resource) типа OpenSSL key.
To Top