美文网首页随笔
【安全】https 双向认证

【安全】https 双向认证

作者: 熊本极客 | 来源:发表于2023-03-20 19:10 被阅读0次

    1.https 与 ssl 的关系

    https 是基于 http 超文本传输协议的一种安全的协议,称为安全的超文本传输协议。http 直接基于 tcp 协议,而https 是在 http 和 tcp 中间加上一层加密层。该层是安全套接层 ssl,ssl 协议可分为两层: ssl 记录协议(SSL Record Protocol),建立在可靠的传输协议,例如 tcp,为高层协议提供数据封装、压缩、加密等基本功能的支持。 ssl 握手协议(SSL Handshake Protocol),建立在 ssl 记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

    image.png

    问题:https 与 ssl 的关系?
    https 与 ssl 的关系是包含与被包含的关系,简单来说就是 https=http+ssl,即 https 是在 http 上面加了一层 ssl 协议,用于验证服务端或客户端的合法性。

    2.https 单向认证和双向认证

    2.1 keystore 和 truststore 与单向认证和双向认证的关系

    问题1:什么是 keystore 和 truststore?
    keystore 是存储密钥(公钥、私钥)的容器,keystore 和 truststore 其本质都是 keystore,但是二者盛放的密钥所有者不同而已,对于 keystore 一般存储自己的私钥和公钥,而 truststore 存储自己信任的对象公钥的证书

    问题2:什么是单向认证和双向认证?
    单向认证是指客户端确定服务端身份。双向认证则是指客户端需要确认服务端身份,同时服务端也需要确认客户端的身份。

    问题3:keystore 和 truststore 与单向认证和双向认证是什么关系?
    单向认证的场景下,客户端要认证服务端的身份,因此客户端的 keystore 保存自身的私钥和公钥,而 truststore 保存服务端公钥的数字证书。
    双向认证的场景下,客户端要认证服务端的身份,因此客户端的 keystore 保存自身的私钥和公钥,而 truststore 保存服务端公钥的证书。服务端也需要认证客户端的身份,因此服务端的 keystore 保存自身的私钥和公钥,而 truststore 保存客户端公钥的数字证书。

    2.2 单向认证的工作流程

    image.png

    2.3 双向认证的工作流程

    image.png

    相关文章

      网友评论

        本文标题:【安全】https 双向认证

        本文链接:https://www.haomeiwen.com/subject/eenurdtx.html