信息与网络安全笔记_1

发布时间 2023-11-30 11:42:12作者: rrobber

信息与网络安全笔记

QQ图片20230530102620.jpg

(参考一下他的重点复习。)

作业题

第一章

  1. CIA(Central Intelligence Agency) :(传统信息安全的三要素)

    ①机密性:信息不能被未授权的个人,实体或者过程利用或知悉的特性。

    ②完整性:准确和完整的特性。

    ③可用性:根据授权实体的要求可访问和利用的特性。

    信息安全的包括内容

    如果说网络中有什么攻击行为,那么选择信息的窃取,信息的篡改,信息的冒充,信息的抵赖

    如果说是要用什么安全的技术去防范网络中的攻击行为,那么就要选择数字签名,加密技术,完整性技术,认证技术

  2. 机密性比完整性更重要的实例:国家的机密文件

    完整性比机密性更重要的具体实例:学生提交的作业

    可用性最重要的具体实例:购票软件

  3. 假如Aice提供的不是网上银行服务,而是一种在线国际象棋游戏服务,暂且就称之为Aice在线象棋(AOC)吧。玩家们按月支付一定的费用,就可以登录AOC和另一个水平相当的玩家进行比赛。
    a. 请问,在AOC中,加密技术应该用于何处?
    答:用户登录和支付。
    b. 请问,访问控制应该用于何处?
    答:用于用户身份的认证和授权
    c. 请问,安全协议将用于何处?
    答:用户登录和支付。
    d. 请问,软件安全是AoC要考虑的吗?请解释为什么?
    答:要考虑,软件如果被破解会破坏游戏的平衡性。

  4. 有些作者会区分秘密性(secrecy)、私密性(privacy)和机密性(confidentiality)。针对这样的用法,其中的秘密性等同于我们使用的术语机密性;其中的私密性是指用于个人数据的秘密性;其中的机密性(在这样的有点误导意味的含义下)是指不泄露某特定信息的一种义务或责任。
    a.在现实环境中,在什么情况下,私密性(privacy)会是重要的安全议题?
    b.在现实环境中,在什么情况下,机密性(confidentiality)(在上述有点误导意味的含义下)会是至关重要的安全议题?
    答:a:当发生人肉搜索和网暴的时候,个人数据的私密性就显得很重要。私密性关于一个主体和一组信息之间的关系,通常当讨论的主体是个人时,私密性会是重要的安全议题。

    比如一些应用使用到用户的敏感信息,应该被识别出来(包括但不限于用户的位置信息,历史位置信息,个人的通话记录,人脸,身份证等等个人不愿他人知道或者不便他人知道的信息)
    b:一组信息和一组授权主体之间的关系。只有当授权主体是唯一能够知道对应的消息时,机密性才能够被满足。
    很多互联网厂商为了产品用户体验搜集用户使用信息,而如何保证能够承担不被泄露的责任,就时很重要的安全议题。

  5. RFID标签是一种非常小的设备,能够在空中发射数字给近距离的接收器。RFID标签主要用于跟踪库存,同时,这个技术也有很多其他的潜在用途。例如,RFID标签可用于护照,甚至还有人建议在纸币中使用以便防伪。未来,人们可能会被大片的RFID标签数字所包围,而这些数字提供了大量的关于人的信息。
    a.广泛使用RFID标签后,讨论下若干有关隐私保密方面的担忧。
    b.除了隐私保密之外,讨论下可能因RFID标签的广泛应用而衍生出的其他安全问题。
    答:
    a. RFID标签广泛使用可能会导致个人身份信息大量泄露,让不法分子有机可乘
    b. ①机密外泄:未经授权读取、窃听、刺探威胁、营销竞争威胁。
    ②伪造虚假信息:未经授权写入、假冒、重送攻击、信赖边界威胁
    ③基础设备遭受破坏:基础设备威胁、恶意编码传播

  6. 密码系统有时候被认为是脆弱的。这是指,密码系统本身的设计可能很健壮,但是一旦密码系统被破解,通常就意味着满盘皆输。相反,有些安全部件则可以“适度妥协”而不至于完全崩溃——具体的安全措施可能因为这种妥协而失效,但是一些有效的安全等级保护得以保持。
    a.除了密码系统,请再给出一个其他的例子,说明其中的安全是脆弱的。
    b.请再举个例子,说明安全并不脆弱,可以“适度妥协”而不至于完全崩溃
    答:a. 计算机网络系统普遍使用的TCP/IP以及FTP、E-mail NFS等都包含着许多影响网络安全的因素,存在许多漏洞。对于TCP/IP来说,IP层主要是缺乏有效的安全认证和保密机制,其中最主要的因素就是IP地址问题。这也是引起整个TCP/IP协议不安全的根本所在。
    b. 防火墙,入侵检测,以及依赖于深度防御的策略。

  7. 巨大而复杂的软件系统,总是包含了大量的软件缺陷(bug)。
    a.对于像Alice和 Bob这样忠实的用户来说,遍布缺陷的软件当然令人不快。但是为什么这还会是安全问题呢?
    b.为什么Trudy 却喜欢遍布缺陷的软件呢?
    c.请笼统地说说,Trudy 会如何利用软件中的缺陷去破坏系统的安全性呢?
    答:a.缺陷的存在虽然对Bob这样的用户而言影响不大,但是对于Trudy来说,这是个攻击系统的好入口,一旦Trudy进行攻击,小小的软件缺陷就会变成系统安全问题。
    b.软件bug不仅仅带来麻烦,而是潜在的安全问题,因为它们可能引起系统行为异常。
    c.Trudy通过软件中的缺陷,进而发现其他的漏洞,然后通过对系统机密性,完整性和可用性三方面的破坏来破坏系统的安全性。笼统来说,他是利用堆栈溢出方式,利用缓冲区溢出,调用函数,引发系统崩溃,从而起到攻击效果。

  8. 病毒类型

    (1)特洛伊木马,这种程序它包含了利用或者是损坏运行该程序的系统的隐藏代码,通过电子邮件等,在其运行时传递恶意负载等。
    (2)蠕虫,蠕虫使用自行传播的恶意代码,它可以通过网络连接自动将其自身从一台计算机分发到另一台计算机上。蠕虫会执行有害操作,例如,消耗网络或本地系统资源,这样可能会导致拒绝服务攻击。某些蠕虫无须用户干预即可执行和传播,而其他蠕虫则需用户直接执行蠕虫代码才能传播。除了复制,蠕虫也可能传递负载。
    (3)病毒,病毒尝试将其自身附加到宿主程序,以便在计算机之间进行传播。它可能会损害硬件、软件或数据。宿主程序执行时,病毒代码也随之运行,并会感染新的宿主,有时还会传递额外负载。
    恶意软件主要通过显示和点击广告,窃取机密数据,劫持用户会话,入侵用户登录凭据,窃取财务信息,进行欺诈性购买,制作垃圾邮件,发起服务拒绝攻击等方式达到目的。

 网络中典型的攻击行为

①-③ 以上三种病毒        ④黑客攻击        ⑤信息丢失篡改,销毁        ⑥逻辑炸弹        ⑦内部、外部泄密        ⑧拒绝服务攻击        ⑨后门、隐蔽通道

第二章

  1. 在信息安全领域,柯克霍夫斯原则(Kerckhoffs’Principle)就像是母亲和苹果派(译者注:美语中的一种比喻,说明某个原则或价值观显而易见并获得普遍认同),并且完全卷在了一起。
    a.请给出柯克霍夫斯原则在加密技术领域的定义。
    b.请举出一个真实世界中违背柯克霍夫斯原则的例子,并说明其中是否导致了某些安全问题?
    c.有时,柯克霍夫斯原则的应用更为广泛,甚至超出它原本严格的密码技术相关定义。请给出一个柯克霍夫斯原则应用得更为广泛的定义
    答:a:柯克霍夫斯原则 : 即使密码系统的任何细节已为人悉知,只要密匙(key,又称密钥)未泄漏,它也应是安全的。
    b:对称加密。一旦一方的密钥泄露,那么加密信息就不再安全。
    c:埃里克·雷蒙则将它引伸到开放源代码软件,称一套未假定敌人可获得源代码的信息安全软件并不可靠,因此,“永无可信的封闭源码”。反过来说,开放源码比封闭源码更安全。此种论点称为透明式的安全(security through transparency)。

  2. 假设我们拥有一台计算机,每秒钟能够执行2^40个密钥的测试。
    a.如果密钥空间的大小为2^88,那么通过穷举式密钥检索找到密钥,预计需要多长时间(以年为单位)?
    答:预计约为4.462 x10^6年
    b.如果密钥空间的大小为2^112,那么通过穷举式密钥检索找到密钥,预计需要多长时间(以年为单位)?
    答:预计为74.872 x10^12年
    c. 如果密钥空间的大小为2^256,那么通过穷举式密钥检索找到密钥,预计需要多长时间》(以年为单位)?
    答:预计为1.67x10^57年

    穷举式密钥检索所需时间公式:(2 ^(n - 1)) / r

    其中n是密钥长度(以比特为单位),r是每秒钟可以尝试的密钥数。

    一年有31557600秒。

  3. 1876年美国总统大选中那个比较弱的加密使用的方案是:局部的电报密码本辅以单词级的置换,修改这个方案以便能使其更加安全
    答:为了增加译码的难度,我们可以在凯撒移位密码里加入关键词。首先,将关键词放在字母表的开头,然后按照顺序完成字母表中剩余部分,从关键词的最后一个字母开始,省略用过的字母。比如以“look”为关键词,把它放在密码的字母表开头,因为要省略用过的字母,“look”只能写为“lok”,并且后面的字母表中的“O”也要一并省去,即:
    明码表:ABCDEFGHIJKLMN
    密码表:LOKLMNPQRSTUVW
    这种密码提供了超过N种的可能性,这样就不会被轻易试出密码啦。

    凯撒移位密码:凯撒密码是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。

  4. 下面的问题有助于理解扰乱和扩散的概念。
    a.请给出密码学技术领域使用的术语“扰乱”和“扩散”的定义。
    b.在本章中讨论的经典加密技术中,哪些仅仅使用了扰乱原则?
    c.在本章中讨论的经典加密技术中,哪些仅仅使用了扩散原则?
    d.在本章中讨论的经典加密技术中,哪些同时使用了扰乱和扩散原则?
    答:a. 扰乱(Confusion)定义为混淆铭文和密文之间的相关性。扩散(Diffusion)定义为一种将明文中的统计特性扩散并使其湮没于整个密文之中
    b. 简单替换密码和一次性密码本(弗纳姆密码)加密都仅利用了扰乱原则
    c. 仅用了扩散原则:双换位密码;
    d. 同时使用扰乱原则和扩散原则:电报密码。

双换位密码:双换位密码方案中密钥包括矩阵的尺寸以及行和列的置换。任何知道密钥的人都可以简单地将密文排进特定尺寸的矩阵中并执行反向置换操作,即可恢复出明文。

例如,
为了解密式(2.3),可以先将密文排进一个 3×4 的矩阵,将列标识为(4, 2, 1, 3),重新将其排为(1, 2, 3, 4),再将行标识为(3, 2, 1),重新将其排为(1, 2, 3):

QQ图片20230530173116.png

密码学三大原则:扩散、混淆、雪崩效应

扩散:让明文中的每一位影响密文中的许多位,或者说让密文中的每一位受明文中的许多位的影响.这样可以隐蔽明文的统计特性。

混淆:将密文与密钥之间的统计关系变得尽可能复杂,使得对手即使获取了关于密文的一些统计特性,也无法推测密钥。使用复杂的非线性代替变换可以达到比较好的混淆效果,而简单的线性代替变换得到的混淆效果则不理想。

雪崩效应(Avalanche effect):指加密算法(尤其是块密码和加密散列函数)的一种理想属性。雪崩效应就是一种不稳定的平衡状态。也是加密算法的一种特征,它指明文或密钥的少量变化会引起密文的很大变化。雪崩效应是指当输入发生最微小的改变(例如,反转一个二进制位)时,也会导致输出的剧变(如,输出中一半的二进制位发生反转)。在高品质的块密码中,无论密钥或明文的任何细微变化都应当引起密文的剧烈改变。

  1. 仿射密码简单替换密码的一种类型,其中每个字母都按照规则c=(ap+ b)mod26进行加密。此处p ,c , a以及b,每一个都是0至25之间的数字,其中p代表明文字母,c代表密文字母,a和b是常数。对于明文和密文,0对应“a”,1对应“b”,以此类推。考虑使用仿射密码加密后产生的密文QJKES REOGH GXXRE OXEO,请确定常数a和b,并解密该消息。提示:明文字母“t”加密密文变成密文字母“H”,明文字母“o”加密为密文字母“E”
    解:
    由提示可知:
    a.7 = (19a + b) mod26
    b.4 = (14a + b) mod26
    由a—b式可知
    3=5a mod 26,也就是说 a=(26*n+3)/5,且a是整数所以可知n=2+5k,故a=11+26x(其中n,k是整数)
    将a=11+26x带入原来的式子得b=6+26y(其中y是整数)
    取a=11,b=6带入得
    a->G b->R c->C d->N e->Y f->J g->U h->F i->Q j->B
    k->M l->X m->I n->T o->E p->P q->A r->L s->W t->H
    u->S v->D w->O x->Z y->K z->V
    再由这个参照表可知明文为if you bow atall bow low(既然低了头,干脆就多低点)

  2. 维格内尔加密法(Vigenere cipher)使用“n位偏移”序列的简单替换密码来加密,其中的偏移量使用关键词作为索引,“A”代表偏移0位,“B”代表偏移1位,依此类推。举个例子,如果关键词是“DOG”,那么第1个字母被加密时使用3位偏移量的简单替换密码,第2个字母使用14位偏移量的简单替换密码,第3个字母使用6位偏移量的简单替换密码,接下来该模式重复,即第4个字母加密时使用3位偏移量,第5个字母加密时使用14位偏移量,依此类推。

  3. 假设在行星Binary上,,书面语言使用的字母表只包含两个字母:X和Y。再假设再这样的Binarian语言中,字母X出现的时间占75%,而字母Y出现的时间占25%。最后假如你有两个Binarian语言的消息,其消息长度相等。
    a. 假如你来比较这两条消息的对应字母,那需要多久时间才能够将这些字母匹配起来?
    b. 假如这两条消息中的其中一条是简单替换密码加密的,其中字母X加密为Y,字母Y加密为X。现在你再来比较这两条消息(其中一条加密了,另一条没有加密)中对应的字母,又需要多少时间才能将这些字母匹配起来?
    c. 假如这两条消息都使用简单替换密码进行加密,其中字母X加密为Y,字母Y加密为X。现在你再来比较这两条消息(两条消息都被加密了)中对应的字母,又需要多长时间才能够将这些字母匹配起来?
    d. 假如换一种情况,你获得了两个随机产生的消息,同样是只使用了两个字母X和Y。如果你去比较这两条消息的对应字母,那么需要多久时间才能够将这些字母匹配起来?
    e. 什么是重合指数法(Index of Coincidence,IC)?
    f. 在维格内尔加密算法中,如何利用重合指数法确定关键词的长度?
    解答:
    a. XX的概率是3/4 3/4=0.5625,YY的概率是1/16=0.0625,所以匹配的总概率是0.625
    b. 两条消息,一条加密了,一条不加密,相同的百分比是0.625。
    c. 相同的0.625。
    d. 它们会在大约一半的时间里匹配。
    e. 重合指数:是假设一门语言由n个字母构成,每个字母发生的概率为pi(1<= i <= n),则重合指数是指随机无放回的抽取其中两个随机字母,它们相同的概率。重合指数法是指选取了合适的重合指数a,利用模a同余的原则将一个明文足够长,密钥长度固定为a的多表代换密码分解为a组平移密码,然后改密码即可破解。
    f. 猜测关键字的不同长度,并将每个对应的列视为不同的消息。当你猜测正确的长度时,每条消息将被一个简单的替换加密,因此IC将与英语相同——当猜测不正确时,IC应该接近随机文本的IC。

  4. 在本章,我们讨论了一种前向检索攻击.
    a.请说明如何实施前向检索攻击。
    b.请说明如何能够阻止针对公开密钥加密系统的前向检索攻击。
    c.请说明为什么前向检索攻击不能用于破解对称密钥加密系统。
    答:
    a. 在截获了一段用Alice 的公开密钥加密的密文后,如果攻击者想猜测出给定的明文消息“是”或“不是”原来的明文,那么她可以用Alice 的公钥加密这些假定的明文消息。如果有某个明文匹配了该密文,那么该消息即被破解。这种攻击方式被称为前向检索
    b. 对于公开密钥加密,必须确保明文消息的空间足够大,以使攻击者不能够通过简单地加密所有可能的明文消息串来发起此类攻击行为。
    c.对称密钥加密系统使用的是对称密钥加密,对称密钥加密使用的算法比较强大,且密钥是私有密钥,没有公开,即使分析人员拥有一些密文和生成密文的明文,也不能译出密文或者发现密钥。加密算法应足以抵抗已知明文类型的破译。所以基于密钥公开的明文破译如前向检索攻击是无法破解对称密钥加密系统的。

第三章

1.假如Alice使用流密码加密方案加密明文P,得到了密文C,然后Alice发送C给Bob。假设Trudy碰巧知道明文P,但是 Trudy并不知道该流密码加密方案所使用的密钥K。

a.请说明: Trudy 可以非常容易地确定用于加密P的密钥流。

b.请说明:实际上,Trudy能够用她选择的明文,比如 P',替换掉P。也就是说,证明Trudy 能够创建密文消息C',这样当Bob对C′解密之后他将得到P'。

a、因为C = P ⊕ K所以有:K = C ⊕ P
b、根据a可以知道Trudy知道密钥K,所以Turdy可以用P ⊕ K代替C

2.这个问题针对的是A5/1加密方案。对于如下问题,请回答并给出理由。

a.平均而言,寄存器X步骤的执行频率如何?

X寄存器的步进正好是时间的3/4

b.平均而言,寄存器Y步骤的执行频率如何?

Y寄存器的步进正好是时间的3/4

c.平均而言,寄存器Z步骤的执行频率如何?

Z寄存器的步进正好是时间的3/4

d.平均而言,所有三个寄存器步骤都执行的频率如何?

当所有三个“步进位”一致时,所有3个寄存器都步进,既在000和111情况下,如果时间为2/8=1/4,则出现2/8=1/4

e.平均而言,只有两个寄存器步骤执行的频率如何?

两个寄存器步在所有情况下,除了当所有3步,所以3/4的时间。

f.平均而言,只有一个寄存器步骤执行的频率如何?

不可能,因为单个寄存器不可能占多数——因为有3个寄存器,所以多数寄存器由2个或更多个寄存器组成。

g.平均而言,没有寄存器步骤执行的频率如何?

不可能,因为不可能没有寄存器执行。

3.对于三个二进制位x、y和z,maj(r, y, z)函数定义为多数投票函数的结果。也就是说,如果三个二进制位中有两个或两个以上的位的值为0,那么该函数返回值0;否则,该函数返回值1。请写出该函数的真值表,并请派生出与maj(x, y,z)函数等价的布尔函数。

答:    这个函数是 f(x,y,z) = xy ⊕ xz ⊕ yz

4.RC4加密算法包括查找表S,该查找表包含256个字节的值以及两个索引变量 i 和 j 。

a.这里的查找表S被初始化为包含了0, 1,2,...255的特定排列,在算法中的每一步,S都包含一个排列。请问这是如何得到的?也就是说,请问为什么查找表S总是包含一个排列呢?

b.请问在现实世界中,RC4算法都用在哪些地方?(RC4应用)

答:

a.我们只交换S中的元素,并且交换一个置换的元素会产生另一个置换。b.SSL和WEP,以及其他许多地方。