【PHP8.x】openssl_get_privatekey関数の使い方

作成日: 更新日:

openssl_get_privatekey関数は、指定された秘密鍵を解析し、後続の暗号化処理などで利用可能な形式に変換するために実行する関数です。この関数は、openssl_pkey_get_private() 関数のエイリアス(別名)としても知られています。第1引数には、PEM形式でエンコードされた秘密鍵のデータそのものを文字列として渡すか、「file://」に続けて秘密鍵が保存されているファイルのパスを指定します。もし、対象の秘密鍵がパスワード(パスフレーズ)で保護されている場合は、第2引数にそのパスフレーズを文字列で指定する必要があります。パスフレーズによる保護がない場合は、この引数は省略可能です。関数の実行が成功すると、秘密鍵を表すOpenSSLAsymmetricKeyオブジェクトを返します。この返されたオブジェクトは、データの署名や復号を行う他のOpenSSL関連関数で秘密鍵として利用できます。一方で、指定された鍵の形式が不正であったり、パスフレーズが間違っていたりして解析に失敗した場合にはfalseを返します。

基本的な使い方

構文(syntax)

$private_key_object = openssl_get_privatekey($private_key_string_or_path, $passphrase);

引数(parameters)

OpenSSLAsymmetricKey|string $private_key, ?string $passphrase = null

  • OpenSSLAsymmetricKey|string $private_key: 読み込む秘密鍵を指定します。OpenSSLAsymmetricKey オブジェクトまたは鍵データを含む文字列で指定できます。
  • ?string $passphrase = null: 秘密鍵がパスフレーズで保護されている場合に、そのパスフレーズを指定します。パスフレーズがない場合は null または省略します。

戻り値(return)

OpenSSLAsymmetricKey|false

指定されたPEMエンコーディングされた証明書から、プライベートキーリソースへの参照、または失敗した場合はfalseを返します。

【PHP8.x】openssl_get_privatekey関数の使い方 | いっしー@Webエンジニア