7.1 网络安全和加密原理

1.网络安全

2.加密原理

3.证书


1.网络安全

csharp 复制代码
a.机密性: 只有发送方和预订的接收方能理解传输的报文内容

- 发送方加密报文

- 接收方解密报文

b.认证: 发送方, 接收方需要确认对方的身份

c.报文完整性: 发送方, 接收方需要确认报文在传输的过程中有没有被改变

d.访问控制和服务的可用性: 对于正常的用户提供服务, 对于非正常的用户(比如: 攻击服务器)拒绝访问

2.加密原理

csharp 复制代码
加密分为: 对称加密和非对称加密(公开密钥)

csharp 复制代码
1).对称加密 - 用同一把密钥

a.核心思想: 加密和解密使用同一把密钥

b.比喻: 你打造了一个带锁的盒子(加密算法), 和一把唯一的钥匙(密钥); 你把信放进盒子锁上(加密),然后把盒子寄给朋友

你的朋友必须用同一把钥匙的副本才能打开盒子读信(解密)

c.工作流程

- 你和对方事先约定好使用哪把钥匙(密钥协商)

- 通过加密算法将钥匙和明文变成密文(加密数据)

- 发送密文

- 对方用同样的钥匙打开盒子, 取出明文

d.代表算法: DES, AES

e.优点: 速度快, 效率快, 适合加密大量数据

f.缺点: 钥匙怎么安全地交给对方, 如果钥匙在传递过程中被坏人截获, 整个通信就不再安全

csharp 复制代码
2).非对称加密

a.核心思想: 一个公钥, 一个私钥

b.比喻: 

- 公钥是锁头, 可以公开给全世界

- 私钥是唯一钥匙, 必须自己严格保密

c.加密通信("用公钥加密, 私钥解密")

- 场景: 你的网友bob想给你发秘密消息

- 过程: Bob拿到你公开的公钥, 把消息锁进盒子, 寄给你; 只有私钥才能打开; 即时盒子被截断, 别人也打不开

d.数字签名("用私钥签名, 公钥验证")

- 场景: 你想发布一个公告, 并让大家相信这确实是你发的

- 过程: 你用你的"唯一钥匙"(私钥)对公告内容做一个独特的"魔法印记"(签名), 然后连同公告一起发出; 任何人都可以用

你公开的"锁头"(公钥)来验证这个印记; 如果验证通过, 就证明这条消息一定是你发的, 且中途没有被篡改

e.代表算法: RSA

f.优点: 完美解决了密钥分发问题, 身份验证能力超强

g.缺点: 速度非常慢, 比对称加密慢成百上千倍

3.证书

csharp 复制代码
如果没有证书, 客户端无法确定收到的公钥是否真的来自它想要通信的服务器; 证书的出现就是为了解决这个问题的, 证书是

由受信任的第三方(Certificate Authority, CA)颁发的, 它用CA的私钥对服务器的公钥和一些相关信息进行签名, 从而证明

这个公钥属于这个服务器

csharp 复制代码
1).根证书通常包含以下部分

a.证书持有者的信息

这个证书是属于谁的? (例如, 网站域名www.example.com, 公司名称等)

b.证书颁发者(CA)的信息

这个身份证是哪个"公安局"发的?(例如, DigiCert, Let's Encrypt, Globalsign 等)

c.证书的有效期

身份证的"签发日期"和"过期日期", 过期了就无效了

d.核心部分: 证书持有者的公钥

e.核心部分: 证书颁发者(CA)的数字签名

这是证书防伪的关键, CA机构会用它们自己的私钥, 对整个证书的内容(包括你的公钥、你的信息等)计算一个数字签名, 并

把这个签名也放在证书里

csharp 复制代码
2).证书是如何工作的? (身份认证流程)

当你的浏览器(客户端)访问一个HTTPS网站(如: https://www.example.com)时, 会发生以下事情:

a.服务器发送证书

网站服务器会把它的"数字证书"发送给你的浏览器

b.浏览器验证证书, 你的浏览器会做一系列严格的检查

- 检查颁发者: 颁发这个证书的CA机构是否是我信任的? 浏览器和操作系统内部都预装了一个受信任的根证书列表

- 检查有效期: 证书在有效期内吗

- 检查域名: 证书上写的域名和你正在访问的域名一致吗

- 最关键的一步 "验证签名"

浏览器用CA机构的公钥(这个公钥已经在浏览器预装的信任列表里了)去解密证书里的那个数字签名, 得到一份"摘要A"; 浏览

器自己再用同样的算法, 对证书的明文内容, 包括网站的公钥、信息等计算一次"摘要B", 如果摘要A和摘要B完全一致, 就证

明了两件事:

这个证书的内容是完整的, 没有被篡改过; 这个证书确实是由那个可信的CA机构颁发的, 里面的公钥是真实有效的

c.建立信任: 只有以上所有检查都通过了, 浏览器才会确信: 这个www.example.com不是假冒的, 它给我的这个公钥确实

是它的, 我可以放心地用这个公钥来加密信息了
相关推荐
易连EDI—EasyLink37 分钟前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist1231 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio1 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch2 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
金色光环3 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
数智化精益手记局3 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
灰子学技术4 小时前
Envoy HTTP 过滤器处理技术文档
网络·网络协议·http
Olivia051405146 小时前
Voohu:音频变压器的屏蔽接地技术对50Hz工频噪声抑制的影响
网络·机器人·信息与通信
byoass7 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
zhihuishuxia__7 小时前
Multiplex通讯(多路复用通讯)
网络·图像处理·数码相机·计算机视觉·自动化