返回包含金鑰詳情的陣列

openssl_pkey_get_details

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

openssl_pkey_get_details返回包含金鑰詳情的陣列

說明

openssl_pkey_get_details(resource $key): array

該函式返回金鑰詳情(位長度,金鑰,型別).

參數

key

持有金鑰的資源。

返回值

成功,返回包含金鑰詳情的陣列,失敗返回 false . 返回的陣列中包含了如下索引: bits (位數), key (表示公鑰的字串) 和 type (如下金鑰型別之一: OPENSSL_KEYTYPE_RSA, OPENSSL_KEYTYPE_DSA, OPENSSL_KEYTYPE_DH, OPENSSL_KEYTYPE_EC 或者 未知型別返回1).

取決於所使用金鑰的型別,可能會返回其他額外的資訊。請注意,有些元素可能並不總是可用的。

  • OPENSSL_KEYTYPE_RSA, 一個額外的鍵名為 "rsa"的陣列,包含了以下金鑰數據:
    Key 說明
    "n" modulus
    "e" public exponent
    "d" private exponent
    "p" prime 1
    "q" prime 2
    "dmp1" exponent1, d mod (p-1)
    "dmq1" exponent2, d mod (q-1)
    "iqmp" coefficient, (inverse of q) mod p
  • OPENSSL_KEYTYPE_DSA, 一個額外的鍵為 "dsa" 的陣列, 包含如下的金鑰數據。
    Key 說明
    "p" prime number (public)
    "q" 160-bit subprime, q | p-1 (public)
    "g" generator of subgroup (public)
    "priv_key" private key x
    "pub_key" public key y = g^x
  • OPENSSL_KEYTYPE_DH, 一個額外的鍵為 "dh" 的陣列,包含如下的金鑰數據。
    Key 說明
    "p" prime number (shared)
    "g" generator of Z_p (shared)
    "priv_key" private DH value x
    "pub_key" public DH value g^x
  • OPENSSL_KEYTYPE_EC, 一個額外的鍵為 "ec" 的陣列,包含如下的金鑰數據。
    Key 說明
    "curve_name" name of curve, see openssl_get_curve_names()
    "curve_oid" ASN1 Object identifier (OID) for EC curve.
    "x" x coordinate (public)
    "y" y coordinate (public)
    "d" private key

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *