PHP中OpenSSL加密问题整理

2025-05-27 0 69

最近公司项目中有需要用到OpenSSL加密和java端进行接口验证,再测试环境升级到PHP7的时候加密会出现错误,后来多方面检查终于找到原因所在:

PHP7环境下把openssl_get_privatekey方法换成openssl_pkey_get_private

需要转换一下秘钥,window环境和Linux环境下的秘钥格式有区别(暂时不确定是不是操作系统的关系)

PHP的秘钥验证需要加上头尾。

这里贴上附属方法

转换秘钥格式的方法:

?

1

2

3

4

5

6
function transJavaRsaKeyToPhpOpenSSL($content) {

if ($content) {

return trim(chunk_split($content, 64, "\\n"));

}

return false;

}

加头尾的方法:

?

1

2

3

4

5

6

7

8
function appendFlags($content, $isPublic = true) {

if ($isPublic) {

return "-----BEGIN PUBLIC KEY-----\\n" . $content . "\\n-----END PUBLIC KEY-----\\n";

}

else {

return "-----BEGIN PRIVATE KEY-----\\n" . $content . "\\n-----END PRIVATE KEY-----\\n";

}

}

以上就是本次遇到OPENSSL加密问题的小经验,大家还有问题的话在下方留言讨论吧。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 PHP中OpenSSL加密问题整理 https://www.kuaiidc.com/71698.html

相关文章

发表评论
暂无评论