HTTPS安全套接字层超文本传输协议

这篇具有很好参考价值的文章主要介绍了HTTPS安全套接字层超文本传输协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

HTTPS简介

HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL/TLS协议,SSL/TLS依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

HTTPS协议的主要作用有两点:第一点是建立一个信息安全通道,来保证数据传输的安全;另一点就是确认网站的真实性。

HTTPS和HTTP的主要区别

  1. https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。
  2. http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl/tls加密传输协议。
  3. http和https使用的端口也不一样,前者是80,后者是443。

客户端在使用HTTPS方式与Web服务器通信时的步骤

HTTPS的整体过程分为证书验证数据传输两阶段。
(1)证书验证阶段

  1. 浏览器发起 HTTPS 请求。
  2. 服务端返回 HTTPS 证书,证书中包含服务端的公钥
  3. 客户端验证证书是否合法,证书验证阶段采用非对阵加密,如果不合法则提示告警。

(2)数据传输阶段

  1. 当证书验证合法后,在本地生成随机数。
  2. 通过公钥加密随机数,并把加密后的随机数传输到服务端。
  3. 服务端通过私钥对随机数进行解密。
  4. 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后发送给浏览器。
    HTTPS安全套接字层超文本传输协议,计算机网络,https,网络协议,http

SSL/TLS协议的加密(握手)过程

SSL/TLS的握手过程如下:

  1. 客户端给出支持SSL协议版本号,一个客户端随机数N1,客户端支持的加密方法等信息。
  2. 服务器收到信息后,确认双方使用的加密通信协议,并返回数字证书,一个服务器生成的随机数N2等信息。
  3. 客户端确认数字证书的有效性,然后生成一个新的随机数N3,然后使用数字证书中的公钥,加密这个随机数,发给服务器。
  4. 服务器使用自己的私钥,获取客户端发来的随机数N3,并通过约定的对称加密方法,使用前面三个随机数N1、N2、N3生成会话密钥,用来加密接下来的通信内容(对称加密)。

SSL/TSL通过四次握手,主要交换三个信息:

  1. 数字证书。
  2. 三个随机数。
  3. 加密通信协议。

为什么数据传输阶段使用对称加密

  • 非对称加密的加解密效率是非常低的,而 http 的应用场景中通常端与端之间存在大量的交互,非对称加密的效率是无法接受的。

  • 在 HTTPS 的场景中只有服务端保存了私钥,一对公私钥只能实现单向的加解密,所以HTTPS 中内容传输加密采取的是对称加密,而不是非对称加密。

HTTPS 的优点

HTTPS 协议是由SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,要比 HTTP 协议安全,可防止数据在传输过程中不被窃取、修改,确保数据的完整性。

HTTPS 的缺点

  1. HTTPS协议握手阶段比较费时。
  2. HTTPS连接会增加数据开销。
  3. CA证书需要一定费用越高。

HTTPS 的优化

证书优化

证书优化主要有两方面:

  1. 证书传输:证书越小,传输的就越快。选择不同的加密方法,生成的证书的大小也不一样。
  2. 证书验证:证书验证有的时候不仅需要验证证书是否被篡改,还需要验证证书是否被吊销。之前是由CA机构维护一个吊销证书列表CRL,客户端每次要下载CRL,然后验证证书是否被吊销。随着吊销证书的增多,CRL的大小越来越大。也会导致HTTPS连接变慢。所以引入了OCSP,在线证书状态协议,客户端直接向CA机构发送证书编号,CA机构会返回证书的状态,不需要每次下载CRL,提高了效率。

会话复用

服务器为每个客户端在会话过程中设置一个SessionID,在会话期间将第一次生成的密钥分别保存在客户端和服务器,服务器通过SessionID来保存对应的密钥。当客户端再次连接的时候,直接传入SessionID,然后使用客户端的密钥进行加密。服务器收到后,通过SessionID获取对应的密钥,然后解密。这样客户端就可以复用一个密钥,不用每次都新生成密钥。文章来源地址https://www.toymoban.com/news/detail-608670.html

到了这里,关于HTTPS安全套接字层超文本传输协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTTP 超文本传输协议

    1.HTTP (Hypertext Transfer Protocol,超文本传输协议) 是一种用于传输超媒体文档(例如HTML文件,可以包含文本,视频,图片,音乐,地图定位)的应用层协议,是Web的基础。 HTTP是一个客户端-服务器协议,客户端发起请求,服务器返回响应。 HTTP使用TCP作为其传输层协议,通常

    2024年02月11日
    浏览(38)
  • 超文本传送协议HTTP

    目录 HTTP简介: URL的格式: HTTP协议的特点: HTTP/1.0协议: HTTP/1.1协议: HTTP/2: HTTP代理服务器: HTTP的报文结构: 请求报文的特点: 响应报文的特点: Cookie:  Cookie的工作原理: 万维网的文档: 静态文档: 超文本标记语言HTML 可扩展标记语言XML 可扩展超文本标记语言 XHT

    2024年02月20日
    浏览(31)
  • http超文本传输协议

     HTTPS (全称:Hypertext Transfer Protocol Secure   ),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性   。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加

    2024年02月10日
    浏览(138)
  • HTTP(超文本传输协议)学习

    关于HTTP补学   一、HTTP能干什么 通过下图能够直观的看出:“交换数据 ” 二、HTTP请求例子 一个 HTTP 方法,通常是由一个动词,像 GET、POST 等,或者一个名词,像 OPTIONS、HEAD 等,来定义客户端执行的动作。典型场景有:客户端意图抓取某个资源(使用 GET );发送 HT

    2024年02月14日
    浏览(26)
  • HTTP超文本传输协议介绍

    转自:微点阅读  https://www.weidianyuedu.com HTTP 的全称是 Hyper Text Transfer Protocol,中文名叫做超文本传输协议,HTTP协议是用于从网络传输超文本数据到本地浏览器的传送协议,它能保证传送高效而准确地传送超文本文档。 HTTP、HTTPS HTTP 的全称是 Hyper Text Transfer Protocol,中文名叫

    2024年01月16日
    浏览(37)
  • HTML :深入了解超文本标记语言

    欢迎来到本篇博客,我将带你深入了解 HTML(超文本标记语言)。作为前端开发的基础,HTML是构建网页的重要工具。在这里,我们将涵盖 HTML 的全部内容,包括常用语句和标签。 HTML,全称HyperText Markup Language,是一种用于创建网页结构的标记语言。它由一系列的标签组成,标

    2024年02月16日
    浏览(29)
  • 图解安全套接字SSL协议的工作原理

    背景介绍    最近在看《密码学与网络安全》相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL。 在开始SSl介绍之前,先给大家介绍几个密码学的概念和相关的知识。 1、密码学的相关概念 密码学(cryptography):目的是通过将信息编码使其不可读,从而达到安全性

    2024年02月05日
    浏览(33)
  • Http 超文本传输协议基本概念学习摘录

    目录 HTTP协议 超文本传输协议 HyperText超文本 HTML超文本标记语言 HTTP协议原理 请求发送 服务器处理 响应发送 连接关闭或保持 HTTP协议版本 HTTP/0.9 HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/3 HTTP请求方法 GET POST PUT DELETE HEAD OPTIONS HTTP请求头字段 HTTP响应状态码 即超文本传输协议(HyperText Transfer

    2024年03月20日
    浏览(38)
  • 【Java网络编程】HTTP超文本传输协议

        HTTP 全称为 Hyper Text Transfer Protocol 超文本传输协议,它是基于 TCP 传输协议构建的应用层协议,作为支撑万维网 www 的核心协议,为了保证其效率及处理大量事务的能力,因此在设计时, HTTP 被制定成为一种无状态协议,也就是说: HTTP 本身不会对发送过的请求和相应的通

    2024年04月09日
    浏览(47)
  • 【网络编程】一文详解http协议(超文本传输协议)

    需要云服务器等云产品来学习Linux的同学可以移步/--腾讯云--/--阿里云--/--华为云--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。    目录 一、http协议 1、http协议的介绍 2、URL的组成 3、urlencode和urldecode 二、http的请求方法、状态码及状态码描述、常见的响

    2024年02月06日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包