SSL 协议(HTTPS 协议的关键)

所谓的协议

  1. 协议只是一种规则,你不按规则来就无法和目标方进行你的工作

  2. 协议说白了只是人定的规则,任何人都可以定协议

  3. 我们不需要太了解细节,这些是制定和完善协议的人去做的,我们只需要知道协议的一个大概


一、SSL 协议

1、概述
  • SSL 协议(Secure Sockets Layer,安全套接层协议),是一种广泛使用的网络安全协议,旨在保护网络通信中的数据安全和隐私
2、基本作用
  1. 加密传输:SSL 协议使用复杂的加密算法对传输的数据进行加密,这就像给信息加上了一把锁,只有拥有相应钥匙的人才能打开并阅读

  2. 身份认证:SSL 协议支持双向身份认证,即客户端和服务器都需要验证对方的身份,这确保通信双方都是可信的,防止中间人攻击

  3. 信息完整性:SSL 协议通过消息完整性校验机制来确保传输的数据在传输过程中没有被篡改,如果数据在传输过程中被修改,接收方将能够检测到篡改

3、应用场景
  • SSL 协议与 HTTPS 的关联最为人所熟知,以下是 SSL 协议除了 HTTPS 之外的一些主要应用场景
  1. 电子邮件加密:SSL 协议可以保护电子邮件的传输过程,确保邮件内容的机密性,它通常与 SMTP(简单邮件传输协议)、POP3(邮局协议第 3 版)和 IMAP(互联网消息存取协议)等邮件传输协议结合使用,形成相应的加密版本,如 SMTPS、POP3S 和 IMAPS

  2. 虚拟专用网络(VPN):SSL VPN 技术可以建立安全的远程访问连接,使远程用户可以安全地访问公司内部网络资源

  3. 在线支付:SSL 协议能够保护用户的银行卡信息、支付密码等敏感数据不被泄露,确保在线支付过程的安全性

4、工作流程
  • SSL 协议的工作流程体现在握手阶段和数据传输阶段,握手阶段和数据传输阶段这里可以通俗易懂的理解成去对接客户时,先打招呼问好(握手阶段),再进行项目对接(数据传输阶段)
(1)握手阶段
  1. 客户端向服务器发送加密通信请求

  2. 服务器回应并发送包含公钥的数字证书给客户端

  3. 客户端验证数字证书的有效性,并生成一个随机数作为会话密钥的一部分

  4. 客户端将随机数发送给服务器,服务器使用自己的私钥和客户端的随机数生成会话密钥

  5. 双方确认握手过程完成,开始使用会话密钥加密和解密数据

(2)数据传输阶段
  1. 发送方使用会话密钥对数据进行加密,并通过 SSL 协议传输给接收方

  2. 接收方使用相同的会话密钥解密数据,并进行完整性校验


二、SSL 证书

1、SSL 证书的作用
  • SSL 证书是 SSL 协议的核心组成部分,它包含公开密钥、私有密钥以及证书持有者的身份信息,这些证书由受信任的证书颁发机构(CA)签发,它有如下特点
  1. 身份验证:证明网站的真实身份,且通过显示安全锁图标或绿色地址栏等,防止钓鱼网站冒充

  2. 加密通信:提供公钥用于加密通信,确保数据传输的安全

2、堤防钓鱼网站
  1. 钓鱼网站就是一些看起来很像正规网站,但实际上却是个陷阱的网站,这些网站通常会伪装成银行、电商、社交平台等大家常去的网站

  2. 通常通过诱导你点击一个链接跳转到了一个看起来和你常去的那个网站一模一样的页面,要求你输入账号、密码、验证码,甚至信用卡信息,简单来说就是套你的信息

  3. 简单来说就是为了骗取你的个人信息和财务信息,然后用这些信息去做坏事,比如盗刷你的信用卡、盗取你的钱财,或者用你的身份去做一些违法的活动

相关推荐
愚润求学2 小时前
【Linux】网络基础
linux·运维·网络
m0_738120723 小时前
玄机——某学校系统中挖矿病毒应急排查
网络·安全·web安全
静心问道3 小时前
XLSR-Wav2Vec2:用于语音识别的无监督跨语言表示学习
人工智能·学习·语音识别
AWS官方合作商9 天前
AWS ACM 重磅上线:公有 SSL/TLS 证书现可导出,突破 AWS 边界! (突出新功能的重要性和突破性)
服务器·https·ssl·aws
yenggd9 天前
动态ds-vnp之normal和shortcut两种方式配置案例
网络·华为
Jackilina_Stone9 天前
【网工】华为配置专题进阶篇⑤
网络·华为·网工
懒惰的bit9 天前
STM32F103C8T6 学习笔记摘要(四)
笔记·stm32·学习
zkyqss9 天前
OVS Faucet练习(下)
linux·笔记·openstack
Jay_5159 天前
C++ STL 模板详解:由浅入深掌握标准模板库
c++·学习·stl
冰茶_9 天前
ASP.NET Core API文档与测试实战指南
后端·学习·http·ui·c#·asp.net