测试用例3:
这个是输入的需要加密的原始数据:
1011110001000101001110010010011001000110101001101001001000110100
这个是输入的密钥:(这里和测试例子2相比没有改变内容,改变了密钥)
1001010100111001011100110110010000110101010101100110011100100101
明文变换:
这个是对数据做第一次置换IP后的结果:
0001001011000101101110110000011001100001101011010000010101111000
密钥变换:
这里输出的是产生的16个字密钥
010000000011011010111110000101110010001001001110
001000001110011011100100010100000000011101010111
110100000101110100110010010111111010000010001100
111001001010001101110001011000000111010111001001
100001111101011000000111001010101011000000101111
011010110001001111010010111001100101110110100010
001111001101000011101001000011000000101101111011
100100110100000101011010110101111101100001010000
000101100110101011011011110010011000101001001110
001111110111010100000000110101001101011010011000
010010100000110111001101000110010001011001101101
010110011110000000011101100110101111100010100000
000001011000110110101010001000000110111100110101
111100100010100010100111101110110010100010010010
101110011010111000000000111001010100001100010011
111000010011100001001110101101111000101110000000
加密部分:
这个是加密流程中开始时的左右两个的结果:
这个是左边的结果:
00010010110001011011101100000110
这个是右边的结果:
01100001101011010000010101111000
1.
这个是选择运算的结果:
001100000011110101011010100000001010101111110000
这个是异或运算的结果:
011100000000101111100100100101111000100110111110
这里是S盒变换的结果:
000011110111100111000001110110000001001011000101
这是对S盒变换内容做P置换以后的内容:
11001111000111010110000001010101
这个是加密函数中第1轮的左右两个的结果:
这个是左边的结果:
01100001101011010000010101111000
这个是右边的结果:
11011101110110001101101101010011
2.
这个是选择运算的结果:
111011111011111011110001011011110110101010100111
这个是异或运算的结果:
110011110101100000010101001111110110110111110000
这里是S盒变换的结果:
101101111101001000011010111100000001001011000101
这是对S盒变换内容做P置换以后的内容:
01110110111100010100011100010011
这个是加密函数中第2轮的左右两个的结果:
这个是左边的结果:
11011101110110001101101101010011
这个是右边的结果:
00010111010111000100001001101011
3.
这个是选择运算的结果:
100010101110101011111000001000000100001101010110
这个是异或运算的结果:
010110101011011111001010011111111110001111011010
这里是S盒变换的结果:
110011110001011001100110101000000001001011000101
这是对S盒变换内容做P置换以后的内容:
01000100111011001101010010011001
这个是加密函数中第3轮的左右两个的结果:
这个是左边的结果:
00010111010111000100001001101011
这个是右边的结果:
10011001001101000000111111001010
4.
这个是选择运算的结果:
010011110010100110101000000001011111111001010101
这个是异或运算的结果:
101010111000101011011001011001011000101110011100
这里是S盒变换的结果:
011010011001000100111110111011000001001011000101
这是对S盒变换内容做P置换以后的内容:
10111100001110001100011110101001
这个是加密函数中第4轮的左右两个的结果:
这个是左边的结果:
10011001001101000000111111001010
这个是右边的结果:
10101011011001001000010111000010
5.
这个是选择运算的结果:
010101010110101100001001010000001011111000000101
这个是异或运算的结果:
110100101011110100001110011010100000111000101010
这里是S盒变换的结果:
100111110010101000001001000011000001001011000101
这是对S盒变换内容做P置换以后的内容:
01011000110010000110000001110110
这个是加密函数中第5轮的左右两个的结果:
这个是左边的结果:
10101011011001001000010111000010
这个是右边的结果:
11000001111111000110111110111100
6.
这个是选择运算的结果:
011000000011111111111000001101011111110111111001
这个是异或运算的结果:
000010110010110000101010110100111010000001011011
这里是S盒变换的结果:
010010001011101111001101110111100001001011000101
这是对S盒变换内容做P置换以后的内容:
10011111010111101010000101101101
这个是加密函数中第6轮的左右两个的结果:
这个是左边的结果:
11000001111111000110111110111100
这个是右边的结果:
00110100001110100010010010101111
7.
这个是选择运算的结果:
100110101000000111110100000100001001010101011110
这个是异或运算的结果:
101001100101000100011101000111001001111000100101
这里是S盒变换的结果:
010010101001111011000111000011100001001011000101
这是对S盒变换内容做P置换以后的内容:
01001101011011101011000101101000
这个是加密函数中第7轮的左右两个的结果:
这个是左边的结果:
00110100001110100010010010101111
这个是右边的结果:
10001100100100101101111011010100
8.
这个是选择运算的结果:
010001011001010010100101011011111101011010101001
这个是异或运算的结果:
110101101101010111111111101110000000111011111001
这里是S盒变换的结果:
001101001110111010001100001000110001001011000101
这是对S盒变换内容做P置换以后的内容:
00010001010000110001111101011110
这个是加密函数中第8轮的左右两个的结果:
这个是左边的结果:
10001100100100101101111011010100
这个是右边的结果:
00100101011110010011101111110001
9.
这个是选择运算的结果:
100100001010101111110010100111110111111110100010
这个是异或运算的结果:
100001101100000100101001010101101111010111101100
这里是S盒变换的结果:
111111011001101011111010110011100001001011000101
这是对S盒变换内容做P置换以后的内容:
00111101111111101100001111110011
这个是加密函数中第9轮的左右两个的结果:
这个是左边的结果:
00100101011110010011101111110001
这个是右边的结果:
10110001011011000001110100100111
10.
这个是选择运算的结果:
110110100010101101011000000011111010100100001111
这个是异或运算的结果:
111001010101111001011000110110110111111110010111
这里是S盒变换的结果:
101000011011101101010111001010110001001011000101
这是对S盒变换内容做P置换以后的内容:
10101100111001100110111101001100
这个是加密函数中第10轮的左右两个的结果:
这个是左边的结果:
10110001011011000001110100100111
这个是右边的结果:
10001001100111110101010010111101
11.
这个是选择运算的结果:
110001010011110011111110101010101001010111111011
这个是异或运算的结果:
100011110011000100110011101100111000001110010110
这里是S盒变换的结果:
110001101001010001110001110111100001001011000101
这是对S盒变换内容做P置换以后的内容:
01101110100101101011000110110001
这个是加密函数中第11轮的左右两个的结果:
这个是左边的结果:
10001001100111110101010010111101
这个是右边的结果:
11011111111110101010110010010110
12.
这个是选择运算的结果:
011011111111111111110101010101011001010010101101
这个是异或运算的结果:
001101100001111111101000110011110110110000001101
这里是S盒变换的结果:
110111011100110011111010101001110001001011000101
这是对S盒变换内容做P置换以后的内容:
00110001101011111101110111110011
这个是加密函数中第12轮的左右两个的结果:
这个是左边的结果:
11011111111110101010110010010110
这个是右边的结果:
10111000001100001000100101001110
13.
这个是选择运算的结果:
010111110000000110100001010001010010101001011101
这个是异或运算的结果:
010110101000110000001011011001010100010101101000
这里是S盒变换的结果:
110010101011111100110011010110010001001011000101
这是对S盒变换内容做P置换以后的内容:
11101110111110001011100111000100
这个是加密函数中第13轮的左右两个的结果:
这个是左边的结果:
10111000001100001000100101001110
这个是右边的结果:
00110001000000100001010101010010
14.
这个是选择运算的结果:
000110100010100000000100000010101010101010100100
这个是异或运算的结果:
111010000000000010100011101100011000001000110110
这里是S盒变换的结果:
101011110000111101111110111111010001001011000101
这是对S盒变换内容做P置换以后的内容:
11111010111111000101111011111001
这个是加密函数中第14轮的左右两个的结果:
这个是左边的结果:
00110001000000100001010101010010
这个是右边的结果:
01000010110011001101011110110111
15.
这个是选择运算的结果:
101000000101011001011001011010101111110110101110
这个是异或运算的结果:
000110011111100001011001100011111011111010111101
这里是S盒变换的结果:
000101010001000110000000010101100001001011000101
这是对S盒变换内容做P置换以后的内容:
10000111000100100100000000110010
这个是加密函数中第15轮的左右两个的结果:
这个是左边的结果:
01000010110011001101011110110111
这个是右边的结果:
10110110000100000101010101100000
16.
这个是选择运算的结果:
010110101100000010100000001010101010101100000001
这个是异或运算的结果:
101110111111100011101110100111010010000010000001
这里是S盒变换的结果:
101110011010110101111101101100010001001011000101
这是对S盒变换内容做P置换以后的内容:
10110010100011000111111111001111
这个是加密函数中第16轮的左右两个的结果:
这个是左边的结果:
11110000010000001010100001111000
这个是右边的结果:
10110110000100000101010101100000
这个是最终加密的结果:
0000100010000000100010000000010111101001110001110101101111000100
解密部分:
这个是输入的需要解密的原始数据:
0000100010000000100010000000010111101001110001110101101111000100
这个是输入的密钥:
1001010100111001011100110110010000110101010101100110011100100101
明文变换:
这个是对数据做第一次置换IP后的结果:
1111000001000000101010000111100010110110000100000101010101100000
密钥变换:
这里输出的是产生的16个字密钥
010000000011011010111110000101110010001001001110
001000001110011011100100010100000000011101010111
110100000101110100110010010111111010000010001100
111001001010001101110001011000000111010111001001
100001111101011000000111001010101011000000101111
011010110001001111010010111001100101110110100010
001111001101000011101001000011000000101101111011
100100110100000101011010110101111101100001010000
000101100110101011011011110010011000101001001110
001111110111010100000000110101001101011010011000
010010100000110111001101000110010001011001101101
010110011110000000011101100110101111100010100000
000001011000110110101010001000000110111100110101
111100100010100010100111101110110010100010010010
101110011010111000000000111001010100001100010011
111000010011100001001110101101111000101110000000
这个是解密流程中开始时的左右两个的结果:
这个是左边的结果:
11110000010000001010100001111000
这个是右边的结果:
10110110000100000101010101100000
1.
这个是选择运算的结果:
010110101100000010100000001010101010101100000001
这个是异或运算的结果:
101110111111100011101110100111010010000010000001
这里是S盒变换的结果:
101110011010110101111101101100011111000001000000
这是对S盒变换内容做P置换以后的内容:
10110010100011000111111111001111
这个是解密函数中第1轮的左右两个的结果:
这个是左边的结果:
10110110000100000101010101100000
这个是右边的结果:
01000010110011001101011110110111
2.
这个是选择运算的结果:
101000000101011001011001011010101111110110101110
这个是异或运算的结果:
000110011111100001011001100011111011111010111101
这里是S盒变换的结果:
000101010001000110000000010101101111000001000000
这是对S盒变换内容做P置换以后的内容:
10000111000100100100000000110010
这个是解密函数中第2轮的左右两个的结果:
这个是左边的结果:
01000010110011001101011110110111
这个是右边的结果:
00110001000000100001010101010010
3.
这个是选择运算的结果:
000110100010100000000100000010101010101010100100
这个是异或运算的结果:
111010000000000010100011101100011000001000110110
这里是S盒变换的结果:
101011110000111101111110111111011111000001000000
这是对S盒变换内容做P置换以后的内容:
11111010111111000101111011111001
这个是解密函数中第3轮的左右两个的结果:
这个是左边的结果:
00110001000000100001010101010010
这个是右边的结果:
10111000001100001000100101001110
4.
这个是选择运算的结果:
010111110000000110100001010001010010101001011101
这个是异或运算的结果:
010110101000110000001011011001010100010101101000
这里是S盒变换的结果:
110010101011111100110011010110011111000001000000
这是对S盒变换内容做P置换以后的内容:
11101110111110001011100111000100
这个是解密函数中第4轮的左右两个的结果:
这个是左边的结果:
10111000001100001000100101001110
这个是右边的结果:
11011111111110101010110010010110
5.
这个是选择运算的结果:
011011111111111111110101010101011001010010101101
这个是异或运算的结果:
001101100001111111101000110011110110110000001101
这里是S盒变换的结果:
110111011100110011111010101001111111000001000000
这是对S盒变换内容做P置换以后的内容:
00110001101011111101110111110011
这个是解密函数中第5轮的左右两个的结果:
这个是左边的结果:
11011111111110101010110010010110
这个是右边的结果:
10001001100111110101010010111101
6.
这个是选择运算的结果:
110001010011110011111110101010101001010111111011
这个是异或运算的结果:
100011110011000100110011101100111000001110010110
这里是S盒变换的结果:
110001101001010001110001110111101111000001000000
这是对S盒变换内容做P置换以后的内容:
01101110100101101011000110110001
这个是解密函数中第6轮的左右两个的结果:
这个是左边的结果:
10001001100111110101010010111101
这个是右边的结果:
10110001011011000001110100100111
7.
这个是选择运算的结果:
110110100010101101011000000011111010100100001111
这个是异或运算的结果:
111001010101111001011000110110110111111110010111
这里是S盒变换的结果:
101000011011101101010111001010111111000001000000
这是对S盒变换内容做P置换以后的内容:
10101100111001100110111101001100
这个是解密函数中第7轮的左右两个的结果:
这个是左边的结果:
10110001011011000001110100100111
这个是右边的结果:
00100101011110010011101111110001
8.
这个是选择运算的结果:
100100001010101111110010100111110111111110100010
这个是异或运算的结果:
100001101100000100101001010101101111010111101100
这里是S盒变换的结果:
111111011001101011111010110011101111000001000000
这是对S盒变换内容做P置换以后的内容:
00111101111111101100001111110011
这个是解密函数中第8轮的左右两个的结果:
这个是左边的结果:
00100101011110010011101111110001
这个是右边的结果:
10001100100100101101111011010100
9.
这个是选择运算的结果:
010001011001010010100101011011111101011010101001
这个是异或运算的结果:
110101101101010111111111101110000000111011111001
这里是S盒变换的结果:
001101001110111010001100001000111111000001000000
这是对S盒变换内容做P置换以后的内容:
00010001010000110001111101011110
这个是解密函数中第9轮的左右两个的结果:
这个是左边的结果:
10001100100100101101111011010100
这个是右边的结果:
00110100001110100010010010101111
10.
这个是选择运算的结果:
100110101000000111110100000100001001010101011110
这个是异或运算的结果:
101001100101000100011101000111001001111000100101
这里是S盒变换的结果:
010010101001111011000111000011101111000001000000
这是对S盒变换内容做P置换以后的内容:
01001101011011101011000101101000
这个是解密函数中第10轮的左右两个的结果:
这个是左边的结果:
00110100001110100010010010101111
这个是右边的结果:
11000001111111000110111110111100
11.
这个是选择运算的结果:
011000000011111111111000001101011111110111111001
这个是异或运算的结果:
000010110010110000101010110100111010000001011011
这里是S盒变换的结果:
010010001011101111001101110111101111000001000000
这是对S盒变换内容做P置换以后的内容:
10011111010111101010000101101101
这个是解密函数中第11轮的左右两个的结果:
这个是左边的结果:
11000001111111000110111110111100
这个是右边的结果:
10101011011001001000010111000010
12.
这个是选择运算的结果:
010101010110101100001001010000001011111000000101
这个是异或运算的结果:
110100101011110100001110011010100000111000101010
这里是S盒变换的结果:
100111110010101000001001000011001111000001000000
这是对S盒变换内容做P置换以后的内容:
01011000110010000110000001110110
这个是解密函数中第12轮的左右两个的结果:
这个是左边的结果:
10101011011001001000010111000010
这个是右边的结果:
10011001001101000000111111001010
13.
这个是选择运算的结果:
010011110010100110101000000001011111111001010101
这个是异或运算的结果:
101010111000101011011001011001011000101110011100
这里是S盒变换的结果:
011010011001000100111110111011001111000001000000
这是对S盒变换内容做P置换以后的内容:
10111100001110001100011110101001
这个是解密函数中第13轮的左右两个的结果:
这个是左边的结果:
10011001001101000000111111001010
这个是右边的结果:
00010111010111000100001001101011
14.
这个是选择运算的结果:
100010101110101011111000001000000100001101010110
这个是异或运算的结果:
010110101011011111001010011111111110001111011010
这里是S盒变换的结果:
110011110001011001100110101000001111000001000000
这是对S盒变换内容做P置换以后的内容:
01000100111011001101010010011001
这个是解密函数中第14轮的左右两个的结果:
这个是左边的结果:
00010111010111000100001001101011
这个是右边的结果:
11011101110110001101101101010011
15.
这个是选择运算的结果:
111011111011111011110001011011110110101010100111
这个是异或运算的结果:
110011110101100000010101001111110110110111110000
这里是S盒变换的结果:
101101111101001000011010111100001111000001000000
这是对S盒变换内容做P置换以后的内容:
01110110111100010100011100010011
这个是解密函数中第15轮的左右两个的结果:
这个是左边的结果:
11011101110110001101101101010011
这个是右边的结果:
01100001101011010000010101111000
16.
这个是选择运算的结果:
001100000011110101011010100000001010101111110000
这个是异或运算的结果:
011100000000101111100100100101111000100110111110
这里是S盒变换的结果:
000011110111100111000001110110001111000001000000
这是对S盒变换内容做P置换以后的内容:
11001111000111010110000001010101
这个是解密函数中第16轮的左右两个的结果:
这个是左边的结果:
00010010110001011011101100000110
这个是右边的结果:
01100001101011010000010101111000
这个是最终解密的结果:
1011110001000101001110010010011001000110101001101001001000110100
好了,这里就给出3组测试用例,相信在这样的检测下,你的程序可以正确的出来,我哦们的宗旨是:让所有的问题都暴露在阳光下!祝你编程顺利哦,亲!
文章评论(0条评论)
登录后参与讨论