一、密码学基础知识
1.密码学的目的
保护信息的机密性、完整性、可用性、实体认证性不被破坏。
2.什么是密码
密码是指采用特定变换的方法对信息等进行加密保护、安全认证的技术、产品和服务。
3.密码算法的分类
(1)按照功能分类
①加密算法:用于解决机密性的方案
②杂凑函数:用于解决完整性的方案
③数字签名:用于认证和不可否认性
(2)按照密钥的使用方式不同分类
①对称密钥密码算法:加密密钥与解密密钥相同,如:分组密码、流密码
②非对称密钥密码算法:加密密钥与解密密钥不同,如:公钥密码、数字签名
4.现代密码学密码协议的分类
(1)密钥分发
(2)身份鉴别
(3)安全多方计算
(4)电子货币
(5)比特承诺
(6)不经意传输
(7)零知识证明
5.安全的网络通信必须考虑以下 4 个方面:
(1)加密算法。
(2)用于加密算法的秘密信息。
(3)秘密信息的分布和共享。
(4)使用加密算法和秘密信息以获得安全服务所需的协议。
6.密码系统的基本要素
(1)明文:发送方即将要发送的消息。
(2)密文:明文经过密码变换之后得到的消息。
(3)加密:由明文变换为密文的过程。
(4)解密:由密文恢复出明文的过程。
(5)加密算法:对明文进行加密是采用的一组规则。
(6)解密算法:对密文进行解密时才有的一组规则。
(7)密钥:一种特定的值,能使密码算法按照制定的方式进行,并产生相应的密文。密钥是密码体质安全保密的关建。
(8)加密员(密码员):对明文进行加密操作的人员。
(9)接收者:传送消息的预订对象。
(10)对称密码体制:使用的加密密钥和解密密钥相同或实质上等同。
(11)非对称密码体制:使用的加密密钥和解密密钥不相同,或者难以从一个得出另一个。
(12)密码分析:恶意第三方通过分析可能从截获的密文推断出原来的明文或密钥。
(13)密码分析学:研究如何从密文推演出铭文呢、密钥或解密算法的学问。
(14)密码分析员:从事密码分析这一工作的人。
(15)接收者:在信息传输和处理系统中,通过一些特殊手段来窃取机密信息的人员。
(16)被动攻击:对一个保密通信系统采取截获密文进行分析的这类攻击。
(17)主动攻击:非法入侵者、攻击者或黑客主动向系统干扰,采用删除、增加、重放、伪造等篡改手段向系统注入假消息,达到利己害人的目的。
保密通信系统的工作原理如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/25553e21085c3faa048ffbfb1f99a99e.png)
明文消息空间为M,
密文消息空间表示为C,
密钥空间K1和K2:所有密钥可能性的集合,在单密钥体制下K1=K2=K;
加密变换Ek1:M→C,其中k1∈K1,由加密器完成;
解密变换Dk2:C→M,其中k2∈K2,由解密器实现。
7.保密系统应满足下述要求
(1)系统即使达不到理论不可破也需要达到实际不可破。
(2)系统的保密性不应该依赖于加密体制或者加密算法的保密,而应该依赖于密钥。
(3)加密和解密算法适用于密钥空间内的所有元素。
(4)系统便于实现和使用。
8.密码体制的分类
(1)对称密码体制
①加密秘钥和解密密钥相同。
②具有很高的保密性,很强的安全性,可以通过低费用的芯片来实现。
③不仅可以用于加密,一定程度上也可以用于消息的认证。
(2)公钥密码体制
①可以实现多个用户加密的消息只能由一个用户解读。
②由一个用户加密的消息而使多个用户解读,可以用于实现对用户的认证。
对称密码体制的加密方法有流密码和分组密码两种。流密码就是对明文按字符逐位进行加密,分组密码则是逐组进行加密。
9.密码攻击概述
攻击类型 | 攻击者掌握的内容 |
---|---|
唯密文攻击 | 加密算法、截获的部分密文 |
已知密文攻击 | 加密算法、截获的部分密文、一个或多个明文密文对 |
选择明文攻击 | 加密算法、截获的部分密文、自己选择的明文消息以及由密钥产生的相应密文 |
选择密文攻击 | 加密算法、截获的部分密文、自己选择的密文消息以及相应被解密的明文 |
10.注意
一个加密算法仅当密钥至少跟明文一样长的时候,才能打到无条件安全,也就是说,目前只有One-Time Pad能打到无条件安全。比“无条件安全”弱的一个概念是计算上安全,加密算法一般只要满足以下两条准则中的一个,就称其为计算上安全:①破译密文的代价超过被加密消息的价值;②破译密文所需时间超过消息的有效期。