1 绪论 | 第1-10页 |
1.1 分组密码的研究背景和意义绪论 | 第7-8页 |
1.2 分组密码的研究现状 | 第8-9页 |
1.3 章节安排 | 第9-10页 |
2 数学预备知识 | 第10-13页 |
2.1 有限域 | 第10-11页 |
2.2 有限域GF(p)上x的多项式代数 | 第11-13页 |
3 数据加密标准 | 第13-21页 |
3.1 初始置换IP | 第15页 |
3.2 逆初始置换IP~(-1) | 第15-17页 |
3.3 乘积变换 | 第17-19页 |
3.3.1 选择扩展运算E | 第17-18页 |
3.3.2 密钥加密运算 | 第18页 |
3.3.3 选择压缩运算S | 第18页 |
3.3.4 置换运算P | 第18-19页 |
3.4 子密钥产生器 | 第19-21页 |
4 差分分析和线性分析 | 第21-33页 |
4.1 差分分析 | 第21-25页 |
4.1.1 特征 | 第21-23页 |
4.1.2 S盒的非线性性 | 第23-25页 |
4.2 线性分析 | 第25-33页 |
4.2.1 符号介绍 | 第25-26页 |
4.2.2 线性分析的基本原理 | 第26-27页 |
4.2.3 S盒的线性逼近 | 第27-29页 |
4.2.4 DES的线性逼近 | 第29-33页 |
4.2.4.1 三轮DES的线性逼近 | 第29-30页 |
4.2.4.2 五轮DES的线性逼近 | 第30-33页 |
5 AES及五种候选算法比较 | 第33-43页 |
5.1 AES的评判准则 | 第33-34页 |
5.2 五种候选算法的介绍 | 第34-41页 |
5.2.1 MARS | 第34-37页 |
5.2.2 RC6 | 第37-38页 |
5.2.3 Serpent | 第38-39页 |
5.2.4 Twofish | 第39-40页 |
5.2.5 Rijndael | 第40-41页 |
5.3 五种候选算法的性能比较 | 第41-43页 |
5.3.1 软件性能 | 第41-42页 |
5.3.2 内存要求 | 第42-43页 |
6 Rijndael算法 | 第43-54页 |
6.1 数学预备知识 | 第43-46页 |
6.1.1 有限域GF(2~8) | 第43-45页 |
6.1.2 系数在有限域GF(2~8)中的多项式 | 第45-46页 |
6.2 Rijndael算法的具体设计 | 第46-51页 |
6.2.1 状态、种子密钥和轮数 | 第46-47页 |
6.2.2 轮变换 | 第47-49页 |
6.2.2.1 The ByteSub transformation | 第48页 |
6.2.2.2 The ShiftRow transformation | 第48-49页 |
6.2.2.3 The MixColum transformation | 第49页 |
6.2.2.4 轮密钥加 | 第49页 |
6.2.3 密钥扩展方案 | 第49-51页 |
6.2.3.1 密钥扩展 | 第50-51页 |
6.2.3.2 轮密钥的选择 | 第51页 |
6.3 加密算法 | 第51-52页 |
6.4 解密算法 | 第52-54页 |
7 对Rijndael算法中求逆的研究 | 第54-66页 |
7.1 字节替换运算中的多项式求逆 | 第54-62页 |
7.2 列混淆运算中的多项式求逆 | 第62-66页 |
8 Rijndael算法密钥的研究 | 第66-76页 |
8.1 背景及原因 | 第66页 |
8.2 密钥生成算法 | 第66-68页 |
8.3 算法的优劣 | 第68-69页 |
8.4 C语言执行及其结果 | 第69-76页 |
结束语 | 第76-77页 |
致谢 | 第77-78页 |
参考文献 | 第78-81页 |
附表1 | 第81-82页 |
附表2 | 第82-83页 |
已发表论文 | 第83页 |