HTTPS协议

HTTPS为什么会出现?其解决了什么问题?

简单的来说就是http不安全。由于HTTP天生明文传输的特性,在HTTP的传输过程中,任何人都有可能从中截获、修改或者伪造请求发送,所以可以认为HTTP是不安全的;在HTTP的传输过程中不会验证通信方的身份,因此HTTP信息交换的双方可能会遭到伪装,也就是没有用户验证;在HTTP的传输过程中,接受方和发送方并不验证报文的完整性,综上为了解决上述问题,HTTPS应运而生。

 

什么是HTTPS

HTTP是一种超文本传输协议,它是一个在计算机世界里专门在两点之间传输文字,图片,音频,视频等超文本数据的约定和规范,我们看一下HTTPS是如何定义的。

HTTPS的全称是Hypertext Transfer Protocol Secure ,它是用来在计算机网络上的两个端系统之间进行 安全的交互信息。相当于在HTTP的基础上加了一个Secure 安全的词眼,那么HTTPS的定义就是在计算机世界中专门在两点之间安全的传输文字,图片,音频,视频等超文本数据的约定和规范。HTTPS本身就是对HTTP的一种扩展,它并不保证传输的安全性,那么谁来保证安全性呢?在HTTPS中,使用传输层安全性(TLS)或安全套接字层(SSL)对通信协议进行加密。也就是HTTP+SSL(TLS)=HTTPS。

HTTPS做了什么

HTTPS提供了三个关键的指标

  • 加密,HTTPS通过对数据加密来使其免受窃听者对数据的舰艇,这就意味着当用户在浏览网站时,没有人能够舰艇它和网站之间的信息交换,或者跟踪用户的活动,访问记录等,从而窃取用户信息。
  • 数据的一致性,数据在传输的过程中不会被窃听者所修改,用户发送的数据会完整的传输到服务端,保证用户发的是什么,服务器接收的就是什么。
  • 身份认证,是指确认对方的真实身份,也就是证明是你,他可以防止中间人共计并建立用户信任。

有了上面三个关键指标的保证,用户就可以和服务器进行安全的交换信息了。那么,既然说了HTTPS的种种好处,那么我怎么知道网站是用HTTPS还是HTTP呢?给两幅图就可以解释了。

HTTPS其实非常简单,RFC文档很小,只有短短的7页,里面规定了新的协议名,默认端口号443,至于其他的应答模式、报文结构、请求方法、URL、头字段、连接管理等等都完全沿用HTTP,没有任何新的东西。也就是说除了协议名称和默认端口号外(HTTP默认端口号80),HTTPS协议在语法、语义上和HTTP一样,HTTP有的,HTTPS也有,那么HTTPS如何做到HTTP所不能做到的安全性呢?关键在于SSL/TLS。

什么是SSL/TLS

TLS是SSL的后续版本,他们适用于在互联网两台计算机之间用于身份验证和加密的一种协议。

我们都知道一些在线业务(比如在线支付)最重要的一个步骤是创建一个值得信赖的交易环境,能够让客户安心的进行交易,SSL/TLS就保证了这一点,SSL/TLS通过将称为x.509证书的数字文档将网站和公司的尸体信息绑定到加密钥来进行工作。每一个密钥对都有一个私有密钥和公有密钥,私有密钥是独有的,一般位于服务器上,用于解密由公共密钥加密过的信息;公有密钥是公有的,与服务器进行交互的每个人都可以持有公有密匙,用公钥加密的信息只能由私有密钥来解密。

x.509是公开密钥 证书的标准格式,这个文档将加密密钥与个人或组织进行安全的关联

HTTPS的内核是HTTP

HTTPS并不是一项新的应用层协议,只是HTTP通信接口部分由SSL和TLS替代而已。通常情况下,HTTP会先直接和TCP进行通信。在使用SSL的HTTPS后,则会先演变为何SSL进行通信,然后再由SSL和TCP进行通信。也就是说,HTTPS就是身披了一层SSL的HTTP。

SSL是一个独立的协议,不只有HTTP可以使用,其他应用层协议也可以使用,比如SMTP(电子邮件协议)Telnet(远程登录协议)等都可以使用。

探究HTTPS

SSL即安全套接字层,它在OSI 七层网络模型中处于第五层,SSL在1999年被IEIF(互联网工程组)更名为TLS,即传输安全层,知道现在TLS一共出现过三个版本,1.1,1.2,1.3   目前最广泛使用的是1.2,所以接下来的探讨都是基于TLS1.2的版本上的。

TLS用于两个通信应用程序之间提供保密性和数据完整性。TLS有记录协议,握手协议,警告协议,变更密码规范协议,扩展协议等几个子协议组成,综合使用了对称加密,非对称加密、身份认证等许多密码学前沿技术。

后面的都是一些密码学科的研究课题,这里不做深究。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值