iOS 探讨之 百度推送 "证书无效"
来源:互联网 发布:java heap数值说明什么 编辑:程序博客网 时间:2024/05/22 01:33
阐述
最近有许多证书将要过期,趁着有时间赶紧将公司的证书全部梳理一遍。在对百度推送进行证书更新时,出现了“证书无效”的错误(去年更新的时候也没出现问题),折腾好几天才解决掉。记录一下,并辟谣许多错误的说法(不让大家走弯路)。
探讨
首先感谢一下 “控记我记几”,在他的博文中所提出的解决方法很有效果。
- openssl 版本问题
博主指出百度推送不接受 openssl 版本高于0.9.8 所生成的pem, 查了一下现在的系统是macOS High Sierra 10.13.2,opensll 版本为 2.2.7。
故感觉问题可能出在这个地方。
解决方法:
1 至 openssl 官网下载0.9.8zh版本 https://www.openssl.org/source/old/0.9.x/
2 解压下载的压缩包
3 通过Terminal (终端) 进入刚才解压目录
4 Terminal (终端) 执行命令
./Configure darwin64-x86_64-cc --prefix=/usr/local/openssl —shared
Tip: 这一步执行完后手动到 /usr/local/ 目录下查看是否有一个openssl 文件夹,如果没有则说明当前用户没有权限来创建 openssl 文件夹,此时我们手动在这个目录下创建 openssl 文件夹,然后再次执行上面的命令
5 Terminal (终端) 执行命令
make && make install
6 此时 openssl (Unix可执行文件) 会出现在 /usr/local/openssl/bin/openssl 目录下, 我们用命令查看一下当前 openssl 版本
/usr/local/openssl/bin/openssl version
7 执行百度推送所使用的命令
/usr/local/openssl/bin/openssl pkcs12 -in MyApnsCert.p12 -out MyApnsCert.pem -nodes
Tip: openssl 必须使用刚才所创建的 0.9.8zh 版本
辟谣
经过实际测试,发现以下几个说法不正确,大家勿信
说法一
名称为中文的P12所生成的Pem 不能通过验证 错误
说法二
P12名称必须为 MyApnsCert.p12 且Pem名称必须为 MyApnsCert.pem, 否则不能通过验证 错误
说法三
Keychain Access (钥匙串) 导出证书时,证书必须是收起状态(即不能显示专用密钥),否则不能通过验证 错误
参考资料
1 https://www.cnblogs.com/zhaowenshuang/p/7668848.html
2 http://www.cnblogs.com/gauze/p/5483703.html
阅读全文
0 0
- iOS 探讨之 百度推送 "证书无效"
- iOS百度推送上传pem证书提示‘证书无效’
- iOS 探讨之 WWDCRA 无效 or "此证书的签发者无效"
- 百度云推送的ios证书配置
- 百度云推送的iOS证书配置
- iOS开发之推送证书
- ios推送消息 p12转pem证书 用于百度推送
- iOS之百度云推送
- 百度推送生成证书
- iOS开发之证书无效解决方案
- iOS百度推送证书p12转换pem命令
- iOS开发-百度云推送开发证书(续)
- iOS苹果账号/证书/推送证书之我见
- iOS推送 (百度推送)
- iOS推送 (百度推送)
- iOS注册远程推送消息证书后提示此证书签发者无效的解决办法
- ios证书无效解决办法
- iOS 推送,服务器。证书。
- 简单实用的容器监控命令——Ctop
- Activity生命周期中onStart()和onResume()的区别
- jquery 选择器
- JaxWsProxyFactoryBean 与 JaxWsDynamicClientFactory
- iterm2 全屏显示tabs
- iOS 探讨之 百度推送 "证书无效"
- 从网页上的论文公式复制到word的方法
- Scala学习(三)----数组相关操作
- String类中intern()的用法
- mysql数据库备份还原
- opencv常用函数参数说明
- MySQL_5.7免安装版入门(Windows系统)
- 反馈博客bug专用,
- skynet中使用websocket和wss