首页 > 其他分享 >https的通信过程

https的通信过程

时间:2023-10-07 14:35:13浏览次数:34  
标签:加密 证书 通信 秘钥 随机 https 服务器 过程 客户端

1. 客户端发起HTTPS请求 用户在浏览器里输入一个https网址,然后连接到服务器的443端口 

2. 服务端的配置 采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面。这套证书其实就是一对公钥和私钥 

3. 传送服务器的证书给客户端 证书里其实就是公钥,并且还包含了很多信息,如证书的颁发机构,过期时间等等 

4. 客户端解析验证服务器证书 这部分工作是有客户端的TLS来完成的,首先会验证证书是否有效,比如:颁发机构,过期时间等等,如果发现异常,则会弹出一个警告框,提示证书存在问题。如果证书没有问题,那么就生成一个随机秘钥。然后用证书中公钥对该随机秘钥进行非对称加密 

5. 客户端将加密信息传送到服务器 这部分传送的是用证书加密后的随机秘钥,目的就是让服务端得到这个随机秘钥,以后客户端和服务端的通信就可以通过这个随机秘钥来进行加密解密了 

6. 服务端解密信息 服务端将客户端发送过来的加密信息用服务器私钥解密后,得到了客户端传过来的随机秘钥 

7. 服务器加密信息并发送信息 服务器将数据利用随机秘钥进行对称加密,再发送给客户端 

8. 客户端接收并解密信息 客户端用之前生成的随机秘钥解密服务段传过来的数据,于是获取了解密后的内容

 

标签:加密,证书,通信,秘钥,随机,https,服务器,过程,客户端
From: https://www.cnblogs.com/tanll/p/17746218.html

相关文章

  • 钡铼BL124EC:优化工业通信,畅通EtherCAT到Ethernet/IP
    钡铼BL124EC是一种用于工业网络通信的网关设备,专门用于将EtherCAT协议转换成Ethernet/IP协议。它充当一个桥梁,连接了使用不同协议的设备,使它们能够无缝地进行通信和互操作。具体来说,BL124EC通过支持EtherCAT(以太CAT)总线协议的设备与支持Ethernet/IP(以太网/IP)协议的设备之间建立连......
  • 进程间的五种通信方式
    进程间通信(IPC,InterProcessCommunication)是指在不同进程之间传播或交换信息。IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中Socket和Streams支持不同主机上的两个进程IPC。以Linux中的C语言编程为例。一、管道管道,通常......
  • Linux进程间通信
    匿名管道pipe具有亲缘关系的两个进程间通信,半双工通信,要实现全双工通信需要创建两个pipe。相关系统调用函数名作用fork()复制一个子进程。pipe()创建一个管道。close()用于关闭管道读/写端。write()向管道写入。read()从管道读出。实例#inclu......
  • 如何使用『Nginx』配置后端『HTTPS』协议访问
    前言本篇博客主要讲解如何使用Nginx部署后端应用接口SSL证书,从而实现HTTPS协议访问接口(本文使用公网IP部署,读者可以自行替换为域名)申请证书须知请在您的云服务平台申请SSL证书,一般来说证书期限为一年,到期限需要再次申请博主这里使用的是阿里云云服务器,阿里云每年可以免费......
  • 关于当下ChatGPT在软件工程编码过程反思
        背景    首先声明笔者是软件开发多年经历,对于ChatGPT过程中一些观察,仅代表个人观点。对于才工作的新人,没有更多软件开发与编码经验,可能ChatGPT帮助更大。当下ChatGPT在软件工程编码过程反思:    风险一: ChatGPT当下对于整个软件工程优化与改进所有源代码效......
  • 二层交换机的通信过程和三层交换机的通信过程
    二层交换机的通信过程:在二层交换机中,数据帧(Frame)是基本的通信单元。下面是一个详细的二层交换机通信过程示例:建立MAC地址表:当交换机收到一个数据帧时,它会检查数据帧的源MAC地址,并将其与输入端口关联起来,形成一个MAC地址表。广播和学习:如果交换机在MAC地址表中找不到目标MAC地址对......
  • Kafka 搭建过程
    目录1.关于Kafka2.Kafka搭建过程3.参考本文主要介绍Kafka基本原理,以及搭建过程。1.关于KafkaApacheKafka是一个开源的分布式事件流平台,被设计用来实现实时数据流的发布、订阅、存储和处理。Kafka的主要特性包括:高吞吐量:Kafka可以处理高速流动的数据,并保证数据的写入和读取......
  • ORACLE 存储过程详解
    一、定义所谓存储过程(StoredProcedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数来调用并执行它,从而完成一个或一系列的数据库操作。二、存储过程创建......
  • SQL SERVER 存储过程执行日志记录方法(有案例)
    查询历史执行总体情况SELECTTOP100db_name(d.database_id)asDBName,s.nameas存储名称,s.type_descas存储类型,d.cached_timeasSP添加到缓存的时间,d.last_execution_timeas上次执行SP的时间,d.last_elapsed_timeas[上次执行SP所用的时间(μs)],......
  • springboot开发过程的一些细节
    注解:格式要求@DateTimeFormat(pattern=“yyyy-MM-DD”)@Pathvariable用来绑定动态请求参数@RequestBody用来接收前端传来的动态请求参数,一般post请求,对象接收。 在Controller层中返回值参数要与需求文档的参数相同。依赖:pagehelper依赖,实现分页更能跟便捷......