Movatterモバイル変換


[0]ホーム

URL:


PHP 8.5.0 Alpha 2 available for testing
    openssl_private_encrypt »
    « openssl_pkey_new

    openssl_private_decrypt

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

    openssl_private_decryptDecrypts data with private key

    Description

    openssl_private_decrypt(
        string$data,
        #[\SensitiveParameter]string&$decrypted_data,
        #[\SensitiveParameter]OpenSSLAsymmetricKey|OpenSSLCertificate|array|string$private_key,
        int$padding =OPENSSL_PKCS1_PADDING
    ):bool

    openssl_private_decrypt() decryptsdata that was previously encrypted viaopenssl_public_encrypt() and stores the result intodecrypted_data.

    You can use this function e.g. to decrypt data which is supposed to only be available to you.

    Parameters

    data

    decrypted_data

    private_key

    private_key must be the private key that corresponds to the public key that was used to encrypt the data.

    padding

    padding can be one ofOPENSSL_PKCS1_PADDING,OPENSSL_SSLV23_PADDING,OPENSSL_PKCS1_OAEP_PADDING,OPENSSL_NO_PADDING.

    Return Values

    Returnstrue on success orfalse on failure.

    Changelog

    VersionDescription
    8.0.0private_key accepts anOpenSSLAsymmetricKey orOpenSSLCertificate instance now; previously, aresource of typeOpenSSL key orOpenSSL X.509 was accepted.

    See Also

    Found A Problem?

    Learn How To Improve This PageSubmit a Pull RequestReport a Bug
    add a note

    User Contributed Notes1 note

    wfredkNOSPAM at L5DevelopmentNOSPAM dot com
    23 years ago
    Encrypt using public key, decrypt using private key.

    Use this to store stuff in your database: Unless someone
    has your private key, the database contents are useless.

    Also, use this for sending to a specific individual: Get
    their public key, encrypt the message, only they can use
    their private key to decode it.

    <?php
    echo"Source:$source";
    $fp=fopen("/path/to/certificate.crt","r");
    $pub_key=fread($fp,8192);
    fclose($fp);
    openssl_get_publickey($pub_key);
    /*
    * NOTE: Here you use the $pub_key value (converted, I guess)
    */
    openssl_public_encrypt($source,$crypttext,$pub_key);
    echo
    "String crypted:$crypttext";

    $fp=fopen("/path/to/private.key","r");
    $priv_key=fread($fp,8192);
    fclose($fp);
    // $passphrase is required if your key is encoded (suggested)
    $res=openssl_get_privatekey($priv_key,$passphrase);
    /*
    * NOTE: Here you use the returned resource value
    */
    openssl_private_decrypt($crypttext,$newsource,$res);
    echo
    "String decrypt :$newsource";
    ?>
    add a note
    To Top
    and to navigate •Enter to select •Esc to close
    PressEnter without selection to search using Google

    [8]ページ先頭

    ©2009-2025 Movatter.jp