认识HTTP

HTTP缺点

通信使用明文(不加密),内容可能会被窃听

不验证通信方的身份,可能遭遇伪装

无法证明报文的完整性,所以有可能遭篡改

一、通信使用明文(不加密),内容可能会被窃听

TCP/IP是可能被窃听的网络

1、http协议中没有加密机制,但可以通过SSL(Secure Socket  Layer安全套接层)和TLS(Translate Layer  Secure安全传输层协议)组合使用,加密HTTP的通信内容

2、与SSL组合使用的HTTP被称为HTTPS

加密处理防止窃听:

1、通信的加密:HTTPS

2、内容的加密:客户端对HTTP报文进行加密处理后再发送请求,前提要求客户端和服务器同时具备加密解密机制

二、不验证通信方的身份,可能遭遇伪装

HTTP协议通信时,任何人都可以发起请求,服务器只要接收请求不管对方是谁都会返回响应(不确认通信方)

查明对手的证书:

HTTP协议无法确定通信方,但使用SSL后不仅提供了加密手段,还使用了证书手段,用于确认通信方

证书:由第三方机构颁发(值得信任的),用以证明服务器和客户端是实际存在的,只要能够确认通信方持有的证书,即可判断通信方的真实意图

三、无法证明报文的完整性,所以有可能遭篡改

完整性是指信息的准确度

接收到的内容可能有误:在请求或响应送出之后直到对方接收之前的这段时间内,即使请求或响应的内容遭到篡改,也没办法获悉(中途可能被篡改)

在请求或响应的传输途中,遭攻击者拦截并篡改内容的攻击称为中间人攻击,攻击人会随意篡改请求和响应,而让客户端和服务器之间的通信看上去仍旧是正常的

防止篡改:

有使用HTTP协议确定报文完整性的方法,但并不快捷可靠

常用的MD5SHA-1等散列值校验的方法,以及用来确认文件的数字签名方法

提供文件下载服务的Web网站也会提供相应的以PGP(Pretty Good Privacy)创建的数字签名及MD5算法生成的散列值。

PGP是用来证明拆跟你讲文件的数字签名

MD5是由单向函数生成的散列值

PGP和MD5都有被改写的可能,都有弊端

所以要用HTTPS

HTTP+加密+认证+完整性保护=HTTPS

用https通信时,https://左边会有一个🔒

https是身披SSL外壳的HTTP,之前HTTP直接和TCP通信,使用之后,先和SSL通信,再由SSL和TCP通信

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

SSL是当今应用最为广泛的网络安全技术

SSL采用的是公开密钥加密的加密方式

-------------------------------------加密两种方式:对称和非对称-----------------------------------------------------

加密方式 

①对称密钥加密:加密和解密同用一个密钥(也叫共享密钥加密))(发送密钥可能被窃听,不发送就无法解密,有困难)

②使用两把密钥的公开密钥加密:公开密钥加密很好的解决了共享密钥加密的困难,使用非对称的密钥

非对称密钥:一把公开密钥一把私有密钥(公开密钥和私有密钥是配对的一套密钥,公开密钥可以发给任何人)

公开密钥加密原理:发送密文的一方使用对方的公开密钥进行加密处理,对方收到被加密信息后,再使用自己的私有密钥进行解密

---------------------------------------------------------------------------------------------------------------------------------

HTTPS采用的是混合加密机制:共享密钥加密和公开密钥加密两者并用的混合加密机制(不单用公开密钥加密的原因是,处理速度太慢,所以利用各自优势,结合起来)

HTTPS原理:交换密钥环节使用公开密钥加密方式,之后的建立通信交换报文阶段则使用共享密钥加密方式

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git--基础学习--面向企业--持续更新

一、基础学习 1.1基本命令 //查询基础信息 git config --global --list //选取合适位置创建 mkdir 文件名 //创建文件夹 //全局配置 git config --global user.email "****e***i" git config --global user.name "*** K****"//--------------------进入…

西瓜书学习——线性判别分析

文章目录 定义LDA的具体步骤1. 计算类内散布矩阵(Within-Class Scatter Matrix)2. 计算类间散布矩阵(Between-Class Scatter Matrix)3. 求解最佳投影向量4. 数据投影5. 分类 定义 线性判别分析(Linear Discriminant A…

php动态高亮web源代码

php动态高亮web源代码 注:配置好不允许高亮的文件名,安全第一 #php实现动态展示目录树结构源代码 适用于开放源代码,结合html缓存使用效果更佳,因循环较多不适合放首页 能力有限没实现行号 演示:show source|开放…

多家企业机密数据遭Lockbit3.0窃取,亚信安全发布《勒索家族和勒索事件监控报告》

本周态势快速感知 本周全球共监测到勒索事件87起,与上周相比勒索事件大幅下降。美国依旧为受勒索攻击最严重的国家,占比45%。 本周Cactus是影响最严重的勒索家族,Lockbit3.0和Bianlian恶意家族紧随其后,从整体上看Lockbit3.0依旧…

git 命令怎么回退到指定的某个提交 commit hash 并推送远程分支?

问题 如下图,我要回退到 【002】Babel 的编译流程 这一次提交 解决 1、先执行下面命令,输出日志,主要就是拿到提交 commit 的 hash,上图红框即可 git log或者 vscode 里面直接右击,copy sha 2、执行下面命令回退 g…

05_Scala运算符

文章目录 **1.Scala运算符****2.scala中没有 --等语法****3.逻辑运算符和Java完全相同****4.scala认为万物皆对象** 1.Scala运算符 Scala底层 使用的是equals() 程序员比较两个量的时候,谁来没事比较内存地址? Java中引用数据类型比较地址&#xff0…

黑马点评(十二) -- UV统计

一 . UV统计-HyperLogLog 首先我们搞懂两个概念: UV:全称Unique Visitor,也叫独立访客量,是指通过互联网访问、浏览这个网页的自然人。1天内同一个用户多次访问该网站,只记录1次。 PV:全称Page View&…

Games101-动画与模拟(基本概念、质点弹簧系统、运动学)

动画:把物体变成活的,让它动起来 更关注的是美学。早期的动画是画出来的,并不关心对不对,符不符合物理,只要看起来对 图形学里对动画理解为对于建模或几何的拓展。动画无非就是在不同的时间或不同的帧有不同的几何形状…

了解Cookie登录:原理、实践与安全指南

什么是Cookie登录? Cookie是什么 当你首次登录网站时,你会输入用户名和密码。在后台,网站的服务器验证这些凭据是否正确。一旦确认你的身份无误,服务器就会创建一个Cookie,并将其发送到你的浏览器。这了解Cookie登录…

2024年深圳杯东三省数学建模联赛A题论文首发+问题一代码分享

深圳杯A题论文代码分享资料链接:链接:https://pan.baidu.com/s/1L2NVgoefSW-yuqZjEB3wcw 提取码:sxjm 基于优化模型的多个火箭残骸的准确定位 摘要 在现代航天技术中,火箭是实现空间探索的关键工具。由于火箭发射过程中的高成…

Qt:学习笔记一

一、工程文件介绍 1.1 main.cpp #include "widget.h" #include <QApplication> // 包含一个应用程序类的头文件 //argc&#xff1a;命令行变量的数量&#xff1b;argv&#xff1a;命令行变量的数组 int main(int argc, char *argv[]) {//a应用程序对象&…

Shell和Linux权限

目录 shell Liunx权限 用户 sudo Linux的权限管理 文件访问者的分类 文件的属性 文件的权限 文件全权限值的表示方法 1.字符表示 2.八进制数值表示 用户符号 修改文件访问权限 修改文件拥有者 修改拥有者和所属组 修改所属组 文件目录的权限的含义 问题 粘滞…

程序员学CFA——数量分析方法(四)

数量分析方法&#xff08;四&#xff09; 常见概率分布基本概念离散型随机变量与连续型随机变量离散型随机变量连续型随机变量 分布函数概率密度函数&#xff08;PDF&#xff09;累积分布函数&#xff08;CDF&#xff09; 离散分布离散均匀分布伯努利分布二项分布定义股价二叉树…

Linux系统编程---线程同步

一、同步概念 同步即协同步调&#xff0c;按预定的先后次序运行。 协同步调&#xff0c;对公共区域数据【按序】访问&#xff0c;防止数据混乱&#xff0c;产生与时间有关的错误。 数据混乱的原因&#xff1a; 资源共享(独享资源则不会)调度随机(意味着数据访问会出现竞争)线…

算法模版自用(杂)

文章目录 算法库函数next_permutation(start,end) prev_permutation(start,end) (全排列函数)nth_element &#xff08;求第k小值&#xff09;next(it,num),prev(it,num)min_element(begin(),end()),max_element(begiin(),end()) (取最小值最大值) _int128的输入输出STLlist 数…

内容互动性的提升策略:Kompas.ai的智能工具

在数字营销的新时代&#xff0c;内容的互动性已成为提升用户参与度和品牌忠诚度的关键因素。互动性内容不仅能够吸引用户的注意力&#xff0c;还能够促进用户与品牌的沟通和交流&#xff0c;从而加深用户对品牌的理解和认同。本文将分析互动性内容在提升用户参与度中的作用及其…

基于DEAP数据集的四种机器学习方法的情绪分类

在机器学习领域&#xff0c;KNN&#xff08;K-Nearest Neighbors&#xff09;、SVM&#xff08;Support Vector Machine&#xff09;、决策树&#xff08;Decision Tree&#xff09;和随机森林&#xff08;Random Forest&#xff09;是常见且广泛应用的算法。 介绍 1. KNN&am…

【Java】从0实现一个消息队列中间件

从0实现一个消息队列中间件 什么是消息队列需求分析核心概念核心API交换机类型持久化网络通信网络通信API 消息应答 模块划分项目创建创建核心类创建Exchange创建MSGQueue创建Binding创建Message 数据库设计配置sqlite实现创建表和数据库基本操作 实现DataBaseManager创建DataB…

按现价和不变价计算与公布的统计指标主要有哪些

在经济统计和分析工作中 , 有些指标可以直接用实物量表示 , 如粮食和工业品产量等&#xff1b;而有些指标则是用价值量表示的 , 如全国居民人均可支配收入、社会消费品零售总额、商品房销售额等。在计算价值量指标时&#xff0c;一般均要考虑采用什么价格来计算。统计上常用的价…

设计模式(三):抽象工厂模式

设计模式&#xff08;三&#xff09;&#xff1a;抽象工厂模式 1. 抽象工厂模式的介绍2. 抽象工厂模式的类图3. 抽象工厂模式的实现3.1 创建摩托车的接口3.2 创建摩托车的具体实现3.3 创建汽车的接口3.4 创建汽车的具体产品3.5 创建抽象工厂3.6 创建具体工厂3.7 创建工厂生成器…