PHP openssl_public_encrypt“;键参数不是有效的键”;

PHP openssl_public_encrypt“;键参数不是有效的键”;,php,openssl,public-key,Php,Openssl,Public Key,我的公钥在一个名为publickey.key的文件中 文件的内容是这样的 MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtixUGzGpLXgZ7AV1HfmIHV/FEF+fww77FekRc2oLhUOd4HitwCPo76fjtdsQBEt8w9HZ3CXVphaAU2BA6MEZJ3ShVMsdAXb2ZA1C+lu7k1GV9M/BhucTg35HujSK647Sc5MwVLwFsN80dAnGsZF8gwb2TNUzXHwzbAb30T01z

我的公钥在一个名为publickey.key的文件中 文件的内容是这样的

MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtixUGzGpLXgZ7AV1HfmIHV/FEF+fww77FekRc2oLhUOd4HitwCPo76fjtdsQBEt8w9HZ3CXVphaAU2BA6MEZJ3ShVMsdAXb2ZA1C+lu7k1GV9M/BhucTg35HujSK647Sc5MwVLwFsN80dAnGsZF8gwb2TNUzXHwzbAb30T01zuqf8RCM75OwKZFYqzu7FOVrtk/w9mh92MOXG0l7WSqNIctu8Kxka/tEJJIA5nqMGNMocjwprXy66NS7FFy1GY+NnxfFLtODqq0tllc50UCDsnqSvNmj2wcnAcsCzNOoxPPgp7t8S+sQvOzgc5W3CDjIsYEiGD+vzSVNkGiRou577wIDAQAB
///////在我的.php文件中,我按照以下步骤使用此公钥加密我的字符串

$fp=fopen ("publickey.key","r");
    $publicKey=fread($fp,8192);
    fclose($fp);
$encrypted = '';
$secret='what i want to encrypt';

    if (!openssl_public_encrypt($secret, $encrypted, $publicKey)) 
    {   
        die('Failed to encrypt data');
    }
但我得到了这个错误

警告:openssl\u public\u encrypt()[函数.openssl public encrypt]:密钥参数不是

在我的代码中有什么地方我做错了吗?
救命啊

您可能需要在密钥blob前后添加
----开始RSA公钥---
----结束RSA公钥---
。您可能还需要使用chunk_split,因为

真的,不过,我建议使用。除其他功能外,它具有更通用的密钥处理功能