信息系统基础知识(十):信息加解密技术详解

📝 前言

在前两篇文章中,我们学习了信息安全的基础知识和信息系统安全的作用与意义。信息安全的目标——机密性、完整性、可用性、可控性、可审查性——已经清晰,但一个更关键的问题随之而来:这些安全目标如何在实际系统中落地?

答案的核心就是信息加解密技术。加密是保障机密性的最主要手段,哈希是保障完整性的基础工具,而数字签名则同时提供了完整性和不可否认性。可以说,没有密码技术,信息安全就是空中楼阁。

在系统架构设计师考试中,信息加解密技术是信息安全章节的核心考点。本章在上午选择题中约占3-5分,在案例分析和论文中有时也会涉及。考查内容涵盖对称加密与非对称加密的概念与算法对比、报文摘要与数字签名、国密算法(SM2/SM3/SM4)的识别与应用、混合加密(数字信封)等。本章很少涉及超纲题,核心是准确记忆算法分类和典型应用场景。

本文将依据《系统架构设计师教程(第二版)》第4.4节“信息加解密技术”的知识框架,结合历年真题考点,系统梳理加解密技术的核心知识。

一、数据加密基础

1.1 加密的核心目的

数据加密的核心目的是防止未经授权的用户访问敏感信息。在信息系统架构设计中,加密是保障机密性这一安全要素的主要技术手段。

1.2 密码学的两大分支

密码学(Cryptography)是研究数据加密的科学,分为两大分支:

分支定义典型活动
密码编码学设计加密算法设计DES、AES、RSA等算法
密码分析学破解加密算法尝试在不知道密钥的情况下还原明文

保密通信模型是理解加密的基础:

  • 加密过程:明文P → 加密算法E + 密钥K → 密文C(C = E(K, P))

  • 解密过程:密文C → 解密算法D + 密钥K → 明文P(P = D(K, C))

一个密码系统至少由明文、密文、加密算法、解密算法和密钥五个部分组成。

1.3 安全性原则

柯克霍夫原则是密码学的核心假设:算法可以公开,密钥必须保密。这意味着加密算法的安全性不依赖于算法的保密,而完全依赖于密钥的保密。这一原则也是现代密码学的基石。

二、对称加密算法

2.1 对称加密的基本概念

对称加密(又称私人密钥加密/共享密钥加密)是指加密密钥和解密密钥相同的加密方式。通信双方必须预先共享同一密钥。

核心特点

  • 优点:加密效率高,适合加密大量数据

  • 缺点:加密强度相对不高,密钥分发困难

2.2 常见对称加密算法

算法密钥长度分组长度特点状态
DES56位64位替换+移位,速度快,密钥易产生已不安全
3DES(三重DES)112位(两把56位密钥)64位加密流程:K1加密→K2解密→K1加密性能较差
IDEA128位64位8轮迭代,比DES快仍在部分场景使用
AES128/192/256位128位抗攻击性强,2002年取代DES成为新标准当前主流
RC-5可变32/64/128位可变RSA数据安全公司产品常用较少使用

DES的加密过程:明文被分成64位的块,对每个块进行19次变换,其中16次变换由56位密钥的不同排列形式控制,最后产生64位的密文块。

3DES的加密流程:用密钥K1进行DES加密 → 用K2对结果进行DES解密 → 用K1对结果进行DES加密。3DES克服了DES密钥长度较短的缺点,密钥长度为112位。

AES(高级加密标准) 又称Rijndael加密法,是美国联邦政府采用的区块加密标准,用于替代原先的DES。金融系统普遍采用AES算法。

考试提示:对称加密算法的典型考题是“以下哪个不属于对称加密算法”——需要准确识别RSA等非对称算法。2025年考试需特别注意混合加密体系的考察趋势。

三、非对称加密算法

3.1 非对称加密的基本概念

非对称加密(又称公开密钥加密)是指加密密钥和解密密钥不同的加密方式。密钥必须成对使用——公钥(Public Key) 公开,私钥(Private Key) 自己保密。

核心特点

  • 优点:加密强度高,密钥分发容易(公钥可公开)

  • 缺点:加密速度慢,不适合加密大量数据

两大应用场景

  • 保密通信:用公钥加密,私钥解密

  • 数字签名:用私钥加密(签名),公钥解密(验证)

3.2 常见非对称加密算法

算法安全性基础特点
RSA大素数分解的困难性最经典的非对称算法,2048位密钥,计算量极大
ECC(椭圆曲线算法)椭圆曲线离散对数问题同安全强度下密钥更短
Elgamal有限域离散对数问题较少使用

RSA算法原理

  1. 选择两个大素数p、q(>100位)

  2. 计算n = p × q,z = (p-1)(q-1)

  3. 选择整数d满足 gcd(d, z) = 1

  4. 选择e满足 e × d ≡ 1 mod z

  5. 加密:C = P^e mod n(公钥=(e, n))

  6. 解密:P = C^d mod n(私钥=(d, n))

RSA的安全性依赖于大素数分解的困难性——将两个大质数相乘很容易,但将其乘积因式分解极其困难。据猜测,从一个密钥和密文中推断出明文的难度等同于分解两个大素数的积。

考试提示:RSA属于非对称加密算法,其加密强度更高但加解密速度慢、运算时间更长。对称加密算法(AES)加密效率是RSA的100倍以上,适合加密大量数据;非对称加密算法适合加密少量核心数据(如对称密钥、摘要值)。

四、国密算法(高频考点)

国密算法是国家密码管理局认定的国产商用密码算法,是我国信息安全自主可控的核心技术。随着信创战略的推进和《密码法》的实施,国密算法在系统架构设计师考试中的重要性持续上升。

4.1 核心国密算法速览

算法类型安全强度对应国际算法功能
SM2非对称(基于椭圆曲线ECC)256位RSA密钥交换、数字签名、公钥加密
SM3哈希算法256位摘要SHA-256完整性校验、数字签名配合
SM4对称加密(分组)128位密钥/分组AES数据加密
SM1对称加密(分组)128位数据加密(硬件实现为主)
SM9标识密码(非对称)基于标识的密码算法

4.2 SM2详解

SM2是国密算法体系的核心与基石,基于椭圆曲线密码(ECC),相当于国际算法中的RSA。256位的SM2密码强度比2048位的RSA密码强度更高。

功能:SM2包括三个子规范——SM2-1用于数字签名、SM2-2用于密钥交换、SM2-3用于公钥加密。

考试要点

  • SM2是非对称密码算法,是国密算法中唯一使用椭圆曲线的算法

  • 国密SSL证书采用SM2公钥算法体系

  • 公钥用于加密或验证签名,私钥用于解密或生成签名

4.3 SM3详解

SM3是密码杂凑算法(哈希算法),输出256位哈希值,对应国际SHA-256。

功能:主要用于数字签名和消息认证码。在SSL握手和数字签名中,SM3与SM2结合使用。

考试要点:SM3用于完整性校验

4.4 SM4详解

SM4是分组对称加密算法,分组长度和密钥长度均为128位,是AES算法的强力对手。

考试要点:SM4用于数据加密。SM4软件实现性能优于AES,硬件加速可进一步提升效率。

4.5 国密算法的考试应用

在信创场景下,系统架构设计应优先考虑国密算法(SM系列)。一个完整的国密安全方案通常采用“SM2+SM3+SM4”的组合

  • SM2:完成身份认证和密钥协商

  • SM3:保证数据完整性

  • SM4:完成大量业务数据的加密

典型真题:国密SSL证书采用( )公钥算法体系,支持SM2、SM3、SM4等国密算法安全协议。正确答案:SM2

五、报文摘要与数字签名

5.1 报文摘要(哈希算法)

报文摘要(又称消息摘要、散列函数)是一种单向散列函数。它将任意长度的数据“压缩”成固定长度的摘要值(散列值),具有以下核心特征:

  • 单向性:不可逆,无法从摘要还原原始数据

  • 固定长度:输出长度固定

  • 抗碰撞性:不同数据产生相同摘要的可能性极低

常见摘要算法

算法输出长度安全性状态
MD5128位较低,已发现碰撞漏洞高安全场景已淘汰
SHA-1160位较低已逐步淘汰
SHA-256256位当前主流
SM3256位高(国密标准)信创场景优先

用途:报文摘要主要用于确保信息完整性,防篡改。MD5可通过生成固定长度的散列值确保消息的完整性,而非用于加密或访问控制。

典型应用场景

  • 软件分发:生成安装包的摘要值,用户下载后通过对比摘要确认文件完整性

  • 密码存储:生成用户密码的散列值(需结合盐值),避免明文存储风险

  • 数据同步:在分布式系统中,通过MD5生成数据块的摘要值验证数据完整性

5.2 数字签名

数字签名是公钥密码技术的重要应用,它同时提供了完整性、认证和不可否认性

签名过程

  1. 发送方对消息计算摘要(使用MD5/SHA/SM3)

  2. 发送方用自己的私钥对摘要进行加密(签名)

  3. 将消息和签名一同发送

验证过程

  1. 接收方对消息计算摘要

  2. 接收方用发送方的公钥解密签名,得到原始摘要

  3. 对比两个摘要——一致则签名有效

关键辨析

  • 数字签名之前要先对消息或报文做摘要

  • 数字签名系统不一定具有数据加密功能(签名不等于加密)

六、混合加密(数字信封)

6.1 为什么需要混合加密?

对称加密效率高但密钥分发困难,非对称加密密钥分发容易但速度慢。在实际系统中,需要结合两者优势

技术难点:数据太大(如2GB),非对称加密太慢,必须用对称加密。

6.2 数字信封的工作原理

数字信封是一种结合对称加密和非对称加密的混合加密技术:

加密过程

  1. 发送方生成一个临时的对称密钥K(会话密钥)

  2. 用对称密钥K加密数据(高效)

  3. 用接收方的公钥加密对称密钥K(安全传递密钥)

  4. 将加密后的数据和加密后的密钥一起发送

解密过程

  1. 接收方用自己的私钥解密“信封”,得到对称密钥K

  2. 用对称密钥K解密数据

数字信封确保只有规定的接收人才能阅读信息的内容——即使数据被截获,没有接收方的私钥也无法解开信封。

6.3 考试要点

历年真题常见设问

  • 对文件数据进行加密时,应采用对称加密的块加密方式还是流加密方式?

  • 描述数字信封机制中的数据加密与解密过程

七、密钥管理技术

7.1 密钥管理的核心问题

密钥管理的核心问题是减少密钥数量 + 自动化分配

如果网络中N个用户都需要支持加密服务,每一对用户都需要一个共享密钥,密钥总数将达到 N(N-1)/2。密钥管理就是解决这一问题的关键。

7.2 对称密钥的分配方式

方式原理适用场景
人工分发物理传递密钥小规模网络
KDC(密钥分配中心)用户与KDC共享主密钥,KDC生成临时会话密钥大规模网络
分层KDC本地KDC管理小范围,全局KDC互联超大规模网络

KDC的工作流程

  1. KDC与每个用户共享一个主密钥

  2. 通过主密钥为每对用户分配会话密钥

  3. 通信结束后会话密钥立即销毁

7.3 公钥的分配方式

方式优点缺点
公开发布简单易被伪造
公用目录表可信机构维护管理员密钥泄露则系统崩溃
公钥管理机构集中管理易成系统瓶颈
公钥证书(CA)最安全需建设PKI体系

7.4 密钥标签与控制矢量

密钥标签:利用DES的8个校验位作为控制标签,前3位分别标识密钥类型(主密钥/会话密钥、加密/解密)。

控制矢量:用若干字段说明密钥在特定环境下是否允许被使用,由密钥中心产生并加入密钥中,长度可变。

八、历年真题解析

8.1 真题1(对称加密算法识别,2025年11月)

题干:常用对称加密算法不包括( )。

A. DES B. RC-5 C. IDEA D. RSA

正确答案:D

解析:对称加密的核心特征是加密与解密使用同一密钥,而非对称加密采用公钥/私钥配对机制。DES、RC-5、IDEA均为经典对称算法,而RSA是典型的非对称算法。考生常见错误是将RSA归入对称算法。

8.2 真题2(更换加密算法的变化类型,2025年11月)

题干:更换系统加密算法属于哪种系统变化类型?

A. 行为变化 B. 风格变化 C. 属性改名 D. 架构变化

正确答案:A

解析:更换系统加密算法(如从AES改为SM4、从SHA-1改为SHA-256)改变了算法的处理行为。但系统模块的组织方式、架构风格、接口和整体结构均未改变。因此属于行为变化。风格变化指架构风格改变(如单体→微服务),属性改名指修改命名或配置。

8.3 真题3(MD5算法类型识别,2018年11月模拟)

题干:MD5是一种( )算法。

A. 共享密钥 B. 公开密钥 C. 报文摘要 D. 访问控制

正确答案:C

解析:MD5是报文摘要算法(散列函数),通过生成固定长度的散列值确保消息的完整性,而非用于加密或访问控制。

8.4 真题4(加密对质量属性的影响)

题干:改变加密算法可能会对开发周期和交付成功率产生非常重要的影响,因此在软件架构评估中,该设计决策是一个( )。

解析:更换加密算法是典型的风险点——它可能影响系统性能(加密耗时增加)、开发周期(算法集成和测试)、以及系统安全性(新算法的安全强度)。在架构评估中,这类决策需要权衡安全性与性能。

备考提醒:考生容易混淆“安全性”与“性能”之间的主次关系。真题中常见陷阱是选择“可用性”或“可靠性”,但题目通常指向的是性能维度。

九、复习建议与备考策略

9.1 知识体系梳理

text

信息加解密技术复习主线:

第一层:加密基础
├── 密码编码学 vs 密码分析学
├── 保密通信模型(加密/解密过程)
└── 柯克霍夫原则(算法公开、密钥保密)

第二层:对称加密
├── 核心特征:加密密钥=解密密钥
├── 典型算法:DES→3DES→AES(演进路径)
├── 优缺点:效率高 vs 密钥分发困难
└── 适用场景:大量数据加密

第三层:非对称加密
├── 核心特征:公钥/私钥配对
├── 典型算法:RSA(大素数分解)、ECC
├── 优缺点:强度高 vs 速度慢
└── 适用场景:密钥分发、数字签名

第四层:国密算法(高频考点)
├── SM2:非对称(ECC),用于签名/密钥交换
├── SM3:哈希(256位),用于完整性校验
├── SM4:对称加密(128位),用于数据加密
└── 组合应用:SM2+SM3+SM4

第五层:报文摘要与数字签名
├── 摘要算法:MD5→SHA-1→SHA-256/SM3
├── 摘要用途:完整性校验
├── 数字签名:私钥签名、公钥验证
└── 签名≠加密

第六层:混合加密(数字信封)
├── 对称加密数据 + 非对称加密密钥
└── 兼顾效率与安全性

第七层:密钥管理
├── 对称密钥分配:人工/KDC/分层KDC
├── 公钥分配:公开发布/目录/CA证书
└── 密钥标签与控制矢量

9.2 记忆口诀

对称与非对称对比口诀

text

对称加密同一钥,效率高来分发难
非对称加密用两钥,强度高来速度慢
DES已老AES新,RSA靠大数分解难

国密算法口诀

text

SM2非对称(像RSA),SM3哈希(像SHA)
SM4对称(像AES),三者组合保安全
SM2签名和交换,SM3校验防篡改
SM4加密大数据,国密方案全覆盖

数字签名口诀

text

先摘要后签名,私钥签名公钥验
签名不是加密用,完整性认证不可否认全

9.3 高频考点总结

考点考查形式难度频率
对称/非对称加密算法识别选择题⭐⭐⭐⭐⭐
国密算法(SM2/SM3/SM4)分类与功能选择题⭐⭐⭐⭐
报文摘要与数字签名的区别选择题⭐⭐⭐⭐
数字信封(混合加密)原理选择题/案例分析⭐⭐⭐
RSA安全性基础(大数分解)选择题⭐⭐⭐
加密对质量属性的影响选择题/案例分析⭐⭐⭐

9.4 易错点总结

易错点正确理解
将RSA归入对称加密算法RSA是非对称加密算法
混淆MD5与加密算法MD5是报文摘要算法,不是加密算法
混淆SM2与SM4SM2是非对称(签名/交换),SM4是对称(数据加密)
认为数字签名=数据加密数字签名不一定具有数据加密功能
混淆更换算法与架构变化更换加密算法属于行为变化,不是架构变化
认为加密不影响性能加密算法会影响系统性能,是架构评估中的敏感点

9.5 备考要点

  1. 准确记忆算法分类:能够快速判断一个算法属于对称加密、非对称加密还是哈希算法

  2. 掌握国密算法三件套:SM2(非对称)、SM3(哈希)、SM4(对称)的功能和对应关系

  3. 理解数字信封原理:混合加密的典型应用,考试中常以案例分析形式出现

  4. 区分签名与加密:签名用私钥(证明身份),加密用公钥(保护数据)

  5. 关注信创趋势:国密算法在信创项目中的优先地位,以及《密码法》的相关要求

结语

信息加解密技术是信息系统安全的基石。从对称加密的高效到非对称加密的安全,从国际算法的广泛应用到国密算法的自主可控,从单纯的加密到数字信封的混合方案,每一项技术都有其适用的场景和边界。

作为系统架构设计师,掌握加解密技术的核心概念和算法分类,不仅是为了应对考试中的选择题,更是为了在实际架构设计中做出正确的安全决策——选择什么算法、如何管理密钥、如何平衡安全性与性能、如何满足信创合规要求。在信创战略和《密码法》深入实施的背景下,国密算法(SM2/SM3/SM4)的应用正在成为架构设计的“必选项”而非“可选项”。

在下一节中,我们将进入密钥管理技术和访问控制技术的学习。希望本文的梳理能帮助你在备考中建立完整的加解密技术知识体系!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值