openssl_public_decrypt

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

openssl_public_decrypt公開鍵でデータを復号する

説明

openssl_public_decrypt(
    string $data,
    string &$decrypted_data,
    OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $public_key,
    int $padding = OPENSSL_PKCS1_PADDING
): bool

openssl_public_decrypt() は、事前に openssl_private_encrypt() で暗号化された data を復号し、それを decrypted_data に格納します。

これを使用するのは、例えばメッセージの作者が秘密鍵の所有者であるかどうかを調べる場合です。

パラメータ

data

decrypted_data

public_key

public_key は、 データの暗号化に使用したものに対応する公開鍵である必要があります。

padding

padding には OPENSSL_PKCS1_PADDING あるいは OPENSSL_NO_PADDING が指定可能です。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.0.0 public_key は、 OpenSSLAsymmetricKey または OpenSSLCertificate クラスのインスタンスを受け入れるようになりました。 これより前のバージョンでは、 OpenSSL key または OpenSSL X.509 型のリソースを受け入れていました。

参考

関連キーワード:  データ, 復号, public, data, key, decrypt, private, encrypt, string, decrypted