openssl_free_key ожидает, что параметр 1 будет ресурсом

У меня есть этот код:

openssl_pkcs12_read($p12buf, $p12cert, $decPass);
openssl_pkey_export($p12cert['pkey'], $pemkey); 
openssl_sign($toSign, $signature, $pemkey, OPENSSL_ALGO_SHA1);
openssl_free_key($pemkey);

Я получаю это предупреждение:

Warning (2): openssl_free_key() expects parameter 1 to be resource, string given

Как от него избавиться или что я делаю не так?


person uldo    schedule 18.07.2013    source источник


Ответы (1)


openssl_free_key требуется результат (ресурс) openssl_pkey_get_private или openssl_pkey_get_public

$key = openssl_pkey_get_private($keyFile, $passphrase);
openssl_free_key($key);
person tlenss    schedule 18.07.2013
comment
openssl_free_key (openssl_pkey_get_private ($ pemkey)); кажется, работает просто отлично. Благодарю вас! - person uldo; 18.07.2013