美文网首页
情景戏说 SSL 协议工作原理

情景戏说 SSL 协议工作原理

作者: bnotes | 来源:发表于2017-05-19 17:30 被阅读43次

SSL 是一种安全传输协议,其全称是 Secure socket layer(安全套接层)。该协议最初由 Netscape 研发,现已成为网络上用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。由于 SSL 技术已经得到所有主流浏览器和 WEB 服务器的支持,因此仅需要安装配置数字证书就可以激活服务器功能了。

SSL的工作原理

SSL协议分为 Handshake Protocol 和 Record Protocol 两个部分。其中 Handshake Protocol 用来协商密钥,协议的大部分内容就是通信双方如何利用它来安全的协商出一份密钥。Record Protocol 则定义了传输的格式。

SSL是一个介于 HTTP 与 TCP 之间的一个可选层,如果利用 SSL 协议来访问网页,其步骤如下:

  • 用户:在浏览器的地址栏里输入 https://www.123.com
  • HTTP层:将用户需求翻译成HTTP请求,如:   
    GET /index.htm HTTP/1.1   
    Host http://www.123.com
  • SSL层:借助下层协议的的信道,安全的协商出一份加密密钥,并用此密钥来加密HTTP请求。
  • TCP层:与服务器的443端口建立连接,传递SSL处理后的数据。
  • 接收端(即服务器)与此过程相反。

SSL在TCP之上建立了一个加密通道,通过这一层的数据经过了加密,因此达到保密的效果。
如果上面你看得不太懂的话,我们来看一个更形象的比喻,我们假设 A 与 B 通信,A 是 SSL 客户端,B 是 SSL 服务器端,加密后的消息放在方括号 [ ] 里,以突出和明文消息的区别。双方的处理动作的说明用圆括号( )括起。


A:
我想和你安全的通话,我这里的对称加密算法有 DES,RC5,密钥交换算法有 RSA 和 DH,摘要算法有 MD5 和 SHA。


B:
我们用 DES - RSA - SHA 这对组合好了。这是我的证书,里面有我的名字和公钥,你拿去验证一下我的身份(把证书发给 A )。目前没有别的可说的了。


A:

  • (查看证书上 B 的名字是否无误,并通过手头早已有的 CA 的证书验证了
    B 的证书的真实性。如果其中一项有误,发出警告并断开连接。这一步保证了 B 的公钥真实性。)

  • (产生一份秘密消息,这份秘密消息处理后将用作加密密钥,加密初始化向量和hmac的密钥。将这份秘密消息-协议中称为 per_master_secret 用 B 的公钥加密,封装成称作 Client Key Exchange 的消息。由于用了 B 的公钥,保证了第三方无法窃听。)

  • 我生成了一份秘密消息,并用你的公钥加密了,给你(把 Client Key Exchange 发给 B)

  • 注意,下面我就要用加密的办法给你发消息了!(将秘密消息进行处理,生成加密密钥,加密初始化向量和hmac的密钥。)

  • [我说完了]


B:

  • (用自己的私钥将 Client Key Exchange 中的秘密消息解密出来,然后将秘密消息进行处理,生成加密密钥,加密初始化向量和 hmac 的密钥,这时双方已经安全的协商出一套加密办法了。)

  • 注意,我也要开始用加密的办法给你发消息了!

  • [我说完了]


A:
[我的秘密是……]


B:
[其它人不会听到的……]


相关文章

  • 情景戏说 SSL 协议工作原理

    SSL 是一种安全传输协议,其全称是 Secure socket layer(安全套接层)。该协议最初由 Nets...

  • SSL/TLS握手协议

    根据理解整理的握手协议原理图如下: 参考文章:SSL/TLS协议详解SSL / TLS 工作原理和详细握手过程SS...

  • TLS/SSL工作原理

    HTTPS协议的主要功能基本都依赖TLS/SSL协议,本篇文章分析TLS/SSL协议工作原理。 算法运用TLS/S...

  • Golang面试之HTTPS

    引用 HTTPS协议详解(一):HTTPS基础知识 TLS/SSL工作原理 HTTPS详解二:SSL / TLS ...

  • HTTPS协议

    HTTPS协议详解(一):HTTPS基础知识HTTPS协议详解(二):TLS/SSL工作原理HTTPS协议详解(三...

  • Https协议

    Https协议原理 简单地来说,是基于ssl的http协议,依托ssl协议,https协议能够确保整个通信是加密的...

  • HTTPS之自签SSL证书相关资料

    HTTPS工作原理 JDK自带工具keytool生成ssl证书 Android访问Https协议的接口 证书格式转...

  • Jmeter的HTTPS请求

    HTTPS工作原理 HTTP并非是安全传输,在HTTPS基础上使用SSL协议进行加密构成的HTTPS协议是相对安全...

  • SSL协议原理(转载)

    SSL协议原理(转载) 注:公开密钥基础建设(英语:Public Key Infrastructure,缩写:PK...

  • SSL/TLS协议原理

    联网的通信安全,建立在SSL/TLS协议之上。 本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运...

网友评论

      本文标题:情景戏说 SSL 协议工作原理

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