交大 网络与信息安全 主观题作业

1 根据以下的要求去设计一个简单的网络架构安全系统, 这个系统是为了管理和保护员工在跨国公司间的通讯。你的系统必须要满足以下安全策略(security policies): 只有授权的员工才可以访问总公司的安全服务器。

只有使用特定 Foreign Hosts 的客户才可以和在总公司和分公司的员工通讯。

若客户在总公司和分公司间是藉由 Global Internet 通讯的话,必须要保护此通讯避免被 外界窃听。

员工在使用 Mobile Hosts 与总公司和分公司通讯之前必须要先被认证。

请指出你的安全系统所提供的安全服务,请说明部属这些服务的位置。(50 分) 提示:假设在总公司和分公司间的员工都是值得信赖的。

另外,假设总公司和分公司间的通 讯都是容易被窃听和窜改的。

答: 我的安全系统提供以下服务: 1. 机密服务

a) 在总公司和分公司的网络上部署\非联机取向的数据机密服务\以保证总公司和分公司发出的信息都是加密信息。

b) 在 Mobile Hosts 上部署\非联机取向的数据机密服务\以保证员工在使用 Mobile Hosts 与总公司和分公司通讯的消息是加密消息

c) 在总公司和分公司的网络上部署\数据传输流的机密服务\以保证别人无法通过 观察流量以获得信息。 2. 完整性服务

a) 在总公司的安全服务器、总公司和分公司员工的电脑、Foreign Hosts、Mobile Hosts 上部署\消息完整性服务\保证总公司和分公司藉由

Global Internet 通讯、使用 Foreign Hosts 的客户与总公司和分公司的员工通讯、 员工使用 Mobile Hosts 与总公司或分公司通讯都不会被窜改 3. 认证服务

a) 在总公司的安全服务器上部署\资料来源认证服务\,保证只有授权的员工才能访 问总公司的安全服务器

b) 在总公司和分公司的员工计算机、Foreign Hosts 上部署\资料来源认证服务\确 保只有使用特定 Foreign Hosts 的客户才可以和在总公司和分公司 的员工通讯

c) 在总公司和分公司的员工计算机、员工的 Mobile Hosts 上部署\资料来源认证服 务\确保员工在使用 Mobile Hosts 与总公司和分公司通讯之前 必须要先被认证 4. 访问控制

a) 在总公司的安全服务器上部署\访问控制服务\,保证只有授权的员工才能访问总 公司的安全服务器 5. 不可否认性

a) 在总公司和分公司的员工计算机、Foreign Hosts 上部署\不可否认性服务\确保 客户与员工之间的通讯真实有效 6. 审核

a) 在总公司的安全服务器上部署\审核服务\,确保可以分析安全服务器是否受到入 侵。

7. Availability

a) 在总公司的安全服务器上部署\服务\,确保安全服务器不受 DDos 攻 击。

2 协议设计者 Random J 被告知要设计一个可以预防讯息被入侵者窜改的机制, Random J 决定 要在每个讯息后面附上属于这个讯息的摘要(message digest),

为什么这样做无法解决此问题 呢?(我们已知有协议使用这样的技巧来增加其安全性) (10 分)

答: 因为入侵者可以窜改讯息或编造一个讯息, 由于哈希方法是公开的, 所以入侵者可以生成该讯息的摘要。将窜改后的讯息加上摘要再发送出去, 这样接收方接到讯息后完全无法发现讯息被改过了。

3 假设 Alice, Bob 和 Carol 想要使用 secret key 的方法来认证彼此。如果他们三个共享一把 secret key K,那么 Bob 可以在 Alice 面前伪装成

Carol(事实上,他们三个之中的任一个都可 以对另一个人伪装成另外一个人)。 又如果他们三个每个人都有自己的 secret key, Alice 使用 KA,Bob

使用 KB,Carol 使用 KC。这样他们就可以用自己的 secret key 算出来的 response 和 challenge 来验证自己的身分。 请问这样的新方法是否比共享

一把 secret key 的方法来的安 全呢? (10 分) 提示:Alice 需要知道什么来验证 Carol 对 Alice 的 Challenge 的答案呢?

答: 这个新方法必须还要有与 kA、KB、kC 对应的公钥才能工作。将 kA、KB、kC 分别作为 Alice, Bob 和 Carol 的私钥,只有他们自己知道。

另外有 KA、KB、KC 作为与私钥对应的公钥,三 人都知道。Carol 与 Alice 通讯时先发送 Challenge 给 Alice,Alice 用 kA 算出 response 回送给

Carol,Carol 用 KA 算出的 Challenge 与之前送出的 Challenge 对比,如果一致就说明与其通 讯的肯定是 Alice 了。用这种方法 Alice, Bob 和

Carol 互相通讯时都可以认证彼此,安全性 比共享一把 secret key 要高的多。

4 当 我 们 要 在 电 子 文 件 上 签 上 digital signature 的 时 候, 通 常 会 把 整 份 档 案 传 到 一 个 cryptographically strong hash function

产生 message digest 做为 digital signature。 请解释为何很 难找到有两份文件有一样的 digest 是很重要的一件事。(10 分)

答:因为 digital signature 是用 private key 对 message digest 加密后得到的结果。如果两份文件有 一样的 digest,则产生的 digital signature

也就完全一样,这样就无法确定哪份文件是真正签 上 digital signature 的。 这就代表两份文件有一样的 digest 的几率与伪造的签署 digital signature

文件的成功率成正比。这个几率当然是越小越好,所以很难找到有两份文件有一样的 digest 是非常重要的事情。

5 假设存在一个加密的算法使得拥有 encryption key 和 decryption key 的好人可以在 key 长度的 线性时间内运算完毕, 而没有 key 的坏人想要破解此算

法只能去试所有可能的 keys。 刚开始, 握有 key 的好人拥有足够的运算能力可以很快得加解密讯息。随着运算科技的进步, 好人和 坏人都有比原本的运算

能力快两倍的计算机, 请问增加计算机的指令周期, 是对好人有利还 是对坏人有利,亦或根本就没差呢? (10 分)

答: 假设 K 的长度为 n,好人的速度为 Sg,坏人的速度为 Sb 则 Sg = an,Sb = 2n 如果随着科技的进步,计算机的运算能力会越来越快,但是只要将 key

的长度变得足够长, 还是可以使好人能够很快解密, 而坏人要花非常非常长的时间破解密码。 所以无论计算机的 运算能力增长与否,对好人抑或是坏人来 说没什么差别。

6 在课堂上,我们学到了如何使用 public key digital signature 来执行 challenge-response authentication。如同在课堂所提的,有一个使用 public key

encryption 的类似机制,你可以设 计这个机制吗? (10 分) 提示:那个 responder 必须执行只有自己才能执行的运算

答: 假设通信双方是 Alice 与 Bob。Alice 的私钥为 kA,公钥为 KA。Bob 的私钥为 kB,公钥为 KB Alice 先得到一个随机数 Na,用 KB 对其加密作为 challenge

送给 Bob。Bob 收到 challenge 后 用 kB 解密得到 response,送回给 Alice。Alice 收到 response 后与 Na 比较,若一致则证明与 其通信的是 Bob。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4