网络安全笔记

# 网络安全概述

### 网络安全的特征

- **机密性:信息不泄露给非授权的实体或对象**
- **完整性:数据未经授权不能进行改变的特性, 即信息在存储或传输过程中保持不被修改,不被破坏的特性**
- **可用性:可被授权实体访问并按需求使用的特性,即当需要时应能存取所需的信息。**
- **可控性:对网络信息的传播及内容具有控制能力**

### 常见攻击手段

- 社会工程:攻击者可通过各种社交渠道获得有关目标 的结构、使用情况、安全防范措施等有用信息从而提 高攻击成功率
- 口令破解:攻击者可通过获取口令文件,然后运用口 令破解工具获得口令,也可通过猜测或窃听等方式获 取口令
- 地址欺骗:攻击者可通过伪装成被信任的IP 地址, 邮件地址等方式来骗取目标的信任
- 连接盗用:在合法的通信连接建立后,攻击者可通过 阻塞或摧毁通信的一方来接管已经过认证建立起来的 连接,从而假冒被接管方与对方通信
- 网络窃听:网络的开放性使攻击者可通过直接或间接 窃听获取所需信息
- 数据篡改:攻击者可通过截获并修改数据或重放数据 等方式破坏数据的完整性
- 恶意扫描:攻击者可编制或使用现有扫描工具发现目标的漏洞,进而发起攻击
- 基础设施破坏:攻击者可通过破坏DNS 或路由信息等基础设施,使目标陷于孤立
- 数据驱动攻击:攻击者可通过施放病毒、特洛伊木马、数据炸弹等方式破坏或遥控目标
- 拒绝服务:攻击者可直接发动攻击,也可通过控制其它主机发起攻击,使目标瘫痪,如发送大量的数据洪流阻塞目标

### 小结

- 中断(Interruption) 〈-〉可用性(Availability)
- 窃听(Interception) 〈-〉机密性(Confidentiality )
- 修改(Modification) 〈-〉完整性(Integrity)
- 伪造(Fabrication) 〈-〉可认证性(Authenticity)

### 网络

#### ISO - OSI 模型

`PDNTSPA`

**P-物理层**

**D-数据链路层**

**N-网络层**

**T-传输层**

**S-会话层**

**P-表示层**

**A-应用层**

#### TCP/IP 模型

`PNTA`

**P-网络与接口层**

**N-网络层**

**T-传输层**

**A-应用层**

#### 两个模型的比较

##### 相同点

1.都是基于独立的协议栈概念。

2.两者都有功能相似的应用层、传输层、网络层。

##### 不同点

1.在OSI模型中,严格地定义了服务、接口、协议;在TCP/IP模型中, 并没有严格区分服务、接口与协议。

2.OSI模型支持非连接和面向连接的网络层通信,但在传输层只支持面向连接的通信;TCP/IP模型只支持非连接的网络层通信,但在传输层有支持非连接和面向连接的两种协议可供用户选择。

3.TCP/IP模型中不区分、甚至不提起物理层和数据链路层。

### 安全体系结构

- **安全攻击:损害机构所拥有信息的安全的任何行为。**
- **安全机制:设计用于检测、预防安全攻击或者恢复系统的机制。**
- **安全服务:系统提供的对资源进行特殊保护的进程或者通信服务。**

#### 安全攻击

**主动攻击**(passive attack): 更改数据流,或伪造假的数据流。

- 伪造
- 重放
- 篡改
- 拒绝服务

**被动攻击**(active attack): 对传输进行偷听与监视,获得传输信息。

- 窃听
- 流量分析

#### ==安全机制(8个)==

- **加密**:用加密算法对信息加密。保护信息的机密性
- **数字签名**:用签名算法对信息进行计算,计算结果附加于信 息单元。用于身份认证、数据完整性和非否认服务 
- **访问控制**:用于实施资源访问权限的机制
- **数据完整性**:用于确保信息的完整性
- **认证交换**:确保信息交换的实体是所声称的实体,通过信息交换以确保实体身份,包括公知密码、特征、位置信息等
- **流量填充**:填充信息,防止流量分析
- **路由控制**:能够为特定数据选择特定路由
- **公证**:采用可信任的第三方以确保一些信息交换的性质

#### ==安全服务(5类)==

- **认证**(鉴别)(Authentication):提供某个实体的身份保证对等实体认证、数据源认证
- **访问控制**(Access control):保护资源,防止对它的非法使用和操纵
- **数据机密性**(Data encryption):保护信息不被泄露连接保密性、无连接保密性、选择域保密性、流量保密性
- **数据完整性**(Integrity):保护信息以防止非法篡改具有恢复功能的连接完整性、无恢复功能的连接完整性、选择与连接完整性、无连接完整性、选择域无连接完整性
- **不可否认性**(No-repudiation):防止参与通信的一方事后否认源点的不可否认性、信宿的不可否认性

#### 安全服务与机制的关系

| 服务\机制 | 加密 | 数字签名 | 访问控制 | 数据完整性 | 认证交换 | 流量填充 | 路由控制 | 公证 |
| :----------------------: | :--: | :------: | :------: | :--------: | :------: | :------: | :------: | :--: |
| 对等实体认证 | ✔️ | ✔️ | | | ✔️ | | | |
| 数据源认证 | ✔️ | ✔️ | | | | | | |
| 访问控制服务 | | | ✔️ | | | | | |
| 连接机密性 | ✔️ | | | | | | ✔️ | |
| 无连接机密性 | ✔️ | | | | | | ✔️ | |
| 选择字段机密性 | ✔️ | | | | | | | |
| 通信业务流机密性 | ✔️ | | | | | ✔️ | ✔️ | |
| 待恢复的连接完整性 | ✔️ | | | ✔️ | | | | |
| 不带恢复的连接完整性 | ✔️ | | | ✔️ | | | | |
| 选择字段的连接完整性 | ✔️ | | | ✔️ | | | | |
| 无连接完整性 | ✔️ | ✔️ | | ✔️ | | | | |
| 选择字段的无连接的完整性 | ✔️ | ✔️ | | ✔️ | | | | |
| 不可抵赖,带交付证据 | | ✔️ | | ✔️ | | | | ✔️ |

**PPT**

| 安全服务\安全机制 | 加密 | 数字签名 | 访问控制 | 完整性 | 认证 | 流量填充 | 路由控制 | 公证 |
| :---------------: | :--: | :------: | :------: | :----: | :--: | :------: | :------: | :--: |
| 对等实体认证 | ✔️ | ✔️ | | | ✔️ | | | |
| 数据源认证 | ✔️ | ✔️ | | | | | | |
| 访问控制 | | | ✔️ | | | | | |
| 机密性 | ✔️ | | | | | | ✔️ | |
| 流量机密性 | ✔️ | | | | | ✔️ | ✔️ | |
| 数据完整性 | ✔️ | ✔️ | | ✔️ | | | | |
| 非否认服务 | | ✔️ | | ✔️ | | | | ✔️ |
| 可用性 | | | | ✔️ | ✔️ | | | |

#### 网络各层安全协议

链路层:链路隧道协议、加密技术

网络层:包过滤机制、NAT、IPsec协议、 VPN

传输层/会话层 :SSL/TLS 协议

应用层:SHTTP、HTTPS、PGP、S/MIME等

### 网络安全技术

第二代安全技术

- 保护
- 响应
- 检测
- 恢复

包括

- 防火墙
- 入侵检测
- 虚拟专用网
- 公钥基础设施

# 密码学

### 发展进程

- **古典密码**: 基于字符替换的密码,现在已很少使用了,但是 它代表了密码的起源
- **对称密钥体制( Symmetric System** ):加密密钥和解密密钥 相同,这些算法也叫作单钥密码体制(one-key system)
- **非对称密钥体制(Asymmetric System)** :加密密钥和解密密 钥不同,也叫**公钥密码体制(public key system)或双钥密码体制(two-key system)**

### 加密模式

- **序列密码(stream cipher)**: 序列密码**按位或字节加密**,也 可以称为流密码,序列密码是手工和机械密码时代的主流。

- **分组密码(block cipher)**: 分组密码**将明文分成固定长度的组**,用同一密钥和算法对每一块加密,**输出也是固定长度的密文**。

## 对称密码

### DES(数据加密标准,Data Encryption Standard )

DES是一种对二元数据进行加密的算法,数据分组长度为 **64位**,密文分组长度也是**64位**,使用的密钥为**64位**,有效密钥长度为**56位**,**有8位用于奇偶校验**,解密时的过程和加密时相似,但密钥的顺序正好相反,DES的整个体制是公开的,系统的安全性**完全靠密钥的保密**。

## 对加密系统的攻击

- 唯密文攻击:根据加解密算法和密文进行破译
- 已知明文攻击:攻击者拥有部分密文和对应的明文,根据算法寻找密钥
- 选择明文攻击:有选择地使用任意明文和与之对应的密文信息,根据算法寻找密钥
- 选择密文攻击:有选择地使用密文和与之对应的明文信息,根据算法寻找密钥

## 分组密码

分组密码一次处理一个数据分组

对于较长的明文,在分解成若干个分组之 后,采用相同的密钥进行加密,NIST定义 了5种工作模式

- **电码本ECB(Electronic Codebook)**
- **密码分组反馈CBC(Cipher-block chaining)**
- **密码反馈CFB(Cipher feedback)**
- **输出反馈OFB(Output Feedback)**
- **计数器CRT(Counter)**

## 公钥密码

### RSA

#### 过程

##### 密钥生成

1. **选择两个互异的素数p和q**
2. **计算n=p*q**
3. **计算φ(n)=(p-1)(q-1)**
4. **选择与φ(n)互素的e,且1<e<φ(n)**
5. **计算d*e mod φ(n)= 1 **

**公钥为Pk为{e,n},私钥为{d,n}**

**加密**
$$
C=M^e\,(mod\,n)
$$
**解密**
$$
M=C^d\,(mod\,n)
$$

### ELGamal密码

- todo

# 消息认证与身份认证

数字签名-消息的不可否认性

消息认证-消息的完整性

### 数字签名

#### 基本概念

① 签名者事后不能抵赖自己的签名;

② 任何其他人不能伪造签名;

③ 如果当事的双方关于签名的真伪发生争执,能够在公正的仲裁者面前通过验证确认其真伪。

#### 与加解密的区别

数字签名的加密/解密过程和信息(报文)的加密/解密 过程都可适用公开秘钥算法,但实现**过程正好相反**,适用的密钥对也不同。数字签名使用的是发送方的密钥对, 发送方用自己的私钥进行加密(签名),接收方用发送方的公开秘钥进行解密(验证)

这是一个一对多的关系:任何拥有发送方公开秘钥的人都可以验证数字签名的正确性

签名

设施加签名的算法为 SIG,产生签名的密钥为K,被签 名的数据为M,产生的签名信息为S
$$
S = SIG (M,K)
$$
验证签名的算法为VER ,用VER对签名S进行验证,可鉴别S的真假
$$
VER(S, K)=
\begin{cases}
true \quad当S=SIG(M, K)\\
false \enspace当S\neq SIG(M, K)
\end{cases}
$$


#### 公钥实现数字签名

1. **A用自己的解密钥K~dA~对数据M进行签名:S~A~=D(M,K~dA~)**

2. **如果不需要保密,则A直接将S~A~发送给用户B**

3. **如果需要保密,则A用B的公开的加密钥K~eB~对S~A~ 加密, 得到密文C,其中C=E(S~A~,k~eB~)**

4. **最后,A把C发送给B,并将S~A~或C 留底**

5. **B收到后,若是不保密通信,则用 A的公开加密钥K~eA~对签名进行验证**
$$
E(S_A,K_{eA})=E(D(M,K_{dA}),K_{eA})=M
$$

6. **若是保密通信,则 B先用自己的保密的解密钥K~dB~对C解密, 然后再用A的公开加密钥K~eA~对签名进行验证**
$$
D(C,K_{dB})=D(E(S_A,K_{eB}),K_{dB})= S_A \\
E(S_A,K_{eA})=E(D(M,K_{dA}),K_{eA})= M
$$

7. **M如果能够恢复出正确的 M,则说明S~A~是A的签名,否则SA不是A的签名**

8. **B对收到的 C或S~A~留底**

分析

因为只有 A才拥有K~dA~ ,而且由公开的K~eA~在计算上不 能求出保密的解密钥K~dA~ 。因此签名的操作只有A才能进行,任何其他人都不能进行。所以,K~dA~就相当于A的印章或指纹,而SA就是A对M的签名。对此A不能抵赖,任何其他人不能伪造

##### 合理设计明文的数据格式

![image-20230618184645954](C:\Users\WenTe\AppData\Roaming\Typora\typora-user-images\image-20230618184645954.png)

![image-20230618184712103](C:\Users\WenTe\AppData\Roaming\Typora\typora-user-images\image-20230618184712103.png)

!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值