Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : OpenSSL Functions : openssl_pkey_get_private

openssl_pkey_get_private

Get a private key (PHP 4 >= 4.2.0, PHP 5)
resource openssl_pkey_get_private ( mixed key [, string passphrase] )

openssl_get_privatekey() parses key and prepares it for use by other functions.

Parameters

key

key can be one of the following:

  1. a string having the format file://path/to/file.pem. The named file must contain a PEM encoded certificate/private key (it may contain both).
  2. A PEM formatted private key.
passphrase

The optional parameter passphrase must be used if the specified key is encrypted (protected by a passphrase).

Return Values

Returns a positive key resource identifier on success, or FALSE on error.

Code Examples / Notes » openssl_pkey_get_private

meint dot post

Trying for hours to get openssl_pkey_get_private to load my private key (no problems with openssl_pkey_get_public) I found that the following loaded the private key correctly:
$passphrase="test";
$priv_key_file_name = ("./private.pem");
if (openssl_pkey_get_private(array("file://$priv_key_file_name", $passphrase)))
{
       print "\nPrivate Key OK\n\n";
} else {
       print "\nPrivate key NOT OK\n\n";
}


joel barker

Note that the important part of meint's post is that there is a SINGLE argument: an ARRAY of two elements. In other words, the correct prototype of the function is
resource openssl_pkey_get_private ( array params )
where params = array( 0 => $key, 1 => $passphrase)
Thanks, meint, you made my day!


Change Language


Follow Navioo On Twitter
openssl_csr_export_to_file
openssl_csr_export
openssl_csr_get_public_key
openssl_csr_get_subject
openssl_csr_new
openssl_csr_sign
openssl_error_string
openssl_free_key
openssl_get_privatekey
openssl_get_publickey
openssl_open
openssl_pkcs12_export_to_file
openssl_pkcs12_export
openssl_pkcs12_read
openssl_pkcs7_decrypt
openssl_pkcs7_encrypt
openssl_pkcs7_sign
openssl_pkcs7_verify
openssl_pkey_export_to_file
openssl_pkey_export
openssl_pkey_free
openssl_pkey_get_details
openssl_pkey_get_private
openssl_pkey_get_public
openssl_pkey_new
openssl_private_decrypt
openssl_private_encrypt
openssl_public_decrypt
openssl_public_encrypt
openssl_seal
openssl_sign
openssl_verify
openssl_x509_check_private_key
openssl_x509_checkpurpose
openssl_x509_export_to_file
openssl_x509_export
openssl_x509_free
openssl_x509_parse
openssl_x509_read
eXTReMe Tracker