У меня есть закрытый ключ здесь:
-----BEGIN ENCRYPTED PRIVATE KEY-----
...<< private_key_bits' => 2048 >>...
-----END ENCRYPTED PRIVATE KEY-----
я хочу зашифровать строку, это мой код:
$rsa = Rsa::factory(array(
'public_key' => 'public_key_'.$username.'.pub',
'private_key' => 'private_key_'.$username.'.pem',
'pass_phrase' => $username.' '.date("Y/m/d h:i:s").'',
'binary_output' => false
));
$encrypt = $rsa->encrypt($content);
это возвращает ошибку:
Unable to load private key; openssl error:0906D06C
Я видел в Zend / Crypt, то попробуйте параметры print_r, это правильно. имя ключа приватное, парольная фраза .. было правдой, тогда я print_r openssl_pkey_get_private
результат:
public function __construct($pemString, $passPhrase = null)
{
$result = openssl_pkey_get_private($pemString, $passPhrase);
print_r($result);
die();
if (false === $result) {
throw new Exception\RuntimeException(
'Unable to load private key; openssl ' . openssl_error_string()
);
}
но openssl_pkey_get_private
вернуть ноль. я не знаю, что случилось с моим личным ключом.
Задача ещё не решена.
Других решений пока нет …