经典语录--
数学是完美的,而现实却是主观的。数学是精确的,而计算机却充满矛盾。数学是遵循逻辑的,而人却是不稳定的、反复无常的,甚至是难以理解的。
密码学是数学的一个分支。像所有其他数学分支一样,它涉及的是数字、公式和逻辑。安全性,特别是在我们的生活中十分有用的安全性,它涉及的是人:人所知道的事情、人与人之间的关系、人和机器的关系。而数字的安全性涉及到的是计算机:复杂的、不稳定的、充满漏洞的计算机。
《应用密码学:协议算法与C源程序》
![](http://hi.csdn.net/attachment/201202/10/0_1328842153Kz6i.gif)
作者: (美)Bruce Schneier
译者: 吴世忠 祝世雄 张文政
丛书名: 网络与信息安全技术丛书
出版社:机械工业出版社
ISBN:7111075889
上架时间:2000-7-1
出版日期:2000 年1月
开本:16开
页码:546
译者: 吴世忠 祝世雄 张文政
丛书名: 网络与信息安全技术丛书
出版社:机械工业出版社
ISBN:7111075889
上架时间:2000-7-1
出版日期:2000 年1月
开本:16开
页码:546
《网络信息安全的真相》
![](http://hi.csdn.net/attachment/201202/10/0_1328842352iXQ8.gif)
作者: (美)Bruce Schneier
译者: 吴世忠 马芳
丛书名: 网络与信息安全技术丛书
出版社:机械工业出版社
ISBN:7111091914
上架时间:2001-10-17
出版日期:2001 年9月
页码:240
译者: 吴世忠 马芳
丛书名: 网络与信息安全技术丛书
出版社:机械工业出版社
ISBN:7111091914
上架时间:2001-10-17
出版日期:2001 年9月
页码:240
-----------------------------------------------------------------
有兴趣继续看2本书的目录
《应用密码学:协议算法与C源程序》
目录
译者序
w.迪菲序
前言
第1章 基础知识
1.1 专业术语
1.1.1 发送者和接收者
1.1.2 消息和加密
1.1.3 鉴别、完整性和抗低赖
1.1.4 算法和密钥
1.1.5 对称算法
1.1.6 公开密钥算法
1.1.7 密码分析
1.1.8 算法的安全性
1.1.9 过去的术语
1.2 隐写术
1.3 代替密码和换位密码
1.3.1 代替密码
1.3.2 换位密码
1.3.3 转轮机
译者序
w.迪菲序
前言
第1章 基础知识
1.1 专业术语
1.1.1 发送者和接收者
1.1.2 消息和加密
1.1.3 鉴别、完整性和抗低赖
1.1.4 算法和密钥
1.1.5 对称算法
1.1.6 公开密钥算法
1.1.7 密码分析
1.1.8 算法的安全性
1.1.9 过去的术语
1.2 隐写术
1.3 代替密码和换位密码
1.3.1 代替密码
1.3.2 换位密码
1.3.3 转轮机
.1.3.4 进一步的读物
1.4 简单异或
1.5 一次一密乱码本
1.6 计算机算法
第一部分 密码协议
第2章 协议结构模块
2.1 协议概述
2.1.1 协议的目的
2.1.2 协议中的角色
2.1.3 仲裁协议
2.1.4 裁决协议
2.1.5 自动执行协议
2.1.6 对协议的攻击
2.2 使用对称密码学通信
2.3 单向函数
2.4 单向散列函数
2.5 使用公开密钥密码学通信
2.5.1 混合密码系统
2.5.2 merke的难题
2.6 数字签名
2.6.1 使用对称密码系统和仲裁者对文件签名
2.6.2 数字签名树
2.6.3 使用公开密钥密码术对文件签名
2.6.4 文件签名和时间标记
2.6.5 使用公开密钥密码学和单向散列函数对文件签名
2.6.6 算法和术语
2.6.7 多重签名
2.6.8 抵抗赖和数字签名
2.6.9 数字签名的应用
2.7 带加密的数字签名
2.7.1 重新发送消息作为收据
2.7.2 阻止重新发送攻击
2.7.3 对公开密钥密码术的攻击
2.8 随机和伪随机序列的产生
2.8.1 伪随机序列
2.8.2 密码学意义上安全的伪随机序列
2.8.3 真正的随机序列
第3章 基本协议
3.1 密钥交换
3.1.1 对称密码学的密钥交换
3.1.2 公开密钥密码学的密钥交换
3.1.3 中间人攻击
3.1.4 联锁协议
3.1.5 使用数字签名的密钥交换
3.1.6 密钥和消息传输
3.1.7 密钥和消息广播
3.2 鉴别
3.2.1 使用单向函数鉴别
3.2.2 字典式攻击和salt
3.2.3 skey
3.2.4 使用公开密钥密码术鉴别
3.2.5 使用联锁协议互相鉴别
3.2.6 skid
3.2.7 消息鉴别
3.3 鉴别和密钥交换
3.3.1 wide-mouth frog 协议
3.3.2 yahalom 协议
3.3.3 needham-schroeder 协议
3.3.4 otway-rees协议
3.3.5 kerberos 协议
3.3.6 neuman-stubblebine 协议
3.3.7 dass协议
3.3.8 denning-sacco协议
3.3.9 woo-lam 协议
3.3.10 其他协议
3.3.11 教学上的教训
3.4 鉴别和密钥交换协议的形式分析
3.5 多密钥公开密钥密码学
3.6 秘密分析
3.7 秘密共享
3.7.1 有骗子的秘密共享
3.7.2 没有trent的秘密共享
3.7.3 不暴露共享的秘密共享
3.7.4 可证验的秘密共享
3.7.5 带预防的秘密共享
3.7.6 带除名的秘密共享
3.8 数据库的密码保护
第4章 中级协议
4.1 时间标记服务
4.1.1 仲裁解决方法
4.1.2 改进的仲裁解决方法
4.1.3 链接协议
4.1.4 分布式协议
4.1.5 进一步的工作
4.2 阈下信道
4.2.1 阈下信道的应用
4.2.2 杜绝阈下的签名
4.3 不可抵赖的数字签名
4.4 指定的确认人签名
4.5 代理签名
4.6 团体签名
4.7 失败-终止数字签名
4.8 加密数据计算
4.9 位承诺
4.9.1 使用对称密码学的位承诺
4.9.2 使用单向函数的位承诺
4.9.3 使用伪随机序列发生器的位承诺
4.9.4 模糊点
4.10 公平的硬币抛掷
4.10.1 使用单向函数的抛币协议
4.10.2 使用公开密钥密码术的抛币协议
4.10.3 抛币入井协议
4.10.4 使用抛币产生密钥
4.11 智力扑克
4.11.1 三方智力扑克
4.11.2 对朴克协议的攻击
4.11.3 匿名密钥分配
4.12 单向累加器
4.13 秘密的全或泄露
4.14 密钥托管
第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 恐怖分子骗局
5.2.4 建议的解决方法
5.2.5 多重身份骗局
5.2.6 出租护照
5.2.7 成员资格证明
5.3 盲签名
5.3.1 完全盲签名
5.3.2 盲签名协议
5.3.3 专利
5.4 基本身份的公开密钥密码学
5.5 不经意传输
5.6 不经意签名
5.7 同时签约
5.7.1 带有仲裁者的签约
5.7.2 无需仲裁者的同时签约:面对面
5.7.3 无需仲裁者的同时签约:非面对面
5.7.4 无需仲裁者的同时签约:使用密码术
5.8 数字证明邮件
5.9 秘密的同时交换
第6章 深奥的协议
6.1 保密选举
6.1.1 简单投票协议1
6.1.2 简单投票协议2
6.1.3 使用盲签名投票
6.1.4 带有两个中央机构的投票
6.1.5 带有单个中央机构的投票
6.1.6 改进的带有单个中央机构的投票
6.1.7 无需中央制表机构的投票
6.1.8 其他投票方案
6.2 保密的多方计算
6.2.1 协议1
6.2.2 协议2
6.2.3 协议3
6.2.4 协议4
6.2.5 无条件多方安全协议
6.2.6 保密电路计算
6.3 匿名消息广播
6.4 数字现金
6.4.1 协议1
6.4.2 协议2
6.4.3 协议3
6.4.4 协议4
6.4.5 数字现金和高明的犯罪
6.4.6 实用化的数字现金
6.4.7 其他数字现金协议
6.4.8 匿名信用卡
第二部分 密码技术
第7章 密钥长度
7.1 对称密钥长度
7.1.1 穷举攻击所需时间和金钱
7.1.2 软件破译机
7.1.3 神经网络
7.1.4 病毒
7.1.5 中国式抽彩法
7.1.6 生物工程技术
7.1.7 势力学的局限性
7.2 公开密钥长度
7.2.1 dna 计算法
7.2.2 量子计算法
7.3 对称密钥和公开密钥长度的比较
7.4 对单向散列函数的生日攻击
7.5 密钥应该多长
7.6 小结
第8章 密钥管理
8.1 产生密钥
8.1.1 减少的密钥空间
8.1.2 弱密钥选择
8.1.3 随机密钥
8.1.4 通行短语
8.1.5 x9.17密钥产生
8.1.6 dod 密钥产生
8.2 非线性密钥空间
8.3 传输密钥
8.4 验证密钥
8.4.1 密钥传输中的错误检测
8.4.2 解密过程中的错误检测
8.5 使用密钥
8.6 更新密钥
8.7 存储密钥
8.8 备份密钥
8.9 泄露密钥
8.10 密钥有效期
8.11 销毁密钥
8.12 公开密钥的密钥管理
8.12.1 公开密钥证书
8.12.2 分布式密钥管理
第9章 算法类型和模式
9.1 电子密码本模式
9.2 分组重放
9.3 密码分组链接模式
9.3.1 初始向量
9.3.2 填充
9.3.3 错误扩散
9.3.4 安全问题
9.4 序列密码算法
9.5 自同步序列密码
9.6 密码反馈模式
9.6.1 初始化向量
9.6.2 错误扩散
9.7 同步序列密码
9.8 输出反馈模式
9.8.1 初始化向量
9.8.2 错误扩散
9.8.3 安全问题
9.8.4 ofb 模式中的序列密码
9.9 计算器模式
9.10 其他分组密码模式
9.10.1 分组链接模式
9.10.2 扩散密码分组链接模式
9.10.3 带校验和的密码分组连接
9.10.4 带非线性函数的输出反馈
9.10.5 其他模式
9.11 选择密码模式
9.12 交错
9.13 分组密码与序列密码
第10章 使用算法
10.1 选择算法
10.2 公开密钥密码学与对称密码学
10.3 通信信道加密
10.3.1 链-链加密
10.3.2 端-端加密
10.3.3 两者的结合
10.4 用于存储的加密数据
10.4.1 非关联密钥
10.4.2 驱动器级与文件加密
10.4.3 提供加密驱动器的随机存取
10.5 硬件加密与软件加密
10.5.1 硬件
10.5.2 软件
10.6 压缩,编码及加密
10.7 检测加密
10.8 密文中隐藏密文
10.9 销毁信息
第三部分 密码算法
第11章 数学背景
11.1 信息论
11.1.1 熵和不确定性
11.1.2 语言信息率
11.1.3 密码系统的安全性
11.1.4 唯一解距离
11.1.5 信息论的运用
11.1.6 混乱和扩散
11.2 复杂性理论
11.2.1 算法的复杂性
11.2.2 问题的复杂性
11.2.3 np完全问题
11.3 数论
11.3.1 模运算
11.3.2 素数
11.3.3 最大公因子
11.3.4 求模逆元
11.3.5 求系数
11.3.6 费尔马小定理
11.3.7 欧拉j函数
11.3.8 中国剩余定理
11.3.9 二次剩余
11.3.10 勒让德符号
11.3.11 雅可比特号
11.3.12 blum整数
11.3.13 生成元
11.3.14 伽罗瓦域中的计算
11.4 因子分解
11.5 素数的产生
11.5.1 solovag-strassen
11.5.2 lehmann
11.5.3 rabin-miller
11.5.4 实际考虑
11.5.5 强素数
11.6 有限域上的离散对数
第12章 数据加密标准
12.1 背景
12.1.1 标准的开发
12.1.2 标准的采用
12.1.3 des 设备的鉴定的认证
12.1.4 1987年的标准
12.1.5 1993年的标准
12.2 des的描述
12.2.1 算法概要
12.2.2 初始置换
12.2.3 密钥置换
12.2.4 扩展置换
12.2.5 s-盒代替
12.2.6 p-盒置换
12.2.7 末置换
12.2.8 des 解密
12.2.9 des 的工作模式
12.2.10 des 的硬件和软件实现
12.3 des 的安全性
12.3.1 弱密钥
12.3.2 补密钥
12.3.3 代数结构
12.3.4 密钥的长度
12.3.5 迭代的次数
12.3.6 s-盒的设计
12.3.7 其他结论
12.4 差分及线性分析
12.4.1 差分密码分析
12.4.2 相关密钥密码分析
12.4.3 线性密码分析
12.4.4 未来的方向
12.5 实际设计的准则
12.6 des 的各种变型
12.6.1 多重des
12.6.2 使用独立子密钥的des
12.6.3 desx
12.6.4 crypt(3)
12.6.5 gdes
12.6.6 更换s-盒的des
12.6.7 rdes
12.6.8 sndes
12.6.9 使用相关密钥s-盒的des
12.7 des现今的安全性如何
第13章 其他分组密码算法
13.1 lucifer 算法
13.2 madryga 算法
13.2.1 madryga 的描述
13.2.2 madryga 的密码分析
13.3 newdes 算法
13.4 ffal 算法
13.4.1 ffal 的描述
13.4.2 ffal 的密码分析
13.4.3 专利
13.5 redoc 算法
13.5.1 redoc iii
13.5.2 专利和许可证
13.6 loki 算法
13.6.1 lok 191
13.6.2 lok 191 的描述
13.6.3 lok 191 的密码分析
13.6.4 专利和许可证
13.7 khufu 和 khafre 算法
13.7.1 khufu
13.7.2 khafre
13.7.3 专利
13.8 rc2 算法
13.9 idea 算法
13.9.1 idea
13.9.2 idea 的描述
13.9.3 idea的速度
13.9.4 idea 的密码分析
13.9.5 idea 的操作方式和变型
13.9.6 警告使用者
13.9.7 专利和许可证
13.10 mmb 算法
13.11 ca-1.1 算法
13.12 skipjack 算法
第14章 其他分组密码算法(续)
14.1 gost 算法
14.1.1 gost 的描述
14.1.2 gost 的密码分析
14.2 gost 算法
14.3 blowfish 算法
14.3.1 blowfish 的描述
14.3.2 blowfish 的安全性
14.4 safer 算法
14.4.1 safer k-64 的描述
14.4.2 safer k-128
14.4.3 safer k-64 的安全性
14.5 3-way 算法
14.6 crab 算法
14.7 sxal8/mbal 算法
14.8 rc5 算法
14.9 其他分组密码算法
14.10 化组密码设计理论
14.10.1 feistel 网络
14.10.2 简单关系
14.10.3 群结构
14.10.4 弱密钥
14.10.5 强的抗差分攻击和线性攻击
14.10.6 s-盒的设计
14.10.7 设计分组密码
14.11 使用单向散列函数
14.11.1 kan
14.11.2 luby-rackoff
14.11.3 消息摘要密码
14.11.4 基于单向散列函数的密码安全性
14.12 分组密码算法的选择
第15章 组合分组密码
15.1 双重加密
15.2 三重加密
15.2.1 用两个密钥进行三重加密
15.2.2 用三个密钥进行三重加密
15.2.3 用最小密钥进行三重加密
15.2.4 三重加密模式
15.2.5 三重加密的变型
15.3 加倍分组长度
15.4 其他多重加密方案
15.4.1 双重ofb/计数器
15.4.2 ecb+ofb
15.4.3 xdesi
15.4.4 五重加密
15.5 缩短cdmf密钥
15.6 白化
15.7 级联多重加密算法
15.8 组合多重加密算法
第16章 伪随机序列发生器和序列密码
16.1 线性同余发生器
16.2 线性反馈移位寄存器
16.3 序列密码的设计与分析
16.3.1 线性复杂性
16.3.2 相关免疫性
16.3.3 其他攻击
16.4 使用lfsr的序列密码
16.4.1 geffe 发生器
16.4.2 推广的geffe发生器
16.4.3 jennings 发生器
16.4.4 beth-piper 停走式发生器
16.4.5 交替停走式发生器
16.4.6 双侧停走式发生器
16.4.7 门限发生器
16.4.8 自采样发生器
16.4.9 多倍速率内积式发生器
16.4.10 求和式发生器
16.4.11 dnrsg
16.4.12 gollmann 级联
16.4.13 收缩式发生器
16.4.14 自收缩式发生器
16.5 a5 算法
16.6 hughes xpd/kpd 算法
16.7 nanoteq 算法
16.8 rambutan 算法
16.9 附加式发生器
16.9.1 fish 发生器
16.9.2 pike 发生器
16.9.3 mush 发生器
16.10 gifford 算法
16.11 m算法
16.12 pkzip算法
第17章 其他序列密码和真随机序列发生器
17.1 rc4 算法
17.2 seal 算法
17.2.1 伪随机函数族
17.2.2 seal 的描述
17.2.3 seal 的安全性
17.2.4 专利和许可性
17.3 wake 算法
17.4 带进位的反馈移位寄存器
17.5 使用fcsr 的序列密码
17.5.1 级联发生器
17.5.2 fcsr 组合发生器
17.5.3 cfsr/fcsr加法/奇偶级联
17.5.4 交替停走式发生器
17.5.5 收缩式发生器
17.6 非线性反馈移位寄存器
17.7 其他序列密码
17.7.1 pless 发生器
17.7.2 蜂窝式自动发生器
17.7.3 1/p 发生器
17.7.4 crypt(1)
17.7.5 其他方案
17.8 序列密码设计的系统理论方法
17.9 序列密码设计的复杂性理论方法
17.9.1 shamir 伪随机数发生器
17.9.2 blum-micali 发生器
17.9.3 rsa
17.9.4 blum, blum 和 shub
17.10 序列密码设计的其他方法
17.10.1 rip van winkle 密码
17.10.2 diffie 随机序列密码
17.10.3 maurer 随机序列密码
17.11 级联多个序列密码
17.12 选择序列密码
17.13 从单个伪随机序列发生器产生多个序列
17.14 真随机序列发生器
17.14.1 rand 表
17.14.2 使用随机噪声
17.14.3 使用计算机时钟
17.14.4 测量键盘反应时间
17.14.5 偏差和相关性
17.14.6 提取随机性
第18章 单向散列函数
18.1 背景
18.1.1 单向散列函数的长度
18.1.2 单向散列函数综述
18.2 snefru 算法
18.3 n-hash 算法
18.4 md4 算法
18.5 md5 算法
18.5.1 md5 的描述
18.5.2 md5 的安全性
18.6 md2 算法
18.7 安全散列算法
18.7.1 sha 的描述
18.7.2 sha 的安全性
18.8 ripe-md 算法
18.9 haval 算法
18.10 其他单向散列函数
18.11 使用对称分组算法的单向散列函数
18.11.1 散列长度等于分组长度的方案
18.11.2 改进的 davies-meyer
18.11.3 preneel-bosselaers govaerts-vandewalle
18.11.4 quisqater-girault
18.11.5 loki 双分组
18.11.6 并行 davies-meyer
18.11.7 串联和并联 davies-meyer
18.11.8 mdc-2和 mdc-4
18.11.9 ar 散列函数
18.11.10 gost 散列函数
18.11.11 其他方案
18.12 使用公开密钥算法
18.13 选择单向散列函数
18.14 消息鉴别码
18.14.1 cbc-mac
18.14.2 信息签别算法
18.14.3 双向mac
18.14.4 jueneman 方法
18.14.5 ripe-mac
18.14.6 ibc-hash
18.14.7 单向散列函数mac
18.14.8 序列密码mac
第19章 公开密钥算法
19.1 背景
19.2 背包算法
19.2.1 超递增背包
19.2.2 由私人密钥产生公开密钥
19.2.3 加密
19.2.4 解密
19.2.5 实际实现方案
19.2.6 背包的安全性
19.2.7 背包变型
19.2.8 专利
19.3 rsa 算法
19.3.1 rsa 的硬件实现
19.3.2 rsa 的速度
19.3.3 软件加速
19.3.4 rsa 的安全性
19.3.5 对rsa 的选择密文攻击
19.3.6 对rsa 的公共模数攻击
19.3.7 对rsa 的低加密指数攻击
19.3.8 对rsa 的低解密指数攻击
19.3.9 经验
19.3.10 对rsa 的加密和签名的攻击
19.3.11 标准
19.3.12 专利
19.4 pohlig-hellman 算法
19.5 rabin 算法
19.6 elgamal 算法
19.6.1 elgamal 签名
19.6.2 elgamal 加密
19.6.3 速度
19.6.4 专利
19.7 mceliece 算法
19.8 椭圆曲线密码系统
19.9 luc 算法
19.10 有限自动机公开密钥密码系统
第20章 公开密钥数字签名算法
20.1 数字签名算法
20.1.1 对通告的反应
20.1.2 dsa 的描述
20.1.3 快速预计算
20.1.4 dsa 的素数产生
20.1.5 使用dsa 的eigamal 加密
20.1.6 使用dsa 的rsa 加密
20.1.7 dsa 的安全性
20.1.8 攻击k
20.1.9 公共模数的危险
20.1.10 dsa 中的阈下信道
20.1.11 专利
20.2 dsa 的变型
20.3 gost 数字签名算法
20.4 离散对数签名方案
20.5 ong-schnorr-shamir 签名方案
20.6 esign 签名方案
20.6.1 esign 的安全性
20.6.2 专利
20.7 细胞自动机
20.8 其他公开密钥算法
第21章 鉴别方案
21.1 feige-fiat-shamir 算法
21.1.1 简化的feige-fiat-shamir 身份鉴别方案
21.1.2 feige-fiat-shamir 身份签名方案
21.1.3 例子
21.1.4 加强方案
21.1.5 fiat-shamir 签名方案
21.1.6 改进的fiat-shamir 签名方案
21.1.7 其他加强方案
21.1.8 ohta-okamoto 身份鉴别方案
21.1.9 专利
21.2 guillou-quisquater 算法
21.2.1 guillou-quisquater 身份鉴别方案
21.2.2 guillou-quisquater 数字签名方案
21.2.3 多重签名
21.3 schnorr 算法
21.3.1 鉴别协议
21.3.2 数字签名协议
21.3.3 专利
21.4 将身份鉴别方案转为数字签名方案
第22章 密钥交换算法
22.1 diffie-hellman 算法
22.1.1 三方或多方diffie-hellman
22.1.2 扩展diffie-hellman
22.1.3 hughes
22.1.4 不用交换密钥的密钥交换
22.1.5 专利
22.2 站间协议
22.3 shamir 的三次传递协议
22.4 comset 协议
22.5 加密密钥交换
22.5.1 基本 eke 协议
22.5.2 有ras 实现 eke
22.5.3 用eigamal 实现 eke
22.5.4 用diffie-hellman 实现 eke
22.5.5 加强的 eke
22.5.6 扩充的 eke
22.5.7 eke 的应用
22.6 加强的密钥协商
22.7 会议密钥分发的秘密广播
22.7.1 会议密钥发布
22.7.2 tatebayshi-matsuzaki-newman
第23章 协议的专用算法
23.1 多重密钥的公开密钥密码学
23.2 秘密共享算法
23.2.1 lagrange 插值多项式方案
23.2.2 矢量方案
23.2.3 asmuth-bloom
23.2.4 karnin-greene-hellman
23.2.5 高级门限方案
23.2.6 有骗子情况下的秘密共享
23.3 阈下信道
23.3.1 ong-schnorr-shamir
23.3.2 elgamal
23.3.3 esign
23.3.4 dsa
23.3.5 挫败dsa 阈下信道
23.3.6 其他方案
23.4 不可抵赖的数字签名
23.5 指定的确认者签名
23.6 用加密数据计算
23.7 公正的硬币抛掷
23.7.1 利用平方根的硬币抛掷
23.7.2 利用模p指数运算的硬币抛掷
23.7.3 利用 blum整数的硬币抛掷
23.8 单向累加器
23.9 秘密的全或无泄露
23.10 公正的故障保险密码系统
23.10.1 公正的 diffie-hellman
23.10.2 故障保险的diffie-hellman
23.11 知识的零知识证明
23.11.1 离散对数的零知识证明
23.11.2 破译rsa 的能力的零知识证明
23.11.3 n是一个blum 整数的零知识证明
23.12 盲签名
23.13 不经意传输
23.14 保密的多方计算
23.15 概率加密
23.16 量子密码学
第四部分 真实世界
第24章 实现方案实例
24.1 ibm 秘密密钥管理协议
24.2 mitrenet
24.3 isdn
24.3.1 密钥
24.3.2 呼叫
24.4 stu-iii
24.5 kerberos
24.5.1 kerberos 模型
24.5.2 kerberos 工作原理
24.5.3 凭证
24.5.4 kerberos 第5版消息
24.5.5 最初票据的获取
24.5.6 服务器票据的获取
24.5.7 服务请求
24.5.8 kerberos 第4版
24.5.9 kerberos 的安全性
24.5.10 许可证
24.6 kryptoknight
24.7 sesame
24.8 ibm 通用密码体系
24.9 iso 鉴别框架
24.9.1 证书
24.9.2 鉴别协议
24.10 保密性增强邮件
24.10.1 pem 的有关文件
24.10.2 证书
24.10.3 pem 的消息
24.10.4 pem的安全性
24.10.5 tis/pem
24.10.6 ripem
24.11 消息安全协议
24.12 pretty good privacy
24.13 智能卡
24.14 公开密钥密码学标准
24.15 通用电子支付系统
24.16 clipper
24.17 capstone
24.18 at & t3600 型电话保密设备
第25章 政治
25.1 国家安全局
25.2 国家计算机安全中心
25.3 国家标准技术所
25.4 rsa 数据安全有限公司
25.5 公开密钥合作商
25.6 国际密码研究协会
25.7 race 完整性基本评估
25.8 对欧洲的有条件访问
25.9 iso/iec 9979
25.10 专业人员、公民自由和工业组织
25.10.1 电子秘密信息中心
25.10.2 电子战线基金会
25.10.3 计算机协议会
25.10.4 电气 电子工程师学会
25.10.5 软件出版商协会
25.11 sci.crypt
25.12 cypherpunks
25.13 专利
25.14 美国出口法规
25.15 其他国家的密码进出口
25.16 合法性问题
附录a 源代码
a.1 des
a.2 lok191
a.3 idea
a.4 gost
a.5 blowfish
a.6 3-way
a.7 rc5
a.8 a5
a.9 seal
参考文献
matt blaze 跋
1.4 简单异或
1.5 一次一密乱码本
1.6 计算机算法
第一部分 密码协议
第2章 协议结构模块
2.1 协议概述
2.1.1 协议的目的
2.1.2 协议中的角色
2.1.3 仲裁协议
2.1.4 裁决协议
2.1.5 自动执行协议
2.1.6 对协议的攻击
2.2 使用对称密码学通信
2.3 单向函数
2.4 单向散列函数
2.5 使用公开密钥密码学通信
2.5.1 混合密码系统
2.5.2 merke的难题
2.6 数字签名
2.6.1 使用对称密码系统和仲裁者对文件签名
2.6.2 数字签名树
2.6.3 使用公开密钥密码术对文件签名
2.6.4 文件签名和时间标记
2.6.5 使用公开密钥密码学和单向散列函数对文件签名
2.6.6 算法和术语
2.6.7 多重签名
2.6.8 抵抗赖和数字签名
2.6.9 数字签名的应用
2.7 带加密的数字签名
2.7.1 重新发送消息作为收据
2.7.2 阻止重新发送攻击
2.7.3 对公开密钥密码术的攻击
2.8 随机和伪随机序列的产生
2.8.1 伪随机序列
2.8.2 密码学意义上安全的伪随机序列
2.8.3 真正的随机序列
第3章 基本协议
3.1 密钥交换
3.1.1 对称密码学的密钥交换
3.1.2 公开密钥密码学的密钥交换
3.1.3 中间人攻击
3.1.4 联锁协议
3.1.5 使用数字签名的密钥交换
3.1.6 密钥和消息传输
3.1.7 密钥和消息广播
3.2 鉴别
3.2.1 使用单向函数鉴别
3.2.2 字典式攻击和salt
3.2.3 skey
3.2.4 使用公开密钥密码术鉴别
3.2.5 使用联锁协议互相鉴别
3.2.6 skid
3.2.7 消息鉴别
3.3 鉴别和密钥交换
3.3.1 wide-mouth frog 协议
3.3.2 yahalom 协议
3.3.3 needham-schroeder 协议
3.3.4 otway-rees协议
3.3.5 kerberos 协议
3.3.6 neuman-stubblebine 协议
3.3.7 dass协议
3.3.8 denning-sacco协议
3.3.9 woo-lam 协议
3.3.10 其他协议
3.3.11 教学上的教训
3.4 鉴别和密钥交换协议的形式分析
3.5 多密钥公开密钥密码学
3.6 秘密分析
3.7 秘密共享
3.7.1 有骗子的秘密共享
3.7.2 没有trent的秘密共享
3.7.3 不暴露共享的秘密共享
3.7.4 可证验的秘密共享
3.7.5 带预防的秘密共享
3.7.6 带除名的秘密共享
3.8 数据库的密码保护
第4章 中级协议
4.1 时间标记服务
4.1.1 仲裁解决方法
4.1.2 改进的仲裁解决方法
4.1.3 链接协议
4.1.4 分布式协议
4.1.5 进一步的工作
4.2 阈下信道
4.2.1 阈下信道的应用
4.2.2 杜绝阈下的签名
4.3 不可抵赖的数字签名
4.4 指定的确认人签名
4.5 代理签名
4.6 团体签名
4.7 失败-终止数字签名
4.8 加密数据计算
4.9 位承诺
4.9.1 使用对称密码学的位承诺
4.9.2 使用单向函数的位承诺
4.9.3 使用伪随机序列发生器的位承诺
4.9.4 模糊点
4.10 公平的硬币抛掷
4.10.1 使用单向函数的抛币协议
4.10.2 使用公开密钥密码术的抛币协议
4.10.3 抛币入井协议
4.10.4 使用抛币产生密钥
4.11 智力扑克
4.11.1 三方智力扑克
4.11.2 对朴克协议的攻击
4.11.3 匿名密钥分配
4.12 单向累加器
4.13 秘密的全或泄露
4.14 密钥托管
第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 恐怖分子骗局
5.2.4 建议的解决方法
5.2.5 多重身份骗局
5.2.6 出租护照
5.2.7 成员资格证明
5.3 盲签名
5.3.1 完全盲签名
5.3.2 盲签名协议
5.3.3 专利
5.4 基本身份的公开密钥密码学
5.5 不经意传输
5.6 不经意签名
5.7 同时签约
5.7.1 带有仲裁者的签约
5.7.2 无需仲裁者的同时签约:面对面
5.7.3 无需仲裁者的同时签约:非面对面
5.7.4 无需仲裁者的同时签约:使用密码术
5.8 数字证明邮件
5.9 秘密的同时交换
第6章 深奥的协议
6.1 保密选举
6.1.1 简单投票协议1
6.1.2 简单投票协议2
6.1.3 使用盲签名投票
6.1.4 带有两个中央机构的投票
6.1.5 带有单个中央机构的投票
6.1.6 改进的带有单个中央机构的投票
6.1.7 无需中央制表机构的投票
6.1.8 其他投票方案
6.2 保密的多方计算
6.2.1 协议1
6.2.2 协议2
6.2.3 协议3
6.2.4 协议4
6.2.5 无条件多方安全协议
6.2.6 保密电路计算
6.3 匿名消息广播
6.4 数字现金
6.4.1 协议1
6.4.2 协议2
6.4.3 协议3
6.4.4 协议4
6.4.5 数字现金和高明的犯罪
6.4.6 实用化的数字现金
6.4.7 其他数字现金协议
6.4.8 匿名信用卡
第二部分 密码技术
第7章 密钥长度
7.1 对称密钥长度
7.1.1 穷举攻击所需时间和金钱
7.1.2 软件破译机
7.1.3 神经网络
7.1.4 病毒
7.1.5 中国式抽彩法
7.1.6 生物工程技术
7.1.7 势力学的局限性
7.2 公开密钥长度
7.2.1 dna 计算法
7.2.2 量子计算法
7.3 对称密钥和公开密钥长度的比较
7.4 对单向散列函数的生日攻击
7.5 密钥应该多长
7.6 小结
第8章 密钥管理
8.1 产生密钥
8.1.1 减少的密钥空间
8.1.2 弱密钥选择
8.1.3 随机密钥
8.1.4 通行短语
8.1.5 x9.17密钥产生
8.1.6 dod 密钥产生
8.2 非线性密钥空间
8.3 传输密钥
8.4 验证密钥
8.4.1 密钥传输中的错误检测
8.4.2 解密过程中的错误检测
8.5 使用密钥
8.6 更新密钥
8.7 存储密钥
8.8 备份密钥
8.9 泄露密钥
8.10 密钥有效期
8.11 销毁密钥
8.12 公开密钥的密钥管理
8.12.1 公开密钥证书
8.12.2 分布式密钥管理
第9章 算法类型和模式
9.1 电子密码本模式
9.2 分组重放
9.3 密码分组链接模式
9.3.1 初始向量
9.3.2 填充
9.3.3 错误扩散
9.3.4 安全问题
9.4 序列密码算法
9.5 自同步序列密码
9.6 密码反馈模式
9.6.1 初始化向量
9.6.2 错误扩散
9.7 同步序列密码
9.8 输出反馈模式
9.8.1 初始化向量
9.8.2 错误扩散
9.8.3 安全问题
9.8.4 ofb 模式中的序列密码
9.9 计算器模式
9.10 其他分组密码模式
9.10.1 分组链接模式
9.10.2 扩散密码分组链接模式
9.10.3 带校验和的密码分组连接
9.10.4 带非线性函数的输出反馈
9.10.5 其他模式
9.11 选择密码模式
9.12 交错
9.13 分组密码与序列密码
第10章 使用算法
10.1 选择算法
10.2 公开密钥密码学与对称密码学
10.3 通信信道加密
10.3.1 链-链加密
10.3.2 端-端加密
10.3.3 两者的结合
10.4 用于存储的加密数据
10.4.1 非关联密钥
10.4.2 驱动器级与文件加密
10.4.3 提供加密驱动器的随机存取
10.5 硬件加密与软件加密
10.5.1 硬件
10.5.2 软件
10.6 压缩,编码及加密
10.7 检测加密
10.8 密文中隐藏密文
10.9 销毁信息
第三部分 密码算法
第11章 数学背景
11.1 信息论
11.1.1 熵和不确定性
11.1.2 语言信息率
11.1.3 密码系统的安全性
11.1.4 唯一解距离
11.1.5 信息论的运用
11.1.6 混乱和扩散
11.2 复杂性理论
11.2.1 算法的复杂性
11.2.2 问题的复杂性
11.2.3 np完全问题
11.3 数论
11.3.1 模运算
11.3.2 素数
11.3.3 最大公因子
11.3.4 求模逆元
11.3.5 求系数
11.3.6 费尔马小定理
11.3.7 欧拉j函数
11.3.8 中国剩余定理
11.3.9 二次剩余
11.3.10 勒让德符号
11.3.11 雅可比特号
11.3.12 blum整数
11.3.13 生成元
11.3.14 伽罗瓦域中的计算
11.4 因子分解
11.5 素数的产生
11.5.1 solovag-strassen
11.5.2 lehmann
11.5.3 rabin-miller
11.5.4 实际考虑
11.5.5 强素数
11.6 有限域上的离散对数
第12章 数据加密标准
12.1 背景
12.1.1 标准的开发
12.1.2 标准的采用
12.1.3 des 设备的鉴定的认证
12.1.4 1987年的标准
12.1.5 1993年的标准
12.2 des的描述
12.2.1 算法概要
12.2.2 初始置换
12.2.3 密钥置换
12.2.4 扩展置换
12.2.5 s-盒代替
12.2.6 p-盒置换
12.2.7 末置换
12.2.8 des 解密
12.2.9 des 的工作模式
12.2.10 des 的硬件和软件实现
12.3 des 的安全性
12.3.1 弱密钥
12.3.2 补密钥
12.3.3 代数结构
12.3.4 密钥的长度
12.3.5 迭代的次数
12.3.6 s-盒的设计
12.3.7 其他结论
12.4 差分及线性分析
12.4.1 差分密码分析
12.4.2 相关密钥密码分析
12.4.3 线性密码分析
12.4.4 未来的方向
12.5 实际设计的准则
12.6 des 的各种变型
12.6.1 多重des
12.6.2 使用独立子密钥的des
12.6.3 desx
12.6.4 crypt(3)
12.6.5 gdes
12.6.6 更换s-盒的des
12.6.7 rdes
12.6.8 sndes
12.6.9 使用相关密钥s-盒的des
12.7 des现今的安全性如何
第13章 其他分组密码算法
13.1 lucifer 算法
13.2 madryga 算法
13.2.1 madryga 的描述
13.2.2 madryga 的密码分析
13.3 newdes 算法
13.4 ffal 算法
13.4.1 ffal 的描述
13.4.2 ffal 的密码分析
13.4.3 专利
13.5 redoc 算法
13.5.1 redoc iii
13.5.2 专利和许可证
13.6 loki 算法
13.6.1 lok 191
13.6.2 lok 191 的描述
13.6.3 lok 191 的密码分析
13.6.4 专利和许可证
13.7 khufu 和 khafre 算法
13.7.1 khufu
13.7.2 khafre
13.7.3 专利
13.8 rc2 算法
13.9 idea 算法
13.9.1 idea
13.9.2 idea 的描述
13.9.3 idea的速度
13.9.4 idea 的密码分析
13.9.5 idea 的操作方式和变型
13.9.6 警告使用者
13.9.7 专利和许可证
13.10 mmb 算法
13.11 ca-1.1 算法
13.12 skipjack 算法
第14章 其他分组密码算法(续)
14.1 gost 算法
14.1.1 gost 的描述
14.1.2 gost 的密码分析
14.2 gost 算法
14.3 blowfish 算法
14.3.1 blowfish 的描述
14.3.2 blowfish 的安全性
14.4 safer 算法
14.4.1 safer k-64 的描述
14.4.2 safer k-128
14.4.3 safer k-64 的安全性
14.5 3-way 算法
14.6 crab 算法
14.7 sxal8/mbal 算法
14.8 rc5 算法
14.9 其他分组密码算法
14.10 化组密码设计理论
14.10.1 feistel 网络
14.10.2 简单关系
14.10.3 群结构
14.10.4 弱密钥
14.10.5 强的抗差分攻击和线性攻击
14.10.6 s-盒的设计
14.10.7 设计分组密码
14.11 使用单向散列函数
14.11.1 kan
14.11.2 luby-rackoff
14.11.3 消息摘要密码
14.11.4 基于单向散列函数的密码安全性
14.12 分组密码算法的选择
第15章 组合分组密码
15.1 双重加密
15.2 三重加密
15.2.1 用两个密钥进行三重加密
15.2.2 用三个密钥进行三重加密
15.2.3 用最小密钥进行三重加密
15.2.4 三重加密模式
15.2.5 三重加密的变型
15.3 加倍分组长度
15.4 其他多重加密方案
15.4.1 双重ofb/计数器
15.4.2 ecb+ofb
15.4.3 xdesi
15.4.4 五重加密
15.5 缩短cdmf密钥
15.6 白化
15.7 级联多重加密算法
15.8 组合多重加密算法
第16章 伪随机序列发生器和序列密码
16.1 线性同余发生器
16.2 线性反馈移位寄存器
16.3 序列密码的设计与分析
16.3.1 线性复杂性
16.3.2 相关免疫性
16.3.3 其他攻击
16.4 使用lfsr的序列密码
16.4.1 geffe 发生器
16.4.2 推广的geffe发生器
16.4.3 jennings 发生器
16.4.4 beth-piper 停走式发生器
16.4.5 交替停走式发生器
16.4.6 双侧停走式发生器
16.4.7 门限发生器
16.4.8 自采样发生器
16.4.9 多倍速率内积式发生器
16.4.10 求和式发生器
16.4.11 dnrsg
16.4.12 gollmann 级联
16.4.13 收缩式发生器
16.4.14 自收缩式发生器
16.5 a5 算法
16.6 hughes xpd/kpd 算法
16.7 nanoteq 算法
16.8 rambutan 算法
16.9 附加式发生器
16.9.1 fish 发生器
16.9.2 pike 发生器
16.9.3 mush 发生器
16.10 gifford 算法
16.11 m算法
16.12 pkzip算法
第17章 其他序列密码和真随机序列发生器
17.1 rc4 算法
17.2 seal 算法
17.2.1 伪随机函数族
17.2.2 seal 的描述
17.2.3 seal 的安全性
17.2.4 专利和许可性
17.3 wake 算法
17.4 带进位的反馈移位寄存器
17.5 使用fcsr 的序列密码
17.5.1 级联发生器
17.5.2 fcsr 组合发生器
17.5.3 cfsr/fcsr加法/奇偶级联
17.5.4 交替停走式发生器
17.5.5 收缩式发生器
17.6 非线性反馈移位寄存器
17.7 其他序列密码
17.7.1 pless 发生器
17.7.2 蜂窝式自动发生器
17.7.3 1/p 发生器
17.7.4 crypt(1)
17.7.5 其他方案
17.8 序列密码设计的系统理论方法
17.9 序列密码设计的复杂性理论方法
17.9.1 shamir 伪随机数发生器
17.9.2 blum-micali 发生器
17.9.3 rsa
17.9.4 blum, blum 和 shub
17.10 序列密码设计的其他方法
17.10.1 rip van winkle 密码
17.10.2 diffie 随机序列密码
17.10.3 maurer 随机序列密码
17.11 级联多个序列密码
17.12 选择序列密码
17.13 从单个伪随机序列发生器产生多个序列
17.14 真随机序列发生器
17.14.1 rand 表
17.14.2 使用随机噪声
17.14.3 使用计算机时钟
17.14.4 测量键盘反应时间
17.14.5 偏差和相关性
17.14.6 提取随机性
第18章 单向散列函数
18.1 背景
18.1.1 单向散列函数的长度
18.1.2 单向散列函数综述
18.2 snefru 算法
18.3 n-hash 算法
18.4 md4 算法
18.5 md5 算法
18.5.1 md5 的描述
18.5.2 md5 的安全性
18.6 md2 算法
18.7 安全散列算法
18.7.1 sha 的描述
18.7.2 sha 的安全性
18.8 ripe-md 算法
18.9 haval 算法
18.10 其他单向散列函数
18.11 使用对称分组算法的单向散列函数
18.11.1 散列长度等于分组长度的方案
18.11.2 改进的 davies-meyer
18.11.3 preneel-bosselaers govaerts-vandewalle
18.11.4 quisqater-girault
18.11.5 loki 双分组
18.11.6 并行 davies-meyer
18.11.7 串联和并联 davies-meyer
18.11.8 mdc-2和 mdc-4
18.11.9 ar 散列函数
18.11.10 gost 散列函数
18.11.11 其他方案
18.12 使用公开密钥算法
18.13 选择单向散列函数
18.14 消息鉴别码
18.14.1 cbc-mac
18.14.2 信息签别算法
18.14.3 双向mac
18.14.4 jueneman 方法
18.14.5 ripe-mac
18.14.6 ibc-hash
18.14.7 单向散列函数mac
18.14.8 序列密码mac
第19章 公开密钥算法
19.1 背景
19.2 背包算法
19.2.1 超递增背包
19.2.2 由私人密钥产生公开密钥
19.2.3 加密
19.2.4 解密
19.2.5 实际实现方案
19.2.6 背包的安全性
19.2.7 背包变型
19.2.8 专利
19.3 rsa 算法
19.3.1 rsa 的硬件实现
19.3.2 rsa 的速度
19.3.3 软件加速
19.3.4 rsa 的安全性
19.3.5 对rsa 的选择密文攻击
19.3.6 对rsa 的公共模数攻击
19.3.7 对rsa 的低加密指数攻击
19.3.8 对rsa 的低解密指数攻击
19.3.9 经验
19.3.10 对rsa 的加密和签名的攻击
19.3.11 标准
19.3.12 专利
19.4 pohlig-hellman 算法
19.5 rabin 算法
19.6 elgamal 算法
19.6.1 elgamal 签名
19.6.2 elgamal 加密
19.6.3 速度
19.6.4 专利
19.7 mceliece 算法
19.8 椭圆曲线密码系统
19.9 luc 算法
19.10 有限自动机公开密钥密码系统
第20章 公开密钥数字签名算法
20.1 数字签名算法
20.1.1 对通告的反应
20.1.2 dsa 的描述
20.1.3 快速预计算
20.1.4 dsa 的素数产生
20.1.5 使用dsa 的eigamal 加密
20.1.6 使用dsa 的rsa 加密
20.1.7 dsa 的安全性
20.1.8 攻击k
20.1.9 公共模数的危险
20.1.10 dsa 中的阈下信道
20.1.11 专利
20.2 dsa 的变型
20.3 gost 数字签名算法
20.4 离散对数签名方案
20.5 ong-schnorr-shamir 签名方案
20.6 esign 签名方案
20.6.1 esign 的安全性
20.6.2 专利
20.7 细胞自动机
20.8 其他公开密钥算法
第21章 鉴别方案
21.1 feige-fiat-shamir 算法
21.1.1 简化的feige-fiat-shamir 身份鉴别方案
21.1.2 feige-fiat-shamir 身份签名方案
21.1.3 例子
21.1.4 加强方案
21.1.5 fiat-shamir 签名方案
21.1.6 改进的fiat-shamir 签名方案
21.1.7 其他加强方案
21.1.8 ohta-okamoto 身份鉴别方案
21.1.9 专利
21.2 guillou-quisquater 算法
21.2.1 guillou-quisquater 身份鉴别方案
21.2.2 guillou-quisquater 数字签名方案
21.2.3 多重签名
21.3 schnorr 算法
21.3.1 鉴别协议
21.3.2 数字签名协议
21.3.3 专利
21.4 将身份鉴别方案转为数字签名方案
第22章 密钥交换算法
22.1 diffie-hellman 算法
22.1.1 三方或多方diffie-hellman
22.1.2 扩展diffie-hellman
22.1.3 hughes
22.1.4 不用交换密钥的密钥交换
22.1.5 专利
22.2 站间协议
22.3 shamir 的三次传递协议
22.4 comset 协议
22.5 加密密钥交换
22.5.1 基本 eke 协议
22.5.2 有ras 实现 eke
22.5.3 用eigamal 实现 eke
22.5.4 用diffie-hellman 实现 eke
22.5.5 加强的 eke
22.5.6 扩充的 eke
22.5.7 eke 的应用
22.6 加强的密钥协商
22.7 会议密钥分发的秘密广播
22.7.1 会议密钥发布
22.7.2 tatebayshi-matsuzaki-newman
第23章 协议的专用算法
23.1 多重密钥的公开密钥密码学
23.2 秘密共享算法
23.2.1 lagrange 插值多项式方案
23.2.2 矢量方案
23.2.3 asmuth-bloom
23.2.4 karnin-greene-hellman
23.2.5 高级门限方案
23.2.6 有骗子情况下的秘密共享
23.3 阈下信道
23.3.1 ong-schnorr-shamir
23.3.2 elgamal
23.3.3 esign
23.3.4 dsa
23.3.5 挫败dsa 阈下信道
23.3.6 其他方案
23.4 不可抵赖的数字签名
23.5 指定的确认者签名
23.6 用加密数据计算
23.7 公正的硬币抛掷
23.7.1 利用平方根的硬币抛掷
23.7.2 利用模p指数运算的硬币抛掷
23.7.3 利用 blum整数的硬币抛掷
23.8 单向累加器
23.9 秘密的全或无泄露
23.10 公正的故障保险密码系统
23.10.1 公正的 diffie-hellman
23.10.2 故障保险的diffie-hellman
23.11 知识的零知识证明
23.11.1 离散对数的零知识证明
23.11.2 破译rsa 的能力的零知识证明
23.11.3 n是一个blum 整数的零知识证明
23.12 盲签名
23.13 不经意传输
23.14 保密的多方计算
23.15 概率加密
23.16 量子密码学
第四部分 真实世界
第24章 实现方案实例
24.1 ibm 秘密密钥管理协议
24.2 mitrenet
24.3 isdn
24.3.1 密钥
24.3.2 呼叫
24.4 stu-iii
24.5 kerberos
24.5.1 kerberos 模型
24.5.2 kerberos 工作原理
24.5.3 凭证
24.5.4 kerberos 第5版消息
24.5.5 最初票据的获取
24.5.6 服务器票据的获取
24.5.7 服务请求
24.5.8 kerberos 第4版
24.5.9 kerberos 的安全性
24.5.10 许可证
24.6 kryptoknight
24.7 sesame
24.8 ibm 通用密码体系
24.9 iso 鉴别框架
24.9.1 证书
24.9.2 鉴别协议
24.10 保密性增强邮件
24.10.1 pem 的有关文件
24.10.2 证书
24.10.3 pem 的消息
24.10.4 pem的安全性
24.10.5 tis/pem
24.10.6 ripem
24.11 消息安全协议
24.12 pretty good privacy
24.13 智能卡
24.14 公开密钥密码学标准
24.15 通用电子支付系统
24.16 clipper
24.17 capstone
24.18 at & t3600 型电话保密设备
第25章 政治
25.1 国家安全局
25.2 国家计算机安全中心
25.3 国家标准技术所
25.4 rsa 数据安全有限公司
25.5 公开密钥合作商
25.6 国际密码研究协会
25.7 race 完整性基本评估
25.8 对欧洲的有条件访问
25.9 iso/iec 9979
25.10 专业人员、公民自由和工业组织
25.10.1 电子秘密信息中心
25.10.2 电子战线基金会
25.10.3 计算机协议会
25.10.4 电气 电子工程师学会
25.10.5 软件出版商协会
25.11 sci.crypt
25.12 cypherpunks
25.13 专利
25.14 美国出口法规
25.15 其他国家的密码进出口
25.16 合法性问题
附录a 源代码
a.1 des
a.2 lok191
a.3 idea
a.4 gost
a.5 blowfish
a.6 3-way
a.7 rc5
a.8 a5
a.9 seal
参考文献
matt blaze 跋
《网络信息安全的真相》
目录
译者序
前言
第1章 引言
1.1 系统
1.2 系统与安全
第一部分 前 景
第2章 数字威胁
2.1 攻击的不变性质
2.2 攻击的变化性质
2.2.1 自动化
2.2.2 行动的远程化
2.2.3 技术的传播性
2.3 预防与反应
第3章 攻击
3.1 刑事攻击
3.1.1 诈骗
3.1.2 欺诈
3.1.3 破坏性攻击
3.1.4 知识产权盗窃
3.1.5 身份盗窃
3.1.6 品牌盗窃
3.1.7 检查
3.2 侵犯隐私
3.2.1 监视
3.2.2 数据库
3.2.3 信息量分析
3.2.4 大规模电子监视
3.3 名声攻击
3.4 法律性攻击
第4章 对手
4.1 电脑黑客
4.2 个人犯罪
4.3 怀有恶意的内部人员
4.4 产业间谍
4.5 新闻机构
4.6 集团犯罪
4.7 警察
4.8 恐怖分子
4.9 国家情报机关
4.10 信息斗士
第5章 安全需求
5.1 隐私
5.2 多级安全
5.3 匿名者
5.3.1 商业匿名
5.3.2 医疗匿名
5.4 保密与政府
5.5 鉴别
5.6 完整性
5.7 审计
5.8 电子货币
5.9 提前主动的解决方案
第二部分 技 术
第6章 加密系统
6.1 对称加密
6.2 加密型攻击的类型
6.3 识别明文
6.4 消息验证代码程序
6.5 单向散列函数
6.6 公开密钥加密
6.7 数字签名方案
6.8 随机数生成程序
6.9 密钥长度
第7章 加密术的处境
7.1 密钥长度与安全性
7.2 一次插入
7.3 协议
7. 4 互联网加密协议
7.5 侵犯协议的类型
7.6 选择算法还是协议
第8章 计算机安全
8.1 定义
8.2 访问控制
8.3 安全模型
8.4 安全内核与可置信的计算基础
8.5 隐藏通道
8.6 评估准则
8.7 安全计算机的未来
第9章 识别与验证
9.1 密码
9.2 生物测定
9.3 访问令牌
9.4 验证协议
9.5 单一注册
第10章 连网计算机的安全
10.1 恶意软件
10.1.1 计算机病毒
10.1.2 蠕虫
10.1.3 特洛伊木马
10.1.4 现代恶意代码
10.2 模块代码
10.3 移动代码
10.4 网络安全
10.4.1 URL破坏
10. 4.2 Cookies
10.4.3 网络脚本
10.4.4 网络保密
第ll章 网络安全
11.1 网络如何工作
11.2 IP安全
11.3 DNS安全
11.4 拒绝服务攻击
11.5 分布式拒绝服务攻击
11.6 网络安全的未来
第12章 网络防御
12.1 防火墙
12.2 非军事区域
12.3 虚拟专用网
12.4 入侵检测系统
12.5 蜜罐和防盗铃
12.6 弱点扫描器
12.7 E—mail安全性
12.8 加密与网络防护
第13章 软件的可靠性
13.1 错误代码
13.2 攻击错误代码
13.3 缓冲区送出
13.4 无处不在的错误代码
第14章 硬件安全
14.1 防篡改装置
14.2 边道(边频)攻击
14.3 破译智能卡
第15章 证书和凭证
15.1 可信第三方
15.2 凭证
15.3 证书
15.4 传统PKI的问题
15.5 互联网上的PKI
第16章 安全诀窍
16.1 政府访问密钥
16.2 数据库安全
16.3 隐写术
16.4 潜信道
16.5 数字水印
16.6 复制保护
16.7 删除数字信息
第17章 人为因素
17. 1 风险
17.2 例外处理
17.3 人机接口
17.4 人机交流
17.5 内奸
17.6 社会工程
第三部分
第18章 漏洞及其统观
18.1 攻击方法
18.2 对策措施
18.3 漏洞统观
18.3.1 物理安全
18.3.2 虚拟安全
18.3.3 信托形式
18.3.4 系统的生命周期
18.4 合理地采用对策
第19章 威胁模型以及风险评估
19.1 公平的选举
19.2 保护电话系统
19.3 保护电子邮件
19.4 储值智能卡系统
19.5 风险评估
19.6 威胁模型
19.7 错误认识威胁
第20章 安全策略和对策
20.1 安全策略
20.2 可信任的客户端软件
20.3 自动取款机——ATM
20.4 计算机化的彩票终端
20.5 智能卡与记忆卡
20.6 理性化的对策
第2l章 攻击树
21.1 基本的攻击树
21.2 PGP(良好隐私)攻击树
21.3 建立和使用攻击树
第22章 产品的测试与检验
22.1 测试的失败
22.2 事后发现的安全错误
22.3 开放性标准和开放信息源解决方案
22.4 反问工程和相关法律
22.5 破译和入侵竞争
22.6 评估和选择安全产品
第23章 产品前瞻
23.1 软件的复杂性和安全性
23.2 要关注的技术
23.3 我们将永无止境地学习吗
第24章 安全过程
24.1 原理
24.1.1 划分
24.1.2 保护最薄弱链接的安全
24.1.3 使用拥塞控制
24.1.4 提供全面防御措施
24.1.5 保证故障状态下的安全
24.1.6 不可预见性杠杆
24.1.7 接受简明性
24.1.8 争取用户
24.1.9 保证
24.1.10 置疑
24.1.11 检测和反应
24.1.12 检测攻击
24.1.13 分折攻击
24.1.14 对攻击做出反应
24.1.15 保持警惕
24.1.16 观察观察者
24.1.17 从攻击中恢复
24.2 反攻击
24.3 管理风险
24.4 外包安全过程
第25章 结论
后记
资源
前言
第1章 引言
1.1 系统
1.2 系统与安全
第一部分 前 景
第2章 数字威胁
2.1 攻击的不变性质
2.2 攻击的变化性质
2.2.1 自动化
2.2.2 行动的远程化
2.2.3 技术的传播性
2.3 预防与反应
第3章 攻击
3.1 刑事攻击
3.1.1 诈骗
3.1.2 欺诈
3.1.3 破坏性攻击
3.1.4 知识产权盗窃
3.1.5 身份盗窃
3.1.6 品牌盗窃
3.1.7 检查
3.2 侵犯隐私
3.2.1 监视
3.2.2 数据库
3.2.3 信息量分析
3.2.4 大规模电子监视
3.3 名声攻击
3.4 法律性攻击
第4章 对手
4.1 电脑黑客
4.2 个人犯罪
4.3 怀有恶意的内部人员
4.4 产业间谍
4.5 新闻机构
4.6 集团犯罪
4.7 警察
4.8 恐怖分子
4.9 国家情报机关
4.10 信息斗士
第5章 安全需求
5.1 隐私
5.2 多级安全
5.3 匿名者
5.3.1 商业匿名
5.3.2 医疗匿名
5.4 保密与政府
5.5 鉴别
5.6 完整性
5.7 审计
5.8 电子货币
5.9 提前主动的解决方案
第二部分 技 术
第6章 加密系统
6.1 对称加密
6.2 加密型攻击的类型
6.3 识别明文
6.4 消息验证代码程序
6.5 单向散列函数
6.6 公开密钥加密
6.7 数字签名方案
6.8 随机数生成程序
6.9 密钥长度
第7章 加密术的处境
7.1 密钥长度与安全性
7.2 一次插入
7.3 协议
7. 4 互联网加密协议
7.5 侵犯协议的类型
7.6 选择算法还是协议
第8章 计算机安全
8.1 定义
8.2 访问控制
8.3 安全模型
8.4 安全内核与可置信的计算基础
8.5 隐藏通道
8.6 评估准则
8.7 安全计算机的未来
第9章 识别与验证
9.1 密码
9.2 生物测定
9.3 访问令牌
9.4 验证协议
9.5 单一注册
第10章 连网计算机的安全
10.1 恶意软件
10.1.1 计算机病毒
10.1.2 蠕虫
10.1.3 特洛伊木马
10.1.4 现代恶意代码
10.2 模块代码
10.3 移动代码
10.4 网络安全
10.4.1 URL破坏
10. 4.2 Cookies
10.4.3 网络脚本
10.4.4 网络保密
第ll章 网络安全
11.1 网络如何工作
11.2 IP安全
11.3 DNS安全
11.4 拒绝服务攻击
11.5 分布式拒绝服务攻击
11.6 网络安全的未来
第12章 网络防御
12.1 防火墙
12.2 非军事区域
12.3 虚拟专用网
12.4 入侵检测系统
12.5 蜜罐和防盗铃
12.6 弱点扫描器
12.7 E—mail安全性
12.8 加密与网络防护
第13章 软件的可靠性
13.1 错误代码
13.2 攻击错误代码
13.3 缓冲区送出
13.4 无处不在的错误代码
第14章 硬件安全
14.1 防篡改装置
14.2 边道(边频)攻击
14.3 破译智能卡
第15章 证书和凭证
15.1 可信第三方
15.2 凭证
15.3 证书
15.4 传统PKI的问题
15.5 互联网上的PKI
第16章 安全诀窍
16.1 政府访问密钥
16.2 数据库安全
16.3 隐写术
16.4 潜信道
16.5 数字水印
16.6 复制保护
16.7 删除数字信息
第17章 人为因素
17. 1 风险
17.2 例外处理
17.3 人机接口
17.4 人机交流
17.5 内奸
17.6 社会工程
第三部分
第18章 漏洞及其统观
18.1 攻击方法
18.2 对策措施
18.3 漏洞统观
18.3.1 物理安全
18.3.2 虚拟安全
18.3.3 信托形式
18.3.4 系统的生命周期
18.4 合理地采用对策
第19章 威胁模型以及风险评估
19.1 公平的选举
19.2 保护电话系统
19.3 保护电子邮件
19.4 储值智能卡系统
19.5 风险评估
19.6 威胁模型
19.7 错误认识威胁
第20章 安全策略和对策
20.1 安全策略
20.2 可信任的客户端软件
20.3 自动取款机——ATM
20.4 计算机化的彩票终端
20.5 智能卡与记忆卡
20.6 理性化的对策
第2l章 攻击树
21.1 基本的攻击树
21.2 PGP(良好隐私)攻击树
21.3 建立和使用攻击树
第22章 产品的测试与检验
22.1 测试的失败
22.2 事后发现的安全错误
22.3 开放性标准和开放信息源解决方案
22.4 反问工程和相关法律
22.5 破译和入侵竞争
22.6 评估和选择安全产品
第23章 产品前瞻
23.1 软件的复杂性和安全性
23.2 要关注的技术
23.3 我们将永无止境地学习吗
第24章 安全过程
24.1 原理
24.1.1 划分
24.1.2 保护最薄弱链接的安全
24.1.3 使用拥塞控制
24.1.4 提供全面防御措施
24.1.5 保证故障状态下的安全
24.1.6 不可预见性杠杆
24.1.7 接受简明性
24.1.8 争取用户
24.1.9 保证
24.1.10 置疑
24.1.11 检测和反应
24.1.12 检测攻击
24.1.13 分折攻击
24.1.14 对攻击做出反应
24.1.15 保持警惕
24.1.16 观察观察者
24.1.17 从攻击中恢复
24.2 反攻击
24.3 管理风险
24.4 外包安全过程
第25章 结论
后记
资源
-----------------------------------------------------------------
作者简介
![](http://hi.csdn.net/attachment/201202/10/0_1328842121jjAO.gif)
Bruce Schneier是Counterpane Systems公司的总裁,该公司是一个密码学和计算机安全方面的专业咨询公司。并在主要的密码学杂志上发表了数十篇论文,他是《Dr Dobb's Journal》责任编辑之一,同时担任《Computer and communications Security Reviews》的编辑,是国际密码研究协会的理事会员、电子隐私信息中心的顾问团成员和新安全范例工作组程序委员会成员。此外他还经常举办密码学、计算机安全和隐私保护方面的学术讲座。