openssl_pkey_get_private

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

openssl_pkey_get_private获取私钥

说明

openssl_pkey_get_private ( mixed $key , string $passphrase = "" ) : resource

openssl_get_privatekey() 解析 key 供其他函数使用。

参数

key

key 可以是如下密钥之一:

  1. 如下格式的字符串 file://path/to/file.pem。该文件必须包含 PEM 编码的证书或者私钥 (可能都包含了).
  2. 一个PEM格式的私钥。

passphrase

如果指定的密钥已被加密了(受密码保护),可选参数 passphrase 是必须要的。

返回值

成功,返回真实的密钥资源标识符,失败,返回 false .

User Contributed Notes

pablo dot siciliano at gmail dot com 10-Oct-2020 02:26
Hi.

If this function not work with pathname try with a file_get_contents of a key file.
kristof1 at mailbox dot hu 10-May-2014 03:34
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.