学习必备 精品知识点
1 密码学分类 2 攻击分类 3 安全业务
4 算法输入输出位数 5 密钥分配管理 6 密钥分配 7 公钥分配 8 三重DES 9 杂凑的要求 10 欧几里得 11 本原根 12勒让德符号
13数字签名的执行方式 14强单向杂凑 15模运算性质 16 同余式 17 DES 18 AES 19 RSA 20 MD5
21费尔马定理 22 欧拉定理 23 中国剩余定理 24 四种工作模式
1 密码学分类
单钥体制 双钥体制
2 攻击分类
唯密文攻击 已知明文攻击 选择明文攻击 选择密文攻击
3 安全业务
认证业务 保密业务 完整性业务 不可否认业务 访问控制
4 算法输入输出位数
DES 64比特明文 56比特密钥 输出64比特密文 AES 128 192 256 比特 RSA 输入 664比特
MD5 输入 512比特分组 128比特输出
5 密钥分配管理
两个用户A和B获得共享密钥的方法包括: ① 密钥由A选取并通过物理手段发送给B。
② 密钥由第三方选取并通过物理手段发送给A和B。
学习必备 精品知识点
③ 如果A、B事先已有一密钥,则其中一方选取新密钥后,用已有的密钥加密新密钥并发送给另一方。
④ 如果A和B与第三方C分别有一保密信道,则C为A、B选取密钥后,分别在两个保密信道上发送给A、B
6 密钥分配
① A向KDC发出会话密钥请求 ② KDC为A的请求发出应答。
② A存储会话密钥,并向B转发EKB[KS‖IDA]。
④ B用会话密钥KS加密另一个一次性随机数N2,并将加密结果发送给A。
⑤ A以f(N2)作为对B的应答,其中f是对N2进行某种变换(例如加1)的函数,并将应答用会话密钥加密后发送给B。
7 公钥分配
① 用户A向公钥管理机构发送一个带时戳的消息,消息中有获取用户B的当前公钥的请求。 ② 管理机构对A的请求作出应答,应答由一个消息表示,该消息由管理机构用自己的秘密钥SKAU加密,因此A能用管理机构的公开钥解密,并使A相信这个消息的确是来源于管理机构。
③ A用B的公开钥对一个消息加密后发往B,这个消息有两个数据项: 一是A的身份IDA,二是一个一次性随机数N1,用于惟一地标识这次业务。
④ B以相同方式从管理机构获取A的公开钥(与步骤①、②类似)。这时,A和B都已安全地得到了对方的公钥,所以可进行保密通信。然而,他们也许还希望有以下两步,以认证对方。
⑤ B用PKA对一个消息加密后发往A,该消息的数据项有A的一次性随机数N1和B产生的一个一次性随机数N2。因为只有B能解密③的消息,所以A收到的消息中的N1可使其相信通信的另一方的确是B。
⑥ A用B的公开钥对N2加密后返回给B,可使B相信通信的另一方的确是A。
学习必备 精品知识点
8 三重DES
三个密钥的三重DES密钥长度为168比特,加密方式为 令K3=K2或K1=K2,则变为一重DES。
9 杂凑的要求
① 函数的输入可以是任意长。 ② 函数的输出是固定长。
③ 已知x,求H(x)较为容易,可用硬件或软件实现。
④ 已知h,求使得H(x)=h的x在计算上是不可行的,即满足单向性,称H(x)为单向杂凑函数。
⑤ 已知x,找出y(y≠x)使得H(y)=H(x)在计算上是不可行的。称满足这一性质的杂凑函数为弱单向杂凑函数。
⑥ 找出任意两个不同的输入x、y,使得H(y)=H(x)在计算上是不可行的。称满足这一性质的杂凑函数为强单向杂凑函数。
10 欧几里得 1. 求最大公因子
Euclid算法是基于下面一个基本结论:对任意非负整数a和正整数b,有gcd(a, b)=gcd(b, a mod b)。
2. 求乘法逆元
如果gcd(a, b)=1 ,则b在mod a下有乘法逆元(不妨设b
推广的Euclid算法先求出gcd(a, b),当gcd(a, b)=1时,则返回b的逆元。
11 本原根 本原根的定义:
素数p的原根定义:如果a是素数p的原根,则数a mod p, a^2 mod p, … , a^(p-1) mod p 是不同的并且包含1到p-1的整数的某种排列。
学习必备 精品知识点
特别地,如果a是素数p的本原根,则a, a^2, …, a^(p-1)在 mod p下都不相同。
本原根的性质:
若A为模n的本原根,则A,A的平方,A的3次方,……,A的φ(n)次方模n的余数互不相同,而且构成一个模n的简化剩余系。
本原根的应用:
应用本原根可以证明:若x的[φ(n)/2]次方模n余1,则x为模n的二次剩余;若x的[φ(n)/2]次方模n余-1,则x为模n的非二次剩余。
12勒让德符号
13数字签名的执行方式 1. 直接方式
指数字签字的执行过程只有通信双方参与,并假定双方有共享的秘密钥或接收一方知道发方的公开钥。
直接方式的数字签字有一公共弱点,即方案的有效性取决于发方秘密钥的安全性。
如果发方想对已发出的消息予以否认,就可声称自己的秘密钥已丢失或被窃,因此自己的签字是他人伪造的。可采取某些行政手段,虽然不能完全避免但可在某种程度上减弱这种威胁。例如,要求每一被签字的消息都包含有一个时戳(日期和时间)并要求密钥丢失后立即向管理机构报告。
这种方式的数字签字还存在发方的秘密钥真的被偷的危险,例如敌手在时刻T偷得发方的秘密钥,然后可伪造一消息,用偷得的秘密钥为其签字并加上T以前的时刻作为时戳。
2. 具有仲裁方式的数字签字
上述直接方式的数字签字所具有的缺陷都可通过使用仲裁者得以解决。和直接方式的数字签字一样,具有仲裁方式的数字签字也有很多实现方案,这些方案都按以下方式运行:
发方X对发往收方Y的消息签字后,将消息及其签字先发给仲裁者A,A对消息及其签字验证完后,再连同一个表示已通过验证的指令一起发往收方Y。此时由于A的存在,X无法对自己发出的消息予以否认。在这种方式中,仲裁者起着重要的作用并应取得所有用户的信任。
14强单向杂凑
15模运算性质
① [(a mod n)+(b mod n)] mod n = (a+b) mod n。 ② [(a mod n)-(b mod n)] mod n = (a-b) mod n。 ③ [(a mod n)×(b mod n)] mod n = (a×b) mod n。
16 同余式
如果(a mod n)=(b mod n),则称两整数a和b模n同余,记为a≡b mod n。称与a模n同余的数的全体为a的同余类,记为[a],称a为这个同余类的表示元素。 注意: 如果a≡0(mod n),则n|a。
学习必备 精品知识点
同余有以下性质:
① 若n|(a-b),则a≡b mod n。
② (a mod n)≡(b mod n),则a≡b mod n。 ③ a≡b mod n, 则b≡a mod n。
③ a≡b mod n, b≡c mod n, 则a≡c mod n
17 DES
1. 初始置换 2 轮结构
3. 密钥的产生
4. 解密和Feistel密码一样,DES的解密和加密使用同一算法,但子密钥使用的顺序相反。
18 AES
1. 状态、种子密钥和轮数
类似于明文分组和密文分组,算法的中间结果也须分组,称算法中间结果的分组为状态,所有的操作都在状态上进行。状态可以用以字节为元素的矩阵阵列表示,该阵列有4行,列数记为Nb,Nb等于分组长度除以32。
种子密钥类似地用一个以字节为元素的矩阵阵列表示,该阵列有4行,列数记为Nk,Nk等于分组长度除以32。 2. 轮函数
Rijndael的轮函数由4个不同的计算部件组成,分别是:
? 字节代换(ByteSub) ? 行移位(ShiftRow) ? 列混合(MixColumn) ? 密钥加(AddRoundKey) 3. 密钥编排 密钥编排指从种子密钥得到轮密钥的过程,它由密钥扩展和轮密钥选取两部分组成。其基本原则如下: