【Linux】HTTPS

在这里插入图片描述

欢迎来到Cefler的博客😁
🕌博客主页:折纸花满衣
🏠个人专栏:Linux

在这里插入图片描述


目录

  • 👉🏻HTTPS协议概念
  • 👉🏻加密
    • 为什么要进行加密
  • 👉🏻常见的加密方式
    • 对称加密
    • 非对称加密
    • 对称加密和非对称加密对比
  • 👉🏻数字签名
  • 👉🏻数据摘要and数据指纹

👉🏻HTTPS协议概念

🌈基本概念
HTTPS(Hypertext Transfer Protocol Secure)是一种用于在计算机网络上进行安全通信的协议。它是HTTP的安全版本,通过使用TLS/SSL协议进行加密,确保了数据在传输过程中的安全性和完整性。HTTPS的主要作用是保护用户的隐私和数据安全,防止敏感信息在传输过程中被窃取或篡改。通常,HTTPS被用于安全地传输网页、登录信息支付信息等敏感数据。网站使用HTTPS可以通过使用SSL证书来确保数据传输的安全,这样用户在访问这些网站时就可以看到浏览器地址栏中的“https://”前缀,并且通常会有一个锁定的图标,表示连接是安全的。

HTTPS 也是⼀个应⽤层协议. 是在 HTTP 协议的基础上引⼊了⼀个加密层.
HTTP 协议内容都是按照⽂本的⽅式明⽂传输的. 这就导致在传输过程中出现⼀些被篡改的情况.

👉🏻加密

🌈基本概念
加密就是把 明⽂ (要传输的信息)进⾏⼀系列变换, ⽣成 密⽂ .
解密就是把 密⽂ 再进⾏⼀系列变换, 还原成 明⽂ .
在这个加密和解密的过程中, 往往需要⼀个或者多个中间的数据, 辅助进⾏这个过程, 这样的数据称为 密钥

为什么要进行加密

由于我们通过⽹络传输的任何的数据包都会经过运营商的⽹络设备(路由器, 交换机等), 那么运营商的⽹
络设备就可以解析出你传输的数据内容, 并进⾏篡改.

比如我们下载软件A,点击 “下载按钮”, 其实就是在给服务器发送了⼀个 HTTP 请求, 获取到的 HTTP 响应其实就包含了该APP 的下载链接. 运营商劫持之后, 就发现这个请求是要下载软件A, 那么就⾃动的把交给⽤⼾的响应
给篡改成 “软件B” 的下载地址了.

所以,因为http的内容是明⽂传输的,明⽂数据会经过路由器、wifi热点、通信服务运营商、代理服务
器等多个物理节点,如果信息在传输过程中被劫持,传输的内容就完全暴露了。劫持者还可以篡改传
输的信息且不被双⽅察觉,这就是 中间⼈攻击 ,所以我们才需要对信息进⾏加密。

👉🏻常见的加密方式

对称加密

在这里插入图片描述

对称加密是一种加密方式,使用相同的密钥进行加密和解密。这意味着发送方和接收方必须事先共享密钥,以便彼此能够互相加密和解密数据。

在对称加密中,加密和解密过程都使用同一把密钥。发送方使用密钥将明文(原始数据)加密成密文(加密后的数据),然后将密文发送给接收方。接收方使用相同的密钥解密密文,将其还原成明文。

对称加密的优点包括速度快和加密效率高,因为它不需要进行复杂的数学运算。但是,对称加密的主要缺点是密钥的安全性问题。由于发送方和接收方都必须知道密钥,因此需要在它们之间安全地共享密钥,这可能会带来一些安全隐患。

常见的对称加密算法包括DES(Data Encryption Standard)、3DES(Triple DES)、AES(Advanced Encryption Standard)等。这些算法在保护数据的安全性方面发挥着重要作用,被广泛应用于网络通信、数据存储等领域。

非对称加密

非对称加密,也称为公钥加密,使用一对密钥进行加密和解密:公钥和私钥。这两个密钥是一对相关联的密钥,其中一个用于加密,另一个用于解密。

  • 公钥:公钥是公开的,任何人都可以访问。它用于加密数据。即使数据被公钥加密,只有对应的私钥才能解密。

  • 私钥:私钥是保密的,只有密钥的所有者可以访问。它用于解密数据。私钥必须始终保持机密,不应该被泄露。

非对称加密的基本原理是使用公钥加密数据,然后只有私钥的持有者才能解密数据。这使得非对称加密提供了更高的安全性,因为即使公钥被攻击者获得,他们也无法解密由公钥加密的数据,除非他们也拥有对应的私钥。

非对称加密广泛应用于网络安全领域,例如:

  • 安全的数据传输(如HTTPS协议)
  • 数字签名
  • 身份验证
  • 密钥交换

常见的非对称加密算法包括RSA(Rivest-Shamir-Adleman)、DSA(Digital Signature Algorithm)、ECC(Elliptic Curve Cryptography)等。这些算法在保护数据的安全性和确保通信的机密性方面发挥着重要作用。

对称加密和非对称加密对比

对称加密适合于大量数据的加密,但需要解决密钥管理的问题;非对称加密提供了更好的安全性,但加密和解密速度较慢,适合于密钥交换和身份验证等场景。因此,实际应用中常常结合两种加密方式,利用对称加密的速度和效率以及非对称加密的安全性

👉🏻数字签名

数字签名是一种用于确保数据的完整性、认证数据来源以及验证数据的不可否认性的加密技术。它结合了非对称加密算法哈希函数,通常用于数字通信和电子文件传输中。

数字签名的基本原理如下:

  1. 生成密钥对:首先,签名者需要生成一对密钥,包括私钥和公钥。私钥用于签名数据,而公钥用于验证签名。

  2. 对数据进行哈希处理:签名者使用哈希函数对要签名的数据进行处理,生成数据的摘要或哈希值。

  3. 使用私钥进行签名:签名者使用自己的私钥对数据的哈希值进行加密,生成数字签名。

  4. 发送数据和签名:签名者将原始数据数字签名一起发送给接收者。

  5. 验证签名:接收者收到数据和数字签名后,使用签名者的公钥对数字签名进行解密,得到数据的哈希值。然后,接收者使用相同的哈希函数对接收到的数据进行处理,生成新的哈希值。如果这两个哈希值匹配,则说明签名有效,数据完整性得到验证,并且数据来源可以被认证。

该过程可表示为下图: 👇🏻
在这里插入图片描述

数字签名的作用包括:

  • 数据完整性验证:接收者可以使用数字签名来验证数据在传输过程中是否被篡改。
  • 身份认证:数字签名可以用于确认数据的发送者,因为只有发送者拥有私钥才能生成有效的数字签名。
  • 不可否认性:发送者无法否认已经签名的数据,因为数字签名是基于私钥加密的,只有发送者才能生成有效的签名。

总的来说,数字签名是一种强大的加密技术,用于确保数据的完整性、认证数据来源以及验证数据的不可否认性。

👉🏻数据摘要and数据指纹

数据摘要和数据指纹都是用于验证数据完整性的技术,它们的基本原理是将任意长度的数据转换成固定长度的哈希值

  • 数据摘要:数据摘要是通过使用哈希函数将任意长度的数据转换成固定长度的唯一值。常见的哈希函数包括MD5、SHA-1、SHA-256等。数据摘要常用于验证数据完整性,比如在网络传输过程中,发送方可以对数据进行摘要计算,并将摘要值一并发送给接收方,接收方接收到数据后也可以计算摘要值,然后与发送方提供的摘要值进行比较,以验证数据是否被篡改

  • 数据指纹:数据指纹通常是数据的一种加密形式,也称为数据的哈希值。与数据摘要类似,数据指纹也是通过哈希函数将任意长度的数据转换成固定长度的唯一值。但是,数据指纹通常与数据的签名相关联用于验证数据的来源和完整性。在加密数字通信中,发送方会对数据进行哈希计算,并使用自己的私钥对哈希值进行签名,然后将签名和数据一起发送给接收方。接收方使用发送方的公钥验证签名的有效性,然后再对接收到的数据计算哈希值,并与签名中的哈希值进行比较,以验证数据的完整性和来源的真实性。

总的来说,数据摘要和数据指纹都是通过哈希函数将数据转换成固定长度的唯一值,用于验证数据完整性。数据指纹通常与数字签名相关联,用于验证数据的来源和完整性,而数据摘要则更广泛地用于数据完整性验证。


虽然数据摘要和数据指纹都是用于验证数据完整性的技术,并且都使用哈希函数将数据转换成固定长度的唯一值,但它们在使用场景和目的上存在一些区别:

  1. 使用场景

    • 数据摘要通常用于验证数据的完整性,例如在文件传输或数据存储中,可以计算数据的摘要并与原始数据的摘要进行比较,以确保数据在传输或存储过程中没有被篡改。
    • 数据指纹则更常用于数字签名和身份验证等场景,用于验证数据的来源和完整性数据指纹通常与数字签名一起使用,以验证数据的真实性和完整性。
  2. 关联性

    • 数据摘要通常是独立的,只用于验证数据的完整性,不与任何身份验证或数字签名过程相关联。
    • 数据指纹通常与数字签名过程相关联,用于验证数据的来源和完整性。在数字签名过程中,数据的哈希值会被加密,并与签名一起发送,以确保数据的完整性和真实性。
  3. 目的

    • 数据摘要的主要目的是验证数据在传输或存储过程中是否被篡改,以确保数据的完整性。
    • 数据指纹的主要目的是验证数据的来源和完整性,以确保数据的真实性和完整性。

虽然在某些情况下这两个术语可能会交叉使用,但它们在使用场景和目的上仍存在一些区别。


如上便是本期的所有内容了,如果喜欢并觉得有帮助的话,希望可以博个点赞+收藏+关注🌹🌹🌹❤️ 🧡 💛,学海无涯苦作舟,愿与君一起共勉成长

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

IP证书能免费申请吗

IP SSL证书是一种数字证书,用于保护网络服务器和网络浏览器之间的通信。该证书是一种主要保护公网IP地址的专属信任SSL证书。 IP类型的SSL证书对于直接用IP地址传输数据的技术人员来说,十分重要!无论是防洪还是防劫持还是数据加密都起到了关…

基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

练习项目后端代码解析切面篇(Aspect)

前言 之前注解篇时我说,通常情况下一个自定义注解一般对应一个切面,虽然项目里的切面和注解个数相同,但是好像有一个名字看起来并不对应,无所谓,先看了再说。 ExceptionLogAspect切面 我在里面做了具体注释&#x…

记一些内存取证题

生活若循规蹈矩,我们便随心而动 1.Suspicion 给了俩文件 python2 vol.py -f mem.vmem imageinfo 查看可疑进程 python2 vol.py -f mem.vmem --profileWinXPSP2x86 pslist 发现可疑进程TrueCrypt.exe 把这个进程提取出来。memdump -p 进程号 -D 目录 python2 vol…

基于TF的简易关键字语音识别

⚠申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址。 全文共计10182字,阅读大概需要10分钟 🌈更多学习内容, 欢迎👏关注👀【文末】我的个人微信公众号&#…

深入剖析Spring框架:推断构造方法与@Bean注解的内部机制

你好,我是柳岸花开。 Spring框架作为Java开发中广泛使用的基础架构,其设计精巧、功能强大,尤其是其依赖注入(DI)和控制反转(IoC)特性,极大地提高了代码的可维护性和可测试性。本文将…

Backblaze发布2024 Q1硬盘故障质量报告-1

作为一家在2021年在美国纳斯达克上市的云端备份公司,Backblaze一直保持着对外定期发布HDD和SSD的故障率稳定性质量报告,给大家提供了一份真实应用场景下的稳定性分析参考数据。 截至2024年第一季度末,Backblaze在其全球数据中心的云存储服务器…

书生·浦语大模型实战营之 OpenCompass大模型评测

书生浦语大模型实战营之 OpenCompass :是骡子是马,拉出来溜溜 为什么要研究大模型的评测? 百家争鸣,百花齐放。 首先,研究评测对于我们全面了解大型语言模型的优势和限制至关重要。尽管许多研究表明大型语言模型在多…

第三节课,前端

一、参考链接; 总 知识星球 | 深度连接铁杆粉丝,运营高品质社群,知识变现的工具 分 2022-03-18 星球直播笔记-用户中心(下) 语雀 二、登录 2.1登录网址 2.2前端页面修改 2.1 页面修改 2.2 页脚的超链接 网址&am…

【从零开始学习Minio | 第一篇】快速介绍什么是Minio

前言: 在当今数字化时代,数据的存储和管理已经成为了企业发展中的关键一环。随着数据量的不断增长和数据安全性的日益受到重视,传统的数据存储解决方案往往面临着诸多挑战。为了应对这些挑战,云存储技术应运而生,并在…

30分钟打造属于自己的Flutter内存泄漏检测工具---FlutterLeakCanary

30分钟打造属于自己的Flutter内存泄漏检测工具 思路检测Dart 也有弱引用-----WeakReference如何执行Full GC?如何知道一个引用他的文件路径以及类名? 代码实践第一步,实现Full GC第二步,如何根据对象引用,获取出他的类…

elementUI table表格相同元素合并行----支持多列

效果图如下: vue2代码如下: 只粘贴了js方法哦, methods: {// 设置合并行 setrowspans() { const columns [‘name’, ‘value’]; // 需要合并的列名 // 为每个需要合并的列设置默认 rowspan this.tableData.forEach(row > { columns.forEach(col …

ADOP带你了解什么是UTP电缆

非屏蔽双绞线 (UTP) 电缆在错综复杂的现代连接环境中成为数据通信的无声架构师。在本次探索中,我们将阐明 UTP 电缆的定义,解开它们的组成和功能,并深入研究 UTP 以太网电缆的多种类型和应用,使其成为我们有…

Day 26 数据库日志管理

数据库日志管理 一:日志管理 1.日志分类 ​ 错误日志 :启动,停止,关闭失败报错。rpm安装日志位置 /var/log/mysqld.log ​ 通用查询日志:所有的查询都记下来 ​ 二进制日志:实现备份,增量备份…

Linux系统配置JAVA环境

一、jar包下载 官网:https://www.oracle.com/java/technologies/downloads 二、文件上传 上传到linux服务器 解压 下面是解压的路径 三、修改profile文件 修改etc下的profile文件,添加以下内容 vim /etc/profileexport JAVA_HOME/root/java/jdk-17.0.11 expo…

leetcode17. 电话号码的字母组合

题目描述: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits "…

VALSE 2024 Tutorial内容总结--开放词汇视觉感知

视觉与学习青年学者研讨会(VALSE)旨在为从事计算机视觉、图像处理、模式识别与机器学习研究的中国青年学者提供一个广泛而深入的学术交流平台。该平台旨在促进国内青年学者的思想交流和学术合作,以期在相关领域做出显著的学术贡献&#xff0c…

红海云OA存在任意文件上传漏洞【附poc】

漏洞复现 1、fofa poc见文末 body"RedseaPlatform" 打开burp进行抓包发送到repeater,如下图所示: 打入poc(文末获取),成功上传。 「你即将失去如下所有学习变强机会」 学习效率低,学不到实战内…

DDR5内存新标准问世,体验前所未有的数据传输速度

DDR 5,新标准发布 JEDEC 发布了 JESD79-5C DDR5 SDRAM 标准,带来了关键更新,包括:* 增强可靠性和安全性* 优化高性能服务器和新兴技术(如 AI 和机器学习)的性能* 标准可从 JEDEC 网站下载 JESD79-5C 引入每…

Redis 入坑基本指南

引言 本指南将帮助您了解如何安装、配置和基本使用 Redis。Redis 是一款开源的高性能键值存储系统,可用于缓存、数据库、消息中间件等多种用途。 1. 安装 Redis a. 下载 Redis: 可以从 Redis 官方网站(https://redis.io)下载最…