目录
第1章 密码学引论 1 1.1 密码学在信息安全中的作用 2 1.1.1 信息安全面临的威胁 2 1.1.2 信息安全需要的基本安全服务 3 1.2 密码学导引 3 1.2.1 密码学历史 3 1.2.2 密码学基本概念 4 1.2.3 密码体制的分类 4 1.3 信息论基本概念 5 1.4 计算复杂性 7 本章小结 8 参考文献 8 问题讨论 9 第2章 流密码 10 2.1 概述 11 2.2 流密码的结构 12 2.2.1 同步流密码 12 2.2.2 自同步流密码 13 2.3 反馈移位寄存器与线性反馈移位寄存器 13 2.3.1 反馈移位寄存器 13 2.3.2 线性反馈移位寄存器 14 2.3.3 LFSR示例 15 2.3.4 m序列与最长移位寄存器 17 2.3.5 m序列的破译 18 2.3.6 近期新研究方向 19 2.4 伪随机序列的性质 20 2.4.1 随机序列 20 2.4.2 Golomb随机性公设 21 2.4.3 m序列的伪随机性 21 2.4.4 线性复杂度 22 2.5 基于LFSR的伪随机序列生成器 23 2.5.1 滤波生成器 23 2.5.2 组合生成器 23 2.5.3 钟控生成器 24 2.6 其他构造方法 24 2.6.1 勒让德序列 25 2.6.2 椭圆曲线序列 25 2.7 实用流密码 26 2.7.1 A5算法 27 2.7.2 RC4算法 29 2.7.3 中国流密码 31 2.7.4 欧洲序列密码计划(eStream) 34 本章小结 36 参考文献 36 问题讨论 37 第3章 分组密码 38 3.1 分组密码概述 39 3.2 分组密码的研究现状 39 3.3 分组密码的设计原理 40 3.3.1 乘积组合 40 3.3.2 扩散 40 3.3.3 混淆 40 3.4 数据加密标准DES 41 3.4.1 DES简介 41 3.4.2 DES加密算法 41 3.4.3 初始置换IP和逆序置换 43 3.4.4 轮函数 43 3.4.5 扩展E变换 44 3.4.6 S盒 44 3.4.7 P盒 46 3.4.8 子密钥的产生 47 3.4.9 DES解密算法 48 3.4.10 DES的弱密钥 49 3.4.11 DES示例 49 3.4.12 三重DES的变形 50 3.5 靠前数据加密算法 51 3.5.1 IDEA算法的特点 51 3.5.2 基本运算单元 52 3.5.3 IDEA的速度 53 3.5.4 IDEA加密过程 53 3.5.5 IDEA的每一轮迭代 54 3.5.6 输出变换 55 3.5.7 子密钥的生成 56 3.5.8 IDEA解密过程 56 3.6 AES算法Rijindael 56 3.6.1 算法结构 57 3.6.2 Rijindael加密过程 58 3.6.3 轮函数 59 3.6.4 字节替换 59 3.6.5 行移位 60 3.6.6 列混合 61 3.6.7 轮密钥加 62 3.6.8 子密钥的产生 62 3.6.9 Rijindael解密过程 63 3.6.10 小结 64 3.7 SM4算法 64 3.8 分组密码工作模式 67 3.8.1 电子密码本模式 67 3.8.2 密文块链接模式 67 3.8.3 密文反馈模式 68 3.8.4 输出反馈模式 69 3.8.5 AES CTR 70 3.8.6 AES GCM 71 3.8.7 XTS-AES 72 3.9 认证加密 73 3.9.1 概述 73 3.9.2 HMAC 74 3.9.3 OCB认证加密模式 75 3.9.4 Ascon 77 3.9.5 带相关数据的认证加密之由来 80 3.10 差分密码分析 81 3.11 线性分析 83 本章小结 88 参考文献 88 问题讨论 89 第4章 公钥密码 90 4.1 普通公钥加密 91 4.1.1 公钥密码概念的提出 91 4.1.2 基于大整数分解问题的公钥密码体制―RSA公钥密码体制 93 4.1.3 基于二次剩余问题的公钥密码体制 94 4.1.4 基于离散对数问题的公钥密码体制 94 4.1.5 基于背包问题的公钥密码体制 95 4.1.6 椭圆曲线公钥密码体制 96 4.2 基于身份的加密 98 4.2.1 双线性Diffie-Hellman假设 98 4.2.2 Boneh和Franklin的IDB密码体制 98 4.3 基于属性的加密 99 4.3.1 树形访问结构 99 4.3.2 密文策略的属性基加密方案的定义 100 4.3.3 密文策略的属性基加密方案的安全模型 100 4.3.4 密文策略的属性基加密方案的设计 101 4.4 后量子公钥加密 102 4.4.1 NTRU公钥密码体制 102 4.4.2 基于编码的公钥密码体制 103 4.4.3 基于解码问题的公钥密码―McEliece公钥密码 104 4.4.4 多变量公钥密码体制 105 4.4.5 基于格的公钥密码体制 107 4.5 SM2公钥加密 109 4.5.1 SM2公钥加密算法 109 4.5.2 相关符号 109 4.5.3 加密算法及流程 110 4.5.4 解密算法及流程 111 4.6 SM9公钥加密 112 4.6.1 SM9公钥加密算法 112 4.6.2 相关符号 112 4.6.3 加密算法及流程 113 4.6.4 解密算法及流程 113 本章小结 115 参考文献 116 问题讨论 116 第5章 认证和哈希函数 117 5.1 消息认证 118 5.2 消息认证方法 118 5.2.1 消息加密 118 5.2.2 消息认证码 119 5.2.3 哈希函数 120 5.3 MD5 122 5.3.1 MD5的整体描述 122 5.3.2 单个512比特的HMD5处理过程 123 5.4 SHA-1 127 5.4.1 SHA-1的整体描述 127 5.4.2 单个512比特的HSHA处理过程 128 5.5 MD5与SHA-1的比较 131 5.6 对哈希函数的攻击现状 131 5.6.1 直接攻击 131 5.6.2 生日攻击 131 5.6.3 差分攻击 132 5.7 SHA-256算法 134 5.7.1 SHA-256算法描述 135 5.7.2 SHA-256算法在区块链中的应用 137 5.8 SHA-3(Keccak算法) 137 5.9 SM3算法 141 5.9.1 常量和函数 141 5.9.2 SM3算法描述 142 本章小结 143 参考文献 143 问题讨论 144 第6章 数字签名 145 6.1 数字签名体制 146 6.2 RSA数字签名体制 146 6.3 Rabin签名体制 147 6.4 基于离散对数问题的签名体制 147 6.4.1 ElGamal签名体制 147 6.4.2 Schnorr签名体制 148 6.4.3 数字签名标准 149 6.5 基于解码问题的数字签名 149 6.6 基于椭圆曲线的数字签名体制 150 6.7 基于身份的数字签名体制 150 6.7.1 基于身份的数字签名体制的定义 151 6.7.2 基于身份的数字签名体制的安全性需求 152 6.7.3 使用双线性对技术的IBS 152 6.7.4 不使用双线性对技术的IBS 153 6.8 基于属性的数字签名算法 154 6.8.1 基于属性的数字签名体制的定义 154 6.8.2 基于属性的数字签名体制的安全性需求 155 6.8.3 使用双线性对技术的ABS 156 6.9 后量子签名算法 156 6.9.1 基于格的后量子签名算法 157 6.9.2 基于哈希函数的后量子签名算法 160 6.9.3 基于安全多方计算的后量子签名算法 162 6.10 SM2数字签名算法 163 6.10.1 相关符号 164 6.10.2 数字签名的生成算法及流程 164 6.10.3 数字签名的验证算法及流程 165 6.11 SM9数字签名算法 166 6.11.1 相关符号 167 6.11.2 数字签名的生成算法及流程 168 6.11.3 数字签名的验证算法及流程 168 本章小结 169 参考文献 170 问题讨论 171 第7章 密钥管理 172 7.1 概述 173 7.2 基本概念 173 7.2.1 密钥分类 173 7.2.2 密钥生命周期 174 7.2.3 密钥产生 175 7.2.4 密钥生命期 175 7.2.5 密钥建立 175 7.2.6 密钥的层次结构 176 7.2.7 密钥管理生命周期 176 7.3 密钥建立模型 178 7.3.1 点对点的密钥建立模型 178 7.3.2 同一信任域中的密钥建立模型 178 7.3.3 多个信任域中的密钥建立模型 179 7.4 公钥传输机制 181 7.4.1 鉴别树 181 7.4.2 公钥证书 183 7.4.3 基于身份的系统 183 7.5 密钥传输机制 184 7.5.1 使用对称密码技术的密钥传输机制 185 7.5.2 使用对称密码技术和可信第三方的密钥传输机制 186 7.5.3 使用公钥密码技术的点到点的密钥传输机制 186 7.5.4 同时使用公钥密码技术和对称密码技术的密钥传输机制 187 7.6 密钥导出机制 188 7.6.1 基本密钥导出机制 188 7.6.2 密钥计算函数 188 7.6.3 可鉴别的密钥导出机制 189 7.6.4 线性密钥导出机制 189 7.6.5 树状密钥导出机制 190 7.7 密钥协商机制 191 7.7.1 Diffie-Hellman密钥协商机制 192 7.7.2 端到端的协议 193 7.7.3 使用对称密码技术的密钥协商机制 193 7.8 基于SM2的密钥交换协议 194 7.9 基于SM9的密钥交换协议 196 7.10 密钥的托管/恢复 198 7.11 现实中的密钥管理方案 199 7.12 硬件辅助的密钥管理 200 本章小结 201 参考文献 201 问题讨论 201 第8章 不错签名 202 8.1 数字签名概述 203 8.2 盲签名 204 8.2.1 盲签名的基本概念 204 8.2.2 盲签名的安全性需求 204 8.2.3 盲签名的基本设计思路 204 8.2.4 基于RSA问题的盲签名 205 8.2.5 基于离散对数问题的盲签名 206 8.2.6 部分盲签名 207 8.3 群签名 208 8.3.1 群签名的基本概念 209 8.3.2 群签名的安全性需求 209 8.3.3 一个简单的群签名体制 210 8.3.4 另一个简单的群签名体制 210 8.3.5 短的群签名体制 211 8.3.6 成员撤销 213 8.4 环签名 214 8.4.1 环签名的基本概念 215 8.4.2 环签名的安全性需求 215 8.4.3 不具有可链接性的环签名 216 8.4.4 具有可链接性的环签名 217 8.5 民主群签名 218 8.5.1 民主群签名的定义 218 8.5.2 民主群签名的安全性需求 220 8.5.3 Manulis民主群签名 220 8.6 具有门限追踪性的民主群签名 222 8.6.1 群体初始化 223 8.6.2 密钥生成 223 8.6.3 签名生成 223 8.6.4 签名验证 224 8.6.5 签名人追踪 225 8.7 多重签名 225 8.7.1 流氓密钥攻击 226 8.7.2 安全模型 226 8.7.3 多重签名的不可伪造性 227 8.7.4 一种多签名体制 228 8.7.5 具有更紧归约的多重签名体制 230 8.8 聚合签名 231 8.8.1 聚合签名的定义 231 8.8.2 复杂度假设 231 8.8.3 具有指定验证者的聚合签名方案 232 8.8.4 具有常数个双线性对运算的聚合签名方案 233 8.8.5 基于身份的聚合签名方案 233 8.9 数字签密 234 8.9.1 研究现状 234 8.9.2 SC-KEM与SC-tKEM 235 8.9.3 SC-KEM与SC-tKEM的保密性模型 235 8.9.4 新的SC-KEM与SC-tKEM保密性模型 237 8.9.5 SC-KEM与SC-tKEM的不可伪造性模型 239 8.9.6 具体方案设计 240 本章小结 242 参考文献 242 问题讨论 245 第9章 抗泄露对称密码 246 9.1 概述 247 9.2 抗泄露密码的基本概念、定义与引理 248 9.2.1 最小熵、Metric熵、HILL熵与不可预测熵 248 9.2.2 最小熵的链式规则与密集模型定理 249 9.2.3 随机数提取器、通用哈希函数族及剩余哈希引理 250 9.3 抗泄露流密码算法的设计 251 9.3.1 FOCS 2008/Eurocrypt 2009抗泄露流密码 252 9.3.2 CCS 2010/CHES 2012/CT-RSA 2013抗泄露流密码 255 9.4 旁路攻击 257 9.4.1 简单功耗分析 257 9.4.2 差分功耗分析 259 9.5 掩码防护技术 260 9.5.1 基本定义 261 9.5.2 掩码方案 262 9.6 抗泄露密码的未来发展趋势 263 本章小结 264 参考文献 264 问题讨论 266 第10章 OpenSSL与其他相关密码库 267 10.1 OpenSSL背景 268 10.1.1 SSL/TLS协议背景 268 10.1.2 OpenSSL开源项目 268 10.2 OpenSSL在Linux平台上的快速安装 269 10.3 OpenSSL密码算法库 270 10.3.1 对称加密算法 270 10.3.2 非对称加密算法 270 10.3.3 摘要算法 271 10.3.4 密钥分发和有关I的编码算法 271 10.3.5 其他自定义功能 271 10.4 SSL/TLS协议库 272 10.5 OpenSSL中的应用程序 278 10.5.1 指令 278 10.5.2 基于指令的应用 280 10.5.3 基于函数的应用 280 10.6 NTL 280 10.7 GmSSL 281 10.8 全同态运算密码库 282 10.8.1 SEAL密码库简介 282 10.8.2 BFV方案的使用 283 10.8.3 CKKS方案的使用 286 10.9 双线性对运算密码库 289 10.9.1 JPBC库简介 289 10.9.2 BLS签名算法使用示例 290 本章小结 292 问题讨论 292
内容摘要
1.1密码学在信息安全中的作用
信息安全涉及的范围很广,无论在军事方面,还是日常生活方面,都会涉及信息安全的问题。就计算机通信而言,其处理的信息可以归纳成两类:一类是仅在计算机内部处理和存储的信息:另一类是在计算机之间相互传递的信息。对于仅在计算机内部处理和存储的信息,希望不被非法人员访问,即禁止非法用户读取计算机内的信息;对于后一类,发送者希望能够控制在公开信道上传输的信息具有完整性和不可伪造性等。
1.1.1信息安全面临的威胁
信息安全面临多方面的威胁,如意外事故、自然灾害及人为恶意攻击等。人为恶意攻击是有目的的ữ坏,可以分为干动攻击和被动攻击。主动攻击是指以各种方式有选择地破坏信息(如修改、删除、伪造、添加、重传、乱序、冒充及传播病毒等)。被动攻击是指在不干扰信息系统正常工作的情况下,进行截获、窃取、破译和业务流量分析等。
人为恶意攻击主要有下列8种手段。
(1)窃听:攻击者通过监视网络数据获得敏感信息。
(2)重传:攻击者事先截获部分或全部信息,再将此信息发送给接收者。
(3)伪造:攻击者伪造一个信息,将伪造的信息以他人身份发送给接收者。
(4)篡改:攻击者对合法用户之间的通信信息进行修改、删除、插入,再发送给接收者。
(5)行为否认:通信实体否认已经发生的行为。
(6)拒绝服务攻击:攻击者通过某种方法使系统响应变慢甚至瘫痪,阻止合法用户获得服务。
(7)非授权访问:不按照设定的安全策略要求使用网络或计算机资源的行为都可以看作非授权访问。非授权访问主要有假冒、身份攻击、非法用户进入网络系统进行违法操作,以及合法用户以未授权方式进行操作等形式。
(8)传播病毒:迪过网络传播计算机病毒,其破坏性非常大,而且难以防范。例如众所周知的CIH病毒、“爱虫”病毒,都具有极大的破坏性。
人为恶意攻击具有智能性、严重性、隐蔽性和多样性等特性。
(1)智能性:指恶意攻击者大都具有相当高的专业技术和熟练的操作技能,对攻击的环境经过了周密的预谋和精心策划。
(2)严重性:指涉及金融资产的网络信息系统受到恶意攻击,往往由于资金损失巨大而使金融机构和企业蒙受重大损失,甚至破产,同时也给社会稳定带来负面影响。
(3)隐蔽性:指人为恶意攻击的隐蔽性很强,不易引起怀疑,破案的技术难度大。在一般情况下,其犯罪的证据存在于软件的数据和信息资料之中,若无专业知识很难获取侦破证据。相反,犯罪行为人却可以很容易地毁灭证据。计算机犯罪现场也不像传统犯罪现场那样明显。
(4)多样性:指随着互联网的迅速发展,网络信息系统中的恶意攻击也随之发展变化。
出于经济利益的巨大诱惑,近年来,各种恶意攻击主要集中于电子商务和电子金融领域。攻击手段日新月异,目的包括偷税漏税、利用自动结算系统洗钱,以及在网络上进行营利性的商业间谍活动等。
信息安全面临的威胁也可能来自人为的无意失误。例如,操作员安全配置不当、用户安全意识不强、用户口令选择不慎、用户将自己的账号随意转借他人或与别人共享等都会给网络安全带来威胁。事实上,人为恶意攻击虽然会造成重大后果,但更多的安全事件其实是由于人们缺乏安全意识或管理不善造成的。
1.1.2信息安全需要的基本安全服务
要想使通信系统尽可能地正常工作,需要提供几个基本安全服务:保密性、完整性、不可否认性及可用性服务。
(1)保密性:保密性指信息不被非指定对象获得。信息的保密性需求来自消息使用的环境要求,如军队、民事机构等部门对访问人员的限制。特别是军队,通信或军事指挥部门的信息不能被敌方获得。为了达到对信息获取人员的限制,需要对信息的存储和传输提供保密性服务,使没有权限的人员不能获得这些保密信息。
密码技术是提供保密性的有效机制。密码技术通过变换,把数据内容变换成不易读懂的数据,同时又能够让授权的用户恢复出原来的数据。
(2)完整性:完整性指数据来源的完整性和数据内容的完整性。数据来源的完整性包含数据来源的准确性和可信性。数据内容的完整性指接收到的数据与正确来源生成的数据的一致性。
(3)不可否认性:不可否认性指数据的生成者或发送者不能对自己做过的事进行抵赖。
当发送者对发送过的消息进行否认时,第三方能够对发送者的行为进行判断、裁决。
密码技术能够为上述服务提供基本保院,还能够提供其他更多的安全服务,如访问控制、身份认证等。
1.2密码学导引
1.2.1密码学历史
密码学是一门古老的学科,它通过把人们能够读懂的消息变换成不易读懂的消息来隐藏消息内容,使窃听者无法理解消息的内容,同时又能让合法用户把变换的结果还原成能够读懂的消息。
精彩内容
本书共10章,主要介绍密码学的基本原理与设计方法,其中包括对称密码算法与非对称密码算法、数字签名算法及哈希函数的设计原理、密钥管理体制的设计方法,以及主流密码库的使用说明等。本次修订的内容体现在第2章至第10章,特别新增了中国流密码、国产分组密码、认证加密、基于属性的加密、国产公钥加密、国产哈希算法、基于属性的数字签名、国产数字签名、后量子签名、国产密钥交换协议、聚合签名、旁路攻击和掩码防护技术,以及全同态运算密码库和双线性对运算密码库等内容。本书涵盖了传统密码体制、基于属性的密码体制、后量子密码、抗泄露对称密码、主要的国产密码算法和主流密码库,体现了经典与前沿热点相融合、理论与应用相结合的特色。本书可作为高等院校计算机、信息安全和网络空间安全等专业本科生的教材,也可作为电子信息与通信和信息管理等专业研究生的选读教材,还可供信息安全、计算机及通信等领域的工程技术人员和管理人员参考。
以下为对购买帮助不大的评价