Я хотел зашифровать / расшифровать / подписать … и так далее, и я нашел этот код:
public $pubkey = '...public key here...';
public $privkey = '...private key here...';
public function encrypt($data)
{
if (openssl_public_encrypt($data, $encrypted, $this->pubkey))
$data = base64_encode($encrypted);
else
throw new Exception('Unable to encrypt data. Perhaps it is bigger than the key size?');
return $data;
}
public function decrypt($data)
{
if (openssl_private_decrypt(base64_decode($data), $decrypted, $this->privkey))
$data = $decrypted;
else
$data = '';
return $data;
}
Единственная проблема заключается в том, что я получил формат private.pem (или .key dosnt вещество) и вопрос:
Как мне импортировать мой файл private.pem в этот код?
Использовать openssl_pkey_get_public()
функция: http://php.net/manual/en/function.openssl-pkey-get-public.php
Он расшифровывает формат .pem и извлекает ключи, необходимые для работы.
Других решений пока нет …