当使用openssl_verify()返回false时,如何调试?

时间:2015-11-04 02:21:41

标签: java php openssl rsa

我使用PHP验证符号字符串,该字符串是从JAVA发布的,代码如下:

$result = (bool)openssl_verify($sign_data, $sign, $public_key);
openssl_free_key($public_key);
while ($msg = openssl_error_string())
        echo $msg . "<br />\n";
var_dump($result);die;

然后我得了一个false,我用Google搜索了一整天,但没有回答。可以给我一些建议。

PS:var $public_key是RSA的公钥,我查了一下,是resource(1183) of type (OpenSSL key)

1 个答案:

答案 0 :(得分:0)

首先,你必须保持public_peky.pem是正确的。然后关于var $sign_data,想一下做urldecode()一次甚至两次。关于var $sign,它总是需要做base64_decode()