描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302450078丛书名: 21世纪高等学校信息安全专业规划教材
目录
第1章引言
1.1安全攻击
1.2安全机制
1.3安全目标与安全需求
1.4安全服务模型
1.4.1支撑服务
1.4.2预防服务
1.4.3检测与恢复服务
1.5安全目标、安全需求、安全服务和安全机制之间的关系
1.6网络安全模型
1.7网络安全协议
1.8关键术语
1.9习题1
第2章数学基础
2.1数论
2.1.1因子
2.1.2素数
2.1.3同余与模运算
2.1.4费马定理和欧拉定理
2.1.5素性测试
2.1.6中国剩余定理
2.1.7离散对数
2.1.8二次剩余
2.2代数基础
2.2.1群和环
2.2.2域和有限域
2.3计算复杂性理论
2.3.1问题的复杂性
2.3.2算法的复杂性
2.4单向函数
2.5关键术语
2.6习题2
第3章对称密码技术
3.1基本概念
3.2对称密码模型
3.3密码攻击
3.3.1穷举攻击
3.3.2密码攻击类型
3.3.3密码分析方法
3.4古典加密技术
3.4.1单表代换密码
3.4.2多表代换密码
3.4.3多字母代换密码
3.4.4置换密码
3.5数据加密标准
3.5.1DES加密过程
3.5.2DES子密钥产生
3.5.3DES解密
3.5.4DES的强度
3.5.5三重DES
3.6高级加密标准
3.6.1AES的基本运算
3.6.2AES加密
3.6.3字节代换
3.6.4行移位
3.6.5列混淆
3.6.6轮密钥加
3.6.7AES的密钥扩展
3.6.8AES解密算法
3.6.9等价的解密变换
3.6.10AES的安全性
3.7中国商用对称密码算法——SM4
3.7.1SM4加密
3.7.2密钥扩展算法
3.7.3SM4解密
3.7.4SM4的安全性
3.8RC6
3.8.1RC6的加密和解密
3.8.2密钥扩展
3.8.3RC6的安全性和灵活性
3.9流密码
3.9.1流密码基本原理
3.9.2密钥流产生器
3.9.3RC4算法
3.10分组密码工作模式
3.10.1电子密码本模式
3.10.2密码分组链接模式
3.10.3密码反馈模式
3.10.4输出反馈模式
3.10.5计数器模式
3.11随机数的产生
3.11.1真随机数发生器
3.11.2伪随机数发生器
3.12对称密码的密钥分配
3.12.1密钥分配基本方法
3.12.2密钥的分层控制
3.12.3会话密钥的有效期
3.12.4无中心的密钥分配
3.13关键术语
3.14习题3
第4章公钥密码技术
4.1公钥密码体制
4.2公钥密码分析
4.3RSA密码
4.3.1算法描述
4.3.2RSA算法的安全性
4.4ElGamal密码
4.5椭圆曲线密码
4.5.1椭圆曲线的定义
4.5.2椭圆曲线运算规则
4.5.3椭圆曲线密码算法
4.5.4椭圆曲线密码的性能
4.6SM2公钥算法
4.7公钥分配
4.8利用公钥密码分配对称密钥
4.9DiffieHellman密钥交换
4.10关键术语
4.11习题4
第5章消息认证与数字签名
5.1认证
5.2消息认证码
5.2.1MAC的安全要求
5.2.2基于DES的消息认证码
5.3Hash函数
5.3.1散列函数的安全要求
5.3.2SM3
5.3.3MD5
5.3.4SHA512
5.3.5HMAC
5.4数字签名
5.4.1数字签名的基本概念
5.4.2数字签名方案
5.5关键术语
5.6习题5
第6章身份认证与访问控制
6.1身份认证
6.1.1身份认证的基本方法
6.1.2常用身份认证机制
6.1.3OpenID和OAuth认证协议
6.2访问控制概述
6.2.1访问控制的基本概念
6.2.2访问控制技术
6.2.3访问控制原理
6.3自主访问控制
6.4强制访问控制
6.5基于角色的访问控制
6.6关键术语
6.7习题6
第7章网络安全协议
7.1认证协议
7.1.1基于对称密码的认证协议
7.1.2基于公钥密码的认证协议
7.1.3基于密码学中的散列函数的认证
7.2Kerberos协议
7.2.1Kerberos协议概述
7.2.2Kerberos协议的工作过程
7.3SSL协议
7.3.1SSL协议概述
7.3.2SSL记录协议
7.3.3SSL修改密文规约协议
7.3.4SSL告警协议
7.3.5SSL握手协议
7.3.6TLS协议
7.3.7SSL协议应用
7.4IPSec协议
7.4.1IPSec安全体系结构
7.4.2AH协议
7.4.3ESP协议
7.4.4IKE协议
7.5PGP
7.5.1鉴别
7.5.2机密性
7.5.3鉴别与机密性
7.5.4压缩
7.5.5Email兼容性
7.5.6分段与重组
7.5.7PGP密钥管理
7.6关键术语
7.7习题7
第8章公钥基础设施
8.1理论基础
8.1.1网络安全服务
8.1.2密码技术
8.2PKI的组成
8.2.1认证机构
8.2.2证书和证书库
8.2.3证书撤销
8.2.4密钥备份和恢复
8.2.5PKI应用接口
8.3PKI的功能
8.3.1证书的管理
8.3.2密钥的管理
8.3.3交叉认证
8.3.4安全服务
8.4信任模型
8.4.1认证机构的严格层次结构模型
8.4.2分布式信任结构模型
8.4.3Web模型
8.4.4以用户为中心的信任模型
8.5PKI的相关标准
8.5.1X.209 ASN.1基本编码规则
8.5.2X.500
8.5.3X.509
8.5.4PKCS系列标准
8.5.5轻量级目录访问协议
8.6PKI的应用与发展
8.6.1PKI的应用
8.6.2PKI的发展
8.7关键术语
8.8习题8
第9章防火墙
9.1防火墙概述
9.1.1防火墙的基本概念
9.1.2防火墙的作用及局限性
9.1.3防火墙的分类
9.2防火墙技术
9.2.1数据包过滤
9.2.2应用级网关
9.2.3电路级网关
9.3防火墙的体系结构
9.3.1双宿主机防火墙
9.3.2屏蔽主机防火墙
9.3.3屏蔽子网防火墙
9.4关键术语
9.5习题9
第10章入侵检测
10.1入侵检测概述
10.1.1入侵检测的基本概念
10.1.2入侵检测系统基本模型
10.2入侵检测系统分类
10.2.1基于主机的入侵检测系统
10.2.2基于网络的入侵检测系统
10.2.3分布式入侵检测系统
10.3入侵检测系统分析技术
10.3.1异常检测技术
10.3.2误用检测技术
10.4入侵防御系统
10.4.1入侵防御系统的基本概念
10.4.2入侵防御系统的分类
10.4.3入侵防御系统的原理
10.4.4入侵防御系统的技术特征
10.4.5入侵防御系统的发展
10.5关键术语
10.6习题10
第11章恶意代码
11.1计算机病毒
11.1.1计算机病毒的起源与发展
11.1.2计算机病毒的特征
11.1.3计算机病毒的分类
11.1.4计算机病毒的结构和原理
11.2蠕虫病毒
11.2.1蠕虫病毒与一般计算机病毒的异同
11.2.2蠕虫病毒的工作原理
11.2.3典型蠕虫病毒介绍
11.2.4蠕虫病毒的发展与防治
11.3特洛伊木马
11.3.1木马的特征
11.3.2木马的工作原理
11.3.3木马的分类
11.4恶意代码的防治对策
11.4.1计算机病毒的防治
11.4.2其他恶意代码的防治
11.5关键术语
11.6习题11
参考文献
本书系统地介绍了信息安全的基本原理和基本技术。本书主要由四个部分组成: 信息安全的数学基础、信息安全的基本原理和技术(如密码技术、认证和访问控制等)、信息安全技术的应用(如网络安全协议、PKI等)和系统安全(如防火墙、入侵检测等)。本书内容全面、通俗易懂,讲述深入浅出,易于让读者“看透”信息安全基本原理和技术。第3版修正了第2版中的一些错误,根据近年来信息安全的发展和一些读者建议,第3版扩充了部分内容,对有些章节进行了适当的增减。如增加了我国商用密码标准SM2和SM4,在第7章修订了认证协议,删除了第12章无线网络安全。本书作者多年从事信息安全课程的教学和研究,了解学生的需要,本书正是从满足学生需求出发编写的。此外,为了方便教师授课,我们还专门整理了本书的课件以及本书习题的全部答案,可在清华大学出版社网站(www.tup.com.cn)下载。本书由郭亚军整体规划和统稿,郭亚军编写了第1~4章,宋建华编写了第6、7、9、10章,李莉编写了第5、8章,董慧慧编写了第11章,并参与了部分章节的扩充和内容的润色。本书在编写过程中查阅和参考了大量国内外文献和书籍,限于篇幅未能在书后参考文献中一一列出,在此,编者对原作者表示真诚的感谢!在本书的编写过程中得到了许多同行的热情帮助和支持,得到了清华大学出版社编辑们的关心和帮助,在此一并表示衷心的谢意。由于作者水平有限,书中疏漏和不当之处在所难免,敬请读者提出宝贵意见。
作者2017年1月
本章导读
本章主要介绍对称密码技术及其相关的内容,包括一些加密算法、密钥的产生和密钥的分配等。 对称密码是一种加密密钥和解密密钥相同的密码体制。 对称密码分为分组密码和流密码。分组密码每次操作(如加密和解密)是针对一个分组而言。流密码则每次加密(或者解密)一位或者一个字节。 对密码的攻击方法有基于密码算法性质的密码分析和穷举搜索攻击。 从发展阶段来看,对称密码主要分为两种: 20世纪70年代以前的对称密码(主要指计算机出现以前)和20世纪70年代以后的对称密码。 我们称20世纪70年代以前的对称密码为古典加密技术,主要使用代换或者置换技巧。20世纪70年代以后的对称密码则同时使用代换和置换技巧。 古典加密技术分为两类: 一类是单字母代换密码,它将明文的一个字符用相应的一个密文字符代替。另一类是多字母代换密码,它是对多于一个字母进行代换。单字母代换密码又分为单表代换密码和多表代换密码。 DES是第一个加密标准,它与古典加密技术不一样,DES同时使用了代换和置换两种技巧。用56位密钥加密64位明文。 AES是用来取代DES的高级加密标准,其结构与DES不同,它是用128、192或者256位密钥加密128位的分组。 SM4是我国官方公布的第一个商用密码算法,它是一种分组对称密码算法,用128位密钥加密128位的分组。 RC6是RSA公司提交给NIST的一个候选高级加密标准算法,其效率非常高。 RC4是被广泛使用的一种同步流密码。 在密码学中的很多场合下都要使用随机数,安全的随机数应该满足随机性和不可预测性。 密钥分配为通信的双方发送会话密钥。
密码技术是信息系统最重要的安全机制。密码技术主要分为对称密码技术(也称单钥或者传统密码技术)和非对称密码技术(也称双钥或者公钥密码技术)。在对称密码技术中,加密密钥和解密密钥相同,或者一个密钥可以从另一个密钥导出。而非对称密码技术则使用两个密钥,加密密钥和解密密钥不相同。对称密码技术主要使用两种技巧: 代换和置换。代换是将明文中的每个元素映射成另一个元素。置换是将明文中的元素重新排列。在20世纪70年代以前的加密技术都是对称加密技术,并且在这些加密技术中只使用了代换或者置换技巧。这个时期的加密技术也称为古典加密技术。在20世纪70年代以后出现的对称加密技术则同时使用了代换和置换两种技巧。这两个阶段的加密技术还有一个典型区别: 古典加密技术一般将加密算法保密,而现代的对称加密技术则公开加密算法,加密算法的安全性只取决于密钥,不依赖于算法。非对称密码技术则产生于20世纪70年代。
3.1基 本 概 念
密码学(Cryptology)是以研究秘密通信为目的,即对所要传送的信息采取一种秘密保护,以防止第三者对信息进行窃取的一门学科。密码学作为数学的一个分支,包括密码编码学(Cryptography)和密码分析学(Cryptanalysis)两部分。密码编码学是研究加密原理与方法,使消息保密的技术和科学,它的目的是掩盖消息内容。密码分析学则是研究破解密文的原理与方法。密码分析者(Cryptanalyst)是从事密码分析的专业人员。采用加密的方法伪装消息,使得未授权者不可理解被伪装的消息。被伪装的原始消息(Message)称为明文(Plaintext)。将明文转换为密文的过程称为加密(Encryption),加了密的消息称为密文(Ciphertext),
图3.1加密解密过程
而把密文转变为明文的过程称为解密(Decryption)。加密解密过程如图3.1所示。将明文转换为密文的算法称为密码(Cipher)。一个加密系统采用的基本工作方式叫做密码体制(Cryptosystem)。实际上在密码学中的“系统或体制(System)”、“方案(Scheme)”和“算法(Algorithm)”等术语本质上是一回事,在本书中我们也将使用这些术语。加密和解密算法通常是在一组密钥(Key)控制下进行的,分别称为加密密钥和解密密钥。如果加密密钥和解密密钥相同,则密码系统为对称密码系统。
3.2对称密码模型
对称密码也称传统密码,它的特点是发送方和接收方共享一个密钥。对称密码分为两类: 分组密码(Block Ciphers)和流密码(Stream Ciphers)。分组密码也称为块密码,它是将信息分成一块(组),每次操作(如加密和解密)是针对一组而言。流密码也称序列密码,它每次加密(或者解密)一位或者一个字节。
一个对称密码系统(也称密码体制)由5个部分组成。用数学符号描述为S={M,C,K,E,D},如图3.2所示。
图3.2对称密码系统模型
(1) 明文空间M,表示全体明文的集合。(2) 密文空间C,表示全体密文的集合。(3) 密钥空间K,表示全体密钥的集合,包括加密密钥和解密密钥。(4) 加密算法E,表示由明文到密文的变换。(5) 解密算法D,表示由密文到明文的变换。
在发送方,对于明文空间的每个明文,加密算法在密钥的作用下生成对应的密文。接收方将接收的密文,用解密算法在解密密钥的控制下变换成明文。我们可以看到加密算法有两个输入,一个是明文; 另一个是密钥。加密算法的输出是密文。解密算法本质上是加密算法的逆运行,解密算法的输入是密文和密钥,输出是明文。
对明文M用密钥K,使用加密算法E进行加密,常常表示为Ek(M),同样用密钥K使用解密算法D对密文C进行解密,表示为Dk(C)。在对称加密体制中,解密密钥相同,有:
C=Ek(M)
M=Dk(C)=Dk(Ek(M))
从对称密码模型可以看到,发送方和接收方主要进行加密和解密运算,我们希望这个运算越容易越好,对于攻击者而言,我们希望他们破译密文的计算越难越好。因此一个好的密码体制至少要满足下面几个条件。
(1) 已知明文M和加密密钥K时,易于计算C=Ek(M)。(2) 加密算法必须足够强大,使破译者不能仅根据密文破译消息,即在不知道解密密钥K时,由密文C计算出明文M是不可行的。(3) 由于对称密码系统双方使用相同的密钥,因此还必须保证能够安全地产生密钥,并且能够以安全的形式将密钥分发给双方。(4) 对称密码系统的安全只依赖于密钥的保密,不依赖于加密和解密算法的保密。
3.3密 码 攻 击
分析一个密码系统是否安全,一般是在假定攻击者知道所使用的密码系统情况下进行分析的。一般情况下,密码分析者可以得到密文,知道明文的统计特性、加密体制、密钥空间及其统计特性,但不知道加密截获的密文所用的特定密钥。这个假设称为Kerckhoff假设。分析一个密码系统的安全性一般是建立在这个假设的基础上。当然,如果攻击者不知道所使用的密码体制,那么破译是更难的。但是,不应当把密码系统的安全性建立在攻击者不知道所使用的密码体制这个前提之下。因此,在设计一个密码系统时,其目的应当是在Kerckhoff假设下达到一定的安全程度。攻击对称密码体制有两种方法: 密码分析和穷举攻击(Brute Force Search)。密码分析是依赖加密算法的性质和明文的一般特征等,试图破译密文得到明文或试图获得密钥的过程。穷举攻击则是试遍所有可能的密钥对所获密文进行解密,直至得到正确的明文; 或者用一个确定的密钥对所有可能的明文进行加密,直到得到与所获得的密文一致。
3.3.1穷举攻击 穷举攻击是最基本的,也是比较有效的一种攻击方法。从理论上讲,可以尝试所有的密钥。因此只要有足够的资源,任何密码体制都可以用穷举攻击将其攻破。幸运的是,攻击者不可能有无穷的可用的资源。穷举攻击的代价与密钥大小成正比。穷举攻击所花费的时间等于尝试次数乘以一次解密(加密)所需的时间。显然可以通过增大密钥位数或加大解密(加密)算法的复杂性来对抗穷举攻击。当密钥位数增大时,尝试的次数必然增大。当解密(加密)算法的复杂性增大时,完成一次解密(加密)所需的时间增大。从而使穷举攻击在实际上不能实现。表3.1是穷尽密钥空间所需的时间。从表3.1中我们可以发现,当密钥长度达到128位以上时,以目前的资源来说,穷举攻击将不会成功。
评论
还没有评论。