parent root
PHP: openssl_private_decrypt - Manual

openssl_private_decrypt

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

openssl_private_decryptDecrypts data with private key

Description

openssl_private_decrypt ( string $data , string &$decrypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] ) : bool

openssl_private_decrypt() decrypts data that was previously encrypted via openssl_public_encrypt() and stores the result into decrypted.

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

Parameters

data

decrypted

key

key must be the private key corresponding that was used to encrypt the data.

padding

padding can be one of OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.

Return Values

Returns TRUE on success or FALSE on failure.

See Also

add a noteadd a note

User Contributed Notes 2 notes

up
11
wfredkNOSPAM at L5DevelopmentNOSPAM dot com
17 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";
?>
up
-17
tjusongchao at gmail dot com
4 years ago
of course you have to add the openssl extension to you php environment.
To Top
parent root