信息安全题目二

作业1:画图描述DES算法的主要步骤。描述选择压缩运算基本原理。
答:主要步骤图示:
在这里插入图片描述

选择压缩运算基本原理:
目标是将48位压缩回32位。48位分成8组,每组6位,分别送入8个s盒。每个S盒是一个4行16列的表,盒中每一项都是一个4bit的数,S盒的6bit输入确定了其对应的输出在哪一行哪一列。假定将S盒的6bit输入分别记做b1、b2、b3、b4、b5、b6,则b1和b6对应0到3,由此可选择表中的一行;b2到b5对应0到15,由此可对应表中的一列。 由此可定位到表中一个具体的数据,为4bit。由此实现了每组由6bit到4bit的转换,输出总体8*4bit=32位。

作业2:假设进行选择压缩运算的分组数据前三个分组分别为[101101],[010110],[110011],请写出,按循序经过s1,s2,s3盒之后输出结果过,并且写出求解步骤。S盒如下:
在这里插入图片描述

答:101101分为11,0110,对应十进制为3,6,对应s1盒子查找为3行6列为1,对应2进制为0001;

010110分为00,1011,对应十进制为0,11,对应s2盒子查找为0行11列为13,对应2进制为1101;

110011分为11,1001,对应十进制为3,9,对应s3盒子查找为3行9列为15,对应2进制为1111;

作业3:写出AES分组加密的主要步骤。写出GF(28)域中元素{b9},{37},{6d}经过字节代换运算后的值。
答:(1)
AES分组加密的主要步骤
1.AddRoundKey——矩阵中的每一个字节都与该次轮密钥(round key)做异或(XOR)运算;每个子密钥由密钥生成方案产生。
2.SubBytes——通过一个非线性的替换函数,用查找表的方式把每个字节替换成对应的字节。
3.ShiftRows——将矩阵中的每个横列进行循环式移位。
4.MixColumns ——为了充分混合矩阵中各个直行的操作。这个步骤使用线性转换来混
合每列的四个字节。最后一个加密循环中省略MixColumns步骤,以另一个ddRoundKey
取代。
(2)
{b9}为字节代换后对应b行9列为{56};
{37}为字节代换后对应3行7列为{9a};
{6d}为字节代换后对应6行d列为{3c};

作业4:在GF(28)域上求解多项式的加法和乘法,对于乘法需要写出具体的步骤。参考课本45页及乘法运算例子解题步骤。
(1)(x5+x4+x3+x+1)+(x6+x2+1)= x6+x5+x4+x3+x2+x 对应二进制:01111110 16进制:7e
(2)(x7+x5+x3+x+1)+(x5+x3+1)= x7+x 对应二进制:10000010 16进制:82
(3)46 * 85=
(4)53 * 78=

(3)
答:1. 46: 1000110; 85: 10000101
2. 46: x6+x2+x
85: x7+x2+1
3.4685=(x6+x2+x)(x7+x2+1) mod (x8+x4+x3+x+1)
(x6+x2+x)(x7+x2+1)=(x13+x9+x8)+(x8+x4+x3)+(x6+x2+x)=
x13+x9+x6+x4+x3+x2+x
4.模运算(x13+x9+x6+x4+x3+x2+x)mod(x8+x4+x3+x+1)= x5+x2+1
x5+1
x8+x4+x3+x+1x13+x9+x6+x4+x3+x2+x
x13+x9+x8+x6+x5
x8+x5+x4+x3+x2+x
x8+x4+x3+x+1
x5+x2+1
x5+x2+1对应二进制为:00100101 转为16进制为25;
46
85=25;

(4)53 * 78=
答:1. 53:1010011 ;78:1111000
2. 53:x6+x4+x+1
78:x6+x5+x4+x3
3.53*78=(x6+x4+x+1)(x6+x5+x4+x3) mod (x8+x4+x3+x+1)

(x6+x4+x+1)(x6+x5+x4+x3)=(x12+x11+x10+x9)+(x10+x9+x8+x7)+(x7+x6+x5+x4)+(x6+x5+x4+x3)=
(x12+x11+x8+x3)
4.模运算(x12+x11+x8+x3)mod(x8+x4+x3+x+1)
x4+x3
x8+x4+x3+x+1x12+x11+x8+x3
x12+x8+x7+x5+x4
x11+x7+x5+x4+x3
x11+x7+x6+x4+x3
x6+x5
x6+x5对应二进制为:01100000 转为为16进制为60
53 * 78=60;

乘法运算例子:7183
1.第一步把71和83两个16进制转换为8位二进制,不足8位前面补0,可以使用在线工具进行转化https://tool.lu/hexconvert/
71:01110001
83:10000011
第二步:转化为多项式乘法
71:x6+x5+x4+1
83:x7+x+1
71
83=(x6+x5+x4+1)(x7+x+1)mod(x8+x4+x3+x+1)
第三步:求解(x6+x5+x4+1)(x7+x+1)=(x13+x12+x11+x7)+(x7+x6+x5+x)+(x6+x5+x4+1)=
x13+x12+x11+x4+x+1
第四步:模运算(x13+x12+x11+x4+x+1)mod(x8+x4+x3+x+1)= x5+x3+x2+1

                           x5+x4+x3+x

x8+x4+x3+x+1x13+x12+x11+x4+x+1
x13+x9+x8+x6+x5
x12+x11+x9+x8+x6+x5+x4+x+1
x12+x8+x7+x5+x4
x11+x9+x7+x6+x+1
x11+x7+x6+x4+x3
x9+x4+x3+x+1
x9+x5+x4+x2+x
x5+x3+x2+1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值