一、题目类型 2017 年考题
概念题:计算安全、网络安全模型、ECB、一次一密、穷举攻击、雪崩效应、IPSec/VPN、
Feistel 加密结构特征、MAC 函数、DH 协议。
大题。
1.公钥体系、对称加密体系、MAC、HASH、数字签名在认证上的作用、特点。
2.凯撒密码与现代密码区别,如何改进成为现代密码。
3.防止重放攻击方法。
4.DES 中的 5 个工作模式、工作原理、优缺点
5.3DES 优于 2DES 分析原因
6.对称加密、公钥体系加密密钥管理、安全性、可靠性。
7.RSA 加密,过程、原理、安全性.
8.RSA 加密的可行性分析。
9.Kerboros 协议过程、安全行可行性分析。
二、名词解释
第一章 概论
1.计算机安全:对于一个自动化的信息系统,采取保护措施保证系统资源的完整性、可用性。
2.安全需求三元组——CIA
保密性 C:对信息的访问和公开进行授权限制,包括保护个人隐私和秘密消息。
完整性 I:防止信息被不恰当的修改或破坏,包括信息的不可否认性和真实性。
可用性 A:保证对信息的及时和可靠的访问和使用。
3.OSI 安全框架
安全攻击 安全机制 安全服务
4.安全攻击:任何危及信息系统安全的行为
被动攻击:试图了解和利用系统信息但不破坏系统资源。(容易预防)
包括信息内容的泄漏和流量分析两种。
主动攻击:试图改变系统资源或影响系统的运作。(容易检测)
包括伪装、重播、消息修改、拒绝服务
5.安全机制:用来检测、阻止攻击,或从攻击状态恢复到安全状态的过程
特定安全机制:加密、数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、
公证;*8
普通安全机制:可信功能、安全标签、事件检测、安全审计跟踪、安全恢复。*5
6.安全服务:加强数据处理系统和信息传输的安全性的一种处理过程或通信服务。
五类:认证、访问控制、数据保密性、数据完整性、不可否认性
7.网络安全模型:
第二章 传统加密技术
1.对称密码:一种加解密使用相同密钥的密码体制。解密算法是加密算法的逆过程。使用代
替和置换技术。其安全性依赖于所持有密钥的安全性。
五要素:明文、加密算法、密钥、密文、解密算法
2.攻击密码系统的两种通用方法:
①基于密码算法性质的密码分析
②基于穷举密钥的穷举攻击
3.穷举攻击:攻击者对一条密文尝试所有可能的密钥,直到把它转化为可读的有意义的明文。
4.无条件安全:一个密码体制无论有多少可以使用的密文,都不足以唯一的确定密文所对应
的明文,则称该加密体制是无条件安全的。
5.计算安全:满足以下两个条件
①破译密码的代价超出密文信息的价值;
②破译密码的时间超出密文信息的有效生命周期。
6.代替技术:将明文字母替换成其他字母、数字或符号的方法。
7.置换技术:有限元素的集合 S 的置换是 S 中所有元素的有序排列,且每个元素只出现一次。
8.Caesar 密码:是一种代替密码,就是将字母表中的每个字母,用它之后的第 k 个字母来代
替。
加密:
解密:
3 个特征:①加解密算法已知;②只有 25 个密钥;③明文所用的语言是已知的,且其意义
易于识别。
9.单表代替密码:每条消息用一个字母表(给出明文字母到密文字母之间的映射)来加密。
10.Playfair 密码:一种多字母代替密码体制。其密钥是基于一个密钥词构成的 5*5 字母矩阵。
一次加密两个字母,加密规则如下:
①两个相同连续字母需填充;②同行(右)/同列(左);③一般字母对
11.多表代替密码:明文消息中采用不同的单表代替。
12.一次一密:使用与消息一样长且无重复的随机密钥来加密消息,密钥只对一个消息进行
加密,之后丢弃不用。
13.置换加密:对明文进行置换的加密方法,密钥是其置换方式。(不同于置换技术)
第三章 分组密码和数据加密标准
1.分组密码:一种加/解密算法,其将输入的明文划分为固定长度的块(即分组),对每个
分组做相同的加/解密处理,输出一个等长的密文分组,Feistel 结构是其主要使用的结构。
典型的分组大小为 64 位和 128 位。
分组密码算法实际上就是在密钥控制下,来实现对明文分组的加密变换。
为了保证密码算法的安全强度,分组密码算法必须满足以下要求:分组长度足够大、密钥量
足够大、密码变换足够复杂。
2.流密码:一种加/解密算法,每次加密数据流的一个位或一个字节,通常使用密钥作为种
子产生伪随机序列,然后将明文和该序列进行异或产生密文,密文与该序列异或即解密。适
合远程终端输入等应用。
3.Feistel 加密结构特征:加密算法的输入是最长为 2w 位的明文分组和密钥 k。明文分组被
分为等长的两部分:0和0。这两半数据经过 n 轮迭代后组合成密文分组。第 i 轮迭代的输
入−1和−1来自上轮迭代的输出;而输入的子密钥是由整个密钥 K 推导出的。
每轮迭代都有相同的结构:代替作用在数据的左半部分,这种代替是通过轮函数 F 作用于数
据右半部分后,与左半部分进行异或来完成的。代替之后,交换数据的左右两半完成置换。
4.Feistel 结构的具体实现所使用的参数和特征:
参数:分组长度、密钥长度、迭代轮数、子密钥产生算法、轮函数 F;*5
特征:快速软件加/解密;简化分析难度
5.乘积密码:一次使用两个或两个以上的基本密码,所得结果的密码强度将强于所有单个密
码的强度。
6.两种对付传统分析的方法:扩散和混淆
扩散:尽可能使明文和密文之间的统计关系变的复杂,以挫败推导出密钥的企图;
混淆:尽可能使密文和密钥之间的统计关系变的复杂,以阻止攻击者发现密钥。
7.数据加密标准 DES:是使用最广泛的分组加密算法,速度较快,适用于加密大量数据的场
合。
DES 算法的入口参数有三个:密钥、明文分组、模式。
工作过程:
首先 64 位明文分组经过初始置换(IP)而被重新排列;
然后 进行 16 轮相同函数的作用,每轮都有置换和代替,最后一轮迭代的输出有 64 位,它
是输入明文和密钥的函数。其左半部分和右半部分互换产生预输出;
最后 预输出被逆初始置换后产生 64 位密文。
8.DES 算法中 S 盒的作用:
S 盒,即密钥置换盒,用在分组密码算法中,是非线性结构,其密码强度直接决定了密码算
法的好坏。功能就是一种简单的代替操作。在 DES 中一个 m*n 的 S 盒,需要 n 位输入,m
位输出,用于模糊密钥和密文之间的关系。
S 盒构造方法:随机选择、人为构造、数学方法构造
9.雪崩效应:明文或密钥的某一位发生变化会导致密文中的很多位发生变化。
10.差分分析和线性分析的区别
差 通过分析明文对的差值对密文对的差值的影响来恢复某些密钥比特。
线 对迭代密码的一种已知明文攻击,它利用的是密码算法中的“不平衡的线性逼近”。
第四章 数论和有限域的基本概念
1.模运算中的:
加法逆元:整数 x 的加法逆元 y 是使(x+y) mod n = 0 成立的值;
乘法逆元:整数 x 的乘法逆元 y 是使(x*y) mod n = 1 mod n 成立的值。
2.扩展的 Euclid 算法
算法描述:给定整数 a,b 该法计算出 gcd(a,b)以及 x,y。满足:ax+by=d=gcd(a,b),对于给定的
整数 a,b,ax+by 的最小整数等于 gcd(a,b)。
算法过程:
最好可以记住两个公式:
3.在 GF(p)中求乘法逆元:
如果 gcd(a,b)=1,那么 b 有模 a 的乘法逆元。使用扩展的 Euclid 算法来计算,得出的 y 即为
所求。
第五章 高级加密标准
1.高级加密标准 AES:
AES 是一种分组加密算法。明文分组的长度为 128 位,密钥长度为 128 位、192 位、265 位。
输入:明文分组 密钥
加/解密算法的输入是一个 128 的明文分组,这个分组被组织成 4*4 的字节方阵,这个
分组被复制到 state 数组,在加/解密的各个阶段被修改。
密钥也被描述为字节的方阵,128 位的密钥最终被扩展为 44 字的序列。
工作过程:
密码由 N 轮组成。在第一轮前有一初始变换(轮密钥加);前 N-1 轮都由四种不同的变换
组成:字节代替、行位移、列混淆、轮密钥加;最后一轮仅包含三个变换(没有列混淆)。
每轮变换输入一个或多个 4*4 的矩阵,并输出一个 4*4 的矩阵,最后一轮输出的为密文。
2.AES 的变换函数:
字节代替:用一个 S 盒完成分组中字节到字节的代替
行位移:一个简单的置换
列混淆:利用域 GF(28)上的算数特性的一个代替
轮密钥加:当前分组和扩展密钥的一部分进行按位 XOR
第六章 分组密码的工作模式
1. 多重加密:是将一个加密算法多次使用的技术。在第一次使用中,明文通过加密算法转
换成密文,然后将该密文作为输入重新执行该加密算法,该过程可以重复任意多次。
2.2DES:是在两个阶段使用 DES 加密的一种形式最简单的多重加密算法。这种算法的密钥长
度为 56*2=112 位,密码强度增强了。
3.3DES:3DES 是在三个阶段用 DES 算法的一种多重加密算法,共用到两组或者三组密钥。
4.中间相遇攻击:
假设:
给定明文对(P,C),攻击如下:首先,将 P 按所有可能的密钥 K1 加密,得到256个结果,按 X
的值排序放在一个表里。然后,将 C 按所有可能的密钥 K2 解密,每解密一次就将结果与表
则有:
中的值比较,如果有相等的,就用刚才测试的两个密钥对一个新的明密文对进行验证。如果
有两个密钥产生了正确的密文,就认定这两个密钥是正确的密钥。
5.IV:
初始向量,是和密文具有相同长度的数据分组。IV 必须为收发双方共享,但第三方不能预
测,可以先用 ECB 加密 IV 然后再发送。
第七章 伪随机数的产生和流密码
1.RC4:是一个可变密钥长度,面向字节操作的流密码,以随机置换作为基础。用密钥生成
随机数与明文做异或,当密钥长度相当时,流密码可以与分组密码一样安全。
2.设计流密码要考虑的因素:
①加密序列的周期要长
②密钥流应尽可能接近真正随机数流的特征
③伪随机数发生器的输出受输入密钥的调节
第八章 数论入门
1.费马定理:若 p 是素数,a 是正整数且不能被 p 整除,则
。【互素】
另一种表示:若 p 是素数且 a 是任意正整数,则
2.欧拉函数:∅(n)表示小于 n 且与 n 互素的正整数的个数。
定义∅1 =1 对素数 p,有:∅p =p-1
。【不要求互素】
3.欧拉定理:对任意互素的 a 和 n,有
。【互素】
另一种表示:
。【不要求互素】
4.中国剩余定理 CRT:说明某一范围内的整数可通过它的一组剩余类数来重构,这组剩余类
数是对该整数用一组两两互素的整数取模得到的。
5.本原根:如果一个数的阶为∅(n),则称之为 n 的本原根。
6.离散对数:
第九章 公钥密码学和 RSA
1.非对称加密/公钥密码:这种密码体制使用两个密钥来进行加密和解密,这个两密钥分别
是公钥和私钥。公钥和私钥是一对,如果使用公钥对数据进行加密,只有用对应的私钥才能
解密,如果用私钥进行加密,只有用相应的公钥才能解密。因为加/解密使用两个不同的密
钥,所以这种算法叫做非对称算法。
公钥密码体制的 6 个组成部分:
明文、加密算法、公钥、密钥、解密算法、密文 *6
2.公钥密码体制的应用:
①加密/解密:发送方用接收方的公钥对消息进行加密。
②数字签名:发送方用其私钥对消息“签名”,签名可通过对整条消息加密或对消息的一个
小的数据块加密来产生,其中该小数据块是整体整条消息的函数。
③密钥交换:通信双方交换会话密钥。
3.为得到安全算法,公钥密码体制应满足那些要求
①公/密钥的产生在计算上是容易的 (密钥生成)
②已知公钥和待加密信息,发送方产生相应密文在计算上是容易的(加密)
③接收方使用其私钥对接收的密文解密以恢复明文在计算是容易的(解密)
④已知公钥,攻击者要确定私钥在计算上是不可行的(公钥->私钥)
⑤已知公钥和密文,攻击者要恢复明文在计算上是不可行的
4.单向函数:每个函数值都存在唯一的逆,并且计算函数值是容易的,但求逆却是不可行的。
5.单向陷门函数:一个函数,若计算函数值很容易,并且在缺少一些附加信息时计算函数的
逆不可行,但是已知这些附加信息时,可在多项式实践计算出函数的逆,称这样的函数为单
向陷门函数。
6.RSA 可能遭受的攻击
①穷举攻击
②数学攻击
③计时攻击
④选择密文攻击
第十章 密钥管理和其他公钥密码体制
1.Diffie-Hellman 密钥交换(DH 协议):是一种安全协议,它可以让双方在没有对方任何预先信
息的条件下通过一个不安全信道建立起一个密钥。这个密钥可以在后续的通讯中作为对称密
钥来加密内容。这个密钥交换协议只能用于密钥的交换,而不能进行消息的加密和解密。
2.中间人攻击 MITM:是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受
入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就被称
为“中间人”。
3.ElGamal 密码体系:是一种较为常见的加密算法,它是基于 1984 年提出的公钥密码体制和
椭圆曲线加密体系。既能用于数据加密也能用于数字签名,其安全性依赖于计算有限域上离
散对数这一难题。在加密过程中,生成的密文长度是明文的两倍,且每次加密后都会在密文
中生成一个随机数 K,在密码中主要应用离散对数问题的几个性质:求解离散对数(可能)
是困难的,而其逆运算指数运算可以应用平方-乘的方法有效地计算。也就是说,在适当的
群 G 中,指数函数是单向函数。
4.椭圆曲线算法???看不懂……
第十一章密码学 Hash 函数
1.密码学 Hash 函数的作用:将可变长度的消息映射为固定长度的 Hash 值或消息摘要。要求
一下两种情况在计算上不可行:
①(单向性)对预先指定的 Hash 值,找到对应的数据块
②(抗碰撞性)找到两个不同的数据块对应相同的 Hash 值
2.消息认证:是用来验证消息完整性的一种机制,能发现对消息的篡改和假冒。使用对称算
法可以产生消息鉴别码 MAC,使用公钥算法可以对消息进行签名。