PHP Conference Japan 2024

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|陣列|字串 $private_key, #[\SensitiveParameter] ?字串 $passphrase = null): OpenSSLAsymmetricKey|false

openssl_pkey_get_private() 會解析 private_key 並準備讓其他函式使用。

參數

private_key

private_key 可以是以下其中一種:

  1. 格式為 file://path/to/file.pem 的字串。指定的檔案必須包含 PEM 編碼的憑證/私鑰(它可能同時包含兩者)。
  2. PEM 格式的私鑰。

passphrase

如果指定的密鑰已加密(受 passphrase 保護),則必須使用選用參數 passphrase

傳回值

成功時傳回 OpenSSLAsymmetricKey 實例,錯誤時傳回 false

更新日誌

版本 說明
8.0.0 成功時,此函式現在傳回 OpenSSLAsymmetricKey 實例;先前傳回類型為 OpenSSL key資源
8.0.0 private_key 現在接受 OpenSSLAsymmetricKeyOpenSSLCertificate 實例;先前接受類型為 OpenSSL keyOpenSSL X.509資源
8.0.0 passphrase 現在可以為 null。
新增註解

使用者貢獻的註解 1 則註解

kristof1 at mailbox dot hu
10 年前
當您想在 Unix 系統上使用相對路徑時,它實際上是 "file://key.pem"。如果是絕對路徑(例如 "file:///home/username/..."),它將會是三個 '/'。但此路徑包含兩個源自 "file://" 的 '/' 以及一個源自 home 是 Unix 檔案系統根目錄 ("/home/username/...") 子資料夾的 '/'。這兩部分將會串連,您將會得到三個連續的 '/' 字元。

因此,您只需在所有情況下將 "file://" 與現有的路徑字串串連即可。
To Top