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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot日志总结

文章目录 1.我们的日志2.日志的作用3.使用日志对象打印日志4.日志框架介绍5.深入理解门面模式(外观模式)6.日志格式的说明7.日志级别7.1日志级别分类7.2配置文件添加日志级别 8.日志持久化9.日志文件的拆分9.1官方文档9.2IDEA演示文件分割 10.日志格式的配置11.更简单的日志输入…

Transformer 模型:序列数据处理的自注意力神经网络架构

摘要: 本文全面深入地探讨 Transformer 模型,这一基于自注意力机制的神经网络结构在序列数据处理领域具有开创性意义。详细阐述其架构组成、自注意力机制原理、在自然语言处理等多方面的应用,并提供丰富的代码示例以助力读者深入理解其实现细…

docker 安装mysql8.4.0

1、拉取mysql8.4.0镜像 docker pullmysql:8.4.0-oraclelinux8查看镜像 docker images2、新建宿主机本地目录:用来挂载MySQL容器所产生的数据的目录 mkdir -p /home/admin/data/mysql /home/admin/logs/mysql /home/admin/conf/mysql3、在/home/admin/conf/mysql目…

Android Studio的AI工具插件使用介绍

Android Studio的AI工具插件使用介绍 一、前言 Android Studio 的 AI 工具插件具有诸多重要作用,以下是一些常见的方面: 代码生成与自动补全 代码优化与重构 代码解读 学习与知识获取 智能搜索与资源推荐实际使用中可以添加注释,解读某段代…

【Python网络爬虫笔记】2-HTTP协议中网络爬虫需要的请求头和响应头内容

1 HTTP 协议整理 HTTP(Hyper Text Transfer Protocol)即超文本传输协议,是用于从万维网(WWW)服务器传输超文本到本地浏览器的传送协议,直白点儿,就是浏览器和服务器之间的数据交互就是通过 HTT…

DroneCAN 最新开发进展,Andrew在Ardupilot开发者大会2024的演讲

本文是Andrew演讲的中文翻译,你可以直接观看视频了解演讲的全部内容,此演讲视频的中文版本已经发布在Ardupilot社区的Blog板块,你可以在 Arudpilot官网(https://ardupilot.org) 获取该视频: 你也可以直接通过Bilibili链…

物料理解笔记·蓝白段子线·端子线座子焊接反了怎么处理!!!

目录 蓝白端子排线 端子线座子焊接错了怎么办 端子线如何拆线 编写不易,请勿搬运,仅供学习,感谢理解 蓝白端子排线 蓝白端子排线,这种端子线常用与编码电机的接线,或者在板子上通过提供段子线的接口,通…

BUUCTF—Reverse—GXYCTF2019-luck_guy(9)

下载附件,照例扔入Exeinfo PE查看信息 可执行文件,IDA 64位直接干 进main函数,F5反编译,看主要处理函数,跳转进去 查看,点进patch_me(v4)看看是怎么回事 这里已经相当清楚,逻辑就是如果你输入的…

jmeter学习(7)命令行控制

jmeter -n -t E:\IOT\test2.jmx -l E:\IOT\output\output.jtl -j E:\IOT\output\jmeter.log -e -o E:\IOT\output\report IOT下创建output 文件夹,jmx文件名避免中文,再次执行output.jtl不能有数据要删除

OpenCV 图像轮廓查找与绘制全攻略:从函数使用到实战应用详解

摘要:本文详细介绍了 OpenCV 中用于查找图像轮廓的 cv2.findContours() 函数以及绘制轮廓的 cv2.drawContours() 函数的使用方法。涵盖 cv2.findContours() 各参数(如 mode 不同取值对应不同轮廓检索模式)及返回值的详细解析,搭配…

智能探针技术:实现可视、可知、可诊的主动网络运维策略

网络维护的重要性 网络运维是确保网络系统稳定、高效、安全运行的关键活动。在当今这个高度依赖信息技术的时代,网络运维的重要性不仅体现在技术层面,更关乎到企业运营的方方面面。网络运维具有保障网络的稳定性、提升网络运维性能、降低企业运营成本等…

Elasticsearch集群如何实现高可用和一致性

Elasticsearch集群如何实现高可用和一致性 Elasticsearch (ES) 的高可用性是指集群在部分节点或分片出现故障时,仍能确保数据的持续可用和集群的稳定运行。ES 通过分片机制、主从结构、分配策略、故障恢复和分布式一致性等多种机制实现高可用。 1. 分片机制和副本…

实现Linux平台自定义协议族

一 简介 我们常常在Linux系统中编写socket接收TCP/UDP协议数据,大家有没有想过它怎么实现的,如果我们要实现socket接收自定义的协议数据又该怎么做呢?带着这个疑问,我们一起往下看吧~~ 二 Linux内核函数简介 在Linux系统中要想…

数组和链表OJ题

leetcode用编译器调试的技巧 数组和链表练习题 leetcode/reverse_Link/main.c Hera_Yc/bit_C_学习 - 码云 - 开源中国 1、移除元素 ​​​​​​27. 移除元素 - 力扣(LeetCode) int removeElement(int* nums, int numsSize, int val) {int src 0, …

VSCode 使用教程:项目使用配置、使用哪些插件、Live Server使用问题及解决方案(你想要的,都在这里)

VSCode的配置: Ⅰ、VSCode 可能需要的项目配置:1、项目颜色主题的切换:其一、点击设置 -> 选择主题 -> 选择颜色主题:其二、通过上下键操作,选择想要的主题: 2、项目文件图标主题的切换:其…

28 基于51单片机的两路电压检测(ADC0808)

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机,通过ADC0808获取两路电压,通过LCD1602显示 二、硬件资源 基于KEIL5编写C代码,PROTEUS8.15进行仿真,全部资源在页尾,提供…

宠物空气净化器推荐2024超详细测评 希喂VS霍尼韦尔谁能胜出

最近有粉丝一直在评论区和后台探讨宠物空气净化器是不是智商税的问题,有人认为宠物空气净化器肯定不是智商税,有些人认为将其购回家就是个没用的东西,还占地方,双方各有自己的观点。 其实宠物空气净化器和普通的空气净化器是有很大…

鸿蒙学习笔记:CheckboxGroup组件

本次鸿蒙CheckboxGroup组件实战,先创建CheckboxGroupDemoAbility与CheckboxGroupDemo.ets页面,在ets页面以Row、Column布局呈现界面。利用CheckboxGroup管理爱好相关Checkbox,通过状态记录及“确定”按钮实现选择展示。设置页面为首页后启动应…

[Java]微服务之分布式事务

介绍 下单业务,前端请求首先进入订单服务,创建订单并写入数据库。然后订单服务调用购物车服务和库存服务: 购物车服务负责清理购物车信息库存服务负责扣减商品库存 问题分析: 下单过程中, 订单服务创建订单, 插入自己的数据库, 执行成功购物车服务, 清…