openssl encryption

From: Date: Sat, 24 May 2008 04:33:14 +0000
Subject: openssl encryption
Groups: php.general 
Request: Send a blank email to php-general+get-274656@lists.php.net to get a copy of this message
HI, I'm trying to encrypt and decrypt data in my PHP scripts using the openssl API. However, while the encryption seems to work, I cannot decrypt what I encrypted. The keys I use have been produced the following way. openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout example.key -out example.crt openssl x509 -in example.crt -pubkey -noout > example.pub I now try the following for encryption $key = file_get_contents('example.pub'); $flag = openssl_public_encrypt($data,$encrypted,$key); which seems to work fine. Now, I try to decrypt as $flag = openssl_private_decrypt($data,$decrypted,$key); $key = file_get_contents('example.key'); This will result in error:0407106B:rsa routines:func(113):reason(107) error:04065072:rsa routines:func(101):reason(114) Which according to 'openssl errstr' means error:0407106B:rsa routines:RSA_padding_check_PKCS1_type_2:block type is not 02 error:04065072:rsa routines:RSA_EAY_PRIVATE_DECRYPT:padding check failed Wht am I doing wrong? I'm using PHP 4.3.9 which I cannot upgrade because I don't have full control over the server. :( I've also tried explicitly setting the padding type but to no avail. Cheers, Christian

« previous php.general (#274656) next »