(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_pkey_get_details — Получает массив с детальной информацией о ключе
Эта функция возвращает массив с детальной информацией о ключе.
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.0 | key теперь принимает экземпляр OpenSSLAsymmetricKey; ранее принимался ресурс (resource) типа OpenSSL key . |