PHP
加密 | Cryptography

openssl_pkey_get_details

openssl_pkey_get_details

(PHP 5 >= 5.2.0, PHP 7)

openssl_pkey_get_details — 返回一个包含关键细节的数组

描述

array openssl_pkey_get_details ( resource $key )

该函数返回关键细节(位,键,类型)。

参数

key

持有钥匙的资源。

返回值

以成功或FALSE失败的形式返回包含关键细节的数组。返回的数组的索引(比特数),密钥(公共密钥的字符串表示)和类型(这是一个关键的类型OPENSSL_KEYTYPE_RSAOPENSSL_KEYTYPE_DSAOPENSSL_KEYTYPE_DHOPENSSL_KEYTYPE_EC或-1意义未知)。

根据使用的密钥类型,可能会返回更多详细信息。请注意,某些元素可能并不总是可用的。

  • OPENSSL_KEYTYPE_RSA,返回一个名为“rsa”的附加数组键,其中包含关键数据。关键描述 “n”模数 “e”公开指数 “d”私人指数 “p”素数1 “q”素数2 “dmp1”指数1,d mod(p-1) “dmq1”指数2,d mod(q-1) “iqmp”系数,(q的倒数)mod p

  • OPENSSL_KEYTYPE_DSA,会返回一个名为“dsa”的附加数组键,其中包含关键数据。关键描述 “p”素数(公共) “q” 160位次级,q | p-1(公共) “g”子组的生成者(public) “priv_key”私钥x “pub_key”公钥y = g ^ x

  • OPENSSL_KEYTYPE_DH,返回一个名为“dh”的附加数组键,其中包含关键数据。密钥描述 “p”素数(共享) “g” Z_p的生成器(共享) “priv_key”私有DH值x “pub_key”公共DH值g ^ x

  • OPENSSL_KEYTYPE_EC, an additional array key named "ec", containing the key data is returned. Key Description "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

← openssl_pkey_free

openssl_pkey_get_private →