当前位置: 首页 > news >正文

HTTP和HTTPS谁传输数据更安全?

1.HTTP

 HTTP在传输数据时,通常都是明文传输,也就是传输的数据没有进行加密。在这种情况下,如果传输的是一些敏感数据,比如某银行卡密码,就很容易被别人截获到,这就对我们的个人利益产生了威胁。

HTTP传输数据时,数据安全无法得到保证:

2. HTTPS

如今,大多数网站使用的都是HTTPS。

对于HTTP的机制,HTTPS也同样适用。它们的区别在于,HTTPS在HTTP的基础上,在数据安全方面做了进一步改进。也就是说,HTTPS是基于HTTP,且进一步保证了数据的安全

不加密的数据,放在网络中传输,就相当于"裸奔",黑客很容易就能获取到相关数据。数据安全问题受到了极大的威胁。 

因此,在进行网络通信时,更安全的做法是,将传输的数据进行加密,特别是一些重要的数据,将数据加密之后,就算有人利用一些手段获取到了我们传输的数据,但由于数据是经过加密的,别人也很难破解数据,这样就在一定程度上保证了数据安全HTTPS就做到了

因此,如今大多数网站使用的都是HTTPS,HTTPS将数据进行加密,加密的方式有:对称加密 非对称加密。 

2.1 对称加密

对称加密,就是 客户端生成一个密钥通过该密钥,可以对数据进行 加密解密。客户端向服务器发送数据时,就会通过该密钥将数据进行加密,并将密钥传给服务器。

服务器拿到数据和密钥后,就可以通过密钥对数据进行解密,从而拿到数据原文。不同的客户端,生成的密钥都不相同,因此服务器拿到不一样的密钥,就可以对 相应的数据 进行解密。

 

此时就存在一个问题,黑客也可以在数据传输的过程中,将密钥获取到,从而拿到数据原文,此时对 数据加密 也就形同虚设了。因此,密钥也应该被加密,这样即使黑客拿到密钥,但无法破解   加密的  密钥,就无法获取到原文数据了。对 密钥加密 就要需要 非对称加密 方式的帮助了。

2.2 非对称加密

非对称加密,则是服务器生成一对儿密钥,分别是 公钥m1私钥m2。可以通过公钥对数据进行加密,再通过私钥 对数据进行解密,反之也可。

双方在通信时,客户端会拿到 服务器持有的公钥m1,客户端也会以 对称加密 的方式生成一个密钥n。客户端会通过密钥n对数据加密,通过公钥m1对密钥n加密

加密完成后,客户端就将 密文 加密后的密钥 发送给服务器,服务器就可以通过 私钥m2对加密过的 密钥 进行解密拿到密钥原文。再通过 对称密钥n密文进行解密,从而拿到数据原文

因此,对称加密 非对称加密 相结合,https使得数据安全得到了进一步保证,黑客想拿到数据原文,只获取到 加密的密钥 和 加密的数据,是不够的,因为黑客难以破解加密的密钥。

对称加密 非对称加密 两种方式相结合,通信过程如下:

通过以上方式,以 非对称加密的方式 对 对称密钥 加密,再通过 对称加密 对数据加密,从而保证数据的安全传输。这是 对称加密 和 非对称加密 两种加密方式的结合支持数据安全。

没有仅仅使用 非对称加密方式 来实现安全传输的 原因就在于 使用非对称加密 方式 所造成的成本开销较大,使得传输效率较低。因此 两种加密方式 相结合,不仅保证了数据的安全传输,也尽可能的减少开销成本。


此时,又有一个新的漏洞,即使 HTTPS 以 非对称加密 和 对称加密 相结合来传输数据,黑客仍能找到漏洞,将 服务器发送过来的 公钥 进行"偷梁换柱",从而窃取到数据,漏洞如下:

于是,黑客 就在数据的传输过程中 悄无声息的 做了手脚,客户端没有发现问题,服务器也没有发现问题,但数据已经被黑客窃取了。

因此,仅仅使用 对称加密 和 非对称加密 并不能真正保证数据的安全传输。客户端无法辨别自己收到的 公钥 到底是不是 服务器发过来的,无法完全信任。于是,就引入了第三方公证机构,客户端和服务器 都信任这个第三方机构,第三方机构就能 帮助客户端 鉴别这个公钥是否是服务器的公钥。

2.3 第三方公证机构

每个服务器在搭建的时候,都会以 非对称加密方式 生成一对儿 密钥,并且向 公证机构 提交审核材料(域名,服务器公钥,厂商等相关信息)。 公证机构就会对 材料进行审核,资质审核没问题的话,就会给服务器颁发一个证书(一段结构化数据),服务器则会保存好证书。

证书中的内容就包括 网站的域名,服务器的公钥数字签名(颁发证书的时候,公证机构会根据证书的相关属性 计算出一个 校验和,并且公证机构也会 以 非对称加密 方式 生成一对儿 密钥,并且自己将私钥保留着,公钥则内置在 客户端的设备中。公证机构 通过 私钥 对 校验和加密,加密后的 校验和 就是 数字签名)等信息。

客户端向服务器发送信息之前,会先向服务器 索要证书。客户端收到服务器发送过来的证书,也就收到了 服务器的 公钥。收到证书后,客户端会有一个 "证书校验"的过程。这个过程就是为了 验证 证书中的公钥是不是服务器生成的公钥

证书校验:校验的核心在于 “数字签名”,客户端通过设备内置的公钥 数字签名解密,从而拿到 校验和。客户端再通过相同的方式 计算一遍校验和,如果自己计算的校验和 服务器发来的校验和 一致的话,则说明这个公钥就是 服务器的公钥。于是,客户端就可以放心的使用 服务器发来的公钥了。

有了以上过程,黑客就很难再窃取到数据了,即使黑客在客户端收到证书之前,先对证书进行篡改,比如 修改公钥(如果黑客替换了了服务器的公钥,那么客户端在进行校验和计算的时候,计算的校验和结果则会与证书中的校验和不一致)修改数字签名(既然无法替换公钥,干脆 黑客直接替换公钥,再替换 数字签名。但 数字签名 是被 公证机构的 私钥 加密过的,且公钥在客户端设备上,黑客无法拿到 校验和原数据),申请一个证书(服务器的证书内容无法更改的话,黑客能否直接申请一个证书,直接在服务器证书的传输过程中,直接替换掉证书,但是 申请证书有资质审核的环节,因此黑客无法申请到证书)


【总结HTTPS加密机制】

(1)通过 对称加密 非对称加密 相结合,对 数据 密钥 加密;

(2)再引入 第三方公证机构,防止 有人 "偷梁换柱",替换服务器的公钥

通过以上方式的相结合,HTTPS就可以在 极大程度上 保证了 数据的安全传输。因此,如今绝大多数的网站使用的都是HTTPS。

相关文章:

HTTP和HTTPS谁传输数据更安全?

1.HTTP HTTP在传输数据时,通常都是明文传输,也就是传输的数据没有进行加密。在这种情况下,如果传输的是一些敏感数据,比如某银行卡密码,就很容易被别人截获到,这就对我们的个人利益产生了威胁。 HTTP传输数…...

竞赛常考的知识点大总结(七)图论

最短路 最短路问题(Shortest Path Problem)是图论中的一个经典问题,它要求在给定的图中找到两个顶点之间的最短路径。最短路问题可以是单源最短路问题(从一个顶点到其他所有顶点的最短路径)或所有对最短路问题&#x…...

NOSQL - Redis的简介、安装、配置和简单操作

目录 一. 知识了解 1. 关系型数据库与非关系型数据库 1.1 关系型数据库 1.2 非关系型数据库 1.3 区别 1.4 非关系型数据库产生背景 1.5 NOSQL 与 SQL的数据记录对比 2. 缓存相关知识 2.1 缓存概念 2.2 系统缓存 2.3 缓存保存位置及分层结构 二 . redis 相关知识 1.…...

书生·浦语大模型开源体系(二)笔记

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…...

docker-compse安装es(包括IK分词器扩展)、kibana、libreoffice

Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的数据。 Kibana与Elasticsearch的交互方式是各种不同的图表、表格、地图等,直观的展示数据,从而达到高级的数据…...

Electron 读取本地配置 增加缩放功能(ctrl+scroll)

最近,一个之前做的electron桌面应用,需要增加两个功能;第一是读取本地的配置文件,然后记载配置文件中的ip地址;第二就是增加缩放功能; 第一,配置本地文件 首先需要在vue工程根目录中&#xff0…...

docker中配置交互式的JupyterLab环境的问题

【报错1】 Could not determine jupyter lab build status without nodejs 【解决措施】安装nodejs(利用conda进行安装/从官网下载进行安装) 1、conda安装 conda install -c anaconda nodejs 安装后出现其他报错:Please install nodejs 5 and npm bef…...

SQLAlchemy 来查询并统计 MySQL 中 JSON 字段的一个值

在使用 SQLAlchemy 来查询并统计 MySQL 中 JSON 字段的一个值时,你可以结合 SQLAlchemy 的 func 模块来实现 SQL 函数的调用,比如 JSON_EXTRACT,并使用 group_by 和 count 方法来进行分组统计。下面是如何在 SQLAlchemy 中实现这一点的基本步…...

HTTPS ECDHE 握手解析(计算机网络)

使用了 ECDHE,在 TLS 第四次握手前,客户端就已经发送了加密的 HTTP 数据,而对于 RSA 握手过程,必须要完成 TLS 四次握手,才能传输应用数据。 所以,ECDHE 相比 RSA 握手过程省去了一个消息往返的时间&#…...

在git上先新建仓库-把本地文件提交远程

一.在git新建远程项目库 1.选择新建仓库 以下以gitee为例 2.输入仓库名称,点击创建 这个可以选择仓库私有化还公开权限 3.获取仓库clone链接 这里选择https模式就行,就不需要配置对电脑进行sshkey配置了。只是需要每次提交输入账号密码 二、远…...

Redis 过期删除策略

Redis 过期删除策略 Redis 过期删除策略主要包括两种:惰性删除(Lazy Expiration)和定期删除(Periodic Expiration)。这两种策略通常会配合使用,以在内存使用效率、CPU 资源消耗以及过期键清理的及时性之间…...

MySQL 锁合集与事务隔离级别

概览 在数据库管理中,锁是用来控制多个事务对同一数据的并发访问的机制。InnoDB作为MySQL的默认事务型存储引擎,提供了多种类型的锁来保障事务的隔离性并减少冲突,从而维护数据库的完整性和一致性。以下是InnoDB提供的主要锁类型&#xff1a…...

题解 -- 第六届蓝桥杯大赛软件赛决赛C/C++ 大学 C 组

https://www.lanqiao.cn/paper/ 1 . 分机号 模拟就行 : inline void solve(){int n 0 ;for(int a1;a<9;a){for(int b0;b<9;b){for(int c0;c<9;c){if(a>b && b>c){n ;}}}}cout << n << endl ; } 2 . 五星填数 直接调用全排列的库函数…...

Lua脚本的使用

一、使用lua脚本扣减单个商品的库存 SpringBootTest class LuaTests {AutowiredStringRedisTemplate stringRedisTemplate;Testvoid test3() {for (int i 1; i < 5; i) {stringRedisTemplate.opsForValue().set("product."i,String.valueOf(i));}}Testvoid test…...

hcia datacom课程学习(5):MAC地址与arp协议

1.MAC地址 1.1 含义与作用 &#xff08;1&#xff09;含义&#xff1a; mac地址也称物理地址&#xff0c;是网卡设备在数据链路层的地址&#xff0c;全世界每一块网卡的mac地址都是唯一的&#xff0c;出厂时烧录在网卡上不可更改 &#xff08;2&#xff09;作用&#xff1a…...

unbuntu mysql8.0新建用户及开启远程连接

MySQL更新到8.0以上版本后&#xff0c;在创建连接远程的用户的时候和之前5.x的版本有了很大的不同&#xff0c;不能使用原来同时创建用户和授权的命令。 以下是记录的MySQL8.0创建用户并授权的命令&#xff1a; 查看用户表&#xff1a; user mysql; select host,user,authen…...

Intel FPGA (1):线性序列机

Intel FPGA (1)&#xff1a;线性序列机 前提摘要 个人说明&#xff1a; 限于时间紧迫以及作者水平有限&#xff0c;本文错误、疏漏之处恐不在少数&#xff0c;恳请读者批评指正。意见请留言或者发送邮件至&#xff1a;“Email:noahpanzzzgmail.com”。本博客的工程文件均存放在…...

翻译: 硅谷软件工程师面试:准备所需的一切

没有人有时间去做成百上千道LeetCode题目&#xff0c;好消息是你实际上并不需要做那么多题目就能够在FAANG公司找到工作&#xff01; 我曾经在Grab工作&#xff0c;这是东南亚的一家共享出行公司&#xff0c;但我对工作感到沮丧&#xff0c;想要进入FAANG公司&#xff0c;但我…...

视频推拉流EasyDSS点播平台云端录像播放异常的问题排查与解决

视频推拉流EasyDSS视频直播点播平台可提供一站式的视频转码、点播、直播、视频推拉流、播放H.265视频等服务&#xff0c;搭配RTMP高清摄像头使用&#xff0c;可将无人机设备的实时流推送到平台上&#xff0c;实现无人机视频推流直播、巡检等应用。 有用户反馈&#xff0c;项目现…...

kubuntu23.10安装sdl2及附加库和 sfml2.5.1

2024年3月28号&#xff0c;四&#xff0c;晚上kubuntu23.10下安装了sdl2的如下&#xff0c;没有安装gfx。 sudo apt install libsdl2-dev sudo apt install libsdl2-image-dev sudo apt install libsdl2-ttf-dev sudo apt install libsdl2-mixer-dev sudo apt install libsdl2…...

嘎嘎降AI和笔灵AI哪个更适合毕业论文:2026年达标率改写质量售后完整测评对比报告

嘎嘎降AI和笔灵AI哪个更适合毕业论文&#xff1a;2026年达标率改写质量售后完整测评对比报告 帮几个不同专业的同学处理过论文AI率&#xff0c;用过的工具加起来也有六七款了。 综合看&#xff0c;嘎嘎降AI&#xff08;www.aigcleaner.com&#xff09;是最稳的选择&#xff0…...

AI记忆库CoPaw-Memory:向量检索与结构化存储融合实践

1. 项目概述&#xff1a;当AI学会“记笔记”&#xff0c;一个开源记忆库的诞生最近在折腾AI应用开发的朋友&#xff0c;可能都遇到过同一个痛点&#xff1a;如何让AI记住我们说过的话&#xff1f;无论是构建一个长期陪伴的聊天机器人&#xff0c;还是开发一个能理解复杂上下文的…...

手把手教你用YOLOv5训练VisDrone2019数据集:搞定无人机航拍小目标检测

无人机视角下的目标检测实战&#xff1a;YOLOv5与VisDrone2019数据集深度适配指南 无人机航拍图像的目标检测一直是计算机视觉领域的难点与热点。VisDrone2019作为当前最权威的无人机视角数据集之一&#xff0c;包含了丰富的场景变化和极具挑战性的小目标检测任务。本文将带您从…...

Postman数据迁移实战:如何用导入导出功能,在团队间高效同步你的接口集合和环境变量

Postman团队协作指南&#xff1a;接口资产迁移与标准化管理实践 在分布式团队和敏捷开发成为主流的今天&#xff0c;API开发工具的高效使用直接影响着协作效率。作为被全球超过2000万开发者使用的API工具&#xff0c;Postman的集合与环境变量功能已经成为团队间接口定义传递的事…...

技能与代码审计融合实践:构建安全开发思维与实战靶场

1. 项目概述&#xff1a;技能与代码审计的融合实践最近在和一些做安全开发的朋友聊天&#xff0c;大家普遍有个感受&#xff1a;现在单纯会写代码&#xff0c;或者单纯懂点安全皮毛&#xff0c;已经越来越不够用了。一个功能上线&#xff0c;开发觉得逻辑完美&#xff0c;但安全…...

免费解锁Adobe全家桶!Adobe GenP 3.0终极指南让你告别订阅费

免费解锁Adobe全家桶&#xff01;Adobe GenP 3.0终极指南让你告别订阅费 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP 还在为Adobe Creative Cloud的高昂订阅费用…...

保姆级教程:在HCL模拟器上给H3C路由器配置DHCP服务器(双网段实战)

从零构建H3C路由器双网段DHCP服务&#xff1a;模拟器实战与协议解析 在虚拟实验室中搭建网络环境已成为现代工程师的必备技能&#xff0c;而DHCP服务作为网络自动化的基石&#xff0c;其配置过程往往成为初学者接触企业级设备的第一个实战挑战。本文将使用H3C官方推出的HCL模拟…...

开源漏洞情报自动化分诊系统:从数据采集到智能响应的工程实践

1. 项目概述&#xff1a;一个为开源安全情报而生的“智能爪子”如果你和我一样&#xff0c;长期混迹在开源软件和网络安全社区&#xff0c;那你一定对“漏洞情报”这个词不陌生。每天&#xff0c;成千上万的开源项目在更新&#xff0c;新的漏洞&#xff08;CVE&#xff09;在发…...

Android 数字人动画序列帧选型优化:PNG vs WebP 格式深度对比实践

一、项目背景近期开发遇到数字人动画落地优化需求&#xff0c;业务流程为&#xff1a;单张人物原图 → 生成数字人短视频 → 导出带 Alpha 透明通道的序列帧&#xff0c;最终需要在 Android 页面中流畅播放数字人序列帧动画。整个流程核心难点&#xff1a;选择合适的透明序列帧…...

Go语言json-repair库:高效修复LLM输出的非标准JSON

1. 项目概述&#xff1a;当LLM的JSON输出“不听话”时&#xff0c;我们怎么办&#xff1f; 如果你正在开发基于大语言模型&#xff08;LLM&#xff09;的应用&#xff0c;无论是智能客服、代码生成器&#xff0c;还是复杂的多智能体工作流&#xff0c;那么你肯定遇到过这个让人…...