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