前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP中OpenSSL加密问题整理

PHP中OpenSSL加密问题整理

作者头像
用户8664418
修改2021-07-13 18:12:20
4540
修改2021-07-13 18:12:20
举报
文章被收录于专栏:自留地2自留地2自留地2

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

PHP7环境下把openssl_get_privatekey方法换成openssl_pkey_get_private

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

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

这里贴上附属方法

转换秘钥格式的方法:

function transJavaRsaKeyToPhpOpenSSL($content) {

if ($content) {

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

}

return false;

}

加头尾的方法:

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加密问题的小经验,大家还有问题的话在下方留言讨论吧。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档