PHP에서 16 문자 문자열을 RSA 알고리즘 및 PKCS # 1 패턴으로 공개 키 (SanitalCF.cer)에 포함시켜 암호화해야합니다. 마지막으로 base64로 인코딩해야합니다.RSA PKCS # 1은 PHP로 암호화합니다.
이 코드를 tryed했는데, 무엇이 문제입니까?
function EncryptData($source)
{
$fp=fopen("cert/SanitelCF.cer","r");
$pub_key=fread($fp,8192);
fclose($fp);
openssl_public_encrypt($source,$crypttext, $pub_key);
return(base64_encode($crypttext));
}
:
이제 인증서는이 같은 뭔가해야 그래서, 공개 키를 포함, 공개 키 아닌가요? –
PEM으로 인코딩 된 인증서도 함께 보내주십시오 (필요한 경우 openssl 명령 줄을 사용하여 변환 할 수 있음). –
안전하지 않은 PKCS # 1 패딩 형식을 사용하려는 이유는 무엇입니까? 참고 : [ROBOT] (https://robotattack.org/). 대신 libsodium 또는 OAEP를 원합니다. –