教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 政务民生 >

《信息安全原理与技术》(第2版)习题答案(3)

来源:网络收集 时间:2026-01-21
导读: -密文对)。 3.5用Hill密码加密消息”hill”,密钥为: ?11 8?k???3 7?? ??并写出从密文恢复明文的解密过程。 解: 经计算 ?718? K?1????2311?设明文为Hill,则相应的明文向量为(7,8)和(11,11)。于是,相应的

-密文对)。

3.5用Hill密码加密消息”hill”,密钥为:

?11 8?k???3 7?? ??并写出从密文恢复明文的解密过程。

解: 经计算

?718? K?1????2311?设明文为Hill,则相应的明文向量为(7,8)和(11,11)。于是,相应的密文向量分别为

?118?(7,8)??37???(77?24,56?56)?(23,8)??

?118?(11,11)??37???(121?33,88?77)?(24,9)??因此,明文Hill的密文为XIYJ。

3.6用一次一密加密消息“01011010101100111100010101010101011011110001010001”,选定的密钥是“10010101011110101101000101000001111100100101010010”,试写出密文。 解:密文=明文?密钥

=01011010101100111100010101010101011011110001010001? 10010101011110101101000101000001111100100101010010 =11001111110010010001010000010100100111010100000011

3.7使用DES加密,假设明文和密钥都为 (0123456789ABCDEF)16 = (00000001 00100011 01000101 01100111 10001001 10101011 11001101 11101111)2

(1) 推导出第一轮的子密钥K1 (2) 写出R0和L0

(3) 扩展R0并计算E(R0)⊕K1

(4) 将第(3)问的结果,输入到8个S盒,求出加密函数F (5) 推导出R1和L1 解:

(1)将密钥K经置换选择1,得 C0=11110000 11001100 10101010 0000 D0=10101010 11001100 11110000 0000 左移1位后经置换选择2输出48为K1。

K1=00001010 00000010 01110111 10011011 01001000 10100101 (2)初始置换后,得到

11

L0=11001100 00000000 11001100 11111111 R0=11110000 10101010 11110000 10101010

(3)用扩展置换E将R0扩展为48位后,与K1异或

E(R0)?K1=01110000 00010111 00100010 11100001 01011101 11110000 (4)经过8个S盒输出32位

S1(011100)=0000 S2(000001)=0000 S3(011100)=0010 S4(100010)=1000 S5(111000)=0011 S6(010101)=1101 S7(110111)=1000 S8(110000)=1100 经置换函数P,输出加密函数如下: F=00111000 00000000 00100000 11101101 (5)由L0和R0计算出L1和R1

L1=R0=11110000 10101010 11110000 10101010 R1=L0?F=11001000 10101010 11010000 01000111

3.8在GF(28)上{01}的逆是什么?并验证其在S盒中的输入。 解:

在GF(28)上{01}的逆是{01},用二进制标识为0000 0001,代入S盒的变换,如下:

??1??1????1??1????1??0??0????0??011111000011111000011111100011111100011111100011??1??1????1????1????1????0????????????????????????1??0????1????1????1????0??????1??0????0????1????0????1????????????????????????1??0????0101???????????????????? ??0??0????0????1????0????1????????????????????????001011??????????????????????0??0????1????0????1????1??????????????1??0??0??0??0??0???????????????????????? 结果为01111100,用十六进制表示为{2A},与查S盒所得到结果一致。

3.9假设 AES的State矩阵的某一列分别是s0 = {87},s1= {6E},s2 = {46},s3 = {A6}。经过列混淆变换后,s1 = {6E }映射为s’1 = {37},试计算验证这一结果。 解:

第一列第2个字节的代换方程为

{87}?({02}?{6E})?({03}?{46})?{A6}={37} 下面验证上面等式成立。用多项式表示为 {02}??,

{6E}??6??5??3??2??

12

那么

??(?6??5??3??2??)??7??6??4??3??2

再模一个次数为8的不可约多项式m(?)??8??4??3???1 结果为?7??6??4??3??2

写成二进制为11011100。

同样,计算出{03}?{46}=11001010, {87}=10000111, {A6}=10100110。 因此{87}?({02}?{6E})?({03}?{46})?{A6}计算结果为 10000111 11011100 11001010

?10100110

00110111={37}

3.10采用AES加密,密钥为2B 7E 15 16 28 AE D2 A6 AB F7 15 88 09 CF 4F 3C,明文为32 43 F6 AD 88 5A 30 8D 3131 98 A2 E0 37 07 34

(1) 写出最初的State的值

(2) 写出密钥扩展数组中的前8个字节 (3) 写出初始轮密钥加后State的值 (4) 写出字节代换后State的值 (5) 写出行移位后的State的值 (6) 写出列混淆后State的值 解:

(1)最初的State的值为:

?32?43 B0???F6??AD885A308D31E0?3137?? 9807??A234?28AED2A6ABF7158809??W0?2B7E1516?W?28AED2A6EF?1?,其中? ?W?ABF715884F??3??3E??W4?09EF4F3E?2B?7E (2)K0=(W1,W2,W3,W4)=??15??16

密钥扩展数组中前8个字节为W0,W1,即2b 7e 15 16 28 ae d2 a6 (3)根据Wi(4?i?7)的计算公式,分别计算出各式,然后计算出K1。 W4=SubByte(RotByte(W3))?Rcon[1] ?W0

= SubByte(CF4F3C09)?(01000000) ?(2B7E1516) =(8A84EB01) ?(01000000) ?(2B7E1516) =A0FAFE17

13

W5=W1?W4=(28AED2A6)?( A0FAFE17)=88542CB1 W6=W2?W5=(ABF71588)?( 88542CB1)=23A33939 W7=W3?W6=(09CF4F3C)?( 23A33939)=2A6C7605 所以,得到第一轮子密钥K1为:

?A088?FA54? K1?(W4,W5,W6,W7)??FE2C??17B1初始轮密钥加后, B1=B0+K0

23A339392A?6C?? 76??05??32?43 =??F6??AD885A308D31E0??A08823?FA54A33137????9807??FE2C39??A234??17B1392A??19A09AE9?

?3DF4C6F8?6C??=?? 76??E3E28D48????05??BE2B2A08?1E?41?? 52??30?

?D4E0B8?27BFB4

(4)经过字节代换后,state的值为 ?

?11985D?

?AEF1E5?D4?BF

(5)经过行移位后,state的值为 ?

?5D??30

E0B8B4415211AEF1

1E?27?? 98??E5?

?04?66(6)经过列混淆变换后,state的值为??81??E5

E04828?CBF806?? 19D326??9A7A4C?3.11 对习题3.10的明文和密钥不变,采用SMS4加密。(1)求出第一轮的轮密钥rk0。(2)求第一轮加密后的明文输出是什么?

解:

(1)SMS4加密算法的轮密钥由加密密钥通过密钥扩展算法生成,第一轮轮密钥rk0的计算过程如下:

①首先,将加密密钥???(??0,??1,??2,??3)按字分为四组,分别为

) , ??0?(2b7e151)6 ,??1?(28aed2a6) ,??2?(abf71588??3?(09cf4f3c)

已知:

14

FK0?(A3B1BAC6),FK1?(56AA3350),FK2?(677D9197),FK3?(B27022DC) 根据(K0,K1,K2,K3)?(??0?FK0,??1?FK1,??2?FK2,??3?FK3),得出(K0,K1,K2,K3)各个的值:

MK0=0010 1011 0111 1110 0001 0101 0001 0110 FK0= 1010 0011 1011 0001 1011 1010 1100 0110

两者做异或运算后,得K0=1000 1000 1100 1111 1010 1111 1101 0000 同理计算,可以分别得

K1=0111 1110 0000 0100 1110 0001 1111 0110

K2=1100 1100 1000 1010 1000 0100 0001 1111

K3=1011 1011 1011 1111 0110 1101 1110 0000

②然后,求出T变换的输出:

固定参数CK0的十六进制表示为:00070e15,则通过异或运算。A?(a0,a1,a2,a3)=K1?K2?K3?CK0=(0000 1001 0011 0110 0000 0110 0001 1100)十六进制表示为:09 36 06 1c。

再将输出结果A分为四组进入 …… 此处隐藏:3057字,全部文档内容请下载后查看。喜欢就下载吧 ……

《信息安全原理与技术》(第2版)习题答案(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/447213.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)