openssl_pkey_get_private
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
openssl_pkey_get_private — 获取私钥
说明
openssl_pkey_get_private(#[\SensitiveParameter] OpenSSLAsymmetricKey|OpenSSLCertificate|array|string
$private_key
, #[\SensitiveParameter] ?string $passphrase
= null
): OpenSSLAsymmetricKey|false
openssl_pkey_get_private() 解析
private_key
供其他函数使用。
参数
private_key
-
private_key
可以是如下密钥之一:- 如下格式的字符串 file://path/to/file.pem。该文件必须包含 PEM 编码的证书或者私钥 (可能都包含了).
- 一个 PEM 格式的私钥。
passphrase
-
如果指定的密钥已被加密了(受密码保护),可选参数
passphrase
是必须要的。
返回值
成功时现在返回 OpenSSLAsymmetricKey 实例,失败时返回 false
。
更新日志
版本 | 说明 |
---|---|
8.0.0 |
成功时,此函数现在返回 OpenSSLAsymmetricKey 实例;之前返回类型
OpenSSL key 的 resource。
|
8.0.0 |
private_key 现在接受 OpenSSLAsymmetricKey 或
OpenSSLCertificate 实例;之前接受类型
OpenSSL key 或 OpenSSL X.509 的 resource。
|
8.0.0 |
passphrase 现在可为 null。
|
+添加备注
用户贡献的备注 1 note
kristof1 at mailbox dot hu ¶
10 years ago
It's actually "file://key.pem" when you want to give a relative path using unix systems. It will be three '/' in case of absolute path (e.g "file:///home/username/..."). But this path consists of two '/' originated from "file://" and one '/' from the fact that home is a subfolder of the unix filesystem's root directory ("/home/username/..."). This two part will be concatenated and you will get three '/' characters following each other.
So you only have to concatenate "file://" with an existing path string in every case.
备份地址:http://www.lvesu.com/blog/php/function.openssl-pkey-get-private.php