计算机网络(6) --- https协议
计算机网络(5) --- http协议_哈里沃克的博客-CSDN博客http协议https://blog.csdn.net/m0_63488627/article/details/132089130?spm=1001.2014.3001.5501
目录
1.HTTPS的出现
1.HTTPS协议介绍
2.补充概念
1.加密
1.解释
2.原因
3.加密方式
对称加密
非对称密钥
2.数据摘要和数字签名
数据摘要
数字签名
3.加密方案
1.只使用对称密钥加密
2.只使用非对称密钥加密
只用一对密钥
用两对密钥
3.对称密钥加密和非对称密钥加密组合
4.中间人攻击
3.证书
1.证书介绍
2.理解数据签名
3.检查证书
4.解决安全问题
证书+对称加密+非对称加密
1.HTTPS的出现
http是明文发送的,也就是说其安全性难以保证。
1.HTTPS协议介绍
1.HTTPS也是⼀个应⽤层协议.是在HTTP协议的基础上引⼊了⼀个加密层ssl/tls.
2.HTTP协议内容都是按照⽂本的⽅式明⽂传输的。这就导致在传输过程中出现⼀些被篡改的情况,其端口号为443。
2.补充概念
1.加密
1.解释
1.加密就是把明⽂(要传输的信息)进⾏⼀系列变换,⽣成密⽂.
2.解密就是把密⽂再进⾏⼀系列变换,还原成明⽂
3.在这个加密和解密的过程中,往往需要⼀个或者多个中间的数据,辅助进⾏这个过程,这样的数据称为密钥
4.发送数据前要加密,这样网络上传输的都是密文,最终到达目的主机被解密就得到原始数据了2.原因
因为http的内容是明⽂传输的,明⽂数据会经过路由器、wifi热点、通信服务运营商、代理服务器等多个物理节点,如果信息在传输过程中被劫持,传输的内容就完全暴露了。劫持者还可以篡改传输的信息且不被双⽅察觉,这就是中间⼈攻击,所以我们才需要对信息进⾏加密。
3.加密方式
对称加密
1.加密和解密使用的是同一个密钥。
2.算法公开、计算量⼩、加密速度快、加密效率⾼
3.常⻅对称加密算法(了解):DES、3DES、AES、TDEA、Blowfish、RC2等
非对称密钥
1.需要两个密钥来进⾏加密和解密。这两个密钥是公开密钥(publickey,简称公钥)和私有密钥(privatekey,简称私钥)。
2.算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,⽽使得加密解密速度没有对称加密解密的速度快
3.常⻅⾮对称加密算法(了解):RSA,DSA,ECDSA
2.数据摘要和数字签名
数据摘要
1.数字指纹(数据摘要),其基本原理是利⽤单向散列函数(Hash函数)对信息进⾏运算,⽣成⼀串固定⻓度的数字摘要。数字指纹并不是⼀种加密机制,但可以⽤来判断数据有没有被窜改,唯一性非常强。
2.摘要常⻅算法:有MD5、SHA1、SHA256、SHA512等,算法把⽆限的映射成有限,因此可能会有碰撞(两个不同的信息,算出的摘要相同,但是概率⾮常低)
3.摘要特征:和加密算法的区别是,摘要严格意义不是加密,因为没有解密,只不过从摘要很难反推原信息,通常⽤来进⾏数据对⽐数字签名
摘要经过加密,就得到数字签名
3.加密方案
1.只使用对称密钥加密
即客户端和服务端之间只有一个密钥进行加密和解密。当浏览器访问服务端时,服务端将密钥发送给客户端,客户端就拥有了解密的能力。
但是,这样的设置是无法满足安全要求的,因为中间人劫持能直接连接两边,服务端将密钥给了中间人,中间人再给客户端,那么客户端的安全就不能保证了。
2.只使用非对称密钥加密
只用一对密钥
服务端有公钥和私钥。当浏览器请求时,服务端发送给客户端公钥,那么此时服务器将信息发送给客户端就用私钥进行加密,即保证了客户端向服务端发送的安全性;但是我们无法保证服务端发给客户端的安全性,因为每一个客户端的公钥完全一致,那么劫持服务端发给客户端的信息,中间人也能解密。
用两对密钥
服务端和客户端都有私钥和公钥。连接时,客户端发送公钥给服务端,服务端也将公钥给服务器。这样两边的数据都能被保护起来了。客户端发信息先用服务端的公钥解密再发送;服务端发送思路同理。
缺点:1.发送速度慢 2.安全问题依然无法解决
3.对称密钥加密和非对称密钥加密组合
服务端有一对密钥,客户端只有公钥。客户端发送请求,服务端发送公钥给客户端。客户端形成对称密钥,客户端拿着服务端发来的公钥加密密钥,这样到服务端能得到加密后的对称密钥。但是,安全问题依然无法解决
4.中间人攻击
只要当链接未完成建立,中间人在开始就已经进行攻击。此时对于上面的方法依然存在安全问题。中间人在中间生成两个密钥针对服务端和客户端,这样客户端的所有请求其实都能被中间人轻而易举的获取。由于它有两边的密钥,那么破解也十分容易。
其问题的最初问题其实是:服务端发送密文的公钥时,中间人有可能获取并且篡改,但是客户端无法辨别得到的公钥的真假。
3.证书
1.证书介绍
服务端在使⽤HTTPS前,需要向CA机构申领⼀份数字证书,数字证书⾥含有证书申请者信息、公钥信息等。服务器把证书传输给浏览器,浏览器从证书⾥获取公钥就⾏了,证书就如⾝份证,证明服务端公钥的权威性
1.企业将申请认证的资料提交给CA机构。信息包括:公钥和私钥,域名,申请者等。
2.审核后,将证书发送给企业。证书的信息时明文的。
3.最后,就是每次客户端访问服务端时,服务端都会发证书给客户端,客户端确认无误再进行连接。
2.理解数据签名
1.企业发送给CA机构的证书,经过哈希得到数据摘要,数据摘要又通过CA提供的私钥进行加密变成数据签名。数据签名和证书合并就是所谓的带签名的证书。
2.数据签名是为了防篡改
3.检查证书
![]()
将带签名的证书分离出数据签名和证书。签名可以通过公钥得到数据摘要。证书也可以通过哈希得到数据摘要。这两份数据摘要一致则说明安全。
因为CA的私钥只有CA有,那么CA形成的数据摘要只有CA机构可以判断
4.解决安全问题
1.客户端请求服务端,服务端将证书发给客户端。
2.证书中有服务端的公钥。为了保证公钥的正确性,客户端会分离出证书和数据签名,证书直接哈希得到数据摘要,CA在浏览器中加入了公钥,该公钥用于数据签名,数据签名解码得到数据摘要,要知道CA的私钥只有CA有,也就意味着数据签名转换的数据摘要是绝对正确的,两个数据摘要一对比就能知道是否有中间人攻击了
证书+对称加密+非对称加密
1.首先客户端发送请求,服务器发送证书,客户端检查证书。此时客户端就得到了服务器的公钥
2.客户端生成了对称加密密钥,通过服务器的公钥加密给服务器。服务器的私钥只有服务器拥有,那么也就只有服务器能够解密出对称加密的密钥。最终得到了安全的要求
相关文章:
计算机网络(6) --- https协议
计算机网络(5) --- http协议_哈里沃克的博客-CSDN博客http协议https://blog.csdn.net/m0_63488627/article/details/132089130?spm1001.2014.3001.5501 目录 1.HTTPS的出现 1.HTTPS协议介绍 2.补充概念 1.加密 1.解释 2.原因 3.加密方式 对称加…...
(三)Node.js - 模块化
1. Node.js中的模块化 Node.js中根据模块来源不同,将模块分为了3大类,分别是: 内置模块:内置模块由Node.js官方提供的,例如fs、path、http等自定义模块:用户创建的每个.js文件,都是自定义模块…...
502 bad gateway报错
代码在本地运行可以正常访问后端接口,部署服务器报错502。直接检查防火墙状态是否开启,先关闭防火墙试一下。如果是防火墙的原因在打开防火墙,开放需要的端口即可。 1、先查看防火墙状态: systemctl status firewalld2、停止防火…...
Flink学习教程
最近因为用到了Flink,所以博主开了《Flink教程》专栏来记录Flink的学习笔记。 【Apache Flink v1.16 中文文档】 【官网 - Apache Flink v1.3 中文文档】 一、基础 参考链接如下: Flink教程(01)- Flink知识图谱Flink教程&…...
flutter开发实战-实现音效soundpool播放音频及控制播放暂停停止设置音量
flutter开发实战-实现音效soundpool播放音频 最近开发过程中遇到低配置设备时候,在Media播放音频时候出现音轨限制问题。所以将部分音频采用音效sound来播放。 一、音效类似iOS中的Sound 在iOS中使用sound来播放mp3音频示例如下 // 通过通知的Sound设置为voip_c…...
Sequence 2023牛客暑期多校训练营6 E
登录—专业IT笔试面试备考平台_牛客网 题目大意:有一长度为n的数组a,有q次询问,每次要求将[l,r]的区间分成k个连续区间,满足每个区间和都是偶数,能满足要求就输出YES 1<n,q<1e5;0<ai<1e10;1<l<r&l…...
【ASP.NET MVC】使用动软(二)(10)
一、添加动软生成工程 按前文添加动态到工程 双击动软 完成新建数据库服务器后 ,需要关闭重新打开 选择简单三层,注意保存位置 注意切换数据库: 生成后拷贝五个文件夹到工程目录 注意目录结构: 添加四个项目到原来的工程&…...
STM32入门学习之独立看门狗(IWDG)
1.STM32的独立看门狗是一个具有独立时钟的片上外设。通常,为了防止程序卡死,可以设置看门狗定时复位。当看看门狗被使能之后,会按初始化时设置的计数值进行计数。当根据计数值计数的倒数时间为0时,便会自动复位程序,即…...
抖音seo矩阵系统源码搭建开发详解
抖音SEO矩阵系统是一个用于提高抖音视频在搜索引擎排名的工具。如果你想开发自己的抖音SEO矩阵系统,以下是详细的步骤: 开发步骤详解: 确定你需要的功能和算法 抖音SEO矩阵系统包含很多功能,比如关键词研究、内容优化、链接建设、…...
2685. 统计完全连通分量的数量;2718. 查询后矩阵的和;1600. 王位继承顺序
2685. 统计完全连通分量的数量 核心思想:枚举所有的连通分量,然后判断这些连通分量是不是完全连通分量,完全连通分量满足边数2e 点数v(v-1)。 2718. 查询后矩阵的和 核心思想:后面的改变更重要,所以我们直接逆向思维…...
SpringBoot统一功能处理(AOP思想实现)(统一用户登录权限验证 / 异常处理 / 数据格式返回)
主要是三个处理: 1、统一用户登录权限验证; 2、统一异常处理; 3、统一数据格式返回。 目录 一、用户登录权限校验 🍅 1、使用拦截器 🎈 1.1自定义拦截器 🎈 1.2 设置自定义拦截器 🎈创建cont…...
git stash 用法
起始 今天在看一个bug,之前一个分支的版本是正常的,在新的分支上上加了很多日志没找到原因,希望回溯到之前的版本,确定下从哪个提交引入的问题,但是还不想把现在的修改提交,也不希望在Git上看到当前修改的…...
生鲜蔬果小程序的完整教程
随着互联网的发展,线上商城成为了人们购物的重要渠道。其中,小程序商城在近年来的发展中,备受关注和青睐。本文将介绍如何使用乔拓云网后台搭建生鲜果蔬配送小程序,并快速上线。 首先,登录乔拓云网后台,进入…...
De Bruijin序列与魔术(二)——魔术《De Bruijin序列》
早点关注我,精彩不错过! 上一篇我们介绍了De Bruijin序列的基本数学内容以及其如何应用在魔术上的一些基本内容,今天我们就来学习一下这个经典的《De Bruijin序列》魔术。 De bruijin序列魔术 先看视频。 视频1 De Bruijin序列的魔术 魔术来源…...
ARCGIS地理配准出现的问题
第一种。已有省级行政区矢量数据,在网上随便找一个相同省级行政区图片,利用地理配准工具给图片添加坐标信息。 依次添加省级行政区选择矢量数据、浙江省图片。 此时,图层默认的坐标系与第一个加载进来的省级行政区选择矢量数据的坐标系一致…...
redis原理 6:小道消息 —— PubSub
前面我们讲了 Redis 消息队列的使用方法,但是没有提到 Redis 消息队列的不足之处,那就是它不支持消息的多播机制。 img 消息多播 消息多播允许生产者生产一次消息,中间件负责将消息复制到多个消息队列,每个消息队列由相应的消费组…...
Android Studio 的Gradle版本修改
使用Android Studio构建项目时,需要配置Gradle,与Gradle插件。 Gradle是一个构建工具,用于管理和自动化Android项目的构建过程。它使用Groovy或Kotlin作为脚本语言,并提供了强大的配置能力来定义项目的依赖关系、编译选项、打包方…...
Redis的部分面试题
1.Redis是什么?简述它的优缺点? Redis的字符串类型是通过简单动态字符串SDS来实现的。简单动态字符串是Redis自己实现的一种字符串表示方式,相比于C语言中的传统字符串,它具有以下几个特点: 1. 动态调整大小:简单动态字符串可…...
单通道 6GSPS 16位采样DAC子卡模块--【资料下载】
FMC147是一款单通道6.4GSPS(或者配置成2通道3.2GSPS)采样率的12位AD采集、单通道6GSPS(或配置成2通道3GSPS)采样率16位DA输出子卡模块,该板卡为FMC标准,符合VITA57.4规范,该模块可以作为一个理想…...
Python 文件操作详解
概要 Python进行文件操作,在日常编程中是很常用的。为了方便大家,这里对各种文件操作的知识进行汇总。一文在手,无须它求!来一起学习吧。 一、文件的打开和关闭 open()函数 f1 open(rd:\测试文件.txt, moder, encodingutf-8) c…...
类器官 vs 器官芯片:下一代体外模型如何提升药物研发效率【曼博生物-CNBIO】
类器官与器官芯片(OOC):临床前研究模型的新趋势 一、介绍 类器官与器官芯片(OOC/MPS)是当前体外模型研究的两大核心技术路线。:contentReference[oaicite:0]{index0} 类器官是三维微型器官,通常由干细胞…...
一天一个开源项目(第63篇):lil agents - 住在 macOS Dock 上的迷你 AI 伙伴
引言 “Tiny AI companions that live on your macOS dock.” 这是「一天一个开源项目」系列的第 63 篇文章。今天介绍的项目是 lil agents(GitHub)。 很多人把 AI 编程助手放在 IDE 里(Cursor / VSCode 插件),或者放…...
OpenClaw安全审计方案:Phi-3-mini-128k-instruct操作日志分析
OpenClaw安全审计方案:Phi-3-mini-128k-instruct操作日志分析 1. 为什么需要OpenClaw安全审计 去年夏天,我在用OpenClaw自动处理一批财务报表时,差点酿成大错。当时脚本在凌晨3点自动运行,由于模型错误理解了"删除临时文件…...
笔试训练48天:拼三角(枚举/dfs)
链接:https://ac.nowcoder.com/acm/problem/219046 来源:牛客网 题目描述 给出6根棍子,能否在选出3根拼成一个三角形的同时剩下的3根也能组成一个三角形? 输入描述: 输出描述: 在一行中输出 “Yes” or “No” 示例1 输入…...
Kandinsky-5.0-I2V-Lite-5s效果展示:C++高性能推理后端优化案例
Kandinsky-5.0-I2V-Lite-5s效果展示:C高性能推理后端优化案例 1. 优化成果速览 这次针对Kandinsky-5.0-I2V-Lite-5s模型的C后端优化,取得了相当不错的成绩。在RTX 4090显卡上,单次推理耗时从原来的3.5秒降低到了2.1秒,速度提升了…...
OpenClaw+SecGPT-14B:构建无需编程的内网资产管理系统
OpenClawSecGPT-14B:构建无需编程的内网资产管理系统 1. 为什么需要无代码内网资产管理 去年接手公司IT运维时,我发现内网设备清单还是三年前的Excel表格。每当新设备接入或旧设备淘汰,手动更新文档总会被遗忘。更麻烦的是,不同…...
终极指南:PDFMiner XML输出如何高效提取结构化数据
终极指南:PDFMiner XML输出如何高效提取结构化数据 【免费下载链接】pdfminer Python PDF Parser (Not actively maintained). Check out pdfminer.six. 项目地址: https://gitcode.com/gh_mirrors/pd/pdfminer PDFMiner是一个强大的Python PDF解析库&#x…...
别只盯着 Claw 了,这波“真香”技能才是真的生产力神器!
手把手教你一键部署OpenClaw,连接微信、QQ、飞书、钉钉等,1分钟全搞定! 说白了,各家大厂出的 Claw 产品,核心逻辑就是“AI 大模型 技能插件”。模型是地基,而你用得爽不爽,全看这些技能给不给…...
外贸企业如何提高搜索引擎优化效果_外贸企业如何利用社交媒体进行SEO优化
外贸企业如何提高搜索引擎优化效果 在当今数字化时代,外贸企业为了在全球市场中脱颖而出,如何提高搜索引擎优化(SEO)效果成为了关键问题。搜索引擎优化不仅仅是为了提升网站在搜索结果中的排名,更是为了吸引更多的潜在…...
别再写重复代码了!微信小程序分页加载与下拉刷新,一个通用组件就搞定
微信小程序分页加载与下拉刷新的工程化实践 每次开发新页面时,你是否还在重复编写分页加载和下拉刷新的逻辑?作为一个有追求的小程序开发者,我们需要思考如何将这些通用功能抽象成可复用的组件或Mixin。本文将带你从工程化角度,设…...


