内容简介
第1章 引言
1.1 信息安全面临的威胁
1.1.1 安全威胁
1.1.2 入侵者和病毒
1.1.3 安全业务
1.2 信息安全的模型
1.3 密码学基本概念
1.3.1 保密通信系统
1.3.2 密码体制分类
1.3.3 密码攻击概述
1.4 几种古典密码
1.4.1 单表代换密码
1.4.2 多表代换密码
习题
第2章 流密码
2.1 流密码的基本概念
2.1.1 同步流密码
2.1.2 有限状态自动机
2.1.3 密钥流产生器
2.2 线性反馈移位寄存器
2.3 线性移位寄存器的一元多项式表示
2.4 m序列的伪随机性
2.5 m序列密码的破译
2.6 非线性序列
2.6.1 Geffe序列生成器
2.6.2 J-K触发器
2.6.3 Pless生成器
2.6.4 钟控序列生成器
习题
第3章 分组密码
3.1 分组密码概述
3.1.1 代换
3.1.2 扩散和混淆
3.1.3 Feistel密码结构
3.2 数据加密标准
3.2.1 DES描述
3.2.2 二重DES
3.2.3 两个密钥的三重DES
3.2.4 3个密钥的三重DES
3.3 差分密码分析与线性密码分析
3.3.1 差分密码分析
3.3.2 线性密码分析
3.4 分组密码的运行模式
3.4.1 电码本模式
3.4.2 密码分组链接模式
3.4.3 密码反馈模式
3.4.4 输出反馈模式
3.5 IDEA
3.5.1 设计原理
3.5.2 加密过程
3.6 AES算法——Rijndael
3.6.1 Rijndael的数学基础和设计思想
3.6.2 算法说明
习题
第4章 公钥密码
4.1 密码学中一些常用的数学知识
4.1.1 群、环、域
4.1.2 素数和互素数
4.1.3 模运算
4.1.4 模指数运算
4.1.5 费马定理、欧拉定理和卡米歇尔定理
4.1.6 素性检验
4.1.7 欧几里得算法
4.1.8 中国剩余定理
4.1.9 离散对数
4.1.10 平方剩余
4.1.11 计算复杂性
4.2 公钥密码体制的基本概念
4.2.1 公钥密码体制的原理
4.2.2 公钥密码算法应满足的要求
4.2.3 对公钥密码体制的攻击
4.3 RSA算法
4.3.1 算法描述
4.3.2 RSA算法中的计算问题
4.3.3 一种改进的RSA实现方法
4.3.4 RSA的安全性
4.3.5 对RSA的攻击
4.4 背包密码体制
4.5 Rabin密码体制
4.6 NTRU公钥密码系统
4.7 椭圆曲线密码体制
4.7.1 椭圆曲线
4.7.2 有限域上的椭圆曲线
4.7.3 椭圆曲线上的点数
4.7.4 明文消息到椭圆曲线上的嵌入
4.7.5 椭圆曲线上的密码
4.8 基于身份的密码体制
4.8.1 引言
4.8.2 双线性映射
4.8.3 IBE方案描述
习题
第5章 密钥分配与密钥管理
5.1 单钥加密体制的密钥分配
5.1.1 密钥分配的基本方法
5.1.2 实例
5.1.3 密钥的分层控制
5.1.4 会话密钥的有效期
5.1.5 无中心的密钥控制
5.1.6 密钥的控制使用
5.2 公钥加密体制的密钥管理
5.2.1 公钥的分配
5.2.2 用公钥加密分配单钥密码体制的密钥
5.2.3 Diffie-Hellman密钥交换
5.3 密钥托管
5.3.1 美国托管加密标准简介
5.3.2 密钥托管密码体制的组成部分
5.4 随机数的产生
5.4.1 随机数的使用
5.4.2 随机数源
5.4.3 伪随机数产生器
5.4.4 基于密码算法的随机数产生器
5.4.5 随机比特产生器
5.5 秘密分割
5.5.1 秘密分割门限方案
5.5.2 Shamir门限方案
5.5.3 基于中国剩余定理的门限方案
习题
第6章 消息认证和哈希函数
6.1 消息认证码
6.1.1 消息认证码的定义及使用方式
6.1.2 产生MAC的函数应满足的要求
6.1.3 数据认证算法
6.2 哈希函数
6.2.1 哈希函数的定义及使用方式
6.2.2 哈希函数应满足的条件
6.2.3 生日攻击
6.2.4 迭代型哈希函数的一般结构
6.3 MD5哈希算法
6.3.1 算法描述
6.3.2 MD5的压缩函数
6.3.3 MD5的安全性
6.4 安全哈希算法
6.4.1 算法描述
6.4.2 SHA的压缩函数
6.4.3 SHA与MD5的比较
6.4.4 对SHA的攻击现状
6.5 HMAC
6.5.1 HMAC的设计目标
6.5.2 算法描述
6.5.3 HMAC的安全性
习题
第7章 数字签名和认证协议
7.1 数字签名的基本概念
7.1.1 数字签名应满足的要求
7.1.2 数字签名的产生方式
7.1.3 数字签名的执行方式
7.2 数字签名标准
7.2.1 DSS的基本方式
7.2.2 数字签名算法
7.3 其他签名方案
7.3.1 基于离散对数问题的数字签名体制
7.3.2 基于大数分解问题的数字签名体制
7.3.3 基于身份的数字签名体制
7.4 认证协议
7.4.1 相互认证
7.4.2 单向认证
习题
第8章 密码协议
8.1 一些基本协议
8.1.1 智力扑克
8.1.2 掷硬币协议
8.1.3 数字承诺
8.1.4 不经意传输
8.2 零知识证明
8.2.1 交互证明系统
8.2.2 交互证明系统的定义
8.2.3 交互证明系统的零知识性
8.2.4 零知识证明协议的组合
8.2.5 图的三色问题的零知识证明
8.2.6 知识证明
8.2.7 简化的Fiat-Shamir身份识别方案
8.2.8 Fiat-Shamir身份识别方案
8.3 安全多方计算协议
8.3.1 安全多方计算问题
8.3.2 半诚实敌手模型
8.3.3 恶意敌手模型
习题
第9章 可证明安全
9.1 语义安全
9.1.1 公钥加密方案在选择明文攻击下的不可区分性
9.1.2 公钥加密方案在选择密文攻击下的不可区分性
9.1.3 公钥加密方案在适应性选择密文攻击下的不可区分性
9.1.4 签名体制的语义安全性
9.1.5 规约
9.2 基于身份的密码体制的安全性
9.2.1 IBE方案所基于的困难问题
9.2.2 选择明文安全的IBE方案
9.2.3 选择密文安全的IBE方案
9.3 语义安全的RSA加密方案
9.3.1 RSA问题和RSA假设
9.3.2 选择明文安全的RSA加密
9.3.3 选择密文安全的RSA加密
9.4 RSA-FDH签名方案
9.5 BLS短签名方案
9.5.1 BLS短签名方案所基于的安全性假设
9.5.2 方案描述
9.6 分叉引理
9.7 代理签名
9.7.1 平方剩余的几个结论
9.7.2 代理签名系统模型
9.7.3 具体方案
9.8 Paillier公钥密码系统
9.8.1 合数幂剩余类的判定
9.8.2 合数幂剩余类的计算
9.8.3 基于合数幂剩余类问题的概率加密方案
9.8.4 基于合数幂剩余类问题的单向陷门置换
9.8.5 Paillier密码系统的性质
9.9 Cramer-Shoup密码系统
9.9.1 Cramer-Shoup密码系统的基本机制
9.9.2 Cramer-Shoup密码系统的安全性证明
9.10 云计算中语义安全的关键字搜索
9.10.1 语义安全的关键字搜索
9.10.2 基于双线性映射的PEKS
习题
第10章 网络加密与认证
10.1 网络通信加密
10.1.1 开放系统互连和TCP/IP分层模型
10.1.2 网络加密方式
10.2 Kerberos认证系统
10.2.1 Kerberos V4
10.2.2 Kerberos区域与多区域的Kerberos
10.3 X.509认证业务
10.3.1 证书
10.3.2 认证过程
10.4 PGP
10.4.1 运行方式
10.4.2 密钥和密钥环
10.4.3 公钥管理
习题
参考文献