Получатель дал мне открытый ключ, и мне нужно использовать его для шифрования имени пользователя и пароля. Я сделал различные г&д но ничего не работает.
я использовал
function public_encrypt($plaintext)
{
$fp=fopen("private.key","r");
$pub_key=fread($fp,8192);
fclose($fp);
openssl_get_publickey($pub_key);
openssl_public_encrypt($plaintext,$crypttext, $pub_key);
return(base64_encode($crypttext));
}
Но это дает мне openssl_public_encrypt(): key parameter is not a valid public key
ошибка.
Я также добавил начало и конец строки к ключу, но все равно безуспешно
Будь добр, наставь меня, следуй за мной, потому что я новичок в этом
Вы пытаетесь декодировать ключ, который не в каком-либо известном формате. Я предполагаю, что это было сделано кем-то, кто не полностью понимает крипто, так как он имеет модуль 1023 бит.
Если вы посмотрите на шестнадцатеричное представление, вы найдете модуль со значением:
4D49BB0D2E0FA132D081A6338C178124AB2B1B61A57C6C30D05EAD179BE1040B235E0EE83F3BF29A8F19DC33B7E245FAE7BE96E35CC2DF49E8B519D4F53501E3566D693A66E69D8C812AF66AC6D5D86ED764ED27A91C5828CE860A8B01077C15142B77BF772AFF201577DF8FBE9E92168539480E024DFF51173CD26B65858ACA
(просто последнее значение в структуре с размером, близким к 1024 битам) и открытый показатель со значением
010001
Других решений пока нет …