HTTPS

139 阅读2分钟

互联网的通信安全,建立在SSL/TLS协议之上。

HTTP缺点

不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。

( 1 ) HTTP本身不具有加密功能,而且它的报文以明文的方式发送内容,无法确定请求或响应被窃听

( 2 ) 请求和响应在传输的过程中,可能遭到攻击者拦截或修改传输内容(这种攻击称为中间人攻击),无法确定请求或响应被篡改

( 3 ) 无法确定请求是否发送至已伪装的Web服务器,响应是否返回至已伪装的客户端,通信的对方是否具备访问权限。

什么是HTTPS

  • HTTP协议中没有加密机制,但可以通过和SSL(Secure Sockets Layer,安全套接层)或TLS(Transport Layer Security,安全传输层协议)的组合使用,就可以在这条线路上进行安全HTTP通信了。与SSL组合使用的HTTP被称为HTTPS(HTTP Secure)或HTTP over SSL。

  • HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。HTTPS开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

  • HTTPS并非是应用层的一种新协议,只是HTTP通信接口部分用SSL和TLS协议代替

TLS和SSL作用

  • 通信的加密

    SSL建立安全通信线路

  • 查明对手的证书

    SSL不仅提供了加密处理,还提供一个称为证书的手段,来确定通信方就是目标服务器

  • 保证数据完整性

    散列算法,也叫摘要算法来实现数据完整性

TLS和SSL实现

HTTPS 协议的主要功能基本都依赖于 TLS/SSL 协议,TLS/SSL 的功能实现主要依赖于三类基本算法:散列函数 、对称加密和非对称加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。

image.png

参考文章

分分钟让你理解HTTPS

SSL/TLS协议运行机制的概述

看完这篇 HTTPS,和面试官扯皮就没问题了