范围划得虽大,但是主题不多,和往常一样记录一下重点。
考试范围
1、大数据安全概念及目标
2、传统访问控制技术和基于密码的访问控制技术。
3、角色挖掘的算法
4、对称密码,非对称密码,hash算法的原理及作用
5、密文索引的基本思想,及设计
6、身份认证技术及实现
已知:只会有七道题,而且不会考证明,个人认为数学相关的知识会减少或者几乎没有,因为“数论实在是太难了大家学不会”
2,3,6:身份认证和角色挖掘,访问控制技术都是同一章节中的,足见重视程度。
5:密文索引的技术明说“至少掌握一个”,大概是这一部分的确难度很高。我认为最好掌握理解的是基于关键词的文档索引技术,通过布隆过滤器来匹配。因此这部分可以说订好了复习范围了。
4:同样重要的部分,考虑到一共七道题个人认为这里有可能出俩。对于非对称加密,RSA差不多是必考的。对于对称加密,可能是概念性的或者AES,SM4.HASH部分有可能和对称或非对称合起来考。
1:概念部分不好复习,顺一遍即可。
提纲不会按照上述顺序来,看到哪写到哪,同等重要。
对称密码
流密码和分组密码。分组密码是网络传输加密,数据存储加密中最重要的加密方法之一(网络上以分组为单位传输)。
用于构造消息认证码(MAC),伪随机数生成器等。
分组密码算法
思路很简单,就是把分组后长度相同的原文分组和同样分组后的密钥分组进行一些操作(算法),得到密文。
设计原则:分组长度n要够大,防止明文穷举攻击。密钥长度够大,防止密钥穷举攻击;需要具有非线性运算部件(s盒为代表),充分混淆和扩散,形成雪崩效应(类似hash但是hash回不去)
性能要求:速度快,存储量大,多轮迭代形式。
对于多轮迭代,常常用子密钥生成算法把固定的密钥生成子密钥(轮密钥),用在每一轮中分别加密。
大多数采用了Feistel网络和S-盒结构(非线性结构)
S-盒:查表替代。
置换:按位置换。
Feistel密码结构
一种典型的加密结构,把原文分成两部分(长度相同则是平衡的,否则是不平衡的),对于其中一半A通过加密算法和子密钥K进行加密得到A‘,将加密结果与另一部分B亦或后放在密文对应A的位置;密文的B位置则由原文的A填充(不加密,但是下一轮会得到加密),如此在充分混淆的情况下保证所有字节都被加密了。
DES/3-DES
最早的分组密码算法之一。
明文密文均为64比特长度(分组)。加密解密使用同一算法。
密钥长度56比特,每个字节第八位是奇偶校验位。
流程:共计十六轮运算。
明文先进行初始置换(S-盒)
密钥先进行置换选择1,从64位变成56位,然后分为两部分,分别进行循环左移,循环左移位数是规定的,不同位不一样。每次左移后,进行置换选择2,从而得出当前轮的子密钥(显然是可逆的)48位,直到得出所有子密钥。
(E扩展运算:将32比特扩展为48比特,方法是将每一行前面的一位和后面的一位放在新矩阵中同一行的前面和后面,使每一行长度+2,总共8行,如此增加了16比特。)
(S-盒可以做到六字节进四字节出,原理是用其中两比特(第一和第六位)作为行号,另外四位作为列号,找到相应位置的数字并输出。)
每一轮运算中:遵循Feistel结构,将64位原文分为前32位L和后32位R,对于R,先用E扩展为48位,再和48位子密钥亦或,然后用压缩运算S将48位压缩回32位,最后再进行一次P置换(前面的合起来叫做F函数)。将R结果R’和L亦或放在R的位置,而R放在L的位置,第一轮结束。
题型:模拟一轮加密(全部建议找个计算金呢)
F函数记住如下顺序:扩展,加密钥,压缩,置换。
弱点:密钥太短,已经可以暴力攻破。
一种改进 3-DES,采用两个密钥,进行