什么是HTTP协议和HTTPS协议,以及两者的区别

HTTP协议

超文本传输协议(Hyper Text Transfer Protocol),是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以形式给出;而消息内容则具有一个类似MIME的格式。它使开发和部署非常地直截了当。

HTTP是一个无状态的协议。无状态是指客户机(Web浏览器)和服务器之间不需要建立持久的连接,这意味着当一个客户端向服务器端发出请求,然后服务器返回响应(response),连接就被关闭了,在服务器端不保留连接的有关信息.HTTP遵循请求(Request)/应答(Response)模型。客户机(浏览器)向服务器发送请求,服务器处理请求并返回适当的应答。所有HTTP连接都被构造成一套请求和应答。

HTTP 在传输数据的过程中,所有的数据都是明文传输,自然没有安全性可言,特别是一些敏感数据,比如用户密码和信用卡信息等,一旦被第三方获取,后果不堪设想。

HTTPS协议

超文本传输安全协议(Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。 

HTTPS 解决数据传输安全问题的方案就是使用加密算法,具体来说是混合加密算法,也就是对称加密和非对称加密的混合使用。

对称加密:就是加密和解密都是使用同一个密钥

优点:算法公开;计算量小;加密速度快;加密效率高;适合加密比较大的数据。
缺点:交易双方需要使用相同的密钥,也就无法避免密钥的传输,而密钥在传输过程中无法保证不被截获,因此对称加密的安全性得不到保证;每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一密钥,这会使得发收信双方所拥有的钥匙数量急剧增长,密钥管理成为双方的负担;对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。

非对称加密:就是加密和解密需要使用两个不同的密钥:公钥(public key)和私钥(private key)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用私钥对数据进行加密,那么只有用对应的公钥才能解密。

优点:算法公开;加密和解密使用不同的钥匙;私钥不用通过网络传输;安全性很高。
缺点:计算量比较大;加密和解密速度相比对称加密要慢很多。

http与https的区别

①https协议需要到ca申请证书,一般免费证书很少,需要交费;

②http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议;

③http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443;

④http的连接很简单,是无状态的;

⑤https协议是由ssl+http协议构建的可进行加密传输、身份认证的网络协议要比http协议安全。

 

SSL协议和TLS协议

①SSL:SSL(Secure Socket Layer,安全套接字层),是netscape公司设计的主要用于web的安全传输协议。这种协议在WEB上获得了广泛的应用。通过证书认证来确保客户端和网站服务器之间的通信数据是加密安全的。
    SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

②TLS:TLS(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。
    TLS 1.0是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本,可以理解为SSL 3.1(可简单理解为同一事物不同阶段的不同称呼),它是写入了 RFC 的。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面。

SSL和TLS的主要区别

①TLS的主要目标是使SSL更安全,并使协议的规范更精确和完善;

②TLS版本号也与SSL的不同(TLS的版本1.0使用的版本号为SSLv3.1)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/253610.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

HTTP与HTTPS的区别

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此&…

HTTP与HTTPS是什么?http和https的区别

一、HTTP是什么? HTTP 是超⽂本传输协议,也就是Hyper Text Transfer Protocol。 HTTP 是⼀个在计算机世界⾥专⻔在「两点」之间「传输」⽂字、图⽚、⾳频、视频等「超⽂本」数据的「约定和规范」。 超⽂本传输协议,它可以拆成三个部分&…

HTTP与HTTPS的区别,详细介绍

需要查看更多的计算机网络相关的知识?点击这里 目录 HTTP与HTTPS介绍 HTTPS和HTTP的主要区别 HTTPS的主干层次介绍 客户端在使用HTTPS方式与Web服务器通信时的步骤 CA证书的申请及其使用过程 SSL与TLS SSL/TLS历史 SSL/TLS协议的基本过程 SSL/TLS 密码套件…

C++ vector与map的结合运用

目录 vector和map的简单介绍: 今天我们用vector容器和map容器实现以下简单的功能: 案例描述: 图解: ​ 实现步骤: 代码实现: 运行结果: vector和map的简单介绍: map和vector都是C STL&…

系统漏洞利用与提权

任务二:系统漏洞利用与提权 任务环境说明: 服务器场景:PYsystem0033 服务器场景操作系统:Ubuntu 服务器场景用户名:未知 密码:未知 1.使用nmap扫描靶机系统,将靶机开放的端口号按从小到大的顺序作为F…

pycharm内置Git操作失败的原因

文章目录 问题简介解决方案DNS缓存机制知识的自我理解 问题简介 最近在pycharm中进行代码改动递交的时候,总是出现了连接超时或者推送被rejected的情况,本以为是开了代理导致的,但是关闭后还是推送失败,于是上网查了以后&#xf…

集群模式下,redis锁的问题,红锁

在使用redis来实现分布式锁的时候,如果redis是集群的,比如1主4从,这种主从模式就会存在延迟问题,导致加锁出现问题。 此时就应该使用红锁的方案,即在代码中不依赖于主从,将这5台机器视为平等的&#xff0c…

redis锁

用django-redis很容易实现redis分布式锁,但本文介绍用另外一种方式redis模块来实现redis锁—过期后自动解锁。 from celery_demo.celery import app import time from celery import Celery, platforms # from django.core.cache import cache import redisplatfor…

深入理解Redis分布式锁

背景 项目中有个场景是做数据分析,然后将目标数据保存在db,有个要求是将同类型的目标数据值保存一次,因此每次保存时需要判断之前是否已经存在了,由于qps较高,之前使用redis来缓存已经保存的数据,来抵挡对db的大部分流…

redis锁的几种实现

1. redis加锁分类 redis能用的的加锁命令分表是INCR、SETNX、SET 2. 第一种锁命令INCR 这种加锁的思路是, key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作进行加一。 然后其它用户在执行 INCR 操作进行加一时&#xff0…

java redis锁_Java中Redis锁的实现

由于具体业务场景的需求,需要保证数据在分布式环境下的正确更新,所以研究了一下Java中分布式锁的实现。 Java分布式锁的实现方式主要有以下三种: 数据库实现的乐观锁 Redis实现的分布式锁 Zookeeper实现的分布式锁 其中,较常用的是前两种方式,但是数据库实现方式需要较多的…

设计模式之~工厂系列

目录 简单工厂模式 工厂方法模式 简单工厂 VS 工厂方法 抽象工厂模式: 拓展: 利用简单工厂模式优化抽象工厂 利用反射抽象工厂 进行优化 反射配置文件抽象工厂进行优化 简单工厂模式 优点:简单工厂模式的最大优点在于工厂类包含…

【无标题】win11打开VMware虚拟机蓝屏解决

win11打开VMware虚拟机蓝屏解决 win11打开虚拟机蓝屏!!!解决方案:win11支持16.2以上版本,其他版本不兼容,可用文末的卸载工具卸载之前已安装版本(深度卸载),然后下载16.2…

数字图像学笔记 —— 18. 图像抖动算法

文章目录 为什么需要图像抖动图像抖动算法实现的基本思路常见图像抖动算法实现Floyd-Steinberg 抖动算法Atkinson 抖动算法算法实现 为什么需要图像抖动 在数字图像中,为了表示数字图像的细节,像素的颜色深度信息最少也是8位,即 0 − 256 0…

vulhub-Jarbas(易)

打靶练习Jarbas 0x00 部署0x01 信息收集:端口扫描、服务发现0x02 路径爬取0x03 反弹shell0x04 内网信息收集0x05 crontab定时任务提权0x06 总结 0x00 部署 靶机:下载地址 宿主机:kali2021版本 0x01 信息收集:端口扫描、服务发现…

什么是先进存力?曙光存储:内铸数字底座,外成实践底气

5月26日,由DOIT联合中国电子学会共同举办的2023数据基础设施技术峰会在苏州举办。中科曙光存储产品事业部副总经理张新凤受邀参会,并在主论坛发表主题演讲,与数百位业内专业嘉宾伙伴共探存力发展未来。 什么样的存力能打造数字经济底座&#…

尚硅谷在线教育视频点播

文章目录 1. 开通阿里云视频点播服务2.阿里云点播SDK实现2.1上传视频到阿里云视频点播服务2.2整合阿里云上传视频的接口 3. 课程信息的完善(为每个课程的小节添加视频)3.1 添加上传视频3.2删除视频信息3.2.1后台3.2.2前端 1. 开通阿里云视频点播服务 选…

阿里云视频点播的使用

1.简介:视频点播(ApsaraVideo for VoD)是集音视频采集、编辑、上传、自动化转码处理、媒体资源管理、分发加速于一体的一站式音视频点播解决方案。 2.视频点播的使用: 2.1引入相关依赖:阿里云上有也可以进行直接使用 …

java red5 点播_树莓派实用RED5搭建流媒体服务器实现点播功能

1,搭建流媒体服务器一直是自己想玩的一个东西,在高中玩workerman框架时有人就做过nginx通过rtmp模块搭建流媒体服务器,nginx的特性就是高并发,轻量级,一般大型企业都会采用这个服务器,但是由于,…

Nginx 搭建RTMP视频点播 直播 HLS服务器

安装Nginx --下载nginx-rtmp-module模块 git clone https://github.com/arut/nginx-rtmp-module.git--安装依赖 yum install -y wget gcc gcc-c make pcre pcre-deve zilib zlib-devel openssl-devel--下载Nginx源码包并解压 wget http://nginx.org/download/nginx-1.18.0.tar…