当前位置: 首页 > news >正文

HTTPS协议简述

HTTPS 协议简介

HTTPS 是 HTTP + Security 的组合,即在 HTTP 的基础上加入了安全性机制,主要通过加密传输、身份认证和数据完整性保护来确保通信的安全性。

为了实现这一目标,HTTPS 引入了 加密技术,包括对称加密、非对称加密和数字证书机制。


1. 对称加密

概念

对称加密是一种加密方式,服务器和客户端共用一个密钥。信息通过密钥进行加密和解密,密钥本身也需要在双方之间传递。

优点
  • 算法简单,效率高。
缺陷
  • 密钥分发问题:服务器需要将密钥发送给客户端。如果密钥以明文形式传输,可能被黑客劫持,导致通信内容被篡改或窃取。

2. 非对称加密

概念

非对称加密使用一对公钥和私钥,其中:

  • 公钥:可公开,用于加密数据。
  • 私钥:仅自己保管,用于解密数据。
工作流程
  1. 服务器生成一对公钥和私钥,并将公钥发送给客户端。
  2. 客户端随机生成一个对称加密的密钥,并用服务器的公钥对其加密。
  3. 加密后的对称加密密钥传回服务器,服务器用私钥解密,获取该密钥。
  4. 后续通信使用该对称加密密钥进行加密和解密,提升效率。
优点
  • 解决了密钥明文传输的问题,确保密钥的安全性。
缺陷
  • 中间人攻击
    如果黑客拦截了服务器的公钥,并伪造一对公钥和私钥传递给客户端,那么客户端会用伪造的公钥加密数据,黑客可以解密这些数据,窃取或篡改后再传给服务器。
    核心问题在于:客户端无法确认公钥的真实来源。

3. CA 机构与数字证书

概念

CA(Certificate Authority)是数字证书认证机构,用于解决公钥来源不明的问题。
服务器的公钥需要由 CA 进行签名,生成 数字证书,数字证书可以帮助客户端验证公钥的真实性。

工作流程
  1. 服务器生成证书申请
    • 服务器将自己的公钥和其他信息(如域名)提交给 CA 机构,申请签名。
  2. CA 签名
    • CA 使用自己的私钥对服务器提交的信息进行签名,并生成数字证书。
    • 数字证书包含服务器的公钥、域名信息、有效期,以及 CA 的签名。
  3. 客户端验证证书
    • 客户端收到服务器的数字证书后,会用 CA 的公钥验证签名是否有效。
    • 如果验证成功,则说明服务器的公钥是可信的;否则,提示用户证书异常。
优点
  • 确保公钥的来源可信,防止中间人攻击。
缺陷
  • CA 机构可能被人为控制,若 CA 对黑客签发虚假证书,也可能导致安全问题。

4. HTTPS 的完整工作流程

  1. 客户端发起 HTTPS 请求,服务器返回数字证书。
  2. 客户端验证证书:检查证书的合法性,包括签名有效性和域名匹配。
  3. 验证通过后,客户端生成对称加密密钥,用服务器公钥加密后发送给服务器。
  4. 服务器用私钥解密,获取对称加密密钥。
  5. 后续通信使用对称加密进行加密和解密。

5. 补充机制:签名服务器

签名服务器可以进一步增强安全性,避免 CA 单点故障或人为控制的问题。具体原理较复杂,常结合区块链技术,实现分布式的可信签名。

http://www.lryc.cn/news/524838.html

相关文章:

  • 前沿技术趋势洞察:2024年技术的崭新篇章与未来走向!
  • HTML常用属性
  • 电子应用设计方案100:智能家庭AI电风扇系统设计
  • ThinkPHP 8请求处理-获取请求对象与请求上下文
  • 工厂模式 - 工厂方法模式、抽象工厂模式
  • 2025年已过6%
  • C#,入门教程(04)——Visual Studio 2022 数据编程实例:随机数与组合
  • UWB高精度定位技术在智能仓储中的应用
  • 计算机毕业设计hadoop+spark视频推荐系统 短视频推荐系统 视频流量预测系统 短视频爬虫 视频数据分析 视频可视化 视频大数据 大数据
  • 【AI编辑器】字节跳动推出AI IDE——Trae,专为中文开发者深度定制
  • CSDN 博客之星 2024:默语的技术进阶与社区耕耘之旅
  • 《探秘鸿蒙Next:非结构化数据处理与模型轻量化的完美适配》
  • async++库的使用示例
  • springboot基于微信小程序的手机银行系统
  • 25/1/22 算法笔记<ROS2> TF变换
  • Android系统开发(六):从Linux到Android:模块化开发,GKI内核的硬核科普
  • dp 凸优化
  • 详细介绍:Kubernetes(K8s)的技术架构(核心概念、调度和资源管理、安全性、持续集成与持续部署、网络和服务发现)
  • [SAP ABAP] Dialog屏幕开发
  • 安全测试之 SSTI 模板注入入门
  • 滑动窗口解题模板
  • SOC和SOH的含义
  • Genetic Prompt Search via Exploiting Language Model Probabilities
  • 1561. 你可以获得的最大硬币数目
  • DNA结合之Motif_1:CNN
  • kong 网关和spring cloud gateway网关性能测试对比
  • 【2024 CSDN博客之星】个人收获分享
  • Codeforces Round 998 (Div. 3)(部分题解)
  • [创业之路-261]:《向流程设计要效率》-1-流程体系的建立是一场全方位的变革,一定会遇到各种阻力,需要全方位、系统性地进行流程管理
  • 深入理解 Spring 的 Lazy Loading:原理、实现与应用场景