书籍详情
应用密码学:协议、算法与C源程序
作者:(美)Bruce Schneier著;吴世忠 等译
出版社:机械工业出版社
出版时间:2003-03-01
ISBN:9787111075882
定价:¥49.00
购买这本书可以去
内容简介
本书真实系统地介绍了密码学及该领域全面的参考文献。全书共分四个部分,首先定义了密码学的多个术语,介绍了密码学的发展及背景,描述了密码学从简单到复杂的各种协议,详细讨论了密码技术,并在此基础上列举了如DES、IDEA、RSA、DSA等10多个算法以及多个应用实例,并提供了算法的源代码清单。全书内容广博权威,具有极大的实用价值。自出版以来,得到业内专家的高度赞誉,是致力于密码学研究的专业及非专业人员一本难得的好书。作者简介:BruceSchneier是CounterpaneSystems公司的总裁,该公司是一个密码学和计算机安全方而后专业咨询公司。Bruce还是《E-MailSecurity》(JohnWiley&Sons,1995)和《ProtectYourMacintosh》(PeachpitPress,1994)两书的作者,并在主要的密码学杂志上发表了数十篇论文。他是《Dr.Dobb'sJournal》责任编辑之一,同时担任《ComputerandCommunicationsSecurityReviews》的编辑。Bruce是国际密研究协会的理事会成员、电子隐私的信息中心的顾问成员和新安全范例工作组程序委员会成员。此外,他还经常举办密码学、计算机安全和隐私保护方面的学术讲座。
作者简介
BruceSchneierBruceSchneier是CounterpaneSystems公司的总裁,该公司是一个密码学和计算机安全方面的专业咨询公司。并在主要的密码学杂志上发表了数十篇论文,他是《DrDobb'sJournal》责任编辑之一,同时担任《ComputerandcommunicationsSecurityReviews》的编辑,是国际密码研究协会的理事会员、电子隐私信息中心的顾问团成员和新安全范例工作组程序委员会成员。此外他还经常举办密码学、计算机安全和隐私保护方面的学术讲座。>>更多作品
目录
目 录
译者序
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计算机算法
1.7大数
第一部分 密码协议
第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.2Merkle的难题
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.3SKEY
3.2.4使用公开密钥密码术鉴别
3.2.5使用联锁协议互相鉴别
3.2.6SKID
3.2.7消息鉴别
3.3鉴别和密钥交换
3.3.1Wide-MouthFrog 协议
3.3.2Yahalom协议
3.3.3Needham-Schroeder协议
3.3.4Otway-Rees 协议
3.3.5Kerberos协议
3.3.6Neuman-Stubblebine协议
3.3.7DASS协议
3.3.8DEnning-Sacco协议
3.3.9Woo- 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.1DNA计算法
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.5X9.17密钥产生
8.1.6DoD密钥产生
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.4OFB模式中的序列密码
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用于存储的加密数据
1 0.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.3NP完全问题
11.3数论
11.3.1模运算
11.3.2素数
11.3.3最大公因子
11.3.4求模逆元
11.3.5求系数
11.3.6费尔马小定理
11.3.7欧拉φ函数
11.3.8中国剩余定理
11.3.9二次剩余
11.3.10勒让德符号
11.3.11雅可比符号
11.3.12Blum整数
11.3.13生成元
11.3.14伽罗瓦域中的计算
11.4 因子分解
11.5 素数的产生
11.5.1Solovag- Strassen
11.5.2Lehmann
11.5.3Rabin-Miller
11.5.4实际考虑
11.5.5强素数
11.6有限域上的离散对数
第12章 数据加密标准
12.1背景
12.1.1标准的开发
12.1.2标准的采用
12.1.3DES设备的鉴定和认证
12.1.41987年的标准
12.1.51993 年的标准
12.2DES的描述
12.2.1算法概要
12.2.2初始置换
12.2.3密钥置换
12.2.4扩展置换
12.2.5S-盒代替
12.2.6P-盒置换
12.2.7末置换
12.2.8DES解密
12.2.9DES的工作模式
12.2.10 DES的硬件和软件实现
12.3DES的安全性
12.3.1弱密钥
12.3.2补密钥
12.3.3代数结构
12.3.4密钥的长度
12.3.5迭代的次数
12.3.6S-盒的设计
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.3DESX
12.6.4 CRYPT(3)
12.6.5GDES
12.6.6更换S-盒的DES
12.6.7RDES
12.6.8snDES
12.6.9使用相关密钥S-盒的DES
12.7DES现今的安全性如何
第13章 其他分组密码算法
13.1Lucifer算法
13.2Mad ryga 算法
13.2.1Mad ryga 的描述
13.2.2Madryga 的密码分析
13.3NewDES算法
13.4FEAL算法
13.4.1FEAL的描述
13.4.2FEAL的密码分析
13.4.3专利
13.5REDOC算法
13.5.1ReDOCⅢ
13.5.2 专利和许可证
13.6LOKI算 法
13.6.1LOKI91
13.6.2LOK191的描述
13.6.3LOKI91的密码分析
13.6.4专利和许可证
13.7Khufu和Khafre算法
13.7.1Khufu
13.7.2Khafre
13.7.3专利
13.8 RC2算法
13.9IDEA算法
13.9.1IDEA
13.9.2IDEA的描述
13.9.3IDEA的速度
13.9.4IDEA的密码分析
13.9.5IDEA的操作方式和变型
13.9.6敬告使用者
13.9.7专利和许可证
13.10 MMB 算法
13.11CA-1.1算法
13.12Skipjack算法
第14章 其他分组密码算法
(续)
14.1GOST算法
14.1.1GOST的描述
14.1.2GOST的密码分析
14.2 CAST算法
14.3Blowfish算法
14.3.1Blowfish的描述
14.3.2Blowfish的安全性
14.4SAFER算法
14.4.1SAFERK-64的描述
14.4.2SAFERK-128
14.4.3SAFERK-64的安全性
14.53-WAY算法
14.6Crab算法
14.7SXAL8/MBAL算法
14.8RC5算法
14.9其他分组密码算法
14.10分组密码设计理论
14.10.1Feistel网络
14.10.2简单关系
14.10.3群结构
14.10.4弱密钥
14.10.5强的抗差分攻击和线性
攻击
14.10.6S-盒的设计
14.10.7设计分组密码
14.11使用单向散列函数
14.11.1Kam
14.11.2Luby-Rac koff
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.2ECB+OFB
15.4.3xDES
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.1Geffe发生器
16.4.2推广的Geffe发生器
16.4.3Jennings发生器
16.4.4Beth-Piper停走式发生器
16.4.5交替停走式发生器
16.4.6双侧停走式发生器
16.4.7门限发生器
16.4.8自采样发生器
16.4.9多倍速率内积式发生器
16.4.10求和式发生器
16.4.11DNRSG
16.4.12Gollmann级联
16.4.13收缩式发生器
16.4.14自收缩式发生器
16.5A5算法
16.6HughesXPD/KPD算法
16.7Nanoteq算法
16.8Rambutan算法
16.9附加式发生器
16.9.1Fish发生器
16.9.2Pike发生器
16.9.3Mush发生器
16.10Gifford算法
16.11M算法
16.12PKZIP算法
第17章 其他序列密码和真随机序
列发生器
17.1RC4算法
17.2SEAL算法
17.2.1伪随机函数族
17.2.2SEAL的描述
17.2.3SEAL的安全性
17.2.4专利和许可证
17.3WAKE算法
17.4带进位的反馈移位寄存器
17.5使用FCSR的序列密码
17.5.1级联发生器
17.5.2FCSR组合发生器
17.5.3CFSR/FCSR加法/奇偶级联
17.5.4交替停走式发生器
17.5.5收缩式发生器
17.6非线性反馈移位寄存器
17.7其他序列密码
17.7.1Pless发生器
17.7.2蜂窝式自动发生器
17.7.31/p发生器
17.7.4crypt(1)
17.7.5其他方案
17.8序列密码设计的系统理论方法
17.9序列密码设计的复杂性理论
方法
17.9.1Shamir伪随机数发生器
17.9.2Blum-Micali发生器
17.9.3RSA
17.9.4Blum ,Blum和Shub
17.10序列密码设计的其他方法
17.10.1RipvanWinkle密码
17.10.2Diffie随机序列密码
17.10.3Maurer随机序列密码
17.11级联多个序列密码
17.12选择序列密码
17.13从单个伪随机序列发生器产生多
个序列
17.14真随机序列发生器
17.14.1RAND表
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.2Snefru算法
18.3N-Hash算法
18.4MD4算法
18.5MD5算法
18.5.1MD5的描述
18.5.2MD5的安全性
18.6MD2算法
18.7安全散列算法
18.7.1SHA的描述
18.7.2SHA的安全性
18.8RIPE-MD算法
18.9HAVAL算法
18.10其他单向散列函数
18.11使用对称分组算法的单向散列函
数
18.11.1散列长度等于分组长度的方
案
18.11.2改进的Davies-Meyer
18.11.3Preneel-Bosselaers-Govaerts-
Vandewalle
18.11.4Quisqater-Girault
18.11.5LOKI双分组
18.11.6并行Davies-Meyer
18.11.7串联和并联Davies-Meyer
18.11.8MDC-2和MDC-4
18.11.9AR散列函数
18.11.10COST散列函数
18.11.11其他方案
18.12使用公开密钥算法
18.13选择单向散列函数
18.14消息鉴别码
18.14.1CBC-MAC
18.14.2 信息鉴别算法
18.14.3双向MAC
18.14.4Juenenan方法
18.14.5RIPE- MAC
18.14.6IBC-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.3RSA算法
19.3.1RSA的硬件实现
19.3.2RSA的速度
19.3.3软件加速
19.3.4RSA的安全性
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.4Pohl ig-Hellman 算法
19.5Rabin算法
19.6ElGamal算法
19.6.1ElGamal签名
19.6.2ElGamal加密
19.6.3速度
19.6.4专利
19.7McEliece 算法
19.8椭圆曲线密码系统
19.9LUC算法
19.10有限自动机公开密钥密码系统
第20章 公开密钥数字签名算法
20.1数字签名算法
20.1.1对通告的反应
20.1.2DSA的描述
20.1.3快速预计算
20.1.4DSA的素数产生
20.1.5使用DSA的ElGama1加密
20.1.6使用DSA的RSA加密
20.1.7DSA的安全性
20.1.8攻击k
20.1.9公共模数的危险
20.1.10颤切中的顺下信道
20.1.11专利
20.2 DSA的变型
20.3 GOST签名算法
20.4 离散对数签名方案
20.5 One-Schnorr-Shamir签名方案
20.6 ESIGN签名方案
20.6.1 ESIGN的安全性
20.6.2 专利
20.7 细胞自动机
第21章 鉴别方案
第22章 密钥交换算法
第23章 协议的专用算法
第四部分 真实世界
第24章 实现方案实例
24.1IBM秘密密钥管理协议
24.2MITRENET
24.3ISDN
24.3.1密钥
24.3.2呼叫
24.4STU-Ⅲ
24.5Kerberos
24.5.1Kerbeeros模型
24.5.2Kerberos工作原理
24.5.3凭证
24.5.4Kerberos第5版消息
25.5.5最初票据的获取
24.5.6服务器票据的获取
24.5.7服务请求
24.5.8Kerberos第4版
24.5.9Kerberos的安全性
24.5.10 许可证
24.6KryptoKnight
24.7SESAME
24.8IBM通用密码体系
24.9ISO鉴别框架
24.9.1证书
24.9.2鉴别协议
24.10保密性增强邮件
24.10.1PEM的有关文件
24.10.2证书
24.10.3PEM的消息
24.10.4PEM的安全性
24.10.5TIS/PEM
24.10.6RIPEM
24.11消息安全协议
24.12Pret tyGood Privacy
24.13智能卡
24.14公开密钥密码学标准
24.15通用电子支付系统
26.16Clipper
24.17Capstone
24.18AT&T3600型电话保密设备
第25章 政治
25.1国家安全局
25.2国家计算机安全中心
25.3国家标准技术所
25.4RSA数据安全有限公司
25.5公开密钥合作商
25.6国际密码研究协会
25.7RACE完整性基本评估
25.8对欧洲的有条件访问
25.9ISO/IEC9979
25.10专业人员、公民自由和工业组织
25.10.1电子秘密信息中心
25.10.2电子战线基金会
25.10.3计算机协会
25.10.4电气和电子工程师学会
25.10.5软件出版商协会
25.11Scicrypt
25.12Cypherpunks
25.13专利
25.14美国出口法规
25.15其他国家的密码进出口
25.16合法性问题
附录A 源代码
A.1DES
A.2LOL191
A.31IDEA
A.4GOST
A.5BLOWFISH
A.63-Way
A.7RC5
A.8A5
A.9SEAL
参考文献
MattBlaze跋
译者序
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计算机算法
1.7大数
第一部分 密码协议
第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.2Merkle的难题
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.3SKEY
3.2.4使用公开密钥密码术鉴别
3.2.5使用联锁协议互相鉴别
3.2.6SKID
3.2.7消息鉴别
3.3鉴别和密钥交换
3.3.1Wide-MouthFrog 协议
3.3.2Yahalom协议
3.3.3Needham-Schroeder协议
3.3.4Otway-Rees 协议
3.3.5Kerberos协议
3.3.6Neuman-Stubblebine协议
3.3.7DASS协议
3.3.8DEnning-Sacco协议
3.3.9Woo- 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.1DNA计算法
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.5X9.17密钥产生
8.1.6DoD密钥产生
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.4OFB模式中的序列密码
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用于存储的加密数据
1 0.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.3NP完全问题
11.3数论
11.3.1模运算
11.3.2素数
11.3.3最大公因子
11.3.4求模逆元
11.3.5求系数
11.3.6费尔马小定理
11.3.7欧拉φ函数
11.3.8中国剩余定理
11.3.9二次剩余
11.3.10勒让德符号
11.3.11雅可比符号
11.3.12Blum整数
11.3.13生成元
11.3.14伽罗瓦域中的计算
11.4 因子分解
11.5 素数的产生
11.5.1Solovag- Strassen
11.5.2Lehmann
11.5.3Rabin-Miller
11.5.4实际考虑
11.5.5强素数
11.6有限域上的离散对数
第12章 数据加密标准
12.1背景
12.1.1标准的开发
12.1.2标准的采用
12.1.3DES设备的鉴定和认证
12.1.41987年的标准
12.1.51993 年的标准
12.2DES的描述
12.2.1算法概要
12.2.2初始置换
12.2.3密钥置换
12.2.4扩展置换
12.2.5S-盒代替
12.2.6P-盒置换
12.2.7末置换
12.2.8DES解密
12.2.9DES的工作模式
12.2.10 DES的硬件和软件实现
12.3DES的安全性
12.3.1弱密钥
12.3.2补密钥
12.3.3代数结构
12.3.4密钥的长度
12.3.5迭代的次数
12.3.6S-盒的设计
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.3DESX
12.6.4 CRYPT(3)
12.6.5GDES
12.6.6更换S-盒的DES
12.6.7RDES
12.6.8snDES
12.6.9使用相关密钥S-盒的DES
12.7DES现今的安全性如何
第13章 其他分组密码算法
13.1Lucifer算法
13.2Mad ryga 算法
13.2.1Mad ryga 的描述
13.2.2Madryga 的密码分析
13.3NewDES算法
13.4FEAL算法
13.4.1FEAL的描述
13.4.2FEAL的密码分析
13.4.3专利
13.5REDOC算法
13.5.1ReDOCⅢ
13.5.2 专利和许可证
13.6LOKI算 法
13.6.1LOKI91
13.6.2LOK191的描述
13.6.3LOKI91的密码分析
13.6.4专利和许可证
13.7Khufu和Khafre算法
13.7.1Khufu
13.7.2Khafre
13.7.3专利
13.8 RC2算法
13.9IDEA算法
13.9.1IDEA
13.9.2IDEA的描述
13.9.3IDEA的速度
13.9.4IDEA的密码分析
13.9.5IDEA的操作方式和变型
13.9.6敬告使用者
13.9.7专利和许可证
13.10 MMB 算法
13.11CA-1.1算法
13.12Skipjack算法
第14章 其他分组密码算法
(续)
14.1GOST算法
14.1.1GOST的描述
14.1.2GOST的密码分析
14.2 CAST算法
14.3Blowfish算法
14.3.1Blowfish的描述
14.3.2Blowfish的安全性
14.4SAFER算法
14.4.1SAFERK-64的描述
14.4.2SAFERK-128
14.4.3SAFERK-64的安全性
14.53-WAY算法
14.6Crab算法
14.7SXAL8/MBAL算法
14.8RC5算法
14.9其他分组密码算法
14.10分组密码设计理论
14.10.1Feistel网络
14.10.2简单关系
14.10.3群结构
14.10.4弱密钥
14.10.5强的抗差分攻击和线性
攻击
14.10.6S-盒的设计
14.10.7设计分组密码
14.11使用单向散列函数
14.11.1Kam
14.11.2Luby-Rac koff
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.2ECB+OFB
15.4.3xDES
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.1Geffe发生器
16.4.2推广的Geffe发生器
16.4.3Jennings发生器
16.4.4Beth-Piper停走式发生器
16.4.5交替停走式发生器
16.4.6双侧停走式发生器
16.4.7门限发生器
16.4.8自采样发生器
16.4.9多倍速率内积式发生器
16.4.10求和式发生器
16.4.11DNRSG
16.4.12Gollmann级联
16.4.13收缩式发生器
16.4.14自收缩式发生器
16.5A5算法
16.6HughesXPD/KPD算法
16.7Nanoteq算法
16.8Rambutan算法
16.9附加式发生器
16.9.1Fish发生器
16.9.2Pike发生器
16.9.3Mush发生器
16.10Gifford算法
16.11M算法
16.12PKZIP算法
第17章 其他序列密码和真随机序
列发生器
17.1RC4算法
17.2SEAL算法
17.2.1伪随机函数族
17.2.2SEAL的描述
17.2.3SEAL的安全性
17.2.4专利和许可证
17.3WAKE算法
17.4带进位的反馈移位寄存器
17.5使用FCSR的序列密码
17.5.1级联发生器
17.5.2FCSR组合发生器
17.5.3CFSR/FCSR加法/奇偶级联
17.5.4交替停走式发生器
17.5.5收缩式发生器
17.6非线性反馈移位寄存器
17.7其他序列密码
17.7.1Pless发生器
17.7.2蜂窝式自动发生器
17.7.31/p发生器
17.7.4crypt(1)
17.7.5其他方案
17.8序列密码设计的系统理论方法
17.9序列密码设计的复杂性理论
方法
17.9.1Shamir伪随机数发生器
17.9.2Blum-Micali发生器
17.9.3RSA
17.9.4Blum ,Blum和Shub
17.10序列密码设计的其他方法
17.10.1RipvanWinkle密码
17.10.2Diffie随机序列密码
17.10.3Maurer随机序列密码
17.11级联多个序列密码
17.12选择序列密码
17.13从单个伪随机序列发生器产生多
个序列
17.14真随机序列发生器
17.14.1RAND表
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.2Snefru算法
18.3N-Hash算法
18.4MD4算法
18.5MD5算法
18.5.1MD5的描述
18.5.2MD5的安全性
18.6MD2算法
18.7安全散列算法
18.7.1SHA的描述
18.7.2SHA的安全性
18.8RIPE-MD算法
18.9HAVAL算法
18.10其他单向散列函数
18.11使用对称分组算法的单向散列函
数
18.11.1散列长度等于分组长度的方
案
18.11.2改进的Davies-Meyer
18.11.3Preneel-Bosselaers-Govaerts-
Vandewalle
18.11.4Quisqater-Girault
18.11.5LOKI双分组
18.11.6并行Davies-Meyer
18.11.7串联和并联Davies-Meyer
18.11.8MDC-2和MDC-4
18.11.9AR散列函数
18.11.10COST散列函数
18.11.11其他方案
18.12使用公开密钥算法
18.13选择单向散列函数
18.14消息鉴别码
18.14.1CBC-MAC
18.14.2 信息鉴别算法
18.14.3双向MAC
18.14.4Juenenan方法
18.14.5RIPE- MAC
18.14.6IBC-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.3RSA算法
19.3.1RSA的硬件实现
19.3.2RSA的速度
19.3.3软件加速
19.3.4RSA的安全性
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.4Pohl ig-Hellman 算法
19.5Rabin算法
19.6ElGamal算法
19.6.1ElGamal签名
19.6.2ElGamal加密
19.6.3速度
19.6.4专利
19.7McEliece 算法
19.8椭圆曲线密码系统
19.9LUC算法
19.10有限自动机公开密钥密码系统
第20章 公开密钥数字签名算法
20.1数字签名算法
20.1.1对通告的反应
20.1.2DSA的描述
20.1.3快速预计算
20.1.4DSA的素数产生
20.1.5使用DSA的ElGama1加密
20.1.6使用DSA的RSA加密
20.1.7DSA的安全性
20.1.8攻击k
20.1.9公共模数的危险
20.1.10颤切中的顺下信道
20.1.11专利
20.2 DSA的变型
20.3 GOST签名算法
20.4 离散对数签名方案
20.5 One-Schnorr-Shamir签名方案
20.6 ESIGN签名方案
20.6.1 ESIGN的安全性
20.6.2 专利
20.7 细胞自动机
第21章 鉴别方案
第22章 密钥交换算法
第23章 协议的专用算法
第四部分 真实世界
第24章 实现方案实例
24.1IBM秘密密钥管理协议
24.2MITRENET
24.3ISDN
24.3.1密钥
24.3.2呼叫
24.4STU-Ⅲ
24.5Kerberos
24.5.1Kerbeeros模型
24.5.2Kerberos工作原理
24.5.3凭证
24.5.4Kerberos第5版消息
25.5.5最初票据的获取
24.5.6服务器票据的获取
24.5.7服务请求
24.5.8Kerberos第4版
24.5.9Kerberos的安全性
24.5.10 许可证
24.6KryptoKnight
24.7SESAME
24.8IBM通用密码体系
24.9ISO鉴别框架
24.9.1证书
24.9.2鉴别协议
24.10保密性增强邮件
24.10.1PEM的有关文件
24.10.2证书
24.10.3PEM的消息
24.10.4PEM的安全性
24.10.5TIS/PEM
24.10.6RIPEM
24.11消息安全协议
24.12Pret tyGood Privacy
24.13智能卡
24.14公开密钥密码学标准
24.15通用电子支付系统
26.16Clipper
24.17Capstone
24.18AT&T3600型电话保密设备
第25章 政治
25.1国家安全局
25.2国家计算机安全中心
25.3国家标准技术所
25.4RSA数据安全有限公司
25.5公开密钥合作商
25.6国际密码研究协会
25.7RACE完整性基本评估
25.8对欧洲的有条件访问
25.9ISO/IEC9979
25.10专业人员、公民自由和工业组织
25.10.1电子秘密信息中心
25.10.2电子战线基金会
25.10.3计算机协会
25.10.4电气和电子工程师学会
25.10.5软件出版商协会
25.11Scicrypt
25.12Cypherpunks
25.13专利
25.14美国出口法规
25.15其他国家的密码进出口
25.16合法性问题
附录A 源代码
A.1DES
A.2LOL191
A.31IDEA
A.4GOST
A.5BLOWFISH
A.63-Way
A.7RC5
A.8A5
A.9SEAL
参考文献
MattBlaze跋
猜您喜欢