第一章 战争中诞生的魔术
一、什么是密码
二、密码的起源
三、中国古代的密码
四、一些概念及对密码的误解
五、两种基本加密方法
第二章 怎样设计一个密码
一、密码设计的第一个原则——可逆
二、一点点数学基础——模算术
三、利用乘法设计密码
五、密码系统的组成
六、Feistel模型
第三章 密码破译
一、密码破译简史
二、密码为什么会被破译
三、单表代替和多表代替的破译方法
四、现代密码破译
第四章 从古典密码到现代密码
一、古典密码的两个假设
二、密码算法的理论保密性
三、序列密码与分组密码
第五章 揭秘序列密码
一、什么是序列密码
二、序列的随机性
三、密钥序列的产生方法
第六章 分组密码的设计
一、分组密码的本质——分组代替
二、分组密码的设计准则——混乱、扩散
三、分组密码的实现方法——整体置换+小块代替+迭代
第七章 漫谈商用密码
一、走近DES
二、高级加密标准AES
三、其他商用密码
第八章 密码学的新方向
一、对称密码的困境
二、双锁盒与密钥协商
三、公钥密码的思想
四、单向函数与困难问题
第九章 背包中的玄机
一、一种新的加密方法
二、Bob对“背包1号”的改进
第十章 分解整数、欧拉定理与RSA密码
一、整数分解问题
二、费马定理与欧拉定理
三、RSA密码
四、困难问题、归约及RSA的安全性
第十一章 用离散对数问题构造密码
一、离散的对数
二、EIGamal密码
第十二章 实际的攻击与可以证明的安全性
一、一些实际的攻击
二、可以证明的安全性
三、其他攻击
第十三章 密码学的最前沿
一、量子密码
二、后量子密码
三、区块链与密码
附录
附录一 密码史大事记
附录二 线性反馈移位寄存器与m序列
附录三 费马小定理
附录四 欧拉函数与欧拉定理
参考文献
展开