一、信息安全基础知识
1.1、信息安全基本要素
1.1.1、机密性 (Confidentiality)
确保信息不暴露给未授权的实体或进程。
破坏机密性 :主要手段是窃听(Snooping)、流量分析。
对策:加密技术(对称/非对称)、访问控制、防电磁泄漏。
1.1.2、完整性 (Integrity)
只有得到允许的人才能修改数据,并且能够判别出数据是否已被篡改。
破坏完整性 :主要手段是篡改(Modification)、假冒。
对策:数字签名、消息摘要(Hash)、公证。
1.1.3、可用性 (Availability)
得到授权的实体在需要时可访问数据,即攻击者不能占用所有的资源而阻碍授权者的工作。
破坏可用性 :主要手段是拒绝服务攻击(DoS/DDoS)。
对策:冗余设计、防火墙清洗、流量控制。
1.1.4、可控性
可以控制授权范围内的信息流向及行为方式。
破坏可控性:主要手段是抵赖。
对策:数字签名(防抵赖)。
1.1.5、可审查性
对出现的信息安全问题提供调查的依据和手段。
破坏可审查性:主要手段也是抵赖。
对策:审计日志(Audit Trails)。
1.2、安全攻防映射图谱
架构防御技术
常见攻击手段
安全目标
破坏
破坏
破坏
破坏
保障
保障
保障
保障
机密性 Confidentiality
完整性 Integrity
可用性 Availability
不可抵赖性 Non-repudiation
窃听/嗅探/流量分析
篡改/重放/中间人攻击
DoS/DDoS拒绝服务
伪造/否认
加密技术/VPN/物理隔离
数字签名/消息摘要/MAC
高可用集群/备份/流量清洗
PKI体系/数字证书
1.3、网络安全分析 (漏洞、威胁与目标)
1.3.1、分析概览
| 网络安全漏洞 (4方面) | 网络安全威胁 (5方面) |
|---|---|
| 1. 物理安全性 | 1. 非授权访问 |
| 2. 软件安全漏洞 | 2. 信息泄露或丢失 |
| 3. 不兼容使用安全漏洞 | 3. 破坏数据完整性 |
| 4. 选择合适的安全哲理 | 4. 拒绝服务攻击 |
| 5. 利用网络传播病毒 |
1.3.2、安全措施的目标
访问控制;认证;完整性;审计;保密。
1.3.3、主动攻击 vs 被动攻击
1.3.3.1、被动攻击
只听不改。例如:监听、流量分析。
特点 :难以检测,重点在于预防(加密)。对应"信息泄露"。
1.3.3.2、主动攻击
又听又改。例如:篡改、伪造、重放、DoS。
特点 :容易检测,重点在于检测和恢复。对应"非授权访问"、"破坏完整性"、"拒绝服务"。
1.3.4、常见网络威胁详解
1.3.4.1、重放攻击 (Replay Attack)
攻击者截获有效数据包,稍后重新发送以欺骗系统。
防御 :加时间戳 (Timestamp) 或 随机数 (Nonce)。
1.3.4.2、中间人攻击 (MITM)
拦截并篡改通信。
防御:身份认证(如双向认证)、数字证书。
1.3.4.3、SQL注入/XSS
属于"软件安全漏洞"层面的应用层攻击。
1.3.5、安全哲理
木桶原理:安全强度取决于最薄弱的环节。
最小权限原则:仅授予用户完成工作所需的最小权限。
纵深防御:多层防御体系(防火墙 -> IDS -> 主机安全 -> 数据加密)。
1.4、灾难恢复能力等级
1.4.1、基础概念
第1级:基本支持
第2级:备用场地支持
第3级:电子传输和部分设备支持
第4级:电子传输及完整设备支持
第5级:实时数据传输及完整设备支持
第6级:数据零丢失和远程集群支持
1.4.2、核心指标定义
RPO (Recovery Point Objective):数据恢复点目标。指业务能容忍丢失多少数据(例如:RPO=0 表示数据零丢失)。
RTO (Recovery Time Objective):恢复时间目标。指业务中断后,多长时间能恢复服务。
1.4.3、等级深度解析
1.4.3.1、第1-2级 (冷备)
特点:数据主要靠定期备份(磁带/光盘),恢复时间长(天级)。
第2级区别:有了"备用场地",但设备可能未就绪。
1.4.3.2、第3-4级 (温备)
特点:引入了"电子传输"(网络传输数据)。
第3级:部分设备就绪。
第4级:完整设备就绪。
1.4.3.3、第5-6级 (热备)
特点:实时性极高,RPO 趋近于 0。
第5级 :实时数据传输(远程数据复制),RPO极低。
第6级 :数据零丢失 + 远程集群。不仅数据实时同步,应用也能自动切换,实现业务连续性。
1.4.4、灾难恢复架构分级图
灾备能力金字塔
第1级: 基本支持
每周/每日磁带备份
第2级: 备用场地
预留机房, 设备可能未到位
第3级: 电子传输+部分设备
数据通过网络每天多次传输
第4级: 电子传输+完整设备
备份中心设备处于就绪状态
第5级: 实时传输+完整设备
数据实时复制, RPO接近0
第6级: 零丢失+远程集群
同步镜像, 自动切换, RTO/RPO≈0
二、对称密钥加密算法
2.1、对称密钥技术特点
密钥分发困难(注:因为通信双方都需要持有同一个密钥,人多就乱了)。
算法效率高。
速度快。
适合于对大数据进行加密。
2.2、常见加密算法
DES、3DES (三重DES):密钥长度112【两个56位的密钥K1、K2】。
RC-5、IDEA算法:128位密钥、64位明文/密文。
AES :支持 128、192、256 位这3种密钥长度。
2.3、3DES解析
K1→K2→K1K_1 \to K_2 \to K_1K1→K2→K1 加密-解密-加密 (EDE) 模式。
即:使用 K1K_1K1 加密 -> 使用 K2K_2K2 解密 -> 使用 K1K_1K1 加密。这样做是为了兼容旧的DES硬件,同时增强安全性。
2.4、DES与AES的对比
DES :已被破解,不再安全。分组长度为 64位。
AES :目前的国际标准(取代DES)。分组长度固定为 128位(无论密钥长度是多少,分组都是128位,这是个坑点)。
2.5、应用场景
当看到"大量数据传输"、"数据库加密"、"磁盘加密"时,首选 AES。
三、非对称密钥加密算法
3.1、非对称加密技术特点
密钥成对出现(公钥 Public Key,私钥 Private Key)。
密钥之间不能相互推导。
公钥对外公开。
私钥只有持有者持有。
算法相对于对称加密算法效率低。
3.2、常见加密算法
RSA:2048或1024位密钥。
ECC:椭圆曲线算法。
Elgamal、DSA算法、Diffie-Hellman。
3.3、核心口诀
公钥加密,私钥解密 →\rightarrow→ 为了 保密性(Confidentiality)。(别人给你发信,用你的公钥锁上,只有你有钥匙能开)。
私钥加密,公钥解密 →\rightarrow→ 为了 数字签名/认证(Authentication)。(你用私钥盖章,大家都认识你的公钥,只要能解开,说明就是你盖的)。
3.4、保密通信流程图
接收方B
发送方A
使用B的公钥加密
互联网传输
使用B的私钥解密
明文数据 X
接收方B的公钥 P_KB
加密算法
密文 C
密文 C
接收方B的私钥 S_KB
解密算法
明文数据 X
接收方 A
发送方 B
使用B的私钥加密
互联网传输
使用B的公钥解密
明文数据 Y
接收方B的私钥 S_KB
(自己的私钥)
加密/签名算法
密文/签名 C'
密文/签名 C'
接收方B的公钥 P_KB
(B公开的钥匙)
解密/验签算法
明文数据 Y
四、国产密码算法
4.1、基础概念
| 算法名称 | 算法特性描述 | 备注 |
|---|---|---|
| SM1 | 对称加密,分组长度和密钥长度都为128比特 | 广泛应用于电子政务、电子商务及国民经济的各个应用领域(注:依赖硬件) |
| SM2 | 非对称加密,用于公钥加密算法、密钥交换协议、数字签名算法 | 国家标准推荐使用素数域 256位椭圆曲线 |
| SM3 | 杂凑算法(Hash),杂凑值长度为256比特 | 适用于商用密码应用中的数字签名和验证 |
| SM4 | 对称加密,分组长度和密钥长度都为128比特 | 适用于 无线局域网 产品 |
| SM9 | 标识密码算法 | 不需要申请数字证书,适用于互联网应用的各种新兴应用的安全保障 |
4.2、SM2 对标 RSA/ECC
SM2基于ECC(椭圆曲线),比RSA更安全、密钥更短、速度更快。
如果题目问"接替RSA的国产算法是什么",选 SM2。
4.3、SM3 对标 MD5/SHA-256
如果题目涉及"生成消息摘要"、"防篡改",选 SM3。
4.4、SM4 对标 AES
如果题目问"无线局域网(WAPI)标准中使用的加密算法",或者"替代DES/AES的算法",选 SM4。
4.5、SM9 (IBC)
它的特点是**"把邮箱/手机号直接作为公钥"**,省去了申请繁琐的数字证书环节。
五、信息摘要算法
5.1、定义
信息摘要是单向散列函数 (不可逆)、产生固定长度的散列值。
5.2、用途
确保信息 【完整性】,防篡改。
5.3、特性
不可逆:无法从摘要还原出原文(图示中红色叉号)。
固定长度:无论原文多长,生成的摘要长度固定。
5.4、常见算法
MD5 :散列值长度为 128位。
SHA :散列值长度为 160位(注:通常指SHA-1)。
5.5、安全性对比
由于 SHA 通常采用的密钥长度较长(注:此处用词为"密钥长度",实际应指"摘要/散列值长度"),因此安全性高于 MD5。
5.6、标准的完整性校验过程
A 发送数据 XXX 给 B。
A 对 XXX 计算摘要 Y1=f(X)Y_1 = f(X)Y1=f(X)。
B 收到数据后,自行计算摘要 Y2=f(X)Y_2 = f(X)Y2=f(X)。
判定 :如果 Y1≠Y2Y_1 \neq Y_2Y1=Y2,则说明数据在传输过程中被篡改。
5.7、雪崩效应 (Avalanche Effect)
输入数据哪怕只改变 1个比特 ,输出的摘要值也会发生巨大变化。这是判断哈希算法好坏的重要指标。
5.8、算法现状
MD5 和 SHA-1:已被证明不再绝对安全(存在碰撞可能),但在非高密级场景(如校验文件下载是否完整)仍广泛使用。
SHA-2 (SHA-256, SHA-512):目前推荐的安全标准。
国产算法 :SM3(256位),对标 SHA-256。
5.9、HMAC
单纯的Hash只能防篡改,不能防伪造(黑客可以改了数据后重新生成Hash)。
HMAC = Hash + Key。加入密钥一起Hash,确保只有持有密钥的人才能生成有效摘要。
5.10、完整性校验逻辑图
接收端B
发送端A
输入
生成
网络传输
网络传输
自行计算
生成
Y1 = Y2
Y1 ≠ Y2
原文 X
摘要算法 f
摘要值 Y1
接收到的原文 X'
接收到的摘要 Y1
摘要算法 f
摘要值 Y2
对比
数据完整/未被篡改
数据已被篡改
六、数字签名技术
6.1、核心机制
发送方 A 使用 A的私钥 (SKASK_ASKA) 进行 签名(对应图中 D运算)。
接收方 B 使用 A的公钥 (PKAPK_APKA) 进行 核实签名(对应图中 E运算)。
6.2、流程
A 的电脑:明文 X→X \rightarrowX→ D运算(使用 SKASK_ASKA) →\rightarrow→ 密文 DSKA(X)D_{SK_A}(X)DSKA(X)。
因特网传输。
B 的电脑:密文 DSKA(X)→D_{SK_A}(X) \rightarrowDSKA(X)→ E运算(使用 PKAPK_APKA) →\rightarrow→ 还原明文 XXX。
6.3、保密性 (加密) VS 认证性 (签名)
【公钥加密,私钥解密】 vs 【私钥签名,公钥验签】
保密性 (加密):用接收方的公钥锁,接收方用私钥开。(目的是不让别人看)
认证性 (签名):用发送方的私钥盖章,大家用发送方的公钥验。(目的是证明是你发的,且没改过)。
6.4、架构优化:摘要签名
问题:对"明文X"直接签名。如果X是1GB的视频,非对称加密算法(签名)速度极慢,系统会卡死。
解决方案 (实际架构):
- 先对明文 X 做 Hash (生成摘要)。
- 只对 摘要 进行私钥签名。
6.5、数字签名的三大功能
报文认证:核实发送者是谁。
报文完整性:防止篡改。
不可抵赖性 (Non-repudiation):A 赖不掉,因为私钥只有 A 有。
6.6、数字签名与验证流程图
持有公钥 PK_A
持有私钥 SK_A
因特网传输
明文 X
A的私钥 SK_A
D运算/签名
签名数据 D_SK_A_X
签名数据
A的公钥 PK_A
E运算/核实签名
还原明文 X