最近遇到 https 请求的 ssl 证书相关的问题,求相关科普文章链接

2019-12-27 14:02:32 +08:00
 NeverBelieveMe
crt,cert,pem 等相关格式文件都是干什么的。之前微信用到了 pem 文件,是两个文件一起使用,结果这次的服务商只给了一个 pem 文件是什么情况。求各位科普一下,或者给一个相关的链接。
3367 次点击
所在节点    Python
7 条回复
littleylv
2019-12-27 14:08:45 +08:00
伸手党?网上搜一下都懒么
litp
2019-12-27 14:22:36 +08:00
qwerthhusn
2019-12-27 15:37:34 +08:00
也没必要喷,这些证书和私钥格式很多,文件后缀名也没有统一叫法。
其实我也是略知皮毛,给 lz 总结一下
1. 证书
一般都是用 x509 格式的,文件后缀名是 crt cer pem,啥都行,用文本编辑器打开,第一行是-----BEGIN CERTIFICATE-----、当然还有其他格式的。
2. 私钥
如果你的 HTTP 服务器做 SSL,不仅需要证书,还要私钥。有 RSA 私钥 EC 私钥,,格式大部分用的 openssl 格式的或者 pkcs8 格式的,格式有二进制编码的和 Base64 编码的,后缀名 pem der 啥都行。最常用的就是 openssl 用的那种格式的 base64 的 pem 文件,第一行是-----BEGIN <XXX> PRIVATE KEY-----
私钥不要泄露,比如别人问你要证书,别把私钥一股脑给发过去了
qwerthhusn
2019-12-27 15:40:09 +08:00
> 结果这次的服务商只给了一个 pem 文件是什么情况

这个看你场景啊,如果是 SSL 下面,是你提供服务还是别人提供服务
如果是别人的话,别人肯定不会给你私钥
weiruanniubi
2019-12-27 20:11:20 +08:00
个人经验:
crt 和 pem 没区别,你把 crt 改成 pem 也能用,把 pem 改成 crt 也能用。
cheng6563
2019-12-28 12:56:29 +08:00
证书通常就是公钥,rsa 加密 /验签需要同时使用公私钥,客户端服务端向对方提供公钥并就可以实现双向加密 /验签。如果只是服务端给你公钥而没要你的公钥的话但就是单向加密 /验签了。
realpg
2019-12-28 12:58:17 +08:00
扩展名不用看 看内容识别东西
反正都是各种瞎改 尤其是按教程生成的
这玩意本质都不带扩展名

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/632867

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX