(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_pkey_get_details — キーの詳細の配列を返す
この関数は、キーの詳細 (bits, key, type) を返します。
key
キーを保持する配列。
成功した場合にキーの詳細を含む配列、失敗した場合に false
を返します。 返される配列のキーは bits
(ビット数)、 key
(公開鍵を表す文字列) および type
(キーの種類。 OPENSSL_KEYTYPE_RSA
、 OPENSSL_KEYTYPE_DSA
、 OPENSSL_KEYTYPE_DH
、 OPENSSL_KEYTYPE_EC
のいずれか。あるいは不明な場合は -1) となります。
使っているキーの型によって、さらに詳細が返されます。 常に存在するわけではない要素もあることに注意しましょう。
OPENSSL_KEYTYPE_RSA
の場合は "rsa"
というキーがあり、キーのデータが返されます。 キー | 説明 |
---|---|
"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"
というキーがあり、キーのデータが返されます。 キー | 説明 |
---|---|
"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"
というキーがあり、キーのデータが返されます。 キー | 説明 |
---|---|
"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 |
バージョン | 説明 |
---|---|
8.0.0 | key は、 OpenSSLAsymmetricKey クラスのインスタンスを受け入れるようになりました。 これより前のバージョンでは、 OpenSSL key 型のリソースを受け入れていました。 |