有爹知道 https 双向认证时候,服务端使用客户端证书干了什么么?

查看 376|回复 38
tool2d   
"在 server hello 后服务端会选择一个加密方案,双向认证时候,加密套件在客户端验证完服务端证书后发送??"
不是,是一起发送的。你可以看 6 楼的文章里的 curl 输出,第一行是客户端证书,第二行是加密套件里的 key(也就是双方随机数计算的 pre-master secret),第三行是用客户端密钥计算的 hash 校验,防中间人篡改,三个包是连续一起发送的。
如果客户端证书没问题,那么服务器直接就 SSL 握手完成了,不会再次请求加密 KEY 。
* TLSv1.2 (OUT), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS handshake, CERT verify (15):
wyh19970626   
只做验证,服务端自签的 ca 签发客户端证书,用户携带客户端证书访问系统,服务端 Ca 校验客户端证书有效性。
siweipancc   
……这个不是有规范文档吗,还是我看的那份是假的?
bruce0   
我理解的, 单向的 https 中, 只有客户端,校验服务端是否是正确的(一般来说,会校验域名和证书是否一致)
在双向认证的 https 中, 不光客户端校验服务端, 服务端也会校验客户端是否靠谱(使用服务端保存的客户端根证书来校验客户端发来的公钥)
ShinichiYao   
就像你确认服务器是你要访问的服务器一样,可以确认访问服务器的是你
yuepu   
可以看看 SSL 的握手:
yuepu   
https://www.cloudflare-cn.com/learning/ssl/what-happens-in-a-tls-handshake/
awalkingman   
评论区很和谐有爱
yulgang   


luzemin   
这就是提问的艺术!你看评论区有冷嘲热讽的吗?没有。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部