Re: the function openssl_get_publickey() 's result is diferrent in php 7 and php5. 6.16 and php5.5.12 ???? so what is wrong?????
| From: | Frank Arensmeier | Date: | Wed, 16 Mar 2016 10:45:18 +0000 |
| Subject: | Re: the function openssl_get_publickey() 's result is diferrent in php 7 and php5. 6.16 and php5.5.12 ???? so what is wrong????? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-325471@lists.php.net to get a copy of this message | ||
> 16 mar 2016 kl. 11:29 skrev v-LeonHou <764436364@qq.com>:
>
> hi everyone,
>
> today i meet a strange while the function openssl_get_publickey() runs well in php 7 while
> report an error in php5. 6.16 and php5.5.12
>
>
> here is the test code:
>
>
> <?php
>
>
> //define a pem formatted string varaible named $key
> $key = <<<EOF
> -----BEGIN PUBLIC KEY-----
>
> MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCnxj/9qwVfgoUh/y2W89L6BkRAFljhNhgPdyPuBV64bfQNN1PjbCzkIM6qRdKBoLPXmKKMiFYnkd6rAoprih3/PrQEB/VsW8OoM8fxn67UDYuyBTqA23MML9q1+ilIZwBC2AQ2UBVOrFXfFl75p6/B5KsiNG9zpgmLCUYuLkxpLQIDAQAB
> -----END PUBLIC KEY-----
> EOF;
>
>
> //get the
> $res = openssl_get_publickey($key);
> var_dump($res);
>
>
>
> ?>
>
>
>
>
> while in php7.0.0 the result is normal and correct here is the output
> {
> D:\wamp64\www\php\index.php(50) : eval()'d code:24:resource(4, OpenSSL key)
> }
>
>
> but not the same result in php 5.6.16 and php 5.5.12 here is the output
> {
> D:\wamp64\www\php\index.php(50) : eval()'d code:24:boolean false
> }
>
>
> so can you help me with the problem???
>
>
> thanks……..
Hi.
What type of public key are you using? The OpenSSL implementation seems to have some issues with
PKCS#1 RSA public keys. Please read the user comment about openssl_get_publickey about this issue
(http://php.net/manual/en/function.openssl-pkey-get-public.php#101513).
I strongly suggest to have a look at the error message from OpenSSL (openssl_error_string).
/frank