了解HTTPS以及CA在其中的作用

在这个信息爆炸的时代,每一次指尖轻触屏幕,都是一次数据的旅行。但您是否真正了解,这些数据在通往目的地的旅途中,是如何被保护的呢?

HTTPS(HyperText Transfer Protocol Secure)是一种安全的网络传输协议,它在HTTP(HyperText Transfer Protocol)的基础上加入了SSL(Secure Sockets Layer)或TLS(Transport Layer Security)加密层,以确保在互联网上传输的数据的安全性和完整性。HTTPS的主要目的是保护客户端(如浏览器)与服务器之间的通信不被窃听、篡改或冒充。

当浏览器访问一个HTTPS网站时,会发生以下过程:

SSL/TLS握手:浏览器首先与服务器建立一个加密通道。在这个过程中,服务器会向浏览器发送一个SSL/TLS证书,该证书由受信任的证书颁发机构(CA)签发,用于证明服务器的身份。浏览器会验证证书的有效性,如果证书可信,则继续生成一个对称密钥,用于后续的加密通信。

数据加密:一旦SSL/TLS握手完成,浏览器和服务器之间传输的所有数据都会被加密。这意味着即使数据在传输过程中被截获,攻击者也无法解密或理解其内容。

数据完整性:HTTPS还使用消息认证码(MAC)来确保数据的完整性。这意味着任何对传输数据的篡改都会被立即检测到,从而防止了中间人攻击等安全威胁。

1. 加密的方式:

  • 对称加密: 指的是加密和解密使用同一把秘钥
  • 非对称加密: 指的是加密和解密使用不同的秘钥

2. 对称加密:

  • 优点:数据的加解密过程均能实现极快的速度。
  • 缺点: 未能达到足够的安全标准。(在数据的加解密过程中,秘钥要被传递,因此有泄露的风险)

3. 非对称加密:

非对称加密:通常由服务端生成一对公钥与私钥,这对密钥被用于验证通信双方的身份。RSA算法(一种典型的非对称加密算法)通过哈希函数确保了其不可逆性。

一般连接:采用公钥进行数据加密,而解密则需使用对应的私钥,私钥由生成者负责保管,且绝不会在网络上公开流通。

数字签名:开发者利用自己的私钥对RPM包进行签名,而验证该签名的有效性则通过相应的公钥来完成(即公钥用于校验或解密过程)。这一过程确保了RPM包的来源是可靠且经过认证的。

4.CA证书

存在一个至关重要的隐患,即服务端有可能存在假冒的情况,而这一问题可以通过引入CA来有效解决。

CA(证书颁发机构):作为权威组织,专门负责颁发SSL证书。这些证书广泛应用于程序、服务器、Web网站等多种需要身份验证或加密解密的场景中。

HTTPS场景:CA(证书颁发机构)扮演着至关重要的角色,它专门负责对网站的公钥进行签名。具体而言,网站的负责人会向CA提交CSR(证书签名请求)文件,该文件包含了公钥、网站的域名、服务器的地址以及申请人等信息。CA在收到这些申请信息后,会使用自己的私钥对网站的公钥进行签名,从而生成一个证书(通常以CRT文件格式存在)。

网站的证书:

单域名证书: 此类证书是针对特定域名进行签名的,且这类证书是所有类型证书中价格最为低廉的。值得注意的是,许多公有云网站和CA机构都提供免费的证书申请服务,通常这类证书的有效期为三个月。

多域名证书:为多个特定域名提供签名服务,此方案具有较高的性价比。

通配符证书:即为example.com及其所有子域名提供签名服务,这是所有证书中价格最高的选项。

CA在HTTPS中的作用:

其目的在于验证服务端的真实身份,确保服务端没有被他人冒充。

1. 用户发起连接请求

2. 服务端响应请求并发送证书

3.浏览器根据证书的信息使用证书中的CA的公钥进行校验

4. 如果校验得出的信息与证书中的信息一致,则说明服务端是可信的

5. 如果校验通过,客户端使用服务端的公钥进行加密随机数并发送给服务端

6. 服务端通过自己的私钥解密随机数,服务端使用随机数进行对称加密,加密数据发送给客户端

7.客户端通过本地的随机数解密得到数据

因此,在HTTPS协议中,非对称加密技术被用于验证服务端的身份,确保服务端未被假冒;而对称加密技术则被用于高效地传递数据。

 5.HTTP最成功的应用场景——WEB服务

WEB服务,即是指提供静态资源(如静态网页、文件下载等)以及动态资源(例如PHP脚本、Python应用程序等)的共享访问服务。

提供WEB服务的软件:

IIS 微软提供WEB服务器软件

Apache 开源基金会WEB软件在Linux中最典型的存在

Nginx 开源的WEB软件 具有较高的并发性

Tomcat 开源

Tengine 阿里

stgw 腾讯

HTTPS的普及对于保护用户隐私、防止数据泄露和确保在线交易的安全性至关重要。随着网络安全威胁的不断增加,越来越多的网站和服务正在迁移到HTTPS,以提供更安全、更可靠的互联网体验。

网络安全工程师就是能善用HTTPS这类防卫工具的安全卫士,上海腾科教育就是专业的网络安全工程师的摇篮。上海腾科教育深耕于专业的认证指导服务领域,致力于为学员提供更为严谨、系统且安全的认证培训。通过不断优化教学流程与强化实践环节,确保每位学员都能获得更加安全、可靠且高效的认证体验。

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

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

相关文章

electron-vite_14窗口默认全屏铺满

有时候应用打包后,希望全屏显示;而默认的宽度和高度,是无法满足的;这时需要单独处理; 核心代码 // 1.引入screen对象 import { BrowserWindow, screen } from electron; function createWindow(): void {// 2.获取屏幕尺寸const { width, height } screen.getPrim…

mysql-为什么需要线程池

mysql-为什么需要线程池 MySQL线程池的概述与应用 MySQL线程池是MySQL数据库中的一个重要组件,旨在提高数据库的性能、吞吐量和可伸缩性。它通过管理数据库服务器的线程生命周期,减少了线程的创建和销毁的开销,并通过优化资源使用&#xff…

【接口封装】——10、系统托盘

解释&#xff1a; 1、定义好按钮的状态&#xff1a;创建 map 映射关系&#xff0c;即 一个名字对应一个按钮 2、对不同按钮实现不同的信号槽函数 头文件&#xff1a; #include "SysTrayIcon.h" #include <qwidget.h> #include "define.h" #include &…

Nginx——配置部署域名服务器路由nginx

文章目录 基本配置报错解决只能通过[域名]:[端口]/[API路径]的方式请求 基本配置 user www-data; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /run/nginx.pid;events {worker_connections 1024; }http {include /etc/nginx/mime…

C. Raspberries

time limit per test 2 seconds memory limit per test 256 megabytes You are given an array of integers a1,a2,…,ana1,a2,…,an and a number kk (2≤k≤52≤k≤5). In one operation, you can do the following: Choose an index 1≤i≤n1≤i≤n,Set aiai1aiai1. F…

Flink学习连载文章8--时间语义

Time的分类 (时间语义) EventTime:事件(数据)时间,是事件/数据真真正正发生时/产生时的时间 IngestionTime:摄入时间,是事件/数据到达流处理系统的时间 ProcessingTime:处理时间,是事件/数据被处理/计算时的系统的时间 EventTime的重要性 假设&#xff0c;你正在去往地下停…

sizeof和strlen区分,(好多例子)

sizeof算字节大小 带\0 strlen算字符串长度 \0之前

Simulink的SIL软件在环测试

以基于模型的设计&#xff08;MBD&#xff09;的软件开发时&#xff0c;需要进行SIL&#xff08;软件在环测试&#xff09;。SIL测试就是在PC上验证模型是否与代码功能一致。在项目开展中&#xff0c;用在需要将控制器生成移植到硬件前&#xff0c;把控制器的模块生成代码&…

浅谈js中onmouseleave和onmouseout的区别

同步发布于我的网站 &#x1f680; 背景介绍基本概念区别详解 无子元素的情况有子元素的情况 实际应用场景 使用 onmouseleave使用 onmouseout 注意事项总结 背景介绍 在前端开发中&#xff0c;我们经常需要为元素绑定鼠标事件&#xff0c;以实现各种交互效果。onmouseleave…

【Git系列】利用 Bash 脚本获取 Git 最后一次非合并提交的提交人

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

36 基于单片机的电磁炉系统设计

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机&#xff0c;通过DS18B20温度传感器检测温度&#xff0c;通过八位数码管显示&#xff0c; 如果温度超过阈值&#xff0c;则蜂鸣器报警&#xff0c;红灯亮起&#xff1b;若不超过阈值&…

『 Linux 』数据链路层 - ARP协议及数据链路层周边问题

文章目录 ARP协议ARP欺骗RARP协议 DNS服务ICMP协议ping 命令正向代理服务器反向代理服务器 ARP协议 博客『 Linux 』数据链路层 - MAC帧/以太网帧中提到,当数据需要再数据链路层进行无网络传输时需要封装为MAC帧,而MAC帧的报文结构如下: 帧头部分存在两个字段分别为 “目的地址…

MySQL(数据库)

1.数据库? 数据库是管理数据(增删改查CRUD)的软件 MySQL(开源&免费) 是一个数据库软件 (客户端-服务器)结构的软件 客户端服务器通过网络进行通信 客户端(Client):主动发起请求的一方,客户端给服务器发起的数据称为请求(request) 服务器(Server):被动接受请求的一方,…

vue3----API

组合式API 1.setup 定义的数据和方法必须return出去才能够被使用 不使用this,this指向了undefined <script> export default {setup () {console.log(setup)const message this is messageconst logmessage ()>{console.log(message)}return {message,logmessag…

服务器遭受DDoS攻击后如何恢复运行?

当服务器遭受 DDoS&#xff08;分布式拒绝服务&#xff09;攻击 后&#xff0c;恢复运行需要快速采取应急措施来缓解攻击影响&#xff0c;并在恢复后加强防护以减少未来攻击的风险。以下是详细的分步指南&#xff1a; 一、应急处理步骤 1. 确认服务器是否正在遭受 DDoS 攻击 …

【maven-5】Maven 项目构建的生命周期:深入理解与应用

1. 生命周期是什么 ​在Maven出现之前&#xff0c;项目构建的生命周期就已经存在&#xff0c;软件开发人员每天都在对项目进行清理&#xff0c;编译&#xff0c;测试及部署。虽然大家都在不停地做构建工作&#xff0c;但公司和公司间&#xff0c;项目和项目间&#xff0c;往往…

【机器学习】CatBoost 模型实践:回归与分类的全流程解析

一. 引言 本篇博客首发于掘金 https://juejin.cn/post/7441027173430018067。 PS&#xff1a;转载自己的文章也算原创吧。 在机器学习领域&#xff0c;CatBoost 是一款强大的梯度提升框架&#xff0c;特别适合处理带有类别特征的数据。本篇博客以脱敏后的保险数据集为例&#x…

lua download

https://www.lua.org/ https://www.lua.org/versions.html#5.4

Java 中的 ResponseBodyEmitter:详解与实战

Java 中的 ResponseBodyEmitter&#xff1a;详解与实战 前言 在开发高并发应用或处理长时间任务时&#xff0c;服务端需要向客户端实时推送数据&#xff0c;而不是一次性将所有结果返回。Spring 提供了一种优雅的解决方案&#xff1a;ResponseBodyEmitter。它适用于需要逐步发…

基于大数据python 房屋价格数据分析预测可视化系统(源码+LW+部署讲解+数据库+ppt)

&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 很对人不知道选题怎么选 不清楚自己适合做哪块内容 都可以免费来问我 避免后期給自己答辩找麻烦 增加难度&#xff08;部分学校只有一次答辩机会 没弄好就延迟…