CakeFest 2017 NYC, the Official CakePHP Conference


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



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

openssl_get_privatekey()key をパースし、他の関数で使用できるよう準備します。



key は以下のいずれかです。

  1. file://path/to/file.pem 形式の文字列。 このファイルは、PEM エンコードされた証明書/秘密鍵である必要が あります(両方を含むことも可能です)。
  2. PEM フォーマットの秘密鍵。


指定されたキーが(パスフレーズを用いて)暗号化されている場合は、 オプションのパラメータ passphrase を使用する必要があります。


成功した場合に正のキーリソース ID、エラー時に FALSE を返します。

add a note add a note

User Contributed Notes 3 notes

kristof1 at mailbox dot hu
2 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.
5 years ago
Please note that "file://path/to/file.pem" in documentation means file protocol + file path. In UNIX like OS, that is something like file:///rsa_private_key.pem. There is THREE slashes in the path string, not TWO.
geoff at hostfission dot com
4 months ago
Since this function can be used to load a PEM encoded string also, those that are using it relying on user input should be sure to check that the passed data is indeed a PEM encoded string and not a malicious file path.

The following should be sufficient.

= trim($_POST['private']);
  if (
strpos($private, '-----') !== 0) return false;
To Top