阅读下列说明,回答问题 1 至问题 5,将解答写在答题纸的对应栏内。 【说明】 DES 是一种分组密码,己知 DES 加密算法的某个 S 盒如表 4-1 所示。 表4-1 S盒 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 7 13 14 3 0 6 9 (1) 1 2 8 5 11 12 4 15 1 13 8 11 5 (2) 15 0 3 4 7 2 12 1 10 14 9 2 10 6 9 0 12 11 7 13 15 (3) 3 14 5 2 8 4 3 3 15 0 6 10 1 13 8 9 4 5 (4) 12 7 2 14【问题1】 (4分) 请补全该 S 盒,填补其中的空(1) - (4),将解答写在答题纸的对应栏内。 【问题 2】 (2分) 如果该 S 盒的输入为 110011,请计算其二进制输出。 【问题3】(6分) DES加密的初始置换表如下: 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7 置换时,从左上角的第一个元素开始,表示输入的铭文的第58位置换成输出的第1位,输入明文的第50位置换成输出的第2位,从左至右,从上往下,依次类推。 DES加密时,对输入的64位明文首先进行初始置换操作。 若置换输入的明文M=0123456789ABCDEF(16进制),请计算其输出(16进制表示)。 【问题4】(2分) 如果有简化的DES版本,其明文输入为8比特,初始置换表IP如下: IP:2 6 3 1 4 8 5 7 请给出其逆初始置换表。 【问题5】(2分) DES加密算法存在一些弱点和不足,主要有密钥太短和存在弱密钥。请问,弱密钥的定义是什么?

阅读下列说明,回答问题 1 至问题 5,将解答写在答题纸的对应栏内。 【说明】 DES 是一种分组密码,己知 DES 加密算法的某个 S 盒如表 4-1 所示。 表4-1 S盒 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 7 13 14 3 0 6 9 (1) 1 2 8 5 11 12 4 15 1 13 8 11 5 (2) 15 0 3 4 7 2 12 1 10 14 9 2 10 6 9 0 12 11 7 13 15 (3) 3 14 5 2 8 4 3 3 15 0 6 10 1 13 8 9 4 5 (4) 12 7 2 14

【问题1】 (4分) 请补全该 S 盒,填补其中的空(1) - (4),将解答写在答题纸的对应栏内。 【问题 2】 (2分) 如果该 S 盒的输入为 110011,请计算其二进制输出。 【问题3】(6分) DES加密的初始置换表如下: 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7 置换时,从左上角的第一个元素开始,表示输入的铭文的第58位置换成输出的第1位,输入明文的第50位置换成输出的第2位,从左至右,从上往下,依次类推。 DES加密时,对输入的64位明文首先进行初始置换操作。 若置换输入的明文M=0123456789ABCDEF(16进制),请计算其输出(16进制表示)。 【问题4】(2分) 如果有简化的DES版本,其明文输入为8比特,初始置换表IP如下: IP:2 6 3 1 4 8 5 7 请给出其逆初始置换表。 【问题5】(2分) DES加密算法存在一些弱点和不足,主要有密钥太短和存在弱密钥。请问,弱密钥的定义是什么?


相关考题:

有以下程序struct S{ int n; int a[20]; };void f(int *a,int n){ int i;for(i=0;in-1;i++) a[i]+=i;}main( ){ int i; struct S s={10,{2,3,1,6,8,7,5,4,10,9}};f(s.a,s.n);for(i=0;is.n;i++) printf("%d",s.a[i]);}程序运行后的输出结果是A)2,4,3,9,12,12,11,11,18,9,B)3,4,2,7,9,8,6,5,11,10,C)2,3,1,6,8,7,5,4,10,9,D)1,2,3,6,8,7,5,4,10,9,

在○中填入“<”“>”“=”。4/5-2/5○9/10-7/105/8-3/8○3/4-1/43/12+5/12○1/6+3/63/7+4/7○4/11+7/11

有以下程序struct S{ int n; int a[20]; }; void f(int *a,int n) {int i; for(i=0;i a[i]+=i; } main() {int i; struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(s.a, s.n); for(i=0;i printf(“%d”,s.a[i]); } 程序运行后的输出结果是( )。A.2,4,3,9,12,12,11,11,18,9,B.3,4,2,7,9,8,6,5,11,10,C.2,3,1,6,8,7,5,4,10,9,D.1,2,3,6,8,7,5,4,10,9,

有以下程序: struct S{int n;int a[20];}; void f(int*a,int n) {int i; for(i=0;i<n-1;i++)a[i]+=i;} mainf() {int i;struct S s{10,{2,3,1,6,8,7,5,4,10,9}}; if(s.a,s.n); for(i=0;i<s.n;i++)printf("%d",s.a[i]);} 程序运行后的输出结果是( )。A.2,4,3,9,12,12,11,11,18,9B.3,4,2,7,9,8,6,5,11,10C.2,3,1,6,8,7,5,4,10,9D.1,2,3,6,8,7,5,4,10,9

(1)0×(-2012);(2)(-8)×1.25 ;(3)7/10×(-3/14)(4)(-3/16)×(-8/9)(5)7.5×(-8.2)×0×(-19.1)(6)(-14/3)×5/7(7)(-0.12)×1/12×(-100)(8)7×(-1+3/14)

计算:(1)(-8)-(-1)(2)45+(-30)(3)-1.5-(-11.5)(4)-1/4-(-1/2)(5)15-[1-(-20-4)](6)-40-28-(-19)+(-24)(7)22.54+(-4.4)+(-12.54)+4.4(8) (2/3-1/2)-(1/3-5/6)(9)2.4-(-3/5)+(-3.1)+4/5(10)(-6/13)+(-7/13)-(-2)(11)3/4-(-11/6)+(-7/3)(12)11+(-22)-3×(-11)(13)(-0.1)÷1/2×(-100)(14)(-3/4)×(-2/3 - 1/3) ×0(15)(-2)3-32(16)23÷[(-2)3-(-4)](17)(3/4-7/8)÷(-7/8)(18)(-60)×(3/4+5/6)

有以下程序 struct S { int n;int a[20];}; void f(int *a,int n) { int i; for(i=0;i<n-1;i++)a[i]+=i; } main() { int i;struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(s.a,s.n); for(i=0;i<s.n;i++)printf("%d,",s.a[i]); } 程序运行后的输出结果是A.2,4,3,9,12,12,11,11,18,9,B.3,4,2,7,9,8,6,5,11,10,C.2,3,1,6,8,7,5,4,10,9,D.1,2,3,6,8,7,5,4,10,9,

下面程序的输出结果是 ( ) main( ) { int i,f1,f2; f1=f2=1; for(i=0;i<4;i+ +) { printf(”%d%d”,f1,f2); f1+ =f2; f2+ =f1; } }A.1 2 3 4 5 6 7 8B.1 1 2 3 5 8 13 21C.1 1 3 5 7 9 11 13D.1 3 5 7 9 11 13 15

有以下程序:include main( ){int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13;1 有以下程序: #include <stdio.h> main( ) { int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13;14,15,16}},i,j; for(i =0;i<4;i ++ ) { for(j=0;j<=i;j++)printf("%4c","); for(j=______;j<4;j ++ )printf( "%4d" ,hum[i] [j] ); printf(" \n" ); } } 若要按以下形式输出数组右上半三角; 1 2 3 4 6 7 8 11 12 16则在程序下划线处应填入的是( )。A.i-1B.iC.i+1D.4-i

当执行下面的语句定义一维数组a后,此数组的所有元素为 ( ) inta[10];A.a[1],a[2],a[3],a[4],a[5],a[6],a[8],a[9],a[10],a[10]B.a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]C.a[0],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10]D.a[1],a[2],a [3],a[4],a [5],a [9],a [7],a [8],a [9],a [10],a [11]

有以下程序 main() { int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}; int i,s=0; for(i=0;i<4;i++)s+=aa[i][1]; pdrintf(“%d\n”,s); } 程序运行后的输出结果是A.11B.19C.13D.13

文档管理工具需要具备以下哪些功能?1、文件及目录操作、2、无限共享功能3、多模式文件上传4、文件预览或编辑5、超级文件转发6、协同工作支持7、文档安全性管理8、文件回收站功能9、公共空间10、访客文件提取及密码上传11、完善的日志记录功能12、文件(公文)签收审批13、文件交换14、版本管理( ) A.1、2、3、4、5、6、7、8、9、12、13、14B.1、2、3、4、5、6、7、8、9、10、11、12、13、14C.1、2、7、8、9、10、11、12、13、14D.1、2、3、4、5、10、11、12、13、14E.1、2、3、4、5、6、7、8、9、10、11

有如下程序 include main() { int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14 有如下程序 #include<stdio.h> main() { int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16)); int i,s=0; for(i=0;i<4;i++)s+=a[i][1]; printf("%d\n",s); }程序运行后的输出结果是______。A.11B.32C.13D.20

阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。 【说明】 某航空公司的会员卡分为普卡、银卡、金卡和白金卡4个级别,会员每次搭乘该航空公司航班均可能获得积分,积分规则如表2-1所示。此外,银卡及以上级别会员有额外积分奖励,奖励规则如表2-2所示。公司开发了一个程序来计算会员每次搭乘航班历累积的积分,程序的输入包括会员级别B、舱位代码C和飞行公里数K,程序的输出为本次积分S 。其中,B和C三字母且大小写不敏感,K为正整数,S为整数(小数部分四舍五入)。【问题l】(7分) 采用等价类型划分法对该程序进行测试,等价类表如2-3所示,请补充空(1)-(7) 表2-3 等价类表 输入条件 有效等价类 编号 无效等价类 编号 会员等级B F 1 非字母 12 S 2 非单个字母 13 G 3 (5) 14 (1) 4 舱位代码C F 5 非字母 15 (2) 6 (6) 16 (3) 7 R/B/H/K/L/M/W 8 Q/X/U/E 9 P/S/G/O/J/V/N/T 10 飞行公里数K (4) 11 非整数 17 (7) 18 【问题2】(13分) 根据以上等价类表设计的测试用例如表24所示,请补充空(1)~(1 3)。 表2-4 编号 输入 覆盖等价类(编号) 预期输出S B C K 1 F F 500 1,5,11 (1) 2 S Z (2) 2,6,11 825 3 G A 500 (3) 781 4 P (4) 500 4,8,11 750 5 (5) Q 500 1,9,11 250 6 F P 500 1,10,11 (6) 7 (7) P 500 12,10,11 N/A 8 (8) F 500 13,5,11 N/A 9 A Z 500 14,6,11 N/A 10 S (9) 500 2,15,11 N/A 11 S (10) 500 2,16,11 N/A 12 S Q (11) 2,9,17 (12) 13 S P (13) 2,10,18 N/A

给定元组演算表达式 R*={t│(Эu)(R(t)∧S(u)∧t[3] A. A.R*={(3,7,11),(5,9,13),(6,10,14)}B. R*={(3.7.11),(4.5.6),(5.9.13),(6,10,14)}C. R*={(1,2,3),(4,5,6),(7,8,9)}D. R*={(1,2,3),(4,5,6),(7,8,9),(10,11,12)}

文档管理工具需要具备以下哪些功能() 1、文件及目录操作 2、无限共享功能 3、多模式文件上传 4、文件预览或编辑 5、超级文件转发 6、协同工作支持 7、文档安全性管理 8、文件回收站功能 9、公共空间 10、访客文件提取及密码上传 11、完善的日志记录功能 12、文件(公文)签收审批 13、文件交换 14、版本管理A、1、2、3、4、5、6、7、8、9、12、13、14B、1、2、3、4、5、6、7、8、9、10、11、12、13、14C、1、2、7、8、9、10、11、12、13、14D、1、2、3、4、5、10、11、12、13、14E、1、2、3、4、5、6、7、8、9、10、11

二维数组初始化正确的是()A、intarr[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};B、intarr[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};C、intarr[][4]={1,2,3,4,5,6,7,8,9,10,11,12};D、intarr[3][4]={{1,2,3},{4,5},{6}};

逻辑表达式L=(A、B、C、D)=BACD+ABCD的最小项表达式为()。A、L=∑m(0,1,2,3,6,7,8,12,13,15)B、L=∑m(0,1,2,3,8,9,11,12,13,15)C、L=∑m(0,1,3,4,6,8,9,10,14,15)D、L=∑m(0,1,2,3,5,6,8,11,13,15)

酒店常用清洁工具包括以下15种,在清洁客房时,需要使用的清洁工具有哪些()?(1)喷壶(2)百洁布(3)玻璃刮(4)拖把(5)恭桶刷(6)扫帚/簸箕(7)防护手套(8)硬质清洁刷(9)工作篮(10)地板擦(11)软质清洁刷(12)尘推(13)刮刀(14)梯子(15)吸尘器A、(1)(2)(3)(4)(5)(6)(8)(9)B、(1)(2)(5)(6)(8)(9)(10)(11)C、(1)(3)(4)(7)(11)(12)(13)(14)D、(1)(2)(5)(6)(7)(12)(13)(14)

假设在跳频集中有12个频率(f1-f12),在小区中分配给前7个TRX的缺省MAIO值是多少()。A、0、1、2、3、4、5和6B、1、2、3、4、5、6和7C、0、2、4、6、8、10和1D、1、3、5、7、9、11和0E、0、3、6、9、1、4和7

若有以下说明,int?a[12]={1,2,3,4,5,6,7,8,9,10,11,12};?则数值为4的表达式是()A、a[4]B、a(3)C、a[3+1]D、a[4]-a[0]

1. int I=1, j=0  2.    3. switch(i)  {  4. case 2:  5. j+=6;  6.    7. case 4:  8. j+=1;  9.    10. default:  11. j +=2;  12.    13. case 0:  14. j +=4;  15. }  16.      What is the value of j at line 16?()A、 0B、 1C、 2D、 4E、 6

F12L413柴油机的发火顺序是()。A、1-5-3-8-10-7-6-11-2-9-4-12B、1-8-5-10-3-7-6-11-2-9-4-12C、1-10-3-8-7-11-6-9-2-4-12-5D、1-8-5-10-7-3-6-11-2-9-4-12

道依茨柴油机BF12L513C各缸的发火顺序是()。A、1-5-3-8-10-7-6-11-2-9-4-12B、1-8-5-10-3-7-6-11-2-9-4-12C、1-10-3-8-7-11-6-9-2-4-12-5D、1-8-5-10-7-3-6-11-2-9-4-12

单选题若有以下程序#include #define N 4void fun(int a[][N], int b[], int flag){ int i,j; for(i=0; i a[i][j]) : (b[i] a[i][j]))  b[i] = a[i][j]; }}main(){ int x[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}, y[N],i; fun(x,y,1); for (i=0; iA1,2,3,4,13,14,15,16,B4,8,12,16,1,5,9,13, C1,5,9,13,4,8,12,16,D13,14,15,16,1,2,3,4,

单选题有以下程序: #include #defineN4 voidfun(inta[][N],intb[]) {  inti;  for(i=0;i } main() {  intx[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},y[N],i;  fun(x,y);  for(i=0;i  printf(""); } 程序的运行结果是(  )。A1,2,3,4,B3,6,9,12,C4,7,10,13,D1,5,9,13,

单选题有以下程序#include struct S{ int n; int a[20];};void f(int *a, int n){ int i; for(i=0;iA1,2,3,6,8,7,5,4,10,9,B3,4,2,7,9,8,6,5,11,10,C2,3,1,6,8,7,5,4,10,9,D2,4,3,9,12,12,11,11,18,9