how https works?https工作原理

news2024/9/28 5:31:27

简单一句话: https = http + TLS

https 工作原理:

HTTPS (Hypertext Transfer Protocol Secure)是一种带有安全性的通信协议,用于在互联网上传输信息。它通过使用加密来保护数据的隐私和完整性。

下面是 HTTPS 的工作原理:

  1. 初始化安全会话:三步握手。浏览器和网站服务器进行一个初始化安全会话,以确保所有的通信都是安全的。

  1. 证书验证:在初始化过程中,浏览器会请求网站服务器提供其 SSL/TLS 证书,以便浏览器验证网站的真实性。

  1. 密钥交换:在证书验证成功后,浏览器和服务器将进行一个密钥交换,以便使用该密钥加密所有的通信数据。

  1. 数据加密&传输

  1. :所有在安全会话中发送的数据都会被加密,以确保其安全性。

  1. 数据传输:加密后的数据在互联网上进行传输。

  1. 数据解密:浏览器接收到加密后的数据并使用对应的密钥进行解密,以便进行正常的通信。

总的来说,HTTPS 的工作原理是通过加密和认证来保护数据的完整性和隐私,并确保网站的真实性

秘钥交换

HTTPS密钥交换是在客户端(例如web浏览器)和服务器之间建立安全通信的重要步骤。此密钥交换用于在双方之间建立共享秘密,然后用于加密通信。

在HTTPS中有几种常用的密钥交换算法,包括Diffie-Hellman密钥交换。在该算法中,客户端和服务器都生成公私钥对,然后交换它们的公钥。客户端和服务器使用这些公钥计算共享密钥,共享密钥用于为通信建立加密密钥。

Diffie-Hellman密钥交换提供了前向保密,这意味着即使攻击者拦截了加密通信并随后获得了其中一方的私钥,他们仍然无法解密通信。

除了Diffie-Hellman之外,HTTPS中使用的密钥交换算法还包括RSA、ECDH (Elliptic Curve Diffie-Hellman)和ECDSA (Elliptic Curve Digital Signature Algorithm)。HTTPS连接中使用的具体密钥交换算法取决于服务器的配置和客户端的能力。

总之,HTTPS密钥交换是在客户机和服务器之间建立安全通信的重要步骤。密钥交换用于建立共享秘密,然后用于加密通信。HTTPS连接中使用的具体密钥交换算法取决于服务器的配置和客户端的能力

Cipher交换(密码算法交换)

Cipher 交换是SSL/TLS(安全套接字层/传输层安全)协议的重要组成部分,用于在双方之间建立安全通信。

Cipher交换过程通常在客户端向服务器发送“ClientHello”消息时开始,该消息包含支持的密码套件列表。然后,服务器从列表中选择它也支持的密码套件,并向客户端发送“ServerHello”消息,指出所选的密码。

一旦Cipher达成一致,客户端和服务器就使用所选的密码来建立共享的秘密,该秘密用于加密通信。具体的密钥交换算法取决于所选择的密码套件,常用的算法有Diffie-Hellman、RSA、椭圆曲线Diffie-Hellman (Elliptic Curve Diffie-Hellman)、椭圆曲线数字签名算法ECDSA (Elliptic Curve Digital Signature algorithm)。

需要注意的是,Cipher的选择具有安全影响。较旧或较弱的Cipher可以使通信容易受到攻击,而较强的Cipher可以提供更好的保护。因此,建议服务器只支持强密码套件,客户端使用最新版本的SSL/TLS。

总之,HTTPS密钥交换密码交换是选择并同意用于客户端和服务器之间密钥交换的密码的过程。v交换是SSL/TLS协议的重要组成部分,用于在双方之间建立安全通信。Cipher的选择涉及到安全问题,重要的是要确保使用强Cipher来维护通信的安全性。

关于CIpher suit及漏洞请查看另外一篇

(1条消息) 密码套件 and 弱密码套件漏洞_犬大犬小的博客-CSDN博客_弱密码套件

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

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

相关文章

Camtasia2023最新版电脑视频录屏记录编辑软件

在Mac或Wind上有各种可用的视频记录和编辑软件,其中Camtasia被称为视频记录器和视频编辑器。录屏软件Camtasia2023到底有什么特色功能?本文将帮助您选择理想的选择来开始视频捕获,创建和编辑。Camtasia2023是Mac/win平台上一款使用非常简单的…

【JavaScript】题(牛客网)——熟练使用函数调用,超详细讲解

1 熟练使用函数调用 1.1 题目 执行以下程序,输出结果为 var uname "window"; var object {uname: "object",fun: function () {console.log(this.uname);return function () {console.log(this.uname);};}, };object.fun()();1.2 答案 ob…

ThingsBoard-设备配置

1、概述 从 ThingsBoard 3.2 开始,租户管理员可以使用设备配置文件为多个设备配置通用设置。每个设备在单个时间点都有一个且唯一的配置文件。 有经验的 ThingsBoard 用户会注意到设备类型已被弃用,取而代之的是设备配置文件。更新脚本将根据唯一的设备类型自动创建设备配置…

三、Java面向对象

1 . 方法 方法(method)是程序中最小的执行单元方法就是一些代码的打包 需要的时候可以直接调用方法之间是平级的关系 不能在方法里面定义方法方法不调用就不执行 方法的定义 // 方法的定义 /* [修饰符] 返回值类型 方法名称([参数 1],[参数 2]){语句A;return 返回值; } *///…

VT虚拟化框架编写

文章目录前言VT架构基础VT框架编写步骤一:检测VT是否开启VMM和VMVMON和VMCSVT框架编写步骤二 填充VMONVT框架编写步骤三 进入VTVT框架编写步骤四 初始化VMCSVT框架编写步骤五 初始化VMCS数据区VT框架编写步骤六 处理必要事件前言 学习VT相关的知识,需要…

C++11新特性

文章目录说在前面花括号{}初始化new的列表初始化STL相关容器的列表初始化相关语法格式容器列表初始化的底层原理forward_list和array与类型相关的新特性decltype左值引用和右值引用什么是左值,什么是右值左值和右值的本质区别右值引用如何理解右值引用std::move移动…

【软考系统架构设计师】2022下综合知识历年真题

【软考系统架构设计师】2022下综合知识历年真题 【2022下架构真题第01题:绿色】 01.云计算服务体系结构如下图所示,图中①、②、③分别与SaaS、PaaS、Iaas相对应,图中①、②、③应为( ) A.应用层、基础设施层、平台层 B.应用层、平台层、基础…

Linux驱动开发(一)

linux驱动学习记录 一、背景 在开始学习我的linux驱动之旅之前,先提一下题外话,我是一个c语言应用层开发工作人员,在工作当中往往会和硬件直接进行数据的交互,往往遇到数据不通的情况,常常难以定位,而恰巧…

静态分析工具Cppcheck在Windows上的使用

之前在https://blog.csdn.net/fengbingchun/article/details/8887843 介绍过Cppcheck,那时还是1.x版本,现在已到2.x版本,这里再总结下。 Cppcheck是一个用于C/C代码的静态分析工具,源码地址为https://github.com/danmar/cppcheck …

Python之字符串精讲(上)

前言 字符串是所有编程语言在项目开发过程中涉及最多的一个内容。大部分项目的运行结果,都需要以文本的形式展示给客户,曾经有一位久经沙场的老程序员说过一句话:“开发一个项目,基本上就是在不断的处理字符串”。下面对Python中…

自命为缓存之王的Caffeine(3)

您好,我是湘王,这是我的CSDN博客,欢迎您来,欢迎您再来~缓存的存储空间是远远小于磁盘的。所以对于有些过期的数据,就需要定期进行清理,腾出存储空间。Caffeine又是怎么做的呢?Caffei…

SpringBoot+Vue在线小说系统

简介:本项目采用了基本的springbootvue设计的在线小说系统。详情请看截图。经测试,本项目正常运行。本项目适用于Java毕业设计、课程设计学习参考等用途。 特别说明:本系统设计网络爬虫,遵循爬虫规则,此项目用于学习&a…

2023关键词:挑战

未失踪人口回归… 好久不见,不经意间拖更2个多月。今天周末,外面淅淅沥沥下着小雨,这种窝在床上的时刻最适合写点东西了。 但是建议大家在办公或者写博客的时候尽量还是端正坐姿,我就是因为喜欢这样靠在床背上,长时间…

Spring Security 从入门到精通

前言 Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。 一般来说中大型的项目都是使用SpringSecurity 来做安全框架。小项目有Shiro的比较多,因为相比与Spr…

Vue3+ElementPlus+koa2实现本地图片的上传

一、示例图二、实现过程利用Koa2书写提交图片的后台接口这个模块是我写的项目中的其中一个板块——上传图片,这个项目的后台接口主要是是使用了后端的Koa2框架,前端小伙伴想要试着自己书写一些增删改查的接口可以从这个入手,Koa2用来了解后端…

力扣HOT100 11-15

11.盛水最多的容器 思路:最大水量 底边 * 高度。较短的一边控制最大水量,因此,采用双指针的方式,左、右指针指向开始和末尾,逐个向中间移动,判断左右指针所指向的高度哪个更低,它就向中间移动一…

ubuntu中解决Failed to connect to 127.0.0.1 port xxxxx: Connection refused

ubuntu中解决Failed to connect to 127.0.0.1 port xxxxx: Connection refused 方法一 查看一下代理 git config --global http.proxy git config --global https.proxy 有就取消,没有就换一种方法 git config --global --unset http.proxy git config --global --unse…

计算机网络之http03:HTTPS RSA握手解析

不同的秘钥交换算法,握手过程可能略有差别 上文对HTTPS四次握手的学习 SSL/TLS Secure Sockets Layer/Transport Layer Security 协议握手过程 四次通信:请求服务端公钥 2次 秘钥协商 2次 (1)ClientHello请求 客户端向服务端发送client…

状态机设计举例

⭐本专栏针对FPGA进行入门学习,从数电中常见的逻辑代数讲起,结合Verilog HDL语言学习与仿真,主要对组合逻辑电路与时序逻辑电路进行分析与设计,对状态机FSM进行剖析与建模。 🔥文章和代码已归档至【Github仓库&#xf…

JavaScript内置支持类Array

<!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>内置支持类Array</title> </head> <body bgcolor"antiquewhite"> <script type"text/javasc…