浅谈https的工作原理

前言:对于一个学习IT知识的人来说,图文并茂来说明知识是比较易于理解。

想简单的理解HTTPS,先要理解下非对称加密和对称加密

HTTPS交互过程如下图

1、Client发送一个请求到Server

2、Server会生成私钥和公钥

3、服务器会生成一个证书返回给客户端,这个证书里包括Server生成的公钥、颁发日期、过期时间等信息。

4、服务器会验证这个证书是否有效合法

5、如果证书有效,Client会生成一个Key(这个key用于以后的数据加密)。

6、Client用证书里面的公钥对Key进行加密并上传到Server

7、Server用私钥对Client传过来的key进行解密

8、Server用key加密数据,返回Client数据(如网页内容)

9、Client用key解密得到网页内容并显示在浏览器上面

 

注:

HTTPS请求在第一次请求时是用非对称加密的方式进行通信,双方在第6-7的会话成功,也就是都有了一个key之后,在以后的会话中都是用对称加密

直到证书无效过期,才又重复1-7的过程。可想,如果每次都用非对称加密,那效率是相当低的,我们使用Https的目录是希望数据加密,1-7是加密的前提,拿双方拿到key的同时,不被外界截取。

 

 

 

posted @ 2014-03-19 15:58  Vincent_Guo  阅读(521)  评论(0编辑  收藏  举报