信息安全概论习题参考答案
第 1 章 概论
1. 谈谈你对信息的理解.
答:信息是事物运动的状态和状态变化的方式。
2. 什么是信息技术?
答:笼统地说,信息技术是能够延长或扩展人的信息能力的手段和方法。
本书中,信息技术是指在计算机和通信技术支持下,用以获取、加工、存储、变换、
显示和传输文字、数值、图像、视频、音频以及语音信息,并且包括提供设备和信息服务两
大方面的方法与设备的总称。
也有人认为信息技术简单地说就是 3C:Computer+Communication+Control。
3. 信息安全的基本属性主要表现在哪几个方面?
答:(1)完整性(Integrity)
(2)保密性(Confidentiality)
(3)可用性(Availability)
(4)不可否认性(Non-repudiation)
(5)可控性(Controllability)
4. 信息安全的威胁主要有哪些?
答:
(1)信息泄露
(2)破坏信息的完
整性
(3)拒绝服务
(4)非法使用(非
授权访问)
(5)窃听
5.怎样实现信息安全?
(6)业务流分析
(7)假冒
(8)旁路控制
(9)授权侵犯
(10)特洛伊木马
(11)陷阱门
(12)抵赖
(13)重放
(14)计算机病毒
(15)人员不慎
(16)媒体废弃
(17)物理侵入
(18)窃取
(19)业务欺骗等
答:信息安全主要通过以下三个方面:
A 信息安全技术:信息加密、数字签名、数据完整性、身份鉴别、访问控制、安全数据库、
网络控制技术、反病毒技术、安全审计、业务填充、路由控制机制、公证机制等;
B 信息安全管理:安全管理是信息安全中具有能动性的组成部分。大多数安全事件和安
全隐患的发生,并非完全是技术上的原因,而往往是由于管理不善而造成的。安全管理包括:
人事管理、设备管理、场地管理、存储媒体管理、软件管理、网络管理、密码和密钥管理等。
C 信息安全相关的法律。法律可以使人们了解在信息安全的管理和应用中什么是违法行
为,自觉遵守法律而不进行违法活动。法律在保护信息安全中具有重要作用对于发生的违法
行为,只能依靠法律进行惩处,法律是保护信息安全的最终手段。同时,通过法律的威慑力,
还可以使攻击者产生畏惧心理,达到惩一警百、遏制犯罪的效果。
第 2 章 信息保密技术
1. 为了实现信息的安全,古典密码体制和现代密码体制所依赖的要素有何不同?
答:古典密码体制中,数据的保密基于加密算法的保密。
现代密码体制中,数据的安全基于密钥而不是算法的保密。
2. 密码学发展分为哪几个阶段?各自的特点是什么?
1
答:第一个阶段:从几千年前到 1949 年。
古典加密
计算机技术出现之前
密码学作为一种技艺而不是一门科学
第二个阶段:从 1949 年到 1975 年。
标志:Shannon 发表“Communication Theory of Secrecy System”
密码学进入了科学的轨道
主要技术:单密钥的对称密钥加密算法
第三个阶段:1976 年以后
标志:Diffie,Hellman 发表了“New Directions of Cryptography”
开创了公钥密码学的新纪元。
3. 按使用密钥数量,可将密码体制分为几类?若按照对明文信息的加密方式呢?
答:对称密码体制(单钥密码体制)和非对称密码体制(公钥密码体制)。
流密码和分组密码。
4. 设计分组密码的主要指导原则是什么?实现的手段主要是什么?
答:a.为了保证密码的安全性,Shannon 提出的混乱原则和扩散原则。
b. 针对实现的设计原则,分组密码可以用软件和硬件来实现。基于软件和硬件的不同性
质,分组密码的设计原则可根据预定的实现方法来考虑。
软件实现的设计原则:使用子块和简单的运算。密码运算在子块上进行,要求子块的长
度能自然地适应软件编程,比如 8、16、32 比特等。在软件实现中,按比特置换是难于实现
的,因此我们应尽量避免使用它。子块上所进行的一些密码运算应该是一些易于软件实现的
运算,最好是用一些标准处理器所具有的一些基本指令,比如加法、乘法和移位等。
硬件实现的设计原则:加密和解密可用同样的器件来实现。尽量使用规则结构,因为密
码应有一个标准的组件结构以便其能适应于用超大规模集成电路实现。
另外,简单性原则,必要条件,可扩展性也是要考虑的。
c.多数分组密码算法的思想采用了 Feistel 密码结构,用代替和置换的手段实现混淆和
扩散的功能。
5. 对分组密码的常见攻击有哪些?
答:唯密文攻击,已知明文攻击,选择明文攻击,选择密文攻击。
6. 公钥密码体制出现有何重要意义?它与对称密码体制的异同有哪些?
答: 公钥密码体制是密码学研究的一个具有里程碑意思的重要事件。公钥密码系统在消息
的传输过程中采用彼此不同的加密密钥与解密密钥,并且在考虑时间因素的情况下,由加密
密钥推导出与之相对应的解密密钥不具有可实现性。至此,密码体制解脱了必须对密钥进行
安全传输的束缚,使密码学的应用前景豁然开朗。
与对称密码相比,
相同点:
都能用于数据加密;
都能通过硬件实现;
不同点:
对称密码体制加密密钥和解密密钥是相同的,而公钥密码体制使用不同的加密密钥
和解密密钥;
公钥密码体制基于数学难题,而对称密码体制不是;
公钥密码体制密钥分发简单。加密密钥可以做成密钥本公开,解密密钥由各用户自
行掌握,而对称密码体制不可以;
2
公钥体制的加密速度比较慢,而对称密码体制速度较快;
公钥体制适应于网络的发展,能够满足不相识的用户之间进行保密通信的要求;
公钥体制中每个用户秘密保存的密钥量减少。网络中每个用户只需要秘密保存自己
的解密密钥,与其他用户通信所使用的加密密钥可以由密钥本得到;
7. 从计算安全的角度考虑,构建公钥密码体制的数学难题常见的有哪些?
答:大整数分解问题
离散对数问题
椭圆曲线上离散对数问题
线性编码的解码问题
构造非线性弱可逆有限自动机的弱逆问题
8. 在 DES 算法中,S-盒的作用是什么?
答:每个 S-盒将 6 位输入变成 4 位的输出。它是非线性的,决定了 DES 算法的安全性。
9. 你认为 AES 比 DES 有哪些优点?
答:(1)AES 的密钥长度可以根据需要而增加,而 DES 是不变的;
(2)Rijndael 加解密算法中,每轮常数的不同消除了密钥的对称性,密钥扩展的非线性
消除了相同密钥的可能性;加解密使用不同的变换,消除了在 DES 里出现的弱密钥和半弱
密钥存在的可能性;总之,在 Rijndael 的加解密算法中,对密钥的选择没有任何限制。
(3)依靠有限域/有限环的有关性质给加密解密提供了良好的理论基础,使算法设计者可
以既高强度地隐藏信息,又同时保证了算法可逆,又因为 Rijndael 算法在一些关键常数(例
)(xm )的选择上非常巧妙,使得该算法可以在整数指令和逻辑指令的支持下高速完
如:在
成加解密。
(4)AES 安全性比 DES 要明显高。
10. 现实中存在绝对安全的密码体制吗?
答:否。
11. 信息隐藏和数据加密的主要区别是什么?
答:区别:
目标不同:加密仅仅隐藏了信息的内容; 信息隐藏既隐藏了信息内容,还掩盖了信息
的存在。
实现方式不同:加密依靠数学运算;而信息隐藏充分运用载体的冗余空间。
应用场合不同:加密只关注加密内容的安全,而信息隐藏还关注载体与隐藏信息的关系。
联系:
理论上相互借用,应用上互补。信息先加密,再隐藏
12. 信息隐藏的方法主要有哪些?
答:空间域算法与变换域算法。
第三章 信息认证技术
1. 简述什么是数字签名。
答:数字签名就是通过一个单向函数对要传送的报文进行处理得到的用以认证报文来
源并核实报文是否发生变化的一个字母数字串,该字母数字串被成为该消息的消息鉴别码或
消息摘要,这就是通过单向哈希函数实现的数字签名;在公钥体制签名的时候用户用自己的
私钥对原始数据的哈希摘要进行加密所得的数据,然后信息接收者使用信息发送者的公钥对
附在原始信息后的数字签名进行解密后获得哈希摘要,并通过与用自己收到的原始数据产生
的哈希摘要对照,便可确信原始信息是否被篡改,这样就保证了数据传输的不可否认性。这
3
是公钥签名技术。
2. 如果有多于两个人同时对数字摘要进行签名,就称为双签名。在安全电子交易协议
(SET)中就使用到了这种签名。想一想,这有什么意义,对于我们的实际生活能有什
么作用?
答: 在 SET 协议中采用了双签名技术,支付信息和订单信息是分别签署的,这样保证了商
家看不到支付信息,而只能看到订单信息。意义在于:由于在交易中持卡人发往银行的支付
指令是通过商家转发的,为了避免在交易的过程中商家窃取持卡人的信用卡信息,以及避免
银行跟踪持卡人的行为,侵犯消费者隐私,但同时又不能影响商家和银行对持卡人所发信息
的合理的验证,只有当商家同意持卡人的购买请求后,才会让银行给商家负费,SET 协议采
用双重签名来解决这一问题。
3. 本章讲了几种身份识别技术,你能从实际生活中找到他们的具体实现的对照吗?能不能
想到更新更好的例子。
答案 略。
4. 杂凑函数可能受到哪几种攻击?你认为其中最为重要的是哪一种?
答:穷举攻击、生日攻击和中途相遇攻击。
5. 你能设计一种结合多种身份认证方式的双要素认证吗?对于理论环节给出具体算法。
答案略。
6. 结合本书最后的 Kerberos 部分,请用 Linux 系统实现,并在同学间展开讨论,讨论这
三种系统:Windows、Unix 和 Linux 间实现的具体区别。
答案 略。
7. 设想一下,如果你为学院设计了一个网站,出于安全与使用的角度,能使用本章中哪些
安全原理。
答:(1)用数字签名解决否认、伪造、篡改及冒充等问题,
(2)利用基于密码技术的电子 ID 身份识别技术:使用通行字的方式和持证的方式。
(3)在安全性要求较高的系统中,有口令或持证已经不能提供安全的保障了,可利
用个人的生理特征来实现。这种身份识别技术主要有:手写签名识别技术、指纹识
别技术、语音识别技术、视网膜图样识别技术、虹膜图样识别技术和脸型识别。
第四章 密钥管理技术
1. 为什么要引进密钥管理技术?
答:(1)理论因素
通信双方在进行通信时,必须要解决两个问题:
a. 必须经常更新或改变密钥;
b. 如何能安全地更新或是改变密钥。
(2)人为因素
破解好的密文非常的困难,困难到即便是专业的密码分析员有时候也束手无策,但
由于人员不慎可能造成密钥泄露、丢失等,人为的情况往往比加密系统的设计者所
能够想象的还要复杂的多,所以需要有一个专门的机构和系统防止上述情形的发
生。
(3)技术因素
a. 用户产生的密钥有可能是脆弱的;
b. 密钥是安全的,但是密钥保护有可能是失败的。
2. 密钥管理系统涉及到密钥管理的哪些方面?
4
答:密钥分配,密钥注入,密钥存储,密钥更换和密钥吊销。
3. 什么是密钥托管?
答:密钥托管是指用户在向 CA 申请数据加密证书之前,必须把自己的密钥分成 t 份交给可
信赖的 t 个托管人。任何一位托管人都无法通过自己存储的部分用户密钥恢复完整的用户密
码。只有这 t 个人存储的密钥合在一起才能得到用户的完整密钥。
第 5 章 访问控制技术
1. 什么是访问控制?访问控制包括哪几个要素?
访问控制是指主体依据某些控制策略或权限对客体本身或是其资源进行的不同授权访
问。
访问控制包括三个要素,即:主体、客体和控制策略。
主体:是可以对其它实体施加动作的主动实体,简记为 S。
客体:是接受其他实体访问的被动实体, 简记为 O。
控制策略:是主体对客体的操作行为集和约束条件集, 简记为 KS。
2. 什么是自主访问控制?什么是强制访问控制?这两种访问控制有什么区别?说说看,
你会在什么情况下选择强制访问控制。
自主访问控制模型是根据自主访问控制策略建立的一种模型,允许合法用户以用户或用
户组的身份访问策略规定的客体,同时阻止非授权用户访问客体,某些用户还可以自主地把
自己所拥有的客体的访问权限授予其它用户。
强制访问控制模型是一种多级访问控制策略,它的主要特点是系统对访问主体和受控对
象实行强制访问控制,系统事先给访问主体和受控对象分配不同的安全级别属性,在实施访
问控制时,系统先对访问主体和受控对象的安全级别属性进行比较,再决定访问主体能否访
问该受控对象。
区别:自主访问控制模型中,用户和客体资源都被赋予一定的安全级别,用户不能改变
自身和客体的安全级别,只有管理员才能够确定用户和组的访问权限;强制访问控制模型中
系统事先给访问主体和受控对象分配不同的安全级别属性,通过分级的安全标签实现了信息
的单向流通。
强制访问控制一般在访问主体和受控客体有明显的等级划分时候采用。
3. 审计的重要意义在于什么?你通过什么方式来达到审计的目的?除了我们书上讲的内
容外,你还能想到其他的审计方式吗?
审计是访问控制的重要内容与补充,审计可以对用户使用何种信息资源、使用的时间以
及如何使用进行记录与监控。审计的意义在于客体对其自身安全的监控,便于查漏补缺,追
踪异常事件,从而达到威慑和追踪不法使用者的目的。
审计的方式:
基于规则库的方法:将已知的攻击行为进行特征提取,把这些特征用脚本语言等方法进
行描述后放入规则库中,当进行安全审计时,将收集到的网络数据与这些规则进行某种比较
和匹配操作(关键字、正则表达式、模糊近似度),从而发现可能的网络攻击行为。
基于统计的方法:首先给对象创建一个统计量的描述,比如网络流量的平均值、方差等,
同基础正常情况下的这些特征量的数值,然后对实际的网络数据情况进行对比,当发现远离
正常值的情况,则可以判断攻击的存在
此外,人工智能、神经网络、数据挖掘等最新相关领域的知识也可不同程度的引入到安
全审计中来,为安全审计技术带来新的活力。
4. 我们在本章第五节讲述了三种信任模型,事实上,也可以对这三种模型进行扩展,这
就是混和信任模型。你能结合我们书上的模型,想象一下怎么实现对等信任模型和层次信
5
任模型结合的模型吗?可以的话,给出模型的具体结构。
对等信任模型和层次信任模型结合的模型实现:
将整个信任域划分为几个小信任域,在各个小信任域中建立层次信任模型,这样的模型
结构简单,管理方便,易于实现。各个小信任域的可信任根之间建立对等信任模型,以满足
信任组织结构的动态变化。模型示意图如下图:
可信任根 R1
可信任根 R2
管理信任层 C1
管理信任层 C2
…
…
管理信任层 D1
管理信任层 D2
A1
…
A2
…
B1
…
B2
…
示意图
第 6 章 数据库安全
1.数据库安全包括哪两方面?各自的含义是什么?
数据库系统安全包含系统运行安全和系统信息安全两层含义。
系统运行安全:法律、政策的保护,如用户是否具有合法权利等;物理控制安全,如机
房加锁等;硬件运行安全;操作系统安全;灾害、故障恢复;电磁信息泄漏的预防。
系统信息安全:用户口令鉴别;用户存取权限控制;数据存取权限、方式控制; 审计跟踪;
数据加密。
2.谈谈你对数据库的理解?数据库的数据结构有哪几类?
数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是从逻辑的角度
(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关。数据的物理
结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理
结构也被称为存储结构。本节只研究数据的逻辑结构,并将反映和实现数据联系的方法称为
数据模型。
目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型
以及按关系理论建立的关系结构模型。
3. 为什么说数据库安全很重要?
由于数据库的重要地位,其安全性也备受关注,其重要性体现在以下几方面:
1)大多数企业、组织以及政府部门的电子数据都保存在各种数据库中。数据库的安全
涉及到保护用户敏感信息和数据资产。2)少数数据库安全漏洞不光威胁数据库的安全,也
威胁到操作系统和其他可信任的系统。3)数据库是电子商务、ERP 系统和其他重要的商业
系统的基础。
4.数据库有那几方面的安全需求?
数据库要考虑以下几方面的安全需求:
1)物理上的数据库完整性:预防数据库数据物理方面的问题;如掉电以及当被灾祸破
坏后能重构数据库 。逻辑上的数据库完整性 保持数据的结构。比如:一个字段的值的修改
不至于影响其他字段。
6
2)元素的完整性:包含在每个元素中的数据是准确的。
3)可审计性:能够追踪到谁访问修改过数据的元素 。
4)访问控制:允许用户只访问被批准的数据,以及限制不同的用户有不同的访问模式,
如读或写。
5)用户认证 确保每个用户被正确地识别,既便于审计追踪也为了限制对特定的数据进
行访问 。
6)可获(用)性 用户一般可以访问数据库以及所有被批准访问的数据
5.数据库的安全策略有那几类?
数据库的安全策略是指导数据库操作人员合理地设置数据库的指导思想。它包括以下几
方面:
1)最小特权策略
最小特权策略是让用户可以合法的存取或修改数据库的前提下,分配最小的特权,使得
这些信息恰好能够完成用户的工作,其余的权利一律不给。因为对用户的权限进行适当的控
制,可以减少泄密的机会和破坏数据库完整性的可能性。
2)最大共享策略
最大共享策略就是在保证数据库的完整性、保密性和可用性的前提下,使数据库中的信
息最大程度地共享。
3)粒度适当策略
在数据库中,将数据库中不同的项分成不同的颗粒,颗粒越小,安全级别越高。通常要
根据实际决定粒度的大小。
4)按内容存取控制策略
根据数据库的内容,不同权限的用户访问数据库的不同的部分。
5)开系统和闭系统策略
数据库在开放的系统中采取的策略为开系统策略。开系统策略即除了明确禁止的项目,
数据库的其他的项均可被用户访问。数据库在封闭系统中采取的策略称闭系统策略。闭系统
策略即在封闭的系统中,除了明确授权的内容可以访问,其余均不可以访问。
6)按存取类型控制策略
根据授权用户的存取类型,设定存取方案的策略称为按存取类型控制策略。
7)按上下文存取控制策略
这种策略包括两方面:一方面要限制用户要求其在一次请求里或特定的一组相邻的请求
里不要对不同属性的数据进行存取;另一方面可以规定用户对某些不同属性的数据必须一组
存取。它根据上下文的内容严格控制用户的存取区域。
8)根据历史的存取控制策略
有些数据本身不会泄密,但当和其它的数据或以前的数据联系在一起时可能会泄露保密
的信息。防止这种推理的攻击,必须记录主数据库用户过去的存取历史。根据其已执行的操
作,来控制其现在提出的请求。
6.数据库的审计分为哪几步?
数据安全审计过程的实现可分成三步:
第一步,收集审计事件,产生审记记录;
第二步,根据记录进行安全违反分析;
第三步,采取处理措施;
7.数据库的完整性包括哪几方面?
数据库的完整性包括:
实体完整性(Entity Integrity),指表和它模仿的实体一致。
7
域完整性(Domain Integrity),某一数据项的值是合理的。
参照(引用)完整性(Reference Integrity),在一个数据库的多个表中保持一致性。
用户定义完整性(User-defined Integrity)。由用户自定义。
分布式数据完整性(Distributed Data Integrity)。
8.计算机的存取控制分为哪两类?各自的含义是什么?
1)传统的存取控制模型,一般而言,传统上采用存取控制矩阵法客体列法主体列法键
锁核对法等四种方式来设计存取控制矩阵。
2)基于角色的存取控制模型,它的特征就是根据安全策略划分出不同的角色,对每个
角色分配不同的操作许可,同时为用户指派不同的角色,用户通过角色间接的对数据进
行存取。
9.RBAC 模型的含义是什么?
RBAC 模型(Role---Based Access Control, RBAC)是基于角色的存取控制模型。它的特
征就是根据安全策略划分出不同的角色,对每个角色分配不同的操作许可,同时为用户指派
不同的角色,用户通过角色间接的对数据进行存取。
10.数据库加密有哪些特点?
较之传统的数据加密技术,数据库密码系统有其自身的要求和特点。
1)数据库密码系统应采用公开密钥。
2)具有多级密钥结构。当查到一个数据后,该数据所在的库名、表名、记录名、字段
名都应是知道的。对应的库名、表名、记录名、字段名都应该具有自己的子密钥,这些子密
钥组成了一个能够随时加密解密的公开密钥。
3)公开密钥的加密体制不适合于数据库加密。数据库加密解密的密钥应该是相同的、
公开的,而加密算法应该是绝对保密的。
4)加密算法是数据加密的核心。算法必须适应数据库系统的特性,加密解密响应迅速。
11.数据库的加密范围要注意哪几方面?
数据加密通过对明文进行复杂的加密操作,以达到无法发现明文和密文之间、密文和密
钥之间的内在关系。另一方面,DBMS 要完成对数据库文件的管理和使用,具有能够识别部
分数据的条件。据此,只能对数据库中的数据进行部分加密。
(1)索引字段不能加密:为了达到迅速查询的目的,数据库文件需要建立一些索引。
不论是字典式的单词索引,还是 B 树索引或 HASH 函数索引,它们的建立和应用必须是明文
状态,否则将失去索引的作用。
(2)运算的比较字段不能加密:DBMS 要组织和完成关系运算,参加并、差、积、商、
投影、选择和连接等操作的数据一般都要经过条件筛选,这种条件选择项必须是明文,否则
DBMS 将无法进行比较筛选。例如,要求检索工资在 1000 元以上的职工人员名单,“工资”
字段中的数据若加密,SQL 语句就无法辨认比较。
(3)表间的连接码字段不能加密:在关系型数据库中,数据库表之间存在着密切的联
系,这种相关性往往是通过“外部关键字”联系的,这些字段若加密就无法进行表与表之间
的连接运算。
12.试述数据库事务的性质。
一个事务要保持其完整性必须具有以下 4 个基本性质:
1)原子性(Atomicity),所谓原子性是指一个事务中所有对数据库的操作是一个不可
分割的操作序列。事务要么完整地被全部执行,要么什么也不做。
2)一致性(Consistency),一个事务的执行结果将保证数据库的一致性,即数据不会
因事务的执行而遭受破坏。
8