理论课40分钟

35课:加密与认证

数据安全的密码学基础

教学目标

1理解对称加密和非对称加密
2了解数字签名和数字证书
3掌握VPN的基本概念

📖 课前导入

你在网上银行转账时,输入的密码如何确保不被人偷看?浏览器地址栏的🔒小锁到底意味着什么?

答案就是加密技术——即使数据被截获,攻击者也只能看到一堆乱码。加密是HTTPS、VPN、SSH等一切安全通信的基石。

🎯 本课目标:理解对称/非对称加密的原理与区别,掌握HTTPS混合加密握手过程,了解数字签名和数字证书的作用,认识VPN的类型和应用场景,能用命令查看网站证书信息。

📚 一、加密基础概念

明文

Hello World

+ 密钥

→ 加密 →

密文

7g$kP@!xQ2

+ 密钥

→ 解密 →

明文

Hello World

明文(Plaintext)

原始的、可读的数据。如你输入的密码"abc123"。

密文(Ciphertext)

加密后不可读的数据。如"7g$kP@"。没有密钥无法还原。

密钥(Key)

加密/解密的"钥匙"。密钥越长越安全(128位、256位等)。

安全核心原则

加密算法可以公开(AES、RSA都是公开的),安全性完全取决于密钥的保密性。这就是Kerckhoffs原则——不要依赖算法保密,要依赖密钥保密。

📚 二、对称加密与非对称加密 ⭐核心

🔑 对称加密——一把钥匙

加密和解密使用同一把密钥

优点:速度极快,适合加密大量数据(视频流、文件传输)

缺点:密钥分发问题——怎么安全地把密钥给对方?当面交换?

发送方 —— 同一把密钥K —— 接收方

像一把锁配一把钥匙,双方各拿一把

常用算法:

AES-256 ✅(现代标准)、DES(56位,已破解)、3DES(过渡方案)

🔐 非对称加密——一对钥匙

使用一对密钥:公钥加密,私钥解密

优点:公钥可以公开发给任何人,解决密钥分发问题

缺点:速度慢(比对称加密慢100~1000倍),不适合大数据

公钥🔓(公开给所有人) + 私钥🔑(只有自己保密)

像信箱:谁都能投信(公钥),只有主人能开箱(私钥)

常用算法:

RSA-2048(经典)、ECC ✅(更短密钥同等安全)

对比项对称加密非对称加密
密钥数量1把(共享)2把(公钥+私钥)
速度极快慢(100~1000倍)
密钥分发困难(需要安全通道)简单(公钥可公开)
适用场景大量数据加密密钥交换、数字签名
代表算法AES、3DESRSA、ECC
小贴士

实际应用:HTTPS混合加密握手 ⭐

HTTPS使用混合加密——用非对称加密安全交换对称密钥,然后用对称密钥加密数据。兼顾安全和性能。

// TLS 1.2 握手简化流程:

1. 客户端 → 服务器: ClientHello(支持的加密算法列表)

2. 服务器 → 客户端: ServerHello + 数字证书(含公钥)

3. 客户端验证证书 → 生成随机对称密钥

4. 客户端 → 服务器: 用公钥加密对称密钥发送

5. 服务器用私钥解密 → 得到对称密钥

6. 双方用对称密钥(AES)加密所有后续通信 🔒

📚 三、数字签名与数字证书

✍️ 数字签名

用发送方的私钥对数据哈希值加密,接收方用发送方公钥验证。

身份认证:确认数据确实来自发送方

完整性:数据未被篡改(哈希值匹配)

不可否认:发送方不能否认发送过

注意:数字签名不加密数据,签名后数据仍可读。

📜 数字证书(X.509)

CA(证书颁发机构)签发,把公钥和身份绑定在一起。

包含:域名、公钥、CA签名、有效期、颁发者

解决:"这个公钥真的属于baidu.com吗?"

常见CA:DigiCert、Let's Encrypt(免费)、GlobalSign

浏览器地址栏的🔒 = 证书有效且受信任

哈希函数——数据的"指纹"

将任意长度数据转为固定长度哈希值。即使改一个字节,哈希值完全不同(雪崩效应)。

SHA-256("Hello") = 185f8db3...

SHA-256("Hello.") = a9955f3f... ← 只加了一个点,完全不同

MD5:128位,已破解❌
SHA-1:160位,已不推荐
SHA-256:256位,推荐✅
查看网站证书信息
// 模拟终端 - 点击"执行下一条"或按回车运行命令
// 共 2 条命令,已执行 0
C:\>

📚 四、VPN虚拟专用网络

什么是VPN?

VPN(Virtual Private Network)通过加密技术在公共网络上建立一条安全的"隧道"。数据在隧道中是加密的,外部无法窃听。

类比:在公共马路上建了一条不透明的管道,只有管道两端的人能看到里面的货物。

🏠 远程访问VPN

员工在家/出差通过VPN客户端连接公司内网,像在办公室一样访问内部系统。

场景:居家办公、出差访问OA/ERP

🏢 站点到站点VPN(Site-to-Site)

总部和分公司路由器之间建立VPN隧道,两端员工互相访问对方网络。

场景:分支机构互联,替代昂贵的专线

🌐 站点到站点VPN示意图

内网IPSec隧道🔒IPSec隧道🔒内网
总部员工
总部路由器
互联网(公网)
分部路由器
分部员工

数据在两个路由器之间通过IPSec加密隧道传输,即使经过公网也无法被窃听。

VPN协议工作层特点典型场景
IPSec网络层安全性强,配置复杂站点到站点VPN
SSL/TLS VPN传输层浏览器即可使用,部署简单远程访问VPN
WireGuard网络层新一代,代码精简,性能极高个人/企业VPN
L2TP/IPSec数据链路层兼容性好,需配合IPSec加密移动设备VPN

加密技术与HTTPS握手过程

动画演示对称/非对称加密原理、HTTPS TLS握手的完整流程、数字证书验证链,以及VPN隧道建立过程

18:00
加密技术与HTTPS握手过程推荐视频18:00

动画演示对称/非对称加密原理、HTTPS TLS握手的完整流程、数字证书验证链,以及VPN隧道建立过程

✅ 课堂小测

随堂测验

1/7

对称加密和非对称加密的核心区别是什么?

📋 本课小结

1

对称加密:同一密钥,速度快,密钥分发难。AES-256是现代标准。

2

非对称加密:公钥/私钥对,解决密钥分发但速度慢。RSA/ECC用于密钥交换。

3

HTTPS混合加密:非对称交换对称密钥 → 对称加密数据。兼顾安全与性能。

4

数字签名/证书:签名保证身份+完整性;证书=CA把公钥和身份绑定。

5

VPN:在公网上建加密隧道。IPSec=站点对站点,SSL VPN=远程访问。

🤔 课后思考与实践

动手实验

  1. 在浏览器中打开任意HTTPS网站,点击🔒锁图标查看证书信息:颁发者、有效期、加密算法。
  2. certutil -hashfile 文件名 SHA256 计算一个文件的SHA-256哈希值,修改文件一个字节后再次计算对比。
  3. 尝试访问一个证书过期的网站,观察浏览器的安全警告页面。

思考题

  1. 如果没有CA机构,HTTPS的安全性会有什么问题?(提示:中间人可以伪造公钥)
  2. 为什么说"加密算法可以公开,安全性取决于密钥"?这和直觉矛盾吗?
  3. VPN和HTTPS都能加密通信,它们的应用场景有什么区别?