最近在配置 SSL ,连接公司测试内网一直 TLS 握手失败,显示 bad certificate ,证书无法验证通过。查了一下 SSL 验证过程,大致是服务器发送一个证书,包含 CA 私钥加密后的数字签名,客户端用对应的 CA 公钥解密。
然后还是有一些问题请教 v 站大?
自签名的话是至少生成两张证书吗?我以为是一张 root certificate 交给客户端并添加信任列表,另外一张 server certificate 由服务器发送 server hello 。(假设不需要验证客户端身份)
客户端如果要信任测试的内网服务器,是否需要问 IT 管理员要 root certificate ?我的情况还比较复杂,是 arduino 单片机作为客户端,我猜需要要到 root certificate 并且添加到 firmware 里面才能连接。
server certificate 包含了 CSR 信息以及数字签名?数字签名是由 CA 私钥加密的? CSR 信息里面有服务器公钥? root certificate 包含什么?我以为应该有 CA 公钥吧,不然客户端怎么检验数字签名?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.