上海交大网络与信息安全第一次作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Assign1 : 安全服务与机制
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)在总公司的安全服务器上部署"Availability服务",确保安全服务
器不受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要高的多。
3.当我们要在电子文件上签上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是非常重要的事情。
4.假设存在一个加密的算法使得拥有encryption key和decryption key的好人可以在key长度的线性时间内运算完毕,而没有key的坏人想要破解此算法只能去试所有可能的keys。刚开始,握有key的好人拥有足够的运算能力可以很快得加解密讯息。随着运算科技的进步,好人和坏人都有比原本的运算能力快两倍的计算机,请问增加计算机的指令周期,是对好人有利还是对坏人有利,亦或根本就没差呢? (10分)
答:假设K的长度为n,好人的速度为Sg,坏人的速度为Sb则Sg= an,Sb=2n如果随着科技的进步,计算机的运算能力会越来越快,但是只要将key的长度变得足够长,还是可以使好人能够很快解密,而坏人要花非常非常长的时间破解密码。所以无论计算机的运算能力增长与否,对好人抑或是坏人来说没什么差别。