https相关内容

2023-05-16

https相关内容

  • 前言
  • 基础概念理解
  • https传输过程

前言

本文写https相关内容,持续补充

基础概念理解

  1. 对称加密

    • 加解密秘钥是同一个
  2. 非对称加密

    • 公钥, 私钥
      • sa -> 公钥私钥都是两个数字
      • ecc -> 椭圆曲线, 两个点
    • 公钥加密, 私钥解密
      • 数据传输的时候使用
    • 私钥加密, 公钥解密
      • 数字签名的时候使用
  3. 哈希函数

    • md5/ sha1/sha2
    • 得到散列值, 散列值是定长的
  4. 消息认证码

    • 生成消息认证码: (将原始数据+共享秘钥) * 进行哈希运算 = 散列值

    • 验证消息认证码:

      • (接收的原始数据 + 共享秘钥) * 哈希运算 = 新的散列值
      • 新散列值和旧散列值进行比较, 看是不是相同
    • 作用:

      • 验证数据的一致性型
    • 弊端:

      • 两端共享秘钥必须相同, 共享秘钥分发困难
      • 所以后面不再使用消息认证码
  5. 数字签名(openssl库) -> 目的告诉所有人这个数据的所有者是xxx, xxx就是拿私钥的人

    • 生成一个非对称加密的密钥对
      • 公钥
      • 私钥
    • 生成签名:
      • 对原始数据进行哈希运算 -> 散列值
      • 使用非对称加密的私钥, 对散列值进行签名(私钥加密) -> 密文
      • 得到的密文就是数字签名
    • 签名的校验:
      • 校验者会收到签名者发送的数据

        • 原始数据
        • 数字签名
      • 对接收的数据进行哈希运算 -> 散列值

      • 使用非对称加密的公钥, 对数字签名进行解密 -> 明文 == 签名者生成的散列值

      • 校验者的散列值 和 签名者的散列值进行比较

        • 相同 -> 校验成功了, 数据属于签名的人
        • 失败 -> 数据不属于签名的人
      • 弊端:

        • 接收公钥的人没有办法校验公钥的所有者在这里插入图片描述
  6. 证书

    • 由一个受信赖的机构 (CA) 对某人的公钥进行数字签名
    • CA有一个密钥对
      • 使用ca的私钥对某个人的公钥进行加密 -> 证书
        • 证书里有这个人 的公钥
        • 证书里有这个人的个人信息

https传输过程

在这里插入图片描述

  1. 在百度服务器端首先生成一个秘钥对 -> 对公钥分发
  2. 百度将公钥给到了CA认证机构, ca对私钥进行签名 -> 生成了证书.
  3. 第一步第二部只做一次
  4. 客户端访问百度, 百度将ca生成的证书发送给客户端
  5. 浏览器对收到的证书进行认证
  6. 如果证书没有问题 -> 使用ca的公钥将服务器的公钥从证书中取出
  7. 我们得到了百度的公钥
  8. 在浏览器端生成一个随机数, 使用得到的公钥进行加密, 发送给服务器
  9. 服务器端使用私钥解密, 得到了随机数, 这个随机数就是对称加密的秘钥
  10. 现在秘钥分发已经完成, 后边的通信使用的的对称加密的方式
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

https相关内容 的相关文章

随机推荐

  • 二叉树笔记

    二叉树 二叉搜索 xff08 排序 查找 xff09 树 二叉查找树 xff08 Binary Search Tree xff09 xff0c xff08 又 xff1a 二叉搜索树 xff0c 二叉排序树 xff09 它或者是一棵空树 x
  • C++面试常见题目

    C 43 43 面试常见题目 c 43 43 编译过程自动类型推导auto和decltype重载 重写 xff08 覆盖 xff09 和隐藏的区别C 43 43 构造函数和析构函数能调用虚函数吗volatile关键词运算符重载格式noexe
  • 计算机网络面试常问问题

    C 43 43 面试 计算机网络常见问题 计算机网络常见问题TCP IP协议笔记TCPTCP的特点及目的序列号与确认应答提高可靠性为什么是三次握手和四次挥手滑动窗口流量控制拥塞控制TCP粘包问题 httphttp和https的区别https
  • Trajectory generation for quadrotor while tracking a moving target in cluttered environment

    四旋翼在杂波环境下跟踪运动目标的轨迹生成 摘要1 文章主要贡献2 前言2 1 轨迹公式2 2 实现结构 3 跟踪轨迹生成3 1 标称路径点生成3 2 可行路径点生成3 3 安全飞行走廊生成3 4 代价函数3 5 强制约束3 6 求解跟踪轨迹
  • 翻译-Frustum PointNets for 3D Object Detection from RGB-D Data

    Frustum PointNets for 3D Object Detection from RGB D Data 摘要介绍相关工作从RGB D数据中检测三维物体基于前视图图像的方法 xff1a 基于鸟瞰图的方法 基于3D的方法 点云的深度
  • Online Trajectory Generation of a MAV for Chasing a Moving Target in 3D Dense Environments

    微型无人机的在线轨迹生成 xff0c 用于在3D密集环境中追踪运动目标 摘要一 介绍二 相关工作A 在障碍物环境中追逐B 通过预先规划安全地生成轨迹 三 问题陈述A 问题设置B 能力C 命名 IV 视点生成A 可见度指标B 具有安全性和可见
  • 配置目标跟踪开源项目traj_gen_vis踩过的坑

    项目地址 https github com icsl Jeon traj gen vis 安装依赖需注意的问题 traj gen with qpoases 需安装ros分支的代码 xff08 这个作者并没有指出 xff0c 坑 xff09
  • cmake arm-none-eabi-gcc for stm32 cpp project

    尝试把原有的stm32工程F1canBootloader用cmake来管理 xff0c 遇到了以下几个坑 xff1a 1 报错 xff0c undefined reference to 96 dso handle 39 CMakeFiles
  • 网络攻防之wireshark抓取登录信息

    使用wireshark抓取登录信息 简介 xff1a Wireshark xff08 前称Ethereal xff09 是一个网络封包分析软件 网络封包分析软件的功能是撷取网络封包 xff0c 并尽可能显示出最为详细的网络封包资料 Wire
  • 头文件互相包含所引发的的问题(深入剖析)

    今天写程序出现了一个让人蛋疼的错误 xff0c 后来发现是由于头文件互相包含所引起的 原本只是简单的以为头文件互相包含只会触发 xff0c 头文件的递归包含 即 xff0c A包含B xff0c 所以才A的头文件里会将B的头文件内容拷贝过来
  • C++11异步操作future和aysnc 、function和bind

    C 43 43 11异步操作future和aysnc function和bind 前言异步操作std future和std aysnc 介绍std future和std aysnc的使用Demostd packaged task 介绍std
  • C++文件服务器项目—FastDFS—1

    C 43 43 文件服务器项目 FastDFS 1 前言1 项目架构2 分布式文件系统2 1 传统文件系统2 2 分布式文件系统 3 FastDFS介绍3 1 fdfs概述3 2 fdfs框架中的三个角色3 3 fdfs三个角色之间的关系3
  • C++文件服务器项目—Redis—2

    C 43 43 文件服务器项目 Redis 2 前言1 数据库类型1 1 基本概念1 2 关系 非关系型数据库搭配使用 2 redis基础知识点2 1 redis安装2 2 redis中的两个角色2 3 redis中数据的组织格式2 4 r
  • C++文件服务器项目—Nginx—3

    C 43 43 文件服务器项目 Nginx 3 前言1 Nginx一些基本概念1 1 Nginx初步认识1 2 正向代理概念理解1 3 反向代理概念理解 2 Nginx的安装与配置2 1 Nginx与相关依赖库的安装2 2 Nginx相关的
  • C++文件服务器项目—FastCGI—4

    C 43 43 文件服务器项目 FastCGI 4 前言1 CGI 概念理解2 FastCGI 概念理解3 FastCGI和spawn fcgi安装4 FastCGI和 Nginx的关系5 Nginx数据转发 修改配置文件6 spawn f
  • C++文件服务器项目—Nginx+FastDFS插件—5

    C 43 43 文件服务器项目 Nginx 43 FastDFS插件 5 前言1 文件上传下载流程1 1 文件上传流程1 2 文件下载流程1 3 文件下载优化流程 2 Nginx和fastDFS插件2 1 安装Nginx和fastdfs n
  • C++文件服务器项目—数据库表设计 与 后端接口设计—6

    C 43 43 文件服务器项目 数据库表的设计 6 前言1 数据库建表1 1 用户信息表 user info1 2 文件信息表 file info1 3 用户文件列表表 user file list1 4 用户文件数量表 user file
  • C语言中宏定义的使用

    1 引言 预处理命令可以改变程序设计环境 提高编程效率 它们并不是 C 语言本身的组成部分 不能直接对 它们进行编译 必须在对程序进行编译之前 先对程序中这些特殊的命令进行 预处理 经过预处理后 程序就不再包括预处理命令了 最后再由编译程序
  • C++文件服务器项目—项目总结与反向代理—7

    C 43 43 文件服务器项目 项目总结与反向代理 7 1 项目总结2 项目提炼3 web服务器的反向代理4 存储节点的反向代理 组件介绍基本写完了 xff0c 后续进行深入 本专栏知识点是通过零声教育的线上课学习 xff0c 进行梳理总结
  • https相关内容

    https相关内容 前言基础概念理解https传输过程 前言 本文写https相关内容 xff0c 持续补充 基础概念理解 对称加密 加解密秘钥是同一个 非对称加密 公钥 私钥 sa gt 公钥私钥都是两个数字ecc gt 椭圆曲线 两个点