信息系统安全工程期末参考题(西南交大版).docx
《信息系统安全工程期末参考题(西南交大版).docx》由会员分享,可在线阅读,更多相关《信息系统安全工程期末参考题(西南交大版).docx(7页珍藏版)》请在冰点文库上搜索。
![信息系统安全工程期末参考题(西南交大版).docx](https://file1.bingdoc.com/fileroot1/2023-5/7/504e18cc-6390-46a5-b197-1c5974eae269/504e18cc-6390-46a5-b197-1c5974eae2691.gif)
一、古典密码学
A
B
C
D
E
F
G
H
I
J
K
L
M
0
1
2
3
4
5
6
7
8
9
10
11
12
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
13
14
15
16
17
18
19
20
21
22
23
24
25
1、用移位密码对“thisisthemessage”加密,密钥k=13。
答:
thisisthemessage
GUVFVFGURZRFFNTR
其中密钥为字符N(对应13)
2、用仿射密码e(x)=3*x+7(mod26)加密明文“meetmeatmidnight”。
答:
meetmeatmidnight
RTTMRTHMRFQUFZCM
3、确定仿射密码e(x)=3*x+7(mod26)的解密函数。
答:
因为3-1mod26=9,
所以解密函数为x=9*(y-7)=9*y+15(mod26)
4、已知维吉尼亚密码的密钥为“cipher”,对明文“thiscryptosystemisnotsecure”加密。
答:
thiscryptosystemisnotsecure
cipherciphercipherciphercip
VPXZGIAXIVWPUBTTMJPWIZITWZT
5、用置换密码加密“shesellsseashellsbytheseashore”,其中密钥为
答:
shesellsseashellsbytheseashore
EESLSHSALSESLSHBLEHSYEETHRAEOS
二、常规加密体制
1、采用手工方式使用S-DES(简化DES)用密钥(0111111101)解密比特串(10100010),写出每个函数(IP,Fk,SW,Fk,IP-1)之后的中间结果(S-DES的详细描述可参考一些书,或者所附讲义S_DES.ppt)。
答:
子密钥:
K1=0101,1111;K2=1111,1100
密文:
10100010
IP
00110001
FK(K2)
00110001
SW
00010011
FK(K1)
10110011
IP-1
11101010
即明文P=(11101010);
2、已知S-DES(简化DES)的子密钥产生器如下,假设输入主密钥为
1001101101,
计算子密钥K1和K2(写出经过每个置换和移位后的中间结果)。
答:
输入主密钥
1001101101
经过P10,得
0101111010
循环左移1位
1011010101
经过P8,得K1
11011010
循环左移2位
1101010110
经过P8,得到K2
10011001
即:
K1=11011010;K2=10011001
3、已知DES的S盒1定义如下,假设该S盒的输入为100110,计算它的输出(写出计算依据)。
答:
输入的首尾2比特决定S盒的行,为10(第2行),中间4比特决定S盒的列,为0011(第3列),S盒第2行第3列为8,即输出为1000。
三、公钥加密体制
1、利用RSA算法对下列情况进行加密:
1)p=3,q=11,e=7,M=5;
答:
n=33;f(n)=20;d=3;C=14.
2)p=11,q=13,e=11,M=7;
答:
n=143;f(n)=120;d=11;C=106.
2、在一个使用RSA的系统中,你截获了发给一个其公钥是e=5,n=35的用户的密文C=10。
计算明文M是什么?
答:
因为n=35,所以p=5,q=7;所以f(n)=4*6=24。
由于e=5,所以d=e-1mod24=5-1mod24=5。
所以M=Cdmodn=105mod35=5;
3、在使用RSA算法的过程中,如果经过少数的几次重复加密后又重新得到了明文,那么可能的原因是什么?
答:
Supposethepublickeyisn=pq,e.Probablytheorderoferelativeto(p–1)(q–1)issmallsothatasmallpowerofegivesussomethingcongruentto1mod(p–1)(q–1).Intheworstcasewheretheorderis2theneandd(theprivatekey)arethesame.Example:
ifp=7andq=5then(p–1)(q–1)=24.Ife=5thenesquarediscongruentto1mod(p–1)(q–1);thatis,25iscongruentto24mod1.
四、数字签名和密码学应用
1、一个数字签名系统采用散列函数和数字签名算法相结合的方式,计算消息的数字签名。
已知输入消息的字符集为字母A—Z,如下表进行编码;数字签名算法采用小规模的RSA算法;散列函数为“将输入消息中所有字母的编码按十进制求和,再模26”。
A
B
C
D
E
F
G
H
I
J
K
L
M
0
1
2
3
4
5
6
7
8
9
10
11
12
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
13
14
15
16
17
18
19
20
21
22
23
24
25
(1)假设A选择了p=7和q=11,计算A的RSA算法密钥对,即(e,d,N),其中e(公钥)固定为37。
答:
p=7;q=11。
N=7*11=77;Phi(N)=6*10=60。
因为e=37,所以d=37-1mod60=13。
(2)A想把消息“AGREE”经过该系统签名后发送给B,请完成A的计算过程(包括散列运算和签名运算);
答:
消息AGREE的编码为:
0、6、17、4、4
所以Hash(AGREE)=(0+6+17+4+4)mod26=5。
A的签名为:
Sig=MdmodN=513mod77=26
(3)当B收到
(2)中的报文(即“AGREE||数字签名”)后,如何验证该数字签名的正确性,请完成B的计算过程。
答:
B对消息AGREE的编码为:
0、6、17、4、4。
并重新计算消息的散列:
Hash(AGREE)=(0+6+17+4+4)mod26=5。
B用A的公钥验证签名:
SigemodN=2637mod77=5,与上面的散列相同。
这样就完成了签名的验证。
2、一个可以用手工计算的PGP系统的参数如下:
单钥加密算法采用“移位密码”;公钥加密算法采用小规模的RSA算法;HASH运算和压缩运算被省略。
该PGP系统输入的字符集为字母A—Z,如下表进行编码。
A
B
C
D
E
F
G
H
I
J
K
L
M
0
1
2
3
4
5
6
7
8
9
10
11
12
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
13
14
15
16
17
18
19
20
21
22
23
24
25
(1)假设发送方Alice已经知道接收方Bob的RSA公钥为(e=3,N=33),她想把消息“OK”用该PGP系统加密发送给Bob,写出Alice的计算过程(假设Alice随机产生的用于“移位密码”的会话密钥为15)和发送给Bob的密文。
答:
OK对应的编码为:
14、10。
Alice首先用移位密码对OK加密(会话密钥为15),得到的密文为:
3、25;
然后Alice用Bob的RSA公钥加密会话密钥,得到:
C=153mod33=9。
Alice发送给Bob的密文为:
9,(3,25)。
(2)已知Bob的私钥d为7,写出Bob对Alice在上一步中发来的密文进行解密的过程。
(3分)
答:
解密时,Bob首先解密会话密钥,得到Ks=97mod33=15;
然后用Ks解密密文(3,25),得到明文编码为(14,10),即明文为OK。
五、PKI/CA作业
1、自签名证书和一般的数字证书有什么区别(从证书的内容和证书代表的信任关系两方面进行阐述)?
答:
自签名证书的证书颁发者(issuer)和持有者(subject)是同一个实体(通常为根CA),在进行证书验证时,直接利用自签名证书内部的公钥来验证该证书的完整性。
从信任关系角度看,自签名证书表示信任锚(即信任的源头)。
一般的数字证书的颁发者和持有者是不同的,颁发者为CA,持有者通常为终端实体或另外的CA。
从信任关系的角度看,表示颁发者(CA)对于证书持有者的身份和公钥的完整性和绑定关系的一种保证。
2、在讲义的“中心辐射配置(桥CA)示意图”中,写出EE1-1验证EE3-1的证书的路径,并用文字描述该证书链的验证过程。
答:
EE1-1拥有根证书RCA1<>,其验证EE3-1的证书的路径为:
RCA1<>BCA<>RCA3<>CA3-1<>
EE1-1利用RCA1的公钥,验证证书RCA1《BCA》,从而获得BCA的公钥;然后利用BCA的公钥验证证书BCA《RCA3》,从而获得RCA3的公钥;然后利用RCA3的公钥验证证书RCA3《CA3-1》,从而获得CA3-1的公钥;最后利用CA3-1的公钥验证证书CA3-1《EE3-1》,从而获得EE3-1的公钥。
3、一个基于CA的SSL服务器系统的架构如下,其中RootCA为根CA(假设其名称为C,ASCII码为0x43),SSLServer为基于SSL的WWW服务(假设其名称为S,ASCII码为0x53)。
CA颁发证书采用的数字签名算法为RSA,散列函数采用8bit的累加和算法(即将原始报文按8bit分组,按位异或,最终的散列码为8bit的数字)。
RootCA
SSLServer
已知CA的RSA公钥(e,N)为(37,77),SSLServer的RSA公钥(e,N)为(3,33),请计算:
(1)RootCA的RSA私钥d。
答:
因为N=77,所以p=7;q=11;Phi(N)=6*10=60。
因为e=37,所以d=37-1mod60=13。
(2)利用上述内容,将证书的内容填入下表(颁发者和持有者填C或S)。
证书持有者
(SubjectName)
证书内
的公钥
证书颁发者
(IssuerName)
CA的签名
RootCA的证书
C
(37,77)
C
不填
SSLServer的证书
S
(3,33)
C
不填
(3)计算SSLServer的数字证书中CA的签名(签名时要先计算证书内容的散列值,其中公钥(e,N)直接用其整数编码,证书的颁发者和持有者用字母的ASCII编码)。
答:
SSLServer的证书的内容为:
S、3、33、C,其编码为(用二进制表示)
01010011、00000011、00100001、01000011,
计算其散列码,得:
01010011⊕00000011⊕00100001⊕01000011=00110010,即十进制的50。
因此,SSLServer的证书中CA的签名为:
CA签名=HASH(证书内容)dmodN=5013mod77=29
六、防火墙
1、假设一个公司的安全策略为:
1)除了外部主机BadMailGate外,允许外部网络的所有主机访问公司内部的邮件服务器MailServer,该邮件服务器运行SMTP协议,TCP端口为25;
2)允许内部所有主机对外网的标准WWW服务(运行在80端口)的访问;
3)禁止其它类型的所有通信。
请在下表中写出实现该安全策略的防火墙的包过滤规则:
答:
行动(允许或阻断)
源主机
源端口
目的主机
目的端口
标志(TCP、UDP或ACK)
阻断
BadMailGate
*
MailServer
25
Tcp
允许
外部主机
*
MailServer
25
Tcp
允许
MailServer
25
外部主机
*
Ack
允许
内部主机
*
外部主机
80
Tcp
允许
外部主机
80
内部主机
*
Ack
阻断
*
*
*
*
*
注意:
第一条规则针对外部主机(BadMailGate)做了限制,不安全。