HTTP和HTTPS
twocode

    当前的万维网常见的URL地址样式:HTTP和HTTPS。

    什么是HTTPS呢?

    简单的说,HTTP+SSL,是加密的HTPP,更安全的HTTP;

     HTTP over SSL,就是基于安全套接字层HTTP,在HTTP 应用层的基础上使用安全套接字层作为子层。

    HTTP 使用请求/响应的过程,因此信息可在服务器间快速、轻松而且精确的进行传输。当你访问Web 页面的时候你就是在使用HTTP 协议,但HTTP 是不安全的,因其采用明文传输方式,黑客可以轻松窃听你跟Web 服务器之间的数据传输。在很多情况下,客户和服务器之间传输的是敏感信息,需要防止未经授权的访问。为了满足这个要求,网景公司(Netscape)推出了HTTPS协议。    

    具体应用中的区别

    https://表明是用SSL加密的,电脑与服务器之间收发的信息传输将更加安全。Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。   

    http和https使用的是完全不同的连接方式,用的端口也不一样,http是80,https是443。http的连接很简单,是无状态的;https链接在浏览器地址栏有绿色安全锁标识,部署了沃通EV SSL证书的还会显示绿色地址栏。

        在我们访问网址是:

        浏览器其实将一些默认的字符隐藏掉(https://会正常显示)了,比如:

            浏览器显示:

                pekingpiao.com

            将隐藏掉的部分补充完整后是:

                http://pekingpiao.com:80

        不信的话,可以把两次的URL输入试试,是不是访问同样的页面

    切换到本文主题,我们从访问一个https://链接的工作方式来细细的了解HTTP和HTTPS的区别

  当使用https 连接,服务器响应初始连接,并提供它所支持的加密方法。作为回应,客户端选择一个连接方法,并且客户端和服务器端交换证书验证彼此身份。完成之后,在确保使用相同密钥的情况下传输加密信息,然后关闭连接。为了提供 https 连接支持,服务器必须有一个SSL数字证书,该证书包含经过第三方权威CA机构认证的密钥信息,通过CA认证保证证书是安全的。

  HTTP 包含如下动作:

  1. 浏览器打开一个 TCP 连接

  2. 浏览器发送 HTTP 请求到服务器端

  3. 服务器发送 HTTP 回应信息到浏览器

  4. TCP 连接关闭

  SSL 包含如下动作:

  1. 验证服务器端

  2. 允许客户端和服务器端选择加密算法和密码,确保双方都支持;主流浏览器(FF、Chrome、Opera、IE)都有一个“受信任根证书颁发机构”

  3. 验证客户端(可选)

  4. 使用公钥加密技术来生成共享加密数据

  5. 创建一个加密的 SSL 连接

  6. 基于该 SSL 连接传递 HTTP 请求

    当我们在访问部署了SSL数字证书的网站时,浏览器就会自动下载该网站的SSL数字证书,并对证书的安全性进行检查。如果该证书不受信任或已过期,浏览器会显示警告信息。在一些设计到敏感信息网站地址下都会遇到浏览器会弹出对话框让用户选择是否继续浏览(较低版本浏览器),新版本的浏览器一般在整个窗口显示横幅的警告信息,同时在地址栏上显示该网站的安全信息。如果网站中包含加密和非加密的混合内容,多数浏览器会提示警告信息。

网友评论已关闭